OptIn

@Target(allowedTargets = [AnnotationTarget.CLASS, AnnotationTarget.PROPERTY, AnnotationTarget.LOCAL_VARIABLE, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.EXPRESSION, AnnotationTarget.FILE, AnnotationTarget.TYPEALIAS])
annotation class OptIn(val markerClass: KClass<out Annotation>)(source)

Allows to use the API denoted by the given markers in the annotated file, declaration, or expression. If a declaration is annotated with OptIn, its usages are not required to opt in to that API.

markerClass specifies marker annotations that require explicit opt-in. The marker annotation is not required to be itself marked with RequiresOptIn to enable gradual migration of API from requiring opt-in to the regular one, yet declaring such OptIn yields a compilation warning.

See also Kotlin language documentation for more information.

Since Kotlin

1.3

See also

for a detailed description of opt-in semantics and propagation rules.

Properties

Link copied to clipboard

specifies marker annotations that require explicit opt-in.

Since Kotlin 1.2