FIR Java annotations: create vararg or Array depending on parameter name
#KT-42346 Fixed
This commit is contained in:
@@ -21,7 +21,7 @@ FILE: kt42346.kt
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@R|MagicConstant|(vararg(intValues = <implicitArrayOf>(Q|StepRequest|.R|/StepRequest.Companion.STEP_INTO|.R|kotlin/Int.toLong|(), Q|StepRequest|.R|/StepRequest.Companion.STEP_OVER|.R|kotlin/Int.toLong|(), Q|StepRequest|.R|/StepRequest.Companion.STEP_OUT|.R|kotlin/Int.toLong|()))) public final val depth: R|kotlin/Int| = Int(42)
|
@R|MagicConstant|(intValues = <implicitArrayOf>(Q|StepRequest|.R|/StepRequest.Companion.STEP_INTO|.R|kotlin/Int.toLong|(), Q|StepRequest|.R|/StepRequest.Companion.STEP_OVER|.R|kotlin/Int.toLong|(), Q|StepRequest|.R|/StepRequest.Companion.STEP_OUT|.R|kotlin/Int.toLong|())) public final val depth: R|kotlin/Int| = Int(42)
|
||||||
public get(): R|kotlin/Int|
|
public get(): R|kotlin/Int|
|
||||||
public final annotation class KotlinMagicConstant : R|kotlin/Annotation| {
|
public final annotation class KotlinMagicConstant : R|kotlin/Annotation| {
|
||||||
public constructor(intValues: R|kotlin/LongArray|): R|KotlinMagicConstant| {
|
public constructor(intValues: R|kotlin/LongArray|): R|KotlinMagicConstant| {
|
||||||
|
|||||||
@@ -369,13 +369,13 @@ class JavaSymbolProvider(
|
|||||||
val parameterForAnnotationConstructor = buildJavaValueParameter {
|
val parameterForAnnotationConstructor = buildJavaValueParameter {
|
||||||
session = this@JavaSymbolProvider.session
|
session = this@JavaSymbolProvider.session
|
||||||
returnTypeRef = firJavaMethod.returnTypeRef
|
returnTypeRef = firJavaMethod.returnTypeRef
|
||||||
name = firJavaMethod.name
|
name = methodName
|
||||||
if (javaMethod.hasAnnotationParameterDefaultValue) {
|
if (javaMethod.hasAnnotationParameterDefaultValue) {
|
||||||
defaultValue = buildExpressionStub()
|
defaultValue = buildExpressionStub()
|
||||||
}
|
}
|
||||||
isVararg = javaMethod.returnType is JavaArrayType
|
isVararg = returnType is JavaArrayType && methodName == VALUE_METHOD_NAME
|
||||||
}
|
}
|
||||||
if (firJavaMethod.name == VALUE_METHOD_NAME) {
|
if (methodName == VALUE_METHOD_NAME) {
|
||||||
valueParametersForAnnotationConstructor.valueParameterForValue = parameterForAnnotationConstructor
|
valueParametersForAnnotationConstructor.valueParameterForValue = parameterForAnnotationConstructor
|
||||||
} else {
|
} else {
|
||||||
valueParametersForAnnotationConstructor.valueParameters += parameterForAnnotationConstructor
|
valueParametersForAnnotationConstructor.valueParameters += parameterForAnnotationConstructor
|
||||||
|
|||||||
Reference in New Issue
Block a user