Move: Warn about moving public declaration to non-public class

#KT-22771 Fixed
This commit is contained in:
Alexey Sedunov
2018-02-08 21:34:55 +03:00
parent acf6408474
commit 1af21dd160
9 changed files with 53 additions and 5 deletions
@@ -431,6 +431,13 @@ fun KtModifierList.visibilityModifierType(): KtModifierKeywordToken? = visibilit
fun KtModifierListOwner.visibilityModifier() = modifierList?.modifierFromTokenSet(KtTokens.VISIBILITY_MODIFIERS)
val KtModifierListOwner.isPublic: Boolean
get() {
if (this is KtDeclaration && KtPsiUtil.isLocal(this)) return false
val visibilityModifier = visibilityModifierType()
return visibilityModifier == null || visibilityModifier == KtTokens.PUBLIC_KEYWORD
}
fun KtModifierListOwner.visibilityModifierType(): KtModifierKeywordToken? =
visibilityModifier()?.node?.elementType as KtModifierKeywordToken?