FIR: record and serialize the modifier "fun" for functional interface
This commit is contained in:
committed by
Mikhail Glukhikh
parent
6a2fed33d3
commit
0d2552b0b6
+1
@@ -382,6 +382,7 @@ class DeclarationsConverter(
|
||||
isCompanion = modifiers.isCompanion() && classKind == ClassKind.OBJECT
|
||||
isData = modifiers.isDataClass()
|
||||
isInline = modifiers.isInlineClass()
|
||||
isFun = modifiers.isFunctionalInterface()
|
||||
}
|
||||
|
||||
buildRegularClass {
|
||||
|
||||
+4
@@ -78,6 +78,10 @@ class Modifier(
|
||||
return classModifiers.contains(ClassModifier.COMPANION)
|
||||
}
|
||||
|
||||
fun isFunctionalInterface(): Boolean {
|
||||
return classModifiers.contains(ClassModifier.FUN)
|
||||
}
|
||||
|
||||
fun hasOverride(): Boolean {
|
||||
return memberModifiers.contains(MemberModifier.OVERRIDE)
|
||||
}
|
||||
|
||||
+2
-1
@@ -11,7 +11,8 @@ enum class ClassModifier {
|
||||
DATA,
|
||||
INLINE,
|
||||
INNER,
|
||||
COMPANION
|
||||
COMPANION,
|
||||
FUN
|
||||
}
|
||||
|
||||
enum class MemberModifier {
|
||||
|
||||
@@ -670,6 +670,7 @@ class RawFirBuilder(
|
||||
isCompanion = (classOrObject as? KtObjectDeclaration)?.isCompanion() == true
|
||||
isData = classOrObject.hasModifier(DATA_KEYWORD)
|
||||
isInline = classOrObject.hasModifier(INLINE_KEYWORD)
|
||||
isFun = classOrObject.hasModifier(FUN_KEYWORD)
|
||||
}
|
||||
withCapturedTypeParameters {
|
||||
if (!status.isInner) context.capturedTypeParameters = context.capturedTypeParameters.clear()
|
||||
|
||||
Reference in New Issue
Block a user