RequiresOptIn
@Target([AnnotationTarget.ANNOTATION_CLASS]) annotation class RequiresOptIn
Signals that the annotated annotation class is a marker of an API that requires an explicit opt-in.
Call sites of any declaration annotated with that marker should opt in to the API either by using OptIn, or by being annotated with that marker themselves, effectively causing further propagation of the opt-in requirement.
This class requires opt-in itself and can only be used with the compiler argument -Xopt-in=kotlin.RequiresOptIn
.
Types
Constructors
<init>
Signals that the annotated annotation class is a marker of an API that requires an explicit opt-in.
RequiresOptIn(
message: String = "",
level: Level = Level.ERROR)
Properties
level
specifies how usages of API without an explicit opt-in are reported in code.
val level: Level
message
message to be reported on usages of API without an explicit opt-in, or empty string for the default message.
The default message is: "This declaration is experimental and its usage should be marked with 'Marker'
or '@OptIn(Marker::class)'", where Marker
is the opt-in requirement marker.
val message: String