Spec-Zone.ru › Kotlin 2

ОпубликованныйApi

kotlin-stdlib/kotlin/PublishedApi

Начиная с Kotlin: 1.1

@Target(allowedTargets = [AnnotationTarget.CLASS, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY])
annotation class PublishedApi

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

Общедоступные inline-функции не могут использовать непубличный API, поскольку при их встраивании такие ссылки на непубличный API нарушали бы ограничения доступа в месте вызова (см. ограничения для общедоступных inline-функций API).

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

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

  • объявление фактически становится общедоступным, и это следует учитывать при обеспечении бинарной совместимости.

© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-published-api/index.html

Spec-Zone.ru

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