KMutableProperty0
interface KMutableProperty0<V> :
KProperty0<V>,
KMutableProperty<V>
(Common source) (JVM source) (JS source) (Native source)
Represents a var
-property without any kind of receiver.
Types
Setter
Setter of the property is a set
method declared alongside the property.
interface Setter<V> : KMutableProperty.Setter<V>, (V) -> Unit
Properties
setter
The setter of this mutable property, used to change the value of the property.
abstract val setter: KMutableProperty0.Setter<V>
Inherited Properties
getter
The getter of this property, used to obtain the value of the property.
abstract val getter: KProperty0.Getter<V>
setter
The setter of this mutable property, used to change the value of the property.
abstract val setter: KMutableProperty.Setter<V>
Functions
set
Modifies the value of the property.
abstract fun set(value: V)
Inherited Functions
getDelegate
Returns the value of the delegate if this is a delegated property, or null
if this property is not delegated.
See the Kotlin language documentation
for more information.
abstract fun getDelegate(): Any?
invoke
abstract operator fun invoke(): V
Extension Properties
extensionReceiverParameter
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?
instanceParameter
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?
isAccessible
Provides a way to suppress JVM access checks for a callable.
var KCallable<*>.isAccessible: Boolean
isInitialized
Returns true
if this lateinit property has been assigned a value, and false
otherwise.
val KProperty0<*>.isInitialized: Boolean
javaSetter
Returns a Java Method instance corresponding to the setter of the given mutable property,
or null
if the property has no setter, for example in case of a simple private var
in a class.
val KMutableProperty<*>.javaSetter: Method?
valueParameters
Returns parameters of this callable, excluding the this
instance and the extension receiver parameter.
val KCallable<*>.valueParameters: List<KParameter>
Extension Functions
callSuspend
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
callSuspendBy
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
findAnnotation
Returns an annotation of the given type on this element.
fun <T : Annotation> KAnnotatedElement.findAnnotation(): T?
findAnnotations
Returns all annotations of the given type on this element, including individually applied annotations as well as repeated annotations.
fun <T : Annotation> KAnnotatedElement.findAnnotations(): List<T>
fun <T : Annotation> KAnnotatedElement.findAnnotations(
klass: KClass<T>
): List<T>
findParameterByName
Returns the parameter of this callable with the given name, or null
if there's no such parameter.
fun KCallable<*>.findParameterByName(
name: String
): KParameter?
getValue
An extension operator that allows delegating a read-only property of type V to a property reference to a property of type V or its subtype.
operator fun <V> KProperty0<V>.getValue(
thisRef: Any?,
property: KProperty<*>
): V
hasAnnotation
Returns true if this element is annotated with an annotation of type T.
fun <T : Annotation> KAnnotatedElement.hasAnnotation(): Boolean
reflect
This is an experimental API. Given a class for a compiled Kotlin lambda or a function expression, returns a KFunction instance providing introspection capabilities for that lambda or function expression and its parameters. Not all features are currently supported, in particular KCallable.call and KCallable.callBy will fail at the moment.
setValue
An extension operator that allows delegating a mutable property of type V to a property reference to a mutable property of the same type V.
operator fun <V> KMutableProperty0<V>.setValue(
thisRef: Any?,
property: KProperty<*>,
value: V)