Files
kotlin-fork/analysis/analysis-api/testData/components/callResolver/resolveCall/compoundAssignWithArrayAccessConvention_complexReceivers.txt
T
Stanislav Erokhin 8d8fc6e291 [Analysis API] Add type to KtReceiverValue
Maybe in the future we could remove type from the
KtImplicitReceiverValue, because it has ktSymbol, and in theory
that should be enough to create corresponding KtType.
Unfortunately that is not the case for KtClassOrObjectSymbol --
it doesn't have the API for "default" type creation currently.

Regarding code in KtFirCallResolver.kt -- it seems like code there
needs some love in the future. Psi created via custom code there,
because for call x() FIR has receiver x with psi = null
2022-06-23 07:50:21 +00:00

92 lines
3.1 KiB
Plaintext
Vendored

KtSuccessCallInfo:
call = KtCompoundArrayAccessCall:
compoundAccess = CompoundAssign:
kind = PLUS_ASSIGN
operand = 1
operationPartiallyAppliedSymbol = KtPartiallyAppliedSymbol:
dispatchReceiver = KtExplicitReceiverValue:
expression = m["a"]
isSafeNavigation = false
type = kotlin.Int
extensionReceiver = null
signature = KtFunctionLikeSignature:
receiverType = null
returnType = kotlin.Int
symbol = kotlin/Int.plus(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Int
symbol = other: kotlin.Int
callableIdIfNonLocal = null
]
callableIdIfNonLocal = kotlin/Int.plus
getPartiallyAppliedSymbol = KtPartiallyAppliedSymbol:
dispatchReceiver = KtExplicitReceiverValue:
expression = m
isSafeNavigation = false
type = MyMap<kotlin.String, kotlin.Int>
extensionReceiver = null
signature = KtFunctionLikeSignature:
receiverType = null
returnType = kotlin.Int
symbol = /MyMap.get(<dispatch receiver>: MyMap<K1, V1>, k: K1): V1
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K1
callableIdIfNonLocal = null
]
callableIdIfNonLocal = /MyMap.get
indexArguments = [
"a"
]
setPartiallyAppliedSymbol = KtPartiallyAppliedSymbol:
dispatchReceiver = KtImplicitReceiverValue:
symbol = KtNamedClassOrObjectSymbol:
annotationsList: []
classIdIfNonLocal: Foo
classKind: INTERFACE
companionObject: null
isData: false
isExternal: false
isFun: false
isInline: false
isInner: false
modality: ABSTRACT
name: Foo
origin: SOURCE
superTypes: [
kotlin/Any
]
symbolKind: TOP_LEVEL
typeParameters: []
visibility: Public
type = Foo
extensionReceiver = KtExplicitReceiverValue:
expression = m
isSafeNavigation = false
type = MyMap<kotlin.String, kotlin.Int>
signature = KtFunctionLikeSignature:
receiverType = MyMap<kotlin.String, kotlin.Int>
returnType = kotlin.Unit
symbol = /Foo.set(<extension receiver>: MyMap<K2, V2>, <dispatch receiver>: Foo, k: K2, v: V2): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K2
callableIdIfNonLocal = null,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V2
callableIdIfNonLocal = null
]
callableIdIfNonLocal = /Foo.set