add export from kotlin into swift of simple documentation comment #KT-65913 fixed
Merge-request: KT-MR-14622 Merged-by: Artem Olkov <artem.olkov@jetbrains.com>
This commit is contained in:
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
sealed class SirAccessor : SirCallable() {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract override val kind: SirCallableKind
|
||||
abstract override var body: SirFunctionBody?
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
sealed class SirCallable : SirElementBase(), SirDeclaration {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract val kind: SirCallableKind
|
||||
abstract var body: SirFunctionBody?
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
abstract class SirClass : SirDeclarationContainer(), SirNamedDeclaration {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract override val name: String
|
||||
abstract override val declarations: List<SirDeclaration>
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
sealed interface SirDeclaration : SirElement {
|
||||
val origin: SirOrigin
|
||||
val visibility: SirVisibility
|
||||
var documentation: String?
|
||||
var parent: SirDeclarationParent
|
||||
|
||||
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
abstract class SirEnum : SirDeclarationContainer(), SirNamedDeclaration {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract override val name: String
|
||||
abstract override val declarations: List<SirDeclaration>
|
||||
|
||||
@@ -23,7 +23,7 @@ abstract class SirFunction : SirCallable() {
|
||||
abstract val name: String
|
||||
abstract val parameters: List<SirParameter>
|
||||
abstract val returnType: SirType
|
||||
abstract var documentation: String?
|
||||
abstract override var documentation: String?
|
||||
|
||||
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
||||
visitor.visitFunction(this, data)
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
abstract class SirGetter : SirAccessor() {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract override val kind: SirCallableKind
|
||||
abstract override var body: SirFunctionBody?
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
abstract class SirImport : SirElementBase(), SirDeclaration {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract val moduleName: String
|
||||
|
||||
|
||||
@@ -17,13 +17,13 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
abstract class SirInit : SirCallable() {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract override val kind: SirCallableKind
|
||||
abstract override var body: SirFunctionBody?
|
||||
abstract val isFailable: Boolean
|
||||
abstract val parameters: List<SirParameter>
|
||||
abstract val initKind: SirInitializerKind
|
||||
abstract var documentation: String?
|
||||
|
||||
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
||||
visitor.visitInit(this, data)
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
sealed interface SirNamedDeclaration : SirDeclaration, SirNamed {
|
||||
override val origin: SirOrigin
|
||||
override val visibility: SirVisibility
|
||||
override var documentation: String?
|
||||
override var parent: SirDeclarationParent
|
||||
override val name: String
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
abstract class SirSetter : SirAccessor() {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract override val kind: SirCallableKind
|
||||
abstract override var body: SirFunctionBody?
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
abstract class SirStruct : SirDeclarationContainer(), SirNamedDeclaration {
|
||||
abstract override val origin: SirOrigin
|
||||
abstract override val visibility: SirVisibility
|
||||
abstract override var documentation: String?
|
||||
abstract override var parent: SirDeclarationParent
|
||||
abstract override val name: String
|
||||
abstract override val declarations: List<SirDeclaration>
|
||||
|
||||
@@ -22,6 +22,7 @@ abstract class SirVariable : SirDeclarationParent(), SirDeclaration {
|
||||
abstract val type: SirType
|
||||
abstract val getter: SirGetter
|
||||
abstract val setter: SirSetter?
|
||||
abstract override var documentation: String?
|
||||
|
||||
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
||||
visitor.visitVariable(this, data)
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirClassImpl
|
||||
class SirClassBuilder {
|
||||
var origin: SirOrigin = SirOrigin.Unknown
|
||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||
var documentation: String? = null
|
||||
lateinit var name: String
|
||||
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
||||
|
||||
@@ -25,10 +26,12 @@ class SirClassBuilder {
|
||||
return SirClassImpl(
|
||||
origin,
|
||||
visibility,
|
||||
documentation,
|
||||
name,
|
||||
declarations,
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalContracts::class)
|
||||
@@ -47,6 +50,7 @@ inline fun buildClassCopy(original: SirClass, init: SirClassBuilder.() -> Unit):
|
||||
val copyBuilder = SirClassBuilder()
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.visibility = original.visibility
|
||||
copyBuilder.documentation = original.documentation
|
||||
copyBuilder.name = original.name
|
||||
copyBuilder.declarations.addAll(original.declarations)
|
||||
return copyBuilder.apply(init).build()
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirEnumImpl
|
||||
class SirEnumBuilder {
|
||||
var origin: SirOrigin = SirOrigin.Unknown
|
||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||
var documentation: String? = null
|
||||
lateinit var name: String
|
||||
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
||||
val cases: MutableList<SirEnumCase> = mutableListOf()
|
||||
@@ -26,11 +27,13 @@ class SirEnumBuilder {
|
||||
return SirEnumImpl(
|
||||
origin,
|
||||
visibility,
|
||||
documentation,
|
||||
name,
|
||||
declarations,
|
||||
cases,
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalContracts::class)
|
||||
@@ -49,6 +52,7 @@ inline fun buildEnumCopy(original: SirEnum, init: SirEnumBuilder.() -> Unit): Si
|
||||
val copyBuilder = SirEnumBuilder()
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.visibility = original.visibility
|
||||
copyBuilder.documentation = original.documentation
|
||||
copyBuilder.name = original.name
|
||||
copyBuilder.declarations.addAll(original.declarations)
|
||||
copyBuilder.cases.addAll(original.cases)
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirGetterImpl
|
||||
class SirGetterBuilder {
|
||||
var origin: SirOrigin = SirOrigin.Unknown
|
||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||
var documentation: String? = null
|
||||
lateinit var kind: SirCallableKind
|
||||
var body: SirFunctionBody? = null
|
||||
|
||||
@@ -25,6 +26,7 @@ class SirGetterBuilder {
|
||||
return SirGetterImpl(
|
||||
origin,
|
||||
visibility,
|
||||
documentation,
|
||||
kind,
|
||||
body,
|
||||
)
|
||||
@@ -48,6 +50,7 @@ inline fun buildGetterCopy(original: SirGetter, init: SirGetterBuilder.() -> Uni
|
||||
val copyBuilder = SirGetterBuilder()
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.visibility = original.visibility
|
||||
copyBuilder.documentation = original.documentation
|
||||
copyBuilder.kind = original.kind
|
||||
copyBuilder.body = original.body
|
||||
return copyBuilder.apply(init).build()
|
||||
|
||||
@@ -21,15 +21,18 @@ import org.jetbrains.kotlin.sir.impl.SirImportImpl
|
||||
class SirImportBuilder {
|
||||
var origin: SirOrigin = SirOrigin.Unknown
|
||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||
var documentation: String? = null
|
||||
lateinit var moduleName: String
|
||||
|
||||
fun build(): SirImport {
|
||||
return SirImportImpl(
|
||||
origin,
|
||||
visibility,
|
||||
documentation,
|
||||
moduleName,
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalContracts::class)
|
||||
@@ -48,6 +51,7 @@ inline fun buildImportCopy(original: SirImport, init: SirImportBuilder.() -> Uni
|
||||
val copyBuilder = SirImportBuilder()
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.visibility = original.visibility
|
||||
copyBuilder.documentation = original.documentation
|
||||
copyBuilder.moduleName = original.moduleName
|
||||
return copyBuilder.apply(init).build()
|
||||
}
|
||||
|
||||
@@ -18,23 +18,23 @@ import org.jetbrains.kotlin.sir.impl.SirInitImpl
|
||||
class SirInitBuilder {
|
||||
var origin: SirOrigin = SirOrigin.Unknown
|
||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||
var documentation: String? = null
|
||||
lateinit var kind: SirCallableKind
|
||||
var body: SirFunctionBody? = null
|
||||
var isFailable: Boolean by kotlin.properties.Delegates.notNull<Boolean>()
|
||||
val parameters: MutableList<SirParameter> = mutableListOf()
|
||||
lateinit var initKind: SirInitializerKind
|
||||
var documentation: String? = null
|
||||
|
||||
fun build(): SirInit {
|
||||
return SirInitImpl(
|
||||
origin,
|
||||
visibility,
|
||||
documentation,
|
||||
kind,
|
||||
body,
|
||||
isFailable,
|
||||
parameters,
|
||||
initKind,
|
||||
documentation,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -56,11 +56,11 @@ inline fun buildInitCopy(original: SirInit, init: SirInitBuilder.() -> Unit): Si
|
||||
val copyBuilder = SirInitBuilder()
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.visibility = original.visibility
|
||||
copyBuilder.documentation = original.documentation
|
||||
copyBuilder.kind = original.kind
|
||||
copyBuilder.body = original.body
|
||||
copyBuilder.isFailable = original.isFailable
|
||||
copyBuilder.parameters.addAll(original.parameters)
|
||||
copyBuilder.initKind = original.initKind
|
||||
copyBuilder.documentation = original.documentation
|
||||
return copyBuilder.apply(init).build()
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirSetterImpl
|
||||
class SirSetterBuilder {
|
||||
var origin: SirOrigin = SirOrigin.Unknown
|
||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||
var documentation: String? = null
|
||||
lateinit var kind: SirCallableKind
|
||||
var body: SirFunctionBody? = null
|
||||
var parameterName: String = "newValue"
|
||||
@@ -26,6 +27,7 @@ class SirSetterBuilder {
|
||||
return SirSetterImpl(
|
||||
origin,
|
||||
visibility,
|
||||
documentation,
|
||||
kind,
|
||||
body,
|
||||
parameterName,
|
||||
@@ -50,6 +52,7 @@ inline fun buildSetterCopy(original: SirSetter, init: SirSetterBuilder.() -> Uni
|
||||
val copyBuilder = SirSetterBuilder()
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.visibility = original.visibility
|
||||
copyBuilder.documentation = original.documentation
|
||||
copyBuilder.kind = original.kind
|
||||
copyBuilder.body = original.body
|
||||
copyBuilder.parameterName = original.parameterName
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirStructImpl
|
||||
class SirStructBuilder {
|
||||
var origin: SirOrigin = SirOrigin.Unknown
|
||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||
var documentation: String? = null
|
||||
lateinit var name: String
|
||||
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
||||
|
||||
@@ -25,10 +26,12 @@ class SirStructBuilder {
|
||||
return SirStructImpl(
|
||||
origin,
|
||||
visibility,
|
||||
documentation,
|
||||
name,
|
||||
declarations,
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalContracts::class)
|
||||
@@ -47,6 +50,7 @@ inline fun buildStructCopy(original: SirStruct, init: SirStructBuilder.() -> Uni
|
||||
val copyBuilder = SirStructBuilder()
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.visibility = original.visibility
|
||||
copyBuilder.documentation = original.documentation
|
||||
copyBuilder.name = original.name
|
||||
copyBuilder.declarations.addAll(original.declarations)
|
||||
return copyBuilder.apply(init).build()
|
||||
|
||||
@@ -22,6 +22,7 @@ class SirVariableBuilder {
|
||||
lateinit var type: SirType
|
||||
lateinit var getter: SirGetter
|
||||
var setter: SirSetter? = null
|
||||
var documentation: String? = null
|
||||
|
||||
fun build(): SirVariable {
|
||||
return SirVariableImpl(
|
||||
@@ -31,6 +32,7 @@ class SirVariableBuilder {
|
||||
type,
|
||||
getter,
|
||||
setter,
|
||||
documentation,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -56,5 +58,6 @@ inline fun buildVariableCopy(original: SirVariable, init: SirVariableBuilder.()
|
||||
copyBuilder.type = original.type
|
||||
copyBuilder.getter = original.getter
|
||||
copyBuilder.setter = original.setter
|
||||
copyBuilder.documentation = original.documentation
|
||||
return copyBuilder.apply(init).build()
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
internal class SirClassImpl(
|
||||
override val origin: SirOrigin,
|
||||
override val visibility: SirVisibility,
|
||||
override var documentation: String?,
|
||||
override val name: String,
|
||||
override val declarations: MutableList<SirDeclaration>,
|
||||
) : SirClass() {
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
internal class SirEnumImpl(
|
||||
override val origin: SirOrigin,
|
||||
override val visibility: SirVisibility,
|
||||
override var documentation: String?,
|
||||
override val name: String,
|
||||
override val declarations: MutableList<SirDeclaration>,
|
||||
override val cases: MutableList<SirEnumCase>,
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
internal class SirGetterImpl(
|
||||
override val origin: SirOrigin,
|
||||
override val visibility: SirVisibility,
|
||||
override var documentation: String?,
|
||||
override val kind: SirCallableKind,
|
||||
override var body: SirFunctionBody?,
|
||||
) : SirGetter() {
|
||||
|
||||
@@ -20,6 +20,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
internal class SirImportImpl(
|
||||
override val origin: SirOrigin,
|
||||
override val visibility: SirVisibility,
|
||||
override var documentation: String?,
|
||||
override val moduleName: String,
|
||||
) : SirImport() {
|
||||
override lateinit var parent: SirDeclarationParent
|
||||
|
||||
@@ -17,12 +17,12 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
internal class SirInitImpl(
|
||||
override val origin: SirOrigin,
|
||||
override val visibility: SirVisibility,
|
||||
override var documentation: String?,
|
||||
override val kind: SirCallableKind,
|
||||
override var body: SirFunctionBody?,
|
||||
override val isFailable: Boolean,
|
||||
override val parameters: MutableList<SirParameter>,
|
||||
override val initKind: SirInitializerKind,
|
||||
override var documentation: String?,
|
||||
) : SirInit() {
|
||||
override lateinit var parent: SirDeclarationParent
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
internal class SirSetterImpl(
|
||||
override val origin: SirOrigin,
|
||||
override val visibility: SirVisibility,
|
||||
override var documentation: String?,
|
||||
override val kind: SirCallableKind,
|
||||
override var body: SirFunctionBody?,
|
||||
override val parameterName: String,
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
||||
internal class SirStructImpl(
|
||||
override val origin: SirOrigin,
|
||||
override val visibility: SirVisibility,
|
||||
override var documentation: String?,
|
||||
override val name: String,
|
||||
override val declarations: MutableList<SirDeclaration>,
|
||||
) : SirStruct() {
|
||||
|
||||
@@ -21,6 +21,7 @@ internal class SirVariableImpl(
|
||||
override val type: SirType,
|
||||
override val getter: SirGetter,
|
||||
override val setter: SirSetter?,
|
||||
override var documentation: String?,
|
||||
) : SirVariable() {
|
||||
override lateinit var parent: SirDeclarationParent
|
||||
|
||||
|
||||
+3
-2
@@ -37,6 +37,7 @@ object SwiftIrTree : AbstractSwiftIrTreeBuilder() {
|
||||
customParentInVisitor = rootElement
|
||||
+field("origin", originType)
|
||||
+field("visibility", swiftVisibilityType)
|
||||
+field(name = "documentation", string, nullable = true, mutable = true)
|
||||
+field("parent", declarationParent, mutable = true, isChild = false) {
|
||||
useInBaseTransformerDetection = false
|
||||
}
|
||||
@@ -89,8 +90,6 @@ object SwiftIrTree : AbstractSwiftIrTreeBuilder() {
|
||||
+listField("parameters", parameterType)
|
||||
|
||||
+field("initKind", initKind)
|
||||
|
||||
+field(name = "documentation", string, nullable = true, mutable = true)
|
||||
}
|
||||
|
||||
val function by element {
|
||||
@@ -129,6 +128,8 @@ object SwiftIrTree : AbstractSwiftIrTreeBuilder() {
|
||||
|
||||
+field("getter", getter)
|
||||
+field("setter", setter, nullable = true)
|
||||
|
||||
+field(name = "documentation", string, nullable = true, mutable = true)
|
||||
}
|
||||
|
||||
val import by element {
|
||||
|
||||
Reference in New Issue
Block a user