Spec-Zone.ru › Kotlin 1.7

PublishedApi

kotlin-stdlib / kotlin / PublishedApi
Требования к платформе и версии: JVM (1.1), JS (1.1), Native (1.1)
@Target([AnnotationTarget.CLASS, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY]) annotation class PublishedApi

При применении к классу или члену с внутренней видимостью позволяет использовать его из публичных inline-функций и делает его фактически публичным.

Публичные inline-функции не могут использовать непубличный API, так как при их инлайнинге эти ссылки на непубличный API нарушают ограничения доступа в месте вызова (https://kotlinlang.org/docs/reference/inline-functions.html#public-inline-restrictions).

Чтобы преодолеть это ограничение, объявление internal может быть аннотировано аннотацией @PublishedApi.

  • это позволяет вызывать это объявление из публичных inline-функций;
  • объявление становится фактически публичным, и это следует учитывать с точки зрения сохранения двоичной совместимости.

Конструкторы

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

<init>

При применении к классу или члену с внутренней видимостью позволяет использовать его из публичных inline-функций и делает его фактически публичным.

<init>()

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

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

annotationClass

Возвращает экземпляр KClass, соответствующий типу аннотации этой аннотации.

val <T : Annotation> T.annotationClass: KClass<out T>

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

Spec-Zone.ru

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