FIR IDE: API to indicate delegated property

This commit is contained in:
Jinseong Jeon
2021-10-18 14:59:14 -07:00
committed by Ilya Kirillov
parent 96fbbb6f69
commit b52912162f
20 changed files with 281 additions and 2 deletions
@@ -46,6 +46,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 2
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -546,6 +546,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -76,6 +76,7 @@ KtSyntheticJavaPropertySymbol:
hasGetter: true
hasSetter: false
initializer: null
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isOverride: false
@@ -35,6 +35,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 123
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -79,6 +80,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: KtUnsupportedConstantValue
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -67,6 +67,7 @@ KtKotlinPropertySymbol:
hasSetter: true
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -10,6 +10,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -10,6 +10,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 10
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -0,0 +1,11 @@
// WITH_STDLIB
class MyColor(val x: Int, val y: Int, val z: Int)
class Some {
val delegate by lazy { MyColor(0x12 /* constant = 18 */, 2, 3) }
val lambda = lazy { MyColor(1, 2, 3) }
val nonLazy = MyColor(1, 2, 3)
}
@@ -0,0 +1,225 @@
KtValueParameterSymbol:
annotatedType: [] kotlin/Int
annotationClassIds: []
annotations: []
callableIdIfNonLocal: null
hasDefaultValue: false
isExtension: false
isVararg: false
name: x
origin: SOURCE
receiverType: null
symbolKind: LOCAL
deprecationStatus: null
KtValueParameterSymbol:
annotatedType: [] kotlin/Int
annotationClassIds: []
annotations: []
callableIdIfNonLocal: null
hasDefaultValue: false
isExtension: false
isVararg: false
name: y
origin: SOURCE
receiverType: null
symbolKind: LOCAL
deprecationStatus: null
KtValueParameterSymbol:
annotatedType: [] kotlin/Int
annotationClassIds: []
annotations: []
callableIdIfNonLocal: null
hasDefaultValue: false
isExtension: false
isVararg: false
name: z
origin: SOURCE
receiverType: null
symbolKind: LOCAL
deprecationStatus: null
KtConstructorSymbol:
annotatedType: [] MyColor
annotationClassIds: []
annotations: []
callableIdIfNonLocal: null
containingClassIdIfNonLocal: MyColor
dispatchType: null
hasStableParameterNames: true
isExtension: false
isPrimary: true
origin: SOURCE
receiverType: null
symbolKind: CLASS_MEMBER
typeParameters: []
valueParameters: [
KtValueParameterSymbol(x)
KtValueParameterSymbol(y)
KtValueParameterSymbol(z)
]
visibility: Public
deprecationStatus: null
KtNamedClassOrObjectSymbol:
annotationClassIds: []
annotations: []
classIdIfNonLocal: MyColor
classKind: CLASS
companionObject: null
isData: false
isExternal: false
isFun: false
isInline: false
isInner: false
modality: FINAL
name: MyColor
origin: SOURCE
superTypes: [
[] kotlin/Any
]
symbolKind: TOP_LEVEL
typeParameters: []
visibility: Public
deprecationStatus: null
KtAnonymousFunctionSymbol:
annotatedType: [] MyColor
callableIdIfNonLocal: null
hasStableParameterNames: true
isExtension: false
origin: SOURCE
receiverType: null
symbolKind: LOCAL
valueParameters: []
deprecationStatus: null
KtKotlinPropertySymbol:
annotatedType: [] MyColor
annotationClassIds: []
annotations: []
callableIdIfNonLocal: /Some.delegate
dispatchType: Some
getter: KtPropertyGetterSymbol(<getter>)
hasBackingField: false
hasGetter: true
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: true
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
isOverride: false
isStatic: false
isVal: true
modality: FINAL
name: delegate
origin: SOURCE
receiverType: null
setter: null
symbolKind: CLASS_MEMBER
visibility: Public
deprecationStatus: null
getterDeprecationStatus: null
javaGetterName: getDelegate
javaSetterName: null
setterDeprecationStatus: null
KtAnonymousFunctionSymbol:
annotatedType: [] MyColor
callableIdIfNonLocal: null
hasStableParameterNames: true
isExtension: false
origin: SOURCE
receiverType: null
symbolKind: LOCAL
valueParameters: []
deprecationStatus: null
KtKotlinPropertySymbol:
annotatedType: [] kotlin/Lazy<MyColor>
annotationClassIds: []
annotations: []
callableIdIfNonLocal: /Some.lambda
dispatchType: Some
getter: KtPropertyGetterSymbol(<getter>)
hasBackingField: true
hasGetter: true
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
isOverride: false
isStatic: false
isVal: true
modality: FINAL
name: lambda
origin: SOURCE
receiverType: null
setter: null
symbolKind: CLASS_MEMBER
visibility: Public
deprecationStatus: null
getterDeprecationStatus: null
javaGetterName: getLambda
javaSetterName: null
setterDeprecationStatus: null
KtKotlinPropertySymbol:
annotatedType: [] MyColor
annotationClassIds: []
annotations: []
callableIdIfNonLocal: /Some.nonLazy
dispatchType: Some
getter: KtPropertyGetterSymbol(<getter>)
hasBackingField: true
hasGetter: true
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
isOverride: false
isStatic: false
isVal: true
modality: FINAL
name: nonLazy
origin: SOURCE
receiverType: null
setter: null
symbolKind: CLASS_MEMBER
visibility: Public
deprecationStatus: null
getterDeprecationStatus: null
javaGetterName: getNonLazy
javaSetterName: null
setterDeprecationStatus: null
KtNamedClassOrObjectSymbol:
annotationClassIds: []
annotations: []
classIdIfNonLocal: Some
classKind: CLASS
companionObject: null
isData: false
isExternal: false
isFun: false
isInline: false
isInner: false
modality: FINAL
name: Some
origin: SOURCE
superTypes: [
[] kotlin/Any
]
symbolKind: TOP_LEVEL
typeParameters: []
visibility: Public
deprecationStatus: null
@@ -15,6 +15,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 1
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -46,6 +47,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 1
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -77,6 +79,7 @@ KtKotlinPropertySymbol:
hasSetter: true
initializer: 1
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -108,6 +111,7 @@ KtKotlinPropertySymbol:
hasSetter: true
initializer: 1
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -201,6 +205,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 1
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -289,6 +294,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 2
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -325,6 +331,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 2
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -361,6 +368,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 2
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -64,6 +64,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -106,6 +107,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -10,6 +10,7 @@ KtKotlinPropertySymbol:
hasSetter: true
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -108,6 +109,7 @@ KtKotlinPropertySymbol:
hasSetter: true
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -10,6 +10,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 10
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -61,6 +62,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: true
isFromPrimaryConstructor: false
isLateInit: false
@@ -10,6 +10,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: 10
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false
@@ -61,6 +62,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: null
isConst: false
isDelegatedProperty: false
isExtension: true
isFromPrimaryConstructor: false
isLateInit: false
@@ -190,6 +190,7 @@ KtKotlinPropertySymbol:
hasSetter: false
initializer: KtUnsupportedConstantValue
isConst: false
isDelegatedProperty: false
isExtension: false
isFromPrimaryConstructor: false
isLateInit: false