Spec-Zone.ru › Kotlin 1.4

KCallable

kotlin-stdlib / kotlin.reflect / KCallable
Требования к платформе и версии: JS (1.1)
interface KCallable<out R>
Требования к платформе и версии: JVM (1.0), Native (1.3)
interface KCallable<out R> : KAnnotatedElement

Представляет вызываемый элемент, такой как функция или свойство.

Параметры

R - тип возвращаемого значения вызываемого элемента.

Свойства

Требования к платформе и версии: JVM (1.1)

isAbstract

true , если этот вызываемый элемент abstract.

abstract val isAbstract: Boolean
Требования к платформе и версии: JVM (1.1)

isFinal

true , если этот вызываемый элемент final.

abstract val isFinal: Boolean
Требования к платформе и версии: JVM (1.1)

isOpen

true , если этот вызываемый элемент open.

abstract val isOpen: Boolean
Требования к платформе и версии: JVM (1.3)

isSuspend

true , если это приостанавливаемая функция.

abstract val isSuspend: Boolean
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

name

Имя этого вызываемого элемента, как оно было объявлено в исходном коде. Если у вызываемого элемента нет имени, создаётся специальное выдуманное имя. К безымянным вызываемым элементам относятся:

abstract val name: String
Требования к платформе и версии: JVM (1.0)

parameters

Параметры, необходимые для вызова этого вызываемого элемента. Если для этого вызываемого элемента требуется this экземпляр или параметр получателя расширения, они идут первыми в списке в этом порядке.

abstract val parameters: List<KParameter>
Требования к платформе и версии: JVM (1.0), Native (1.0)

returnType

Тип значений, возвращаемых этим вызываемым элементом.

abstract val returnType: KType
Требования к платформе и версии: JVM (1.1)

typeParameters

Список параметров типа этого вызываемого элемента.

abstract val typeParameters: List<KTypeParameter>
Требования к платформе и версии: JVM (1.1)

visibility

Видимость этого вызываемого элемента или null , если его видимость не может быть представлена в Kotlin.

abstract val visibility: KVisibility?

Унаследованные свойства

Требования к платформе и версии: JVM (1.0)

annotations

Аннотации, присутствующие на этом элементе.

abstract val annotations: List<Annotation>

Функции

Требования к платформе и версии: JVM (1.0)

call

Вызывает этот вызываемый элемент со списком указанных аргументов и возвращает результат. Выбрасывает исключение, если количество указанных аргументов не равно размеру parameters или если их типы не совпадают с типами параметров.

abstract fun call(vararg args: Any?): R
Требования к платформе и версии: JVM (1.0)

callBy

Вызывает этот вызываемый элемент с указанным отображением параметров на аргументы и возвращает результат. Если параметр не найден в отображении и не является необязательным (как указано в KParameter.isOptional) или его тип не совпадает с типом предоставленного значения, выбрасывается исключение.

abstract fun callBy(args: Map<KParameter, Any?>): R

Расширяемые свойства

Требования к платформе и версии: JVM (1.1)

extensionReceiverParameter

Возвращает параметр, представляющий экземпляр получателя расширения, необходимый для вызова этого вызываемого элемента, или null , если этот вызываемый элемент не является расширением.

val KCallable<*>.extensionReceiverParameter: KParameter?
Требования к платформе и версии: JVM (1.1)

instanceParameter

Возвращает параметр, представляющий экземпляр this , необходимый для вызова этого вызываемого элемента, или null , если этот вызываемый элемент не является членом класса и, следовательно, не принимает такой параметр.

val KCallable<*>.instanceParameter: KParameter?
Требования к платформе и версии: JVM (1.0)

isAccessible

Предоставляет способ подавления проверок доступа JVM для вызываемого элемента.

var KCallable<*>.isAccessible: Boolean
Требования к платформе и версии: JVM (1.1)

valueParameters

Возвращает параметры этого вызываемого элемента, за исключением экземпляра this и параметра получателя расширения.

val KCallable<*>.valueParameters: List<KParameter>

Расширяемые функции

Требования к платформе и версии: JVM (1.3)

callSuspend

Вызывает вызываемый элемент в текущем контексте приостановки. Если вызываемый элемент не является приостанавливаемой функцией, ведёт себя как KCallable.call. В противном случае вызывает приостанавливаемую функцию с текущим продолжением.

suspend fun <R> KCallable<R>.callSuspend(
    vararg args: Any?
): R
Требования к платформе и версии: JVM (1.3)

callSuspendBy

Вызывает вызываемый элемент в текущем контексте приостановки. Если вызываемый элемент не является приостанавливаемой функцией, ведёт себя как KCallable.callBy. В противном случае вызывает приостанавливаемую функцию с текущим продолжением.

suspend fun <R> KCallable<R>.callSuspendBy(
    args: Map<KParameter, Any?>
): R
Требования к платформе и версии: JVM (1.1)

findAnnotation

Возвращает аннотацию заданного типа на этом элементе.

fun <T : Annotation> KAnnotatedElement.findAnnotation(): T?
Требования к платформе и версии: JVM (1.1)

findParameterByName

Возвращает параметр этого вызываемого элемента с заданным именем или null , если такого параметра нет.

fun KCallable<*>.findParameterByName(
    name: String
): KParameter?
Требования к платформе и версии: JVM (1.4)

hasAnnotation

Возвращает true, если этот элемент помечен аннотацией типа T.

fun <T : Annotation> KAnnotatedElement.hasAnnotation(): Boolean

Наследники

Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

KFunction

Представляет функцию с возможностями интроспекции.

interface KFunction<out R> : KCallable<R>, Function<R>
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

KProperty

Представляет свойство, например, объявление val или var. Экземпляры этого класса можно получить с помощью оператора ::.

interface KProperty<out V> : KCallable<V>

© 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-callable/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API