KT-50862 Add name property to KtSignature

See the KDoc of the property for the reasons why
it was created
This commit is contained in:
Roman Golyshev
2022-01-26 16:09:19 +03:00
committed by Space
parent e2c7290214
commit 564e408434
123 changed files with 585 additions and 128 deletions
@@ -389,7 +389,11 @@ internal class KtFe10CallResolver(
this is PropertyDescriptor && kind == CallableMemberDescriptor.Kind.SYNTHESIZED
private fun ResolvedCall<*>.createArgumentMapping(signature: KtFunctionLikeSignature<*>): LinkedHashMap<KtExpression, KtVariableLikeSignature<KtValueParameterSymbol>> {
val parameterSignatureByName = signature.valueParameters.associateBy { it.symbol.name }
val parameterSignatureByName = signature.valueParameters.associateBy {
// ResolvedCall.valueArguments have their names affected by the `@ParameterName` annotations,
// so we use `name` instead of `symbol.name`
it.name
}
val result = LinkedHashMap<KtExpression, KtVariableLikeSignature<KtValueParameterSymbol>>()
for ((parameter, arguments) in valueArguments) {
val parameterSymbol = KtFe10DescValueParameterSymbol(parameter, analysisContext)
@@ -736,6 +736,12 @@ public class Fe10ResolveCallTestGenerated extends AbstractResolveCallTest {
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/variableAsFunctionWithParameterNameAnnotationConflict.kt");
}
@Test
@TestMetadata("variableAsFunctionWithParameterNameAnnotationConflict2.kt")
public void testVariableAsFunctionWithParameterNameAnnotationConflict2() throws Exception {
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/variableAsFunctionWithParameterNameAnnotationConflict2.kt");
}
@Test
@TestMetadata("variableAsFunctionWithParameterNameGeneric.kt")
public void testVariableAsFunctionWithParameterNameGeneric() throws Exception {
@@ -734,10 +734,14 @@ internal class KtFirCallResolver(
private fun Iterable<MutableMap.MutableEntry<FirExpression, FirValueParameter>>?.createArgumentMapping(
signatureOfCallee: KtFunctionLikeSignature<*>
): LinkedHashMap<KtExpression, KtVariableLikeSignature<KtValueParameterSymbol>> {
val paramSignatureByName = signatureOfCallee.valueParameters.associateBy { it.symbol.name }
val paramSignatureByName = signatureOfCallee.valueParameters.associateBy {
// We intentionally use `symbol.name` instead of `name` here, since
// `FirValueParameter.name` is not affected by the `@ParameterName`
it.symbol.name
}
val ktArgumentMapping = LinkedHashMap<KtExpression, KtVariableLikeSignature<KtValueParameterSymbol>>()
this?.forEach { (firExpression, firValueParameter) ->
val parameterSymbol = paramSignatureByName[firValueParameter.symbol.name] ?: return@forEach
val parameterSymbol = paramSignatureByName[firValueParameter.name] ?: return@forEach
mapArgumentExpressionToParameter(firExpression, parameterSymbol, ktArgumentMapping)
}
return ktArgumentMapping
@@ -44,7 +44,7 @@ internal class KtFirValueParameterSymbol(
) : KtValueParameterSymbol(), KtFirSymbol<FirValueParameterSymbol> {
override val psi: PsiElement? by cached { firSymbol.findPsi() }
override val name: Name by cached { firSymbol.getNameByAnnotation(resolveState) }
override val name: Name get() = withValidityAssertion { firSymbol.name }
override val isVararg: Boolean get() = withValidityAssertion { firSymbol.isVararg }
@@ -72,36 +72,3 @@ internal class KtFirValueParameterSymbol(
override fun equals(other: Any?): Boolean = symbolEquals(other)
override fun hashCode(): Int = symbolHashCode()
}
private fun FirValueParameterSymbol.getNameByAnnotation(resolveState: FirModuleResolveState): Name {
val defaultName = fir.name
if (fir.psi != null) return defaultName
// The case where PSI is null is when calling `invoke()` on a variable with functional type, e.g. `x(1)` below:
//
// fun foo(x: (item: Int) -> Unit) { x(1) }
// fun bar(x: Function1<@ParameterName("item") Int, Unit>) { x(1) }
//
// The function being called is `invoke(p1: Int)` on `Function1<Int, Unit>` which is from the stdlib, and therefore no source
// PSI for the function or its parameters. In that case, we use the `@ParameterName` annotation on the parameter type if present
// and fall back to the parameter names from the `invoke()` function (`p1`, `p2`, etc.).
//
// Note: During type resolution, `@ParameterName` type annotations are added based on the names (which are optional) in the
// function type notation. Therefore the `x` parameter in both example functions above have the same type and type annotations.
val parameterNameAnnotation =
resolvedReturnType.attributes.customAnnotations
.getAnnotationsByClassId(StandardNames.FqNames.parameterNameClassId)
.singleOrNull()?.safeAs<FirAnnotation>() ?: return defaultName
// The parent KtDeclaration is where the variable with functional type and `@ParameterName` annotation is declared.
val parentKtDeclaration =
parameterNameAnnotation.psi?.getNonStrictParentOfType<KtDeclaration>() ?: return defaultName
val parentFirDeclaration = parentKtDeclaration.getOrBuildFirOfType<FirDeclaration>(resolveState)
// Resolve to ARGUMENTS_OF_ANNOTATIONS phase to get `name` argument from mapping.
parentFirDeclaration.ensureResolved(FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS)
val nameArgument = parameterNameAnnotation.argumentMapping.mapping[StandardClassIds.Annotations.ParameterNames.parameterNameName]
val parameterNameFromAnnotation = nameArgument?.unwrapArgument()?.safeAs<FirConstExpression<*>>()?.value as? String
return parameterNameFromAnnotation?.let { Name.identifier(it) } ?: defaultName
}
@@ -736,6 +736,12 @@ public class FirResolveCallTestGenerated extends AbstractResolveCallTest {
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/variableAsFunctionWithParameterNameAnnotationConflict.kt");
}
@Test
@TestMetadata("variableAsFunctionWithParameterNameAnnotationConflict2.kt")
public void testVariableAsFunctionWithParameterNameAnnotationConflict2() throws Exception {
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/variableAsFunctionWithParameterNameAnnotationConflict2.kt");
}
@Test
@TestMetadata("variableAsFunctionWithParameterNameGeneric.kt")
public void testVariableAsFunctionWithParameterNameGeneric() throws Exception {
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.analysis.api.symbols.*
import org.jetbrains.kotlin.analysis.api.symbols.DebugSymbolRenderer.render
import org.jetbrains.kotlin.analysis.api.types.KtSubstitutor
import org.jetbrains.kotlin.analysis.api.types.KtType
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.psi.*
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
@@ -115,6 +116,7 @@ private fun KtAnalysisSession.stringRepresentation(call: KtCallInfo): String {
is KtDiagnostic -> "$severity<$factoryName: $defaultMessage>"
is KtType -> render()
is Enum<*> -> name
is Name -> asString()
else -> buildString {
val clazz = this@stringValue::class
append(clazz.simpleName!!)
@@ -6,10 +6,17 @@
package org.jetbrains.kotlin.analysis.api.symbols
import org.jetbrains.kotlin.analysis.api.ValidityTokenOwner
import org.jetbrains.kotlin.analysis.api.annotations.KtAnnotationApplication
import org.jetbrains.kotlin.analysis.api.annotations.KtConstantAnnotationValue
import org.jetbrains.kotlin.analysis.api.annotations.annotationsByClassId
import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken
import org.jetbrains.kotlin.analysis.api.types.KtSubstitutor
import org.jetbrains.kotlin.analysis.api.types.KtType
import org.jetbrains.kotlin.analysis.api.withValidityAssertion
import org.jetbrains.kotlin.builtins.StandardNames
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.name.StandardClassIds
import org.jetbrains.kotlin.utils.addToStdlib.runIf
/**
* A signature for a callable symbol. Comparing to a `KtCallableSymbol`, a signature can carry use-site type information. For example
@@ -83,6 +90,63 @@ public data class KtVariableLikeSignature<out S : KtVariableLikeSymbol>(
get() = withValidityAssertion { _returnType }
override val receiverType: KtType?
get() = withValidityAssertion { _receiverType }
/**
* A name of the variable with respect to the `@ParameterName` annotation. Can be different from the [KtVariableLikeSymbol.name].
*
* Some variables can have their names changed by special annotations like `@ParameterName(name = "newName")`. This is used to preserve
* the names of the lambda parameters in the situations like this:
*
* ```
* // compiled library
* fun foo(): (bar: String) -> Unit { ... }
*
* // source code
* fun test() {
* val action = foo()
* action("") // this call
* }
* ```
*
* Unfortunately, [symbol] for the `action("")` call will be pointing to the `Function1<P1, R>.invoke(p1: P1): R`, because we
* intentionally unwrap use-site substitution overrides. Because of this, `symbol.name` will yield `"p1"`, and not `"bar"`.
*
* To overcome this problem, [name] property is introduced: it allows to get the intended name of the parameter,
* with respect to `@ParameterName` annotation.
*
* @see org.jetbrains.kotlin.analysis.api.fir.KtSymbolByFirBuilder.unwrapUseSiteSubstitutionOverride
*/
val name: Name
get() = withValidityAssertion {
// The case where PSI is null is when calling `invoke()` on a variable with functional type, e.g. `x(1)` below:
//
// fun foo(x: (item: Int) -> Unit) { x(1) }
// fun bar(x: Function1<@ParameterName("item") Int, Unit>) { x(1) }
val nameCanBeDeclaredInAnnotation = _symbol.psi == null
runIf(nameCanBeDeclaredInAnnotation) { getValueFromParameterNameAnnotation() } ?: _symbol.name
}
private fun getValueFromParameterNameAnnotation(): Name? {
val resultingAnnotation = findParameterNameAnnotation() ?: return null
val parameterNameArgument = resultingAnnotation.arguments
.singleOrNull { it.name == StandardClassIds.Annotations.ParameterNames.parameterNameName }
val constantArgumentValue = parameterNameArgument?.expression as? KtConstantAnnotationValue ?: return null
return (constantArgumentValue.constantValue.value as? String)?.let(Name::identifier)
}
private fun findParameterNameAnnotation(): KtAnnotationApplication? {
val allParameterNameAnnotations = returnType.annotationsByClassId(StandardNames.FqNames.parameterNameClassId)
val (explicitAnnotations, implicitAnnotations) = allParameterNameAnnotations.partition { it.psi != null }
return if (explicitAnnotations.isNotEmpty()) {
explicitAnnotations.first()
} else {
implicitAnnotations.singleOrNull()
}
}
}
public fun <S : KtCallableSymbol> S.toSignature(substitutor: KtSubstitutor = KtSubstitutor.Empty(token)): KtSignature<S> {
@@ -9,13 +9,15 @@ KtSuccessCallInfo:
symbol = <constructor>(value: Annotation): AnnotationInner
valueParameters = [
KtVariableLikeSignature:
name = value
receiverType = null
returnType = Annotation
symbol = value: Annotation
]
argumentMapping = {
Annotation("v1", "v2") -> (KtVariableLikeSignature:
name = value
receiverType = null
returnType = Annotation
symbol = value: Annotation)
}
}
@@ -10,13 +10,15 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg strings: kotlin.String): Annotation
valueParameters = [
KtVariableLikeSignature:
name = strings
receiverType = null
returnType = kotlin.String
symbol = vararg strings: kotlin.String
]
argumentMapping = {
arrayOf("v1", "v2") -> (KtVariableLikeSignature:
name = strings
receiverType = null
returnType = kotlin.String
symbol = vararg strings: kotlin.String)
}
}
@@ -10,13 +10,15 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg strings: kotlin.String): Annotation
valueParameters = [
KtVariableLikeSignature:
name = strings
receiverType = null
returnType = kotlin.String
symbol = vararg strings: kotlin.String
]
argumentMapping = {
["v1", "v2"] -> (KtVariableLikeSignature:
name = strings
receiverType = null
returnType = kotlin.String
symbol = vararg strings: kotlin.String)
}
}
@@ -10,17 +10,20 @@ KtSuccessCallInfo:
symbol = kotlin/arrayOf(vararg elements: T): kotlin.Array<T>
valueParameters = [
KtVariableLikeSignature:
name = elements
receiverType = null
returnType = Annotation
symbol = vararg elements: T
]
argumentMapping = {
Annotation("v1", "v2") -> (KtVariableLikeSignature:
name = elements
receiverType = null
returnType = Annotation
symbol = vararg elements: T),
Annotation(strings = arrayOf("v3", "v4")) -> (KtVariableLikeSignature:
name = elements
receiverType = null
returnType = Annotation
symbol = vararg elements: T)
}
}
@@ -9,13 +9,15 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg annos: Annotation): AnnotationArray
valueParameters = [
KtVariableLikeSignature:
name = annos
receiverType = null
returnType = Annotation
symbol = vararg annos: Annotation
]
argumentMapping = {
[Annotation("v1", "v2"), Annotation(["v3", "v4"])] -> (KtVariableLikeSignature:
name = annos
receiverType = null
returnType = Annotation
symbol = vararg annos: Annotation)
}
}
@@ -10,8 +10,9 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg strings: kotlin.String): Annotation
valueParameters = [
KtVariableLikeSignature:
name = strings
receiverType = null
returnType = kotlin.String
symbol = vararg strings: kotlin.String
]
argumentMapping = {}
argumentMapping = {}
@@ -10,17 +10,20 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg strings: kotlin.String): Annotation
valueParameters = [
KtVariableLikeSignature:
name = strings
receiverType = null
returnType = kotlin.String
symbol = vararg strings: kotlin.String
]
argumentMapping = {
"v1" -> (KtVariableLikeSignature:
name = strings
receiverType = null
returnType = kotlin.String
symbol = vararg strings: kotlin.String),
"v2" -> (KtVariableLikeSignature:
name = strings
receiverType = null
returnType = kotlin.String
symbol = vararg strings: kotlin.String)
}
}
@@ -9,8 +9,9 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg names: kotlin.String): kotlin.Suppress
valueParameters = [
KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String
]
argumentMapping = {}
argumentMapping = {}
@@ -9,13 +9,15 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg names: kotlin.String): kotlin.Suppress
valueParameters = [
KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String
]
argumentMapping = {
"UNCHECKED_CAST" -> (KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String)
}
}
@@ -9,13 +9,15 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg names: kotlin.String): kotlin.Suppress
valueParameters = [
KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String
]
argumentMapping = {
"UNCHECKED_CAST" -> (KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String)
}
}
@@ -9,8 +9,9 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg names: kotlin.String): kotlin.Suppress
valueParameters = [
KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String
]
argumentMapping = {}
argumentMapping = {}
@@ -9,13 +9,15 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg names: kotlin.String): kotlin.Suppress
valueParameters = [
KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String
]
argumentMapping = {
"DEPRECATION" -> (KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String)
}
}
@@ -9,13 +9,15 @@ KtSuccessCallInfo:
symbol = <constructor>(name: kotlin.String): kotlin.jvm.JvmName
valueParameters = [
KtVariableLikeSignature:
name = name
receiverType = null
returnType = kotlin.String
symbol = name: kotlin.String
]
argumentMapping = {
"Foo" -> (KtVariableLikeSignature:
name = name
receiverType = null
returnType = kotlin.String
symbol = name: kotlin.String)
}
}
@@ -9,13 +9,15 @@ KtSuccessCallInfo:
symbol = <constructor>(vararg names: kotlin.String): kotlin.Suppress
valueParameters = [
KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String
]
argumentMapping = {
"s" -> (KtVariableLikeSignature:
name = names
receiverType = null
returnType = kotlin.String
symbol = vararg names: kotlin.String)
}
}
@@ -10,21 +10,25 @@ KtSuccessCallInfo:
symbol = kotlin/arrayOf(vararg elements: T): kotlin.Array<T>
valueParameters = [
KtVariableLikeSignature:
name = elements
receiverType = null
returnType = kotlin.Int
symbol = vararg elements: T
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = elements
receiverType = null
returnType = kotlin.Int
symbol = vararg elements: T),
2 -> (KtVariableLikeSignature:
name = elements
receiverType = null
returnType = kotlin.Int
symbol = vararg elements: T),
3 -> (KtVariableLikeSignature:
name = elements
receiverType = null
returnType = kotlin.Int
symbol = vararg elements: T)
}
}
@@ -13,12 +13,14 @@ KtSuccessCallInfo:
symbol = test/Target.add(<dispatch receiver>: test.Target<T>, t: T): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = t
receiverType = null
returnType = kotlin.String
symbol = t: T
]
argumentMapping = {
s -> (KtVariableLikeSignature:
name = t
receiverType = null
returnType = kotlin.String
symbol = t: T)
@@ -13,13 +13,15 @@ KtSuccessCallInfo:
symbol = test/Target.add(<dispatch receiver>: test.Target<T>, t: T): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = t
receiverType = null
returnType = T
symbol = t: T
]
argumentMapping = {
s -> (KtVariableLikeSignature:
name = t
receiverType = null
returnType = T
symbol = t: T)
}
}
@@ -4,6 +4,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = f
receiverType = null
returnType = kotlin.Function0<kotlin.Unit>
symbol = f: kotlin.Function0<kotlin.Unit>
@@ -12,12 +12,14 @@ KtSuccessCallInfo:
symbol = kotlin/Int.compareTo(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Int
symbol = other: kotlin.Int
]
argumentMapping = {
j -> (KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Int
symbol = other: kotlin.Int)
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /A.plusAssign(<dispatch receiver>: A, i: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int)
}
}
@@ -4,6 +4,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = l
receiverType = null
returnType = A
symbol = l: A
@@ -14,6 +14,7 @@ KtSuccessCallInfo:
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
@@ -22,6 +23,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = var i: kotlin.Int
symbol = var i: kotlin.Int
@@ -4,6 +4,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = var i: kotlin.Int
@@ -14,6 +14,7 @@ KtSuccessCallInfo:
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
@@ -29,6 +30,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K, V>, k: K): V
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K
@@ -47,10 +49,12 @@ KtSuccessCallInfo:
symbol = /MyMap.set(<dispatch receiver>: MyMap<K, V>, k: K, v: V): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V
@@ -14,6 +14,7 @@ KtSuccessCallInfo:
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
@@ -29,6 +30,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
@@ -47,11 +49,13 @@ KtSuccessCallInfo:
symbol = /MyMap.set(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String, v: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: kotlin.Int
]
]
@@ -14,6 +14,7 @@ KtSuccessCallInfo:
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
@@ -29,6 +30,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K1, V1>, k: K1): V1
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K1
@@ -66,10 +68,12 @@ KtSuccessCallInfo:
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,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V2
@@ -14,6 +14,7 @@ KtSuccessCallInfo:
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
@@ -29,6 +30,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
@@ -66,11 +68,13 @@ KtSuccessCallInfo:
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,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V2
]
]
@@ -12,12 +12,14 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K, V>, k: K): V
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K
]
argumentMapping = {
"a" -> (KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K)
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
]
argumentMapping = {
"a" -> (KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String)
}
}
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /A.plusAssign(<dispatch receiver>: A, i: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int)
}
}
@@ -12,12 +12,14 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K, V>, k: K): V
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K
]
argumentMapping = {
"a" -> (KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K)
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, A>, k: kotlin.String): A
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
]
argumentMapping = {
"a" -> (KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String)
}
}
@@ -4,6 +4,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int
@@ -10,13 +10,15 @@ KtSuccessCallInfo:
symbol = <constructor>(p1: kotlin.Int): Base
valueParameters = [
KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.Int
symbol = p1: kotlin.Int
]
argumentMapping = {
i + j -> (KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.Int
symbol = p1: kotlin.Int)
}
}
@@ -11,12 +11,14 @@ KtErrorCallInfo:
symbol = <constructor>(p1: kotlin.Int): Base
valueParameters = [
KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.Int
symbol = p1: kotlin.Int
]
argumentMapping = {
s -> (KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.Int
symbol = p1: kotlin.Int)
@@ -11,15 +11,17 @@ KtErrorCallInfo:
symbol = <constructor>(p1: kotlin.Int): Base
valueParameters = [
KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.Int
symbol = p1: kotlin.Int
]
argumentMapping = {
s -> (KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.Int
symbol = p1: kotlin.Int)
}
]
diagnostic = ERROR<ARGUMENT_TYPE_MISMATCH: Argument type mismatch: actual type is kotlin/String but kotlin/Int was expected>
diagnostic = ERROR<ARGUMENT_TYPE_MISMATCH: Argument type mismatch: actual type is kotlin/String but kotlin/Int was expected>
@@ -10,13 +10,15 @@ KtSuccessCallInfo:
symbol = <constructor>(p1: kotlin.Int): Sub
valueParameters = [
KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.Int
symbol = p1: kotlin.Int
]
argumentMapping = {
s.length -> (KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.Int
symbol = p1: kotlin.Int)
}
}
@@ -11,20 +11,24 @@ KtErrorCallInfo:
symbol = <constructor>(i: kotlin.Int, j: kotlin.Int): Sub
valueParameters = [
KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int,
KtVariableLikeSignature:
name = j
receiverType = null
returnType = kotlin.Int
symbol = j: kotlin.Int
]
argumentMapping = {
i -> (KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int),
j -> (KtVariableLikeSignature:
name = j
receiverType = null
returnType = kotlin.Int
symbol = j: kotlin.Int)
@@ -40,12 +44,14 @@ KtErrorCallInfo:
symbol = <constructor>(p: kotlin.Int): Sub
valueParameters = [
KtVariableLikeSignature:
name = p
receiverType = null
returnType = kotlin.Int
symbol = p: kotlin.Int
]
argumentMapping = {
i -> (KtVariableLikeSignature:
name = p
receiverType = null
returnType = kotlin.Int
symbol = p: kotlin.Int)
@@ -11,6 +11,7 @@ KtErrorCallInfo:
symbol = <constructor>(p: kotlin.Int): Sub
valueParameters = [
KtVariableLikeSignature:
name = p
receiverType = null
returnType = kotlin.Int
symbol = p: kotlin.Int
@@ -27,14 +28,16 @@ KtErrorCallInfo:
symbol = <constructor>(i: kotlin.Int, j: kotlin.Int): Sub
valueParameters = [
KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int,
KtVariableLikeSignature:
name = j
receiverType = null
returnType = kotlin.Int
symbol = j: kotlin.Int
]
argumentMapping = {}
]
diagnostic = ERROR<NONE_APPLICABLE: None of the following functions are applicable: [/Sub.Sub, /Sub.Sub]>
diagnostic = ERROR<NONE_APPLICABLE: None of the following functions are applicable: [/Sub.Sub, /Sub.Sub]>
@@ -9,13 +9,15 @@ KtSuccessCallInfo:
symbol = <constructor>(color: Color): Annotation
valueParameters = [
KtVariableLikeSignature:
name = color
receiverType = null
returnType = Color
symbol = color: Color
]
argumentMapping = {
Color.R -> (KtVariableLikeSignature:
name = color
receiverType = null
returnType = Color
symbol = color: Color)
}
}
@@ -12,12 +12,14 @@ KtSuccessCallInfo:
symbol = kotlin/Any.equals(<dispatch receiver>: kotlin.Any, other: kotlin.Any?): kotlin.Boolean
valueParameters = [
KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Any?
symbol = other: kotlin.Any?
]
argumentMapping = {
b2 -> (KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Any?
symbol = other: kotlin.Any?)
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /A.equals(<dispatch receiver>: A, other: kotlin.Any?): kotlin.Boolean
valueParameters = [
KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Any?
symbol = other: kotlin.Any?
]
argumentMapping = {
b2 -> (KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Any?
symbol = other: kotlin.Any?)
}
}
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /A.equals(<dispatch receiver>: A, other: kotlin.Any?): kotlin.Boolean
valueParameters = [
KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Any?
symbol = other: kotlin.Any?
]
argumentMapping = {
a2 -> (KtVariableLikeSignature:
name = other
receiverType = null
returnType = kotlin.Any?
symbol = other: kotlin.Any?)
}
}
@@ -10,13 +10,15 @@ KtSuccessCallInfo:
symbol = /function(a: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int)
}
}
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /function(<extension receiver>: A, a: B): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: B
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: B)
}
}
@@ -10,21 +10,25 @@ KtSuccessCallInfo:
symbol = /function(a: kotlin.Int, b: kotlin.Function1<kotlin.String, kotlin.Boolean>): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.Function1<kotlin.String, kotlin.Boolean>
symbol = b: kotlin.Function1<kotlin.String, kotlin.Boolean>
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
{ s -> true } -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.Function1<kotlin.String, kotlin.Boolean>
symbol = b: kotlin.Function1<kotlin.String, kotlin.Boolean>)
}
}
@@ -10,21 +10,25 @@ KtSuccessCallInfo:
symbol = /function(a: kotlin.Int, b: kotlin.String): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String
]
argumentMapping = {
"foo" -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String),
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int)
}
}
@@ -10,21 +10,25 @@ KtSuccessCallInfo:
symbol = /function(a: kotlin.Int, b: kotlin.Function1<kotlin.String, kotlin.Boolean>): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.Function1<kotlin.String, kotlin.Boolean>
symbol = b: kotlin.Function1<kotlin.String, kotlin.Boolean>
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
{ s -> true } -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.Function1<kotlin.String, kotlin.Boolean>
symbol = b: kotlin.Function1<kotlin.String, kotlin.Boolean>)
}
}
@@ -10,13 +10,15 @@ KtSuccessCallInfo:
symbol = /function(vararg a: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = vararg a: kotlin.Int
]
argumentMapping = {
args -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = vararg a: kotlin.Int)
}
}
@@ -10,21 +10,25 @@ KtSuccessCallInfo:
symbol = /function(a: A, b: B): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: A,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: B
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: A),
"" -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: B)
}
}
@@ -10,21 +10,25 @@ KtSuccessCallInfo:
symbol = /function(vararg a: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = vararg a: kotlin.Int
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = vararg a: kotlin.Int),
2 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = vararg a: kotlin.Int),
3 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = vararg a: kotlin.Int)
}
}
@@ -14,8 +14,9 @@ KtSuccessCallInfo:
symbol = kotlin/Function1.invoke(<dispatch receiver>: kotlin.Function1<kotlin.String, kotlin.Unit>, p1: kotlin.String): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.String
symbol = p1: kotlin.String
]
argumentMapping = {}
argumentMapping = {}
@@ -14,8 +14,9 @@ KtSuccessCallInfo:
symbol = kotlin/Function1.invoke(<dispatch receiver>: kotlin.Function1<kotlin.String, kotlin.Unit>, p1: kotlin.String): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = p1
receiverType = null
returnType = kotlin.String
symbol = p1: kotlin.String
]
argumentMapping = {}
argumentMapping = {}
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /function(<extension receiver>: kotlin.String, a: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int)
}
}
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /function(<extension receiver>: kotlin.String, a: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int)
}
}
@@ -10,13 +10,15 @@ KtSuccessCallInfo:
symbol = <constructor>(i: kotlin.Int): A
valueParameters = [
KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int
]
argumentMapping = {
42 -> (KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = i: kotlin.Int)
}
}
@@ -12,21 +12,25 @@ KtSuccessCallInfo:
symbol = /C.get(<dispatch receiver>: C, a: kotlin.Int, b: kotlin.String): kotlin.Boolean
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
"foo" -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String)
}
}
@@ -13,19 +13,22 @@ KtErrorCallInfo:
symbol = /C.get(<dispatch receiver>: C, a: kotlin.Int, b: kotlin.String): kotlin.Boolean
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int)
}
]
diagnostic = ERROR<NO_VALUE_FOR_PARAMETER: No value passed for parameter 'b'>
diagnostic = ERROR<NO_VALUE_FOR_PARAMETER: No value passed for parameter 'b'>
@@ -13,20 +13,24 @@ KtErrorCallInfo:
symbol = /C.get(<dispatch receiver>: C, a: kotlin.Int, b: kotlin.String): kotlin.Boolean
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
"foo" -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String)
@@ -13,23 +13,27 @@ KtErrorCallInfo:
symbol = /C.get(<dispatch receiver>: C, a: kotlin.Int, b: kotlin.String): kotlin.Boolean
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
"foo" -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String)
}
]
diagnostic = ERROR<TOO_MANY_ARGUMENTS: Too many arguments for public final operator fun /C.get(a: R|kotlin/Int|, b: R|kotlin/String|): R|kotlin/Boolean|>
diagnostic = ERROR<TOO_MANY_ARGUMENTS: Too many arguments for public final operator fun /C.get(a: R|kotlin/Int|, b: R|kotlin/String|): R|kotlin/Boolean|>
@@ -12,29 +12,35 @@ KtSuccessCallInfo:
symbol = /C.set(<dispatch receiver>: C, a: kotlin.Int, b: kotlin.String, value: kotlin.Boolean): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String,
KtVariableLikeSignature:
name = value
receiverType = null
returnType = kotlin.Boolean
symbol = value: kotlin.Boolean
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
"foo" -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String),
false -> (KtVariableLikeSignature:
name = value
receiverType = null
returnType = kotlin.Boolean
symbol = value: kotlin.Boolean)
}
}
@@ -13,27 +13,32 @@ KtErrorCallInfo:
symbol = /C.set(<dispatch receiver>: C, a: kotlin.Int, b: kotlin.String, value: kotlin.Boolean): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String,
KtVariableLikeSignature:
name = value
receiverType = null
returnType = kotlin.Boolean
symbol = value: kotlin.Boolean
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
false -> (KtVariableLikeSignature:
name = value
receiverType = null
returnType = kotlin.Boolean
symbol = value: kotlin.Boolean)
}
]
diagnostic = ERROR<NO_VALUE_FOR_PARAMETER: No value passed for parameter 'b'>
diagnostic = ERROR<NO_VALUE_FOR_PARAMETER: No value passed for parameter 'b'>
@@ -13,28 +13,34 @@ KtErrorCallInfo:
symbol = /C.set(<dispatch receiver>: C, a: kotlin.Int, b: kotlin.String, value: kotlin.Boolean): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String,
KtVariableLikeSignature:
name = value
receiverType = null
returnType = kotlin.Boolean
symbol = value: kotlin.Boolean
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
"foo" -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String),
3.14 -> (KtVariableLikeSignature:
name = value
receiverType = null
returnType = kotlin.Boolean
symbol = value: kotlin.Boolean)
@@ -13,31 +13,37 @@ KtErrorCallInfo:
symbol = /C.set(<dispatch receiver>: C, a: kotlin.Int, b: kotlin.String, value: kotlin.Boolean): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int,
KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String,
KtVariableLikeSignature:
name = value
receiverType = null
returnType = kotlin.Boolean
symbol = value: kotlin.Boolean
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = a
receiverType = null
returnType = kotlin.Int
symbol = a: kotlin.Int),
"foo" -> (KtVariableLikeSignature:
name = b
receiverType = null
returnType = kotlin.String
symbol = b: kotlin.String),
false -> (KtVariableLikeSignature:
name = value
receiverType = null
returnType = kotlin.Boolean
symbol = value: kotlin.Boolean)
}
]
diagnostic = ERROR<TOO_MANY_ARGUMENTS: Too many arguments for public final operator fun /C.set(a: R|kotlin/Int|, b: R|kotlin/String|, value: R|kotlin/Boolean|): R|kotlin/Unit|>
diagnostic = ERROR<TOO_MANY_ARGUMENTS: Too many arguments for public final operator fun /C.set(a: R|kotlin/Int|, b: R|kotlin/String|, value: R|kotlin/Boolean|): R|kotlin/Unit|>
@@ -10,21 +10,25 @@ KtSuccessCallInfo:
symbol = kotlin/intArrayOf(vararg elements: kotlin.Int): kotlin.IntArray
valueParameters = [
KtVariableLikeSignature:
name = elements
receiverType = null
returnType = kotlin.Int
symbol = vararg elements: kotlin.Int
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = elements
receiverType = null
returnType = kotlin.Int
symbol = vararg elements: kotlin.Int),
2 -> (KtVariableLikeSignature:
name = elements
receiverType = null
returnType = kotlin.Int
symbol = vararg elements: kotlin.Int),
3 -> (KtVariableLikeSignature:
name = elements
receiverType = null
returnType = kotlin.Int
symbol = vararg elements: kotlin.Int)
}
}
@@ -6,6 +6,7 @@ KtSuccessCallInfo:
isSafeNavigation = false
extensionReceiver = null
signature = KtVariableLikeSignature:
name = foo
receiverType = null
returnType = kotlin.Int
symbol = val foo: kotlin.Int
@@ -7,6 +7,7 @@ KtSuccessCallInfo:
type: JavaClass
extensionReceiver = null
signature = KtVariableLikeSignature:
name = foo
receiverType = null
returnType = kotlin.Int
symbol = val foo: kotlin.Int
@@ -6,6 +6,7 @@ KtSuccessCallInfo:
isSafeNavigation = false
extensionReceiver = null
signature = KtVariableLikeSignature:
name = sub
receiverType = null
returnType = ft<JavaSubClass, JavaSubClass?>
symbol = val sub: ft<JavaSubClass, JavaSubClass?>
@@ -6,8 +6,9 @@ KtSuccessCallInfo:
isSafeNavigation = false
extensionReceiver = null
signature = KtVariableLikeSignature:
name = foo
receiverType = null
returnType = kotlin.Int
symbol = var foo: kotlin.Int
simpleAccess = Write:
value = 42
value = 42
@@ -6,8 +6,9 @@ KtSuccessCallInfo:
isSafeNavigation = false
extensionReceiver = null
signature = KtVariableLikeSignature:
name = foo
receiverType = null
returnType = kotlin.Int
symbol = var foo: kotlin.Int
simpleAccess = Write:
value = null
value = null
@@ -7,8 +7,9 @@ KtSuccessCallInfo:
type: JavaClass
extensionReceiver = null
signature = KtVariableLikeSignature:
name = foo
receiverType = null
returnType = kotlin.Int
symbol = var foo: kotlin.Int
simpleAccess = Write:
value = 42
value = 42
@@ -6,6 +6,7 @@ KtSuccessCallInfo:
isSafeNavigation = false
extensionReceiver = null
signature = KtVariableLikeSignature:
name = foo
receiverType = null
returnType = kotlin.Int
symbol = val foo: kotlin.Int
@@ -7,6 +7,7 @@ KtSuccessCallInfo:
type: A
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = val i: kotlin.Int
@@ -6,6 +6,7 @@ KtSuccessCallInfo:
isSafeNavigation = false
extensionReceiver = null
signature = KtVariableLikeSignature:
name = instance
receiverType = null
returnType = KtSubClass
symbol = val instance: KtSubClass
@@ -6,8 +6,9 @@ KtSuccessCallInfo:
isSafeNavigation = false
extensionReceiver = null
signature = KtVariableLikeSignature:
name = foo
receiverType = null
returnType = kotlin.Int
symbol = var foo: kotlin.Int
simpleAccess = Write:
value = 42
value = 42
@@ -7,8 +7,9 @@ KtSuccessCallInfo:
type: A
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = var i: kotlin.Int
simpleAccess = Write:
value = 1
value = 1
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /A.foo(<dispatch receiver>: A<T>, r: R): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = r
receiverType = null
returnType = kotlin.Int
symbol = r: R
]
argumentMapping = {
1 -> (KtVariableLikeSignature:
name = r
receiverType = null
returnType = kotlin.Int
symbol = r: R)
}
}
@@ -17,6 +17,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = var i: kotlin.Int
symbol = var i: kotlin.Int
@@ -4,6 +4,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = var i: kotlin.Int
@@ -24,6 +24,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K, V>, k: K): V
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K
@@ -42,10 +43,12 @@ KtSuccessCallInfo:
symbol = /MyMap.set(<dispatch receiver>: MyMap<K, V>, k: K, v: V): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V
@@ -24,6 +24,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
@@ -42,11 +43,13 @@ KtSuccessCallInfo:
symbol = /MyMap.set(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String, v: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: kotlin.Int
]
]
@@ -12,12 +12,14 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K, V>, k: K): V
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K
]
argumentMapping = {
"a" -> (KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K)
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
]
argumentMapping = {
"a" -> (KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String)
}
}
@@ -24,6 +24,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K1, V1>, k: K1): V1
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K1
@@ -61,10 +62,12 @@ KtSuccessCallInfo:
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,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V2
@@ -24,6 +24,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
@@ -61,11 +62,13 @@ KtSuccessCallInfo:
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,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V2
]
]
@@ -17,6 +17,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = var i: kotlin.Int
symbol = var i: kotlin.Int
@@ -4,6 +4,7 @@ KtSuccessCallInfo:
dispatchReceiver = null
extensionReceiver = null
signature = KtVariableLikeSignature:
name = i
receiverType = null
returnType = kotlin.Int
symbol = var i: kotlin.Int
@@ -24,6 +24,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K, V>, k: K): V
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K
@@ -42,10 +43,12 @@ KtSuccessCallInfo:
symbol = /MyMap.set(<dispatch receiver>: MyMap<K, V>, k: K, v: V): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V
@@ -24,6 +24,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
@@ -42,10 +43,12 @@ KtSuccessCallInfo:
symbol = /MyMap.set(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String, v: kotlin.Int): kotlin.Unit
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: kotlin.Int
@@ -12,12 +12,14 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K, V>, k: K): V
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K
]
argumentMapping = {
"a" -> (KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K)
@@ -12,13 +12,15 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
]
argumentMapping = {
"a" -> (KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String)
}
}
@@ -24,6 +24,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<K1, V1>, k: K1): V1
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: K1
@@ -61,10 +62,12 @@ KtSuccessCallInfo:
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,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V2
@@ -24,6 +24,7 @@ KtSuccessCallInfo:
symbol = /MyMap.get(<dispatch receiver>: MyMap<kotlin.String, kotlin.Int>, k: kotlin.String): kotlin.Int
valueParameters = [
KtVariableLikeSignature:
name = k
receiverType = null
returnType = kotlin.String
symbol = k: kotlin.String
@@ -61,11 +62,13 @@ KtSuccessCallInfo:
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,
KtVariableLikeSignature:
name = v
receiverType = null
returnType = kotlin.Int
symbol = v: V2
]
]

Some files were not shown because too many files have changed in this diff Show More