interface KProperty<out R> : KCallable<R>
Represents a property, such as a named val
or var
declaration. Instances of this class are obtainable by the ::
operator.
See the Kotlin language documentation for more information.
R
- the type of the property.
Represents a property accessor, which is a get
or set
method declared alongside the property. See the Kotlin language documentation for more information.
interface Accessor<out R>
Getter of the property is a get
method declared alongside the property.
interface Getter<out R> : Accessor<R>, KFunction<R>
The getter of this property, used to obtain the value of the property.
abstract val getter: Getter<R>
true
if this property is const
. See the Kotlin language documentation for more information.
abstract val isConst: Boolean
true
if this property is lateinit
. See the Kotlin language documentation for more information.
abstract val isLateinit: Boolean
Returns a parameter representing the extension receiver instance needed to call this callable, or null
if this callable is not an extension.
val KCallable<*>.extensionReceiverParameter: KParameter?
Returns a parameter representing the this
instance needed to call this callable, or null
if this callable is not a member of a class and thus doesn't take such parameter.
val KCallable<*>.instanceParameter: KParameter?
Provides a way to suppress JVM access checks for a callable.
var KCallable<*>.isAccessible: Boolean
Returns a Java Field instance corresponding to the backing field of the given property, or null
if the property has no backing field.
val KProperty<*>.javaField: Field?
Returns a Java Method instance corresponding to the getter of the given property, or null
if the property has no getter, for example in case of a simple private val
in a class.
val KProperty<*>.javaGetter: Method?
Returns parameters of this callable, excluding the this
instance and the extension receiver parameter.
val KCallable<*>.valueParameters: List<KParameter>
Calls a callable in the current suspend context. If the callable is not a suspend function, behaves as KCallable.call. Otherwise, calls the suspend function with current continuation.
suspend fun <R> KCallable<R>.callSuspend( vararg args: Any? ): R
Calls a callable in the current suspend context. If the callable is not a suspend function, behaves as KCallable.callBy. Otherwise, calls the suspend function with current continuation.
suspend fun <R> KCallable<R>.callSuspendBy( args: Map<KParameter, Any?> ): R
Returns an annotation of the given type on this element.
fun <T : Annotation> KAnnotatedElement.findAnnotation(): T?
Returns the parameter of this callable with the given name, or null
if there's no such parameter.
fun KCallable<*>.findParameterByName( name: String ): KParameter?
Returns true if this element is annotated with an annotation of type T.
fun <T : Annotation> KAnnotatedElement.hasAnnotation(): Boolean
Represents a property declared as a var
.
interface KMutableProperty<R> : KProperty<R>
Represents a property without any kind of receiver. Such property is either originally declared in a receiverless context such as a package, or has the receiver bound to it.
interface KProperty0<out R> : KProperty<R>, () -> R
Represents a property, operations on which take one receiver as a parameter.
interface KProperty1<T, out R> : KProperty<R>, (T) -> R
Represents a property, operations on which take two receivers as parameters, such as an extension property declared in a class.
interface KProperty2<D, E, out R> : KProperty<R>, (D, E) -> R
interface KProperty2<T1, T2, out R> : KProperty<R>, (T1, T2) -> R
© 2010–2019 JetBrains s.r.o.
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-property/index.html