FILE: targetOnPrimaryCtorParameter.kt public final annotation class NoTarget : R|kotlin/Annotation| { public constructor(): R|NoTarget| { super() } } @R|kotlin/annotation/Target|(allowedTargets = vararg(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.PROPERTY|, R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|, Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|)) public final annotation class PropValueField : R|kotlin/Annotation| { public constructor(): R|PropValueField| { super() } } @R|kotlin/annotation/Target|(allowedTargets = vararg(*(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.PROPERTY|))) public final annotation class PropertyOnly : R|kotlin/Annotation| { public constructor(): R|PropertyOnly| { super() } } @R|kotlin/annotation/Target|(allowedTargets = vararg(*(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|))) public final annotation class ParameterOnly : R|kotlin/Annotation| { public constructor(): R|ParameterOnly| { super() } } @R|kotlin/annotation/Target|(allowedTargets = vararg(*(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|))) public final annotation class FieldOnly : R|kotlin/Annotation| { public constructor(): R|FieldOnly| { super() } } @R|kotlin/annotation/Target|(allowedTargets = vararg(*(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.PROPERTY|))) public final annotation class PropertyOnly2 : R|kotlin/Annotation| { public constructor(): R|PropertyOnly2| { super() } } public final class Foo : R|kotlin/Any| { public constructor(@R|NoTarget|() @R|PropValueField|() @R|ParameterOnly|() param: R|kotlin/Int|): R|Foo| { super() } @R|PropertyOnly|() @R|PropertyOnly2|() field:@R|FieldOnly|() public final var param: R|kotlin/Int| = R|/param| public get(): R|kotlin/Int| public set(value: R|kotlin/Int|): R|kotlin/Unit| } public final fun box(): R|kotlin/String| { lval clazz: R|kotlin/reflect/KClass| = (Q|Foo|) lval parameterAnnotations: R|kotlin/collections/Set| = R|/clazz|.R|SubstitutionOverride>|>|.R|kotlin/collections/single||>().R|SubstitutionOverride|>|.R|kotlin/collections/single|().R|kotlin/reflect/KAnnotatedElement.annotations|.R|kotlin/collections/map|( = map@fun (it: R|kotlin/Annotation|): R|kotlin/String| { ^ R|/it|.R|kotlin/jvm/annotationClass|.R|SubstitutionOverride| ?: String() } ).R|kotlin/collections/toSet|() lval propertyAnnotations: R|kotlin/collections/Set| = R|/clazz|.R|kotlin/reflect/full/declaredMemberProperties|.R|kotlin/collections/single||>().R|kotlin/reflect/KAnnotatedElement.annotations|.R|kotlin/collections/map|( = map@fun (it: R|kotlin/Annotation|): R|kotlin/String| { ^ R|/it|.R|kotlin/jvm/annotationClass|.R|SubstitutionOverride| ?: String() } ).R|kotlin/collections/toSet|() lval fieldAnnotations: R|kotlin/collections/Set| = (Q|Foo|).R|kotlin/jvm/java|.R|SubstitutionOverride|(String(param)).R|java/lang/reflect/AccessibleObject.annotations|.R|kotlin/collections/map|( = map@fun (it: R|kotlin/Annotation!|): R|kotlin/String| { ^ R|/it|.R|kotlin/jvm/annotationClass|.R|SubstitutionOverride| ?: String() } ).R|kotlin/collections/toSet|() when () { !=(R|/parameterAnnotations|, R|kotlin/collections/setOf|(vararg(String(NoTarget), String(PropValueField), String(ParameterOnly)))) -> { ^box String(Parameters:).R|kotlin/String.plus|(R|/parameterAnnotations|.R|kotlin/collections/joinToString|()) } } when () { !=(R|/propertyAnnotations|, R|kotlin/collections/setOf|(vararg(String(PropertyOnly), String(PropertyOnly2)))) -> { ^box String(Property:).R|kotlin/String.plus|(R|/propertyAnnotations|.R|kotlin/collections/joinToString|()) } } when () { !=(R|/fieldAnnotations|, R|kotlin/collections/setOf|(String(FieldOnly))) -> { ^box String(Field:).R|kotlin/String.plus|(R|/fieldAnnotations|.R|kotlin/collections/joinToString|()) } } ^box String(OK) }