Can be private: correct detection of calls inside inline accessors

This commit is contained in:
Mikhail Glukhikh
2018-06-13 19:12:12 +03:00
parent 542f0a61d1
commit b235af0656
2 changed files with 9 additions and 2 deletions
@@ -131,8 +131,10 @@ class MemberVisibilityCanBePrivateInspection : AbstractKotlinInspection() {
return@Processor false
}
}
val function = usage.getParentOfType<KtNamedFunction>(true)
val insideInlineFun = function?.modifierList?.let { it.hasModifier(KtTokens.INLINE_KEYWORD) && !function.isPrivate() } ?: false
val function = usage.getParentOfTypesAndPredicate<KtDeclarationWithBody>(
true, KtNamedFunction::class.java, KtPropertyAccessor::class.java
) { true }
val insideInlineFun = function?.let { it.hasModifier(KtTokens.INLINE_KEYWORD) && !function.isPrivate() } ?: false
if (insideInlineFun) {
otherUsageFound = true
false