KParameter
interface KParameter : KAnnotatedElement
Представляет параметр, передаваемый в функцию или в getter/setter свойства, включая this и параметры получателя расширения.
Типы
Kind
Kind представляет собой определённую позицию параметра в объявлении исходного кода, например, параметр экземпляра, параметр получателя расширения или параметр значения.
enum class Kind
Свойства
index
Индекс параметра (с нуля) в списке параметров содержащего вызываемого объекта.
abstract val index: Int
isOptional
true если этот параметр является необязательным и может быть опущен при вызове через KCallable.callBy, или false в противном случае.
abstract val isOptional: Boolean
isVararg
true если этот параметр vararg. Дополнительная информация в документации Kotlin по языку.
abstract val isVararg: Boolean
kind
Тип этого параметра.
abstract val kind: Kind
name
Имя этого параметра, как оно было объявлено в исходном коде, или null если параметр не имеет имени или его имя недоступно во время выполнения. Примеры безымянных параметров включают this для функций-членов, получатель расширения для функций или свойств расширения, параметры методов Java, скомпилированных без отладочной информации, и другие.
abstract val name: String?
type
Тип этого параметра. Для vararg параметра, это тип соответствующего массива, а не отдельных элементов.
abstract val type: KType
Наследуемые свойства
annotations
Аннотации, присутствующие на этом элементе.
abstract val annotations: List<Annotation>
Функции расширения
findAnnotation
Возвращает аннотацию заданного типа для данного элемента.
fun <T : Annotation> KAnnotatedElement.findAnnotation(): T?
findAnnotations
Возвращает все аннотации заданного типа для данного элемента, включая примененные индивидуально аннотации и повторяющиеся аннотации.
fun <T : Annotation> KAnnotatedElement.findAnnotations(): List<T>
fun <T : Annotation> KAnnotatedElement.findAnnotations( klass: KClass<T> ): List<T>
hasAnnotation
Возвращает true, если этот элемент имеет аннотацию типа T.
fun <T : Annotation> KAnnotatedElement.hasAnnotation(): Boolean
© 2010–2022 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