KParameter
interface KParameter : KAnnotatedElement
Представляет параметр, переданный функции или геттеру/сеттеру свойства, включая 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