KParameter
interface KParameter : KAnnotatedElement
Представляет параметр, переданный в функцию или геттер/сеттер свойства, включая this и параметры получателя расширения.
Типы
Kind
Kind представляет определённую позицию объявления параметра в исходном коде, например, экземпляр, параметр получателя расширения или параметр значения.
enum class Kind
Свойства
index
Индекс параметра (отсчёт с 0) в списке параметров вызываемого объекта.
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?
hasAnnotation
Возвращает true, если этот элемент аннотирован аннотацией типа 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