Introduce Experimental and UseExperimental annotations

#KT-22759 In Progress
This commit is contained in:
Alexander Udalov
2017-12-12 14:18:42 +01:00
parent 366f630236
commit 0bf0a315ed
31 changed files with 1551 additions and 12 deletions
@@ -0,0 +1,42 @@
package
package api {
@api.ExperimentalAPI public val property: kotlin.String = ""
@api.ExperimentalAPI public fun function(): kotlin.String
@kotlin.Experimental(changesMayBreak = {Impact.COMPILATION}, level = Level.WARNING) @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.TYPE, AnnotationTarget.CLASS, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY, AnnotationTarget.TYPEALIAS, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.EXPRESSION}) public final annotation class ExperimentalAPI : kotlin.Annotation {
public constructor ExperimentalAPI()
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
}
@api.ExperimentalAPI public typealias Typealias = kotlin.String
}
package usage1 {
@api.ExperimentalAPI public fun useAll(): kotlin.Unit
@api.ExperimentalAPI public final class Use {
public constructor Use()
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 fun useAll(): kotlin.Unit
}
}
package usage2 {
public fun useAll(): kotlin.Unit
@kotlin.UseExperimental(markerClass = {api.ExperimentalAPI::class}) public final class Use {
public constructor Use()
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 fun useAll(): kotlin.Unit
}
}
package usage3 {
public fun use(): kotlin.Unit
}