Support nested classes in annotation classes
#KT-16962 In Progress
This commit is contained in:
@@ -1,28 +1,28 @@
|
||||
annotation class Annotation2() <!ANNOTATION_CLASS_WITH_BODY!>{
|
||||
public val s: String = ""
|
||||
}<!>
|
||||
annotation class Annotation2() {
|
||||
<!ANNOTATION_CLASS_MEMBER!>public val s: String = ""<!>
|
||||
}
|
||||
|
||||
annotation class Annotation3() <!ANNOTATION_CLASS_WITH_BODY!>{
|
||||
public fun foo() {}
|
||||
}<!>
|
||||
annotation class Annotation3() {
|
||||
<!ANNOTATION_CLASS_MEMBER!>public fun foo() {}<!>
|
||||
}
|
||||
|
||||
annotation class Annotation4() <!ANNOTATION_CLASS_WITH_BODY!>{
|
||||
class Foo() {}
|
||||
}<!>
|
||||
annotation class Annotation4() {
|
||||
<!ANNOTATION_CLASS_MEMBER!>class Foo() {}<!>
|
||||
}
|
||||
|
||||
annotation class Annotation5() <!ANNOTATION_CLASS_WITH_BODY!>{
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>companion<!> object {}
|
||||
}<!>
|
||||
annotation class Annotation5() {
|
||||
companion <!ANNOTATION_CLASS_MEMBER!>object<!> {}
|
||||
}
|
||||
|
||||
annotation class Annotation6() <!ANNOTATION_CLASS_WITH_BODY!>{
|
||||
init {}
|
||||
}<!>
|
||||
annotation class Annotation6() {
|
||||
<!ANNOTATION_CLASS_MEMBER!>init {}<!>
|
||||
}
|
||||
|
||||
annotation class Annotation1() <!ANNOTATION_CLASS_WITH_BODY!>{}<!>
|
||||
annotation class Annotation1() {}
|
||||
|
||||
annotation class Annotation7(val name: String) <!ANNOTATION_CLASS_WITH_BODY!>{}<!>
|
||||
annotation class Annotation7(val name: String) {}
|
||||
|
||||
annotation class Annotation8(<!VAR_ANNOTATION_PARAMETER!>var<!> name: String = "") <!ANNOTATION_CLASS_WITH_BODY!>{}<!>
|
||||
annotation class Annotation8(<!VAR_ANNOTATION_PARAMETER!>var<!> name: String = "") {}
|
||||
|
||||
annotation class Annotation9(val name: String)
|
||||
|
||||
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
// !LANGUAGE: +NestedClassesInAnnotations
|
||||
|
||||
annotation class Foo {
|
||||
class Nested
|
||||
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>inner<!> class Inner
|
||||
|
||||
enum class E { A, B }
|
||||
object O
|
||||
interface I
|
||||
annotation class Anno(val e: E)
|
||||
|
||||
companion object {
|
||||
val x = 1
|
||||
const val y = ""
|
||||
}
|
||||
|
||||
|
||||
<!ANNOTATION_CLASS_MEMBER!>constructor(<!UNUSED_PARAMETER!>s<!>: Int) {}<!>
|
||||
<!ANNOTATION_CLASS_MEMBER!>init {}<!>
|
||||
<!ANNOTATION_CLASS_MEMBER!>fun function() {}<!>
|
||||
<!ANNOTATION_CLASS_MEMBER!>val property get() = Unit<!>
|
||||
}
|
||||
+75
@@ -0,0 +1,75 @@
|
||||
package
|
||||
|
||||
public final annotation class Foo : kotlin.Annotation {
|
||||
public constructor Foo(/*0*/ s: kotlin.Int)
|
||||
public final val property: kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun function(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public final annotation class Anno : kotlin.Annotation {
|
||||
public constructor Anno(/*0*/ e: Foo.E)
|
||||
public final val e: Foo.E
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public companion object Companion {
|
||||
private constructor Companion()
|
||||
public final val x: kotlin.Int = 1
|
||||
public const final val y: kotlin.String = ""
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final enum class E : kotlin.Enum<Foo.E> {
|
||||
enum entry A
|
||||
|
||||
enum entry B
|
||||
|
||||
private constructor E()
|
||||
public final override /*1*/ /*fake_override*/ val name: kotlin.String
|
||||
public final override /*1*/ /*fake_override*/ val ordinal: kotlin.Int
|
||||
protected final override /*1*/ /*fake_override*/ fun clone(): kotlin.Any
|
||||
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: Foo.E): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
protected/*protected and package*/ final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun finalize(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<Foo.E!>!
|
||||
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
// Static members
|
||||
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): Foo.E
|
||||
public final /*synthesized*/ fun values(): kotlin.Array<Foo.E>
|
||||
}
|
||||
|
||||
public interface I {
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final inner class Inner {
|
||||
public constructor Inner()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Nested {
|
||||
public constructor Nested()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public object O {
|
||||
private constructor O()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
}
|
||||
@@ -25,9 +25,9 @@ enum class<!SYNTAX!><!> {
|
||||
|
||||
}
|
||||
|
||||
annotation class<!SYNTAX!><!> <!ANNOTATION_CLASS_WITH_BODY!>{
|
||||
annotation class<!SYNTAX!><!> {
|
||||
|
||||
}<!>
|
||||
}
|
||||
|
||||
class Outer {
|
||||
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {
|
||||
@@ -52,9 +52,9 @@ class Outer {
|
||||
|
||||
}<!>
|
||||
|
||||
<!REDECLARATION!>annotation class<!SYNTAX!><!> <!ANNOTATION_CLASS_WITH_BODY!>{
|
||||
<!REDECLARATION!>annotation class<!SYNTAX!><!> {
|
||||
|
||||
}<!><!>
|
||||
}<!>
|
||||
}
|
||||
|
||||
fun outerFun() {
|
||||
|
||||
+1
-1
@@ -23,4 +23,4 @@ object<!SYNTAX!><!> {
|
||||
|
||||
enum class<!SYNTAX!><!> {}
|
||||
|
||||
annotation class<!SYNTAX!><!> <!ANNOTATION_CLASS_WITH_BODY!>{}<!>
|
||||
annotation class<!SYNTAX!><!> {}
|
||||
|
||||
Reference in New Issue
Block a user