Minor refactoring: implicitVisibility
This commit is contained in:
@@ -253,19 +253,14 @@ fun KtModifierListOwner.setVisibility(visibilityModifier: KtModifierKeywordToken
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun KtDeclaration.implicitVisibility(): KtModifierKeywordToken? {
|
fun KtDeclaration.implicitVisibility(): KtModifierKeywordToken? {
|
||||||
if (this is KtPropertyAccessor && this.isSetter) {
|
|
||||||
val property = this.property
|
|
||||||
if (property.hasModifier(KtTokens.OVERRIDE_KEYWORD)) {
|
|
||||||
val visibility = (property.descriptor as? PropertyDescriptor)
|
|
||||||
?.overriddenDescriptors
|
|
||||||
?.firstOrNull()
|
|
||||||
?.setter
|
|
||||||
?.visibility
|
|
||||||
?.toKeywordToken()
|
|
||||||
if (visibility != null) return visibility
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return when {
|
return when {
|
||||||
|
this is KtPropertyAccessor && isSetter && property.hasModifier(KtTokens.OVERRIDE_KEYWORD) -> {
|
||||||
|
(property.descriptor as? PropertyDescriptor)?.overriddenDescriptors?.forEach {
|
||||||
|
val visibility = it.setter?.visibility?.toKeywordToken()
|
||||||
|
if (visibility != null) return visibility
|
||||||
|
}
|
||||||
|
KtTokens.DEFAULT_VISIBILITY_KEYWORD
|
||||||
|
}
|
||||||
this is KtConstructor<*> -> {
|
this is KtConstructor<*> -> {
|
||||||
val klass = getContainingClassOrObject()
|
val klass = getContainingClassOrObject()
|
||||||
if (klass is KtClass && (klass.isEnum() || klass.isSealed())) KtTokens.PRIVATE_KEYWORD
|
if (klass is KtClass && (klass.isEnum() || klass.isSealed())) KtTokens.PRIVATE_KEYWORD
|
||||||
|
|||||||
Reference in New Issue
Block a user