Obj CEnum
Начиная с Kotlin: 2.3
expect annotation class ObjCEnum(val name: String = "", val swiftName: String = "")
Указывает компилятору Kotlin сгенерировать typedef NS_ENUM для аннотированного класса перечисления. Имя сгенерированного типа будет совпадать с именем типа перечисления, к которому добавлено "NSEnum". Это имя можно переопределить параметром "name", который используется как точное имя. Кроме того, с помощью параметра swiftName можно указать отдельное имя для Swift. В Objective-C литералы перечисления всегда будут иметь префикс с именем типа, а первая буква имени элемента всегда будет заглавной независимо от того, подразумевается ли это имя или задано явно через ObjCName или EntryName, поскольку они находятся в глобальном пространстве имён. В Swift такие префиксы для устранения неоднозначности добавляться не будут. Значения NSEnum доступны через свойство "nsEnum".
Типы
Начиная с Kotlin: 2.3
expect annotation class EntryName(val name: String, val swiftName: String = "")
Эта аннотация влияет на имена генерируемых перечислителей NS_ENUM. Она переопределяет подразумеваемое имя элемента перечисления и имя элемента перечисления, заданное с помощью @ObjCName. С помощью параметра swiftName можно указать отдельное имя для Swift. Аннотация EntryName всегда переопределяет имя для Swift, подразумеваемое или заданное другим способом, даже если swiftName не задан явно. Эта аннотация не переопределяет префикс, подразумеваемый или заданный с помощью ObjCEnum.
© 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.native/-obj-c-enum/index.html