KParameter
Represents a parameter passed to a function or a property getter/setter,
including
this
and extension receiver parameters.
Types
Kind
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
Properties
index
0-based index of this parameter in the parameter list of its containing callable.
abstract
val
index
:
Int
isOptional
true
if this parameter is optional and can be omitted when making a call via
KCallable.callBy
, or
false
otherwise.
abstract
val
isOptional
:
Boolean
isVararg
true
if this parameter is
vararg
.
See the
Kotlin language documentation
for more information.
abstract
val
isVararg
:
Boolean
kind
Kind of this parameter.
abstract
val
kind
:
Kind
name
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
?
Inherited Properties
annotations
Annotations which are present on this element.
abstract
val
annotations
:
List
<
Annotation
>
Extension Functions
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
>
hasAnnotation
Returns true if this element is annotated with an annotation of type T .
fun
<
T
:
Annotation
>
KAnnotatedElement
.
hasAnnotation
(
)
:
Boolean