interface KParameter : KAnnotatedElement
Represents a parameter passed to a function or a property getter/setter, including this
and extension receiver parameters.
Kind represents a particular position of the parameter declaration in the source code, such as an instance, an extension receiver parameter or a value parameter.
enum class Kind
0-based index of this parameter in the parameter list of its containing callable.
abstract val index: Int
true
if this parameter is optional and can be omitted when making a call via KCallable.callBy, or false
otherwise.
abstract val isOptional: Boolean
true
if this parameter is vararg
. See the Kotlin language documentation for more information.
abstract val isVararg: Boolean
Kind of this parameter.
abstract val kind: Kind
Name of this parameter as it was declared in the source code, or null
if the parameter has no name or its name is not available at runtime. Examples of nameless parameters include this
instance for member functions, extension receiver for extension functions or properties, parameters of Java methods compiled without the debug information, and others.
abstract val name: String?
Type of this parameter. For a vararg
parameter, this is the type of the corresponding array, not the individual element.
abstract val type: KType
Annotations which are present on this element.
abstract val annotations: List<Annotation>
Returns an annotation of the given type on this element.
fun <T : Annotation> KAnnotatedElement.findAnnotation(): T?
Returns true if this element is annotated with an annotation of type T.
fun <T : Annotation> KAnnotatedElement.hasAnnotation(): Boolean
© 2010–2020 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-parameter/index.html