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:
@@ -149,6 +149,8 @@ internal fun buildSirClassFromPsi(classOrObject: KtClassOrObject): SirNamedDecla
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
documentation = classOrObject.docComment?.text
|
||||||
|
|
||||||
// HACK to support default constructors.
|
// HACK to support default constructors.
|
||||||
// todo: We should rework builder from PSI to AnalysisApi during KT-66310
|
// todo: We should rework builder from PSI to AnalysisApi during KT-66310
|
||||||
val constructors = symbol.getMemberScope().getConstructors()
|
val constructors = symbol.getMemberScope().getConstructors()
|
||||||
@@ -236,6 +238,8 @@ internal fun buildSirVariableFromPsi(variable: KtProperty): SirVariable = buildV
|
|||||||
setter = if (variable.isVar) buildSetter {
|
setter = if (variable.isVar) buildSetter {
|
||||||
kind = accessorKind
|
kind = accessorKind
|
||||||
} else null
|
} else null
|
||||||
|
|
||||||
|
documentation = variable.docComment?.text
|
||||||
}.also {
|
}.also {
|
||||||
it.getter.parent = it
|
it.getter.parent = it
|
||||||
it.setter?.parent = it
|
it.setter?.parent = it
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ public class SirAsSwiftSourcesPrinter(private val printer: SmartPrinter) : SirVi
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun visitClass(klass: SirClass): Unit = with(printer) {
|
override fun visitClass(klass: SirClass): Unit = with(printer) {
|
||||||
|
printDocumentation(klass)
|
||||||
printVisibility(klass)
|
printVisibility(klass)
|
||||||
println(
|
println(
|
||||||
"class ",
|
"class ",
|
||||||
@@ -55,6 +56,7 @@ public class SirAsSwiftSourcesPrinter(private val printer: SmartPrinter) : SirVi
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun visitVariable(variable: SirVariable): Unit = with(printer) {
|
override fun visitVariable(variable: SirVariable): Unit = with(printer) {
|
||||||
|
printDocumentation(variable)
|
||||||
printVisibility(variable)
|
printVisibility(variable)
|
||||||
printCallableKind(variable.kind)
|
printCallableKind(variable.kind)
|
||||||
print(
|
print(
|
||||||
@@ -94,7 +96,7 @@ public class SirAsSwiftSourcesPrinter(private val printer: SmartPrinter) : SirVi
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun visitFunction(function: SirFunction): Unit = with(printer) {
|
override fun visitFunction(function: SirFunction): Unit = with(printer) {
|
||||||
function.documentation?.let { println(it) }
|
printDocumentation(function)
|
||||||
printVisibility(function)
|
printVisibility(function)
|
||||||
printCallableKind(function.kind)
|
printCallableKind(function.kind)
|
||||||
print(
|
print(
|
||||||
@@ -118,7 +120,7 @@ public class SirAsSwiftSourcesPrinter(private val printer: SmartPrinter) : SirVi
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun visitInit(init: SirInit): Unit = with(printer) {
|
override fun visitInit(init: SirInit): Unit = with(printer) {
|
||||||
init.documentation?.let { println(it) }
|
printDocumentation(init)
|
||||||
printVisibility(init)
|
printVisibility(init)
|
||||||
printInitKind(init.initKind)
|
printInitKind(init.initKind)
|
||||||
print("init")
|
print("init")
|
||||||
@@ -192,6 +194,10 @@ internal fun SmartPrinter.printVisibility(decl: SirDeclaration) {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal fun SmartPrinter.printDocumentation(decl: SirDeclaration) {
|
||||||
|
decl.documentation?.lines()?.forEach { println(it.trimIndent()) }
|
||||||
|
}
|
||||||
|
|
||||||
internal fun SmartPrinter.printInitKind(decl: SirInitializerKind) {
|
internal fun SmartPrinter.printInitKind(decl: SirInitializerKind) {
|
||||||
print(
|
print(
|
||||||
when (decl) {
|
when (decl) {
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
/// Function foo description.
|
||||||
|
/// - Parameters:
|
||||||
|
/// - p: first Integer to consume
|
||||||
|
/// - Returns: Bool
|
||||||
|
public class Foo {
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
public enum NAMESPACE {
|
||||||
|
/**
|
||||||
|
* demo comment for
|
||||||
|
* NAMESPACED_CLASS
|
||||||
|
*/
|
||||||
|
public class Foo {
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
|
||||||
|
/// Function foo description.
|
||||||
|
/// - Parameters:
|
||||||
|
/// - p: first Integer to consume
|
||||||
|
/// - Returns: Bool
|
||||||
|
public var myVariable: Swift.Bool {
|
||||||
|
get
|
||||||
|
}
|
||||||
+84
-1
@@ -270,7 +270,7 @@ class SirAsSwiftSourcesPrinterTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `should print DocC comment`() {
|
fun `should print DocC comment on function`() {
|
||||||
|
|
||||||
val module = buildModule {
|
val module = buildModule {
|
||||||
name = "Test"
|
name = "Test"
|
||||||
@@ -303,6 +303,89 @@ class SirAsSwiftSourcesPrinterTests {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `should print DocC comment on class`() {
|
||||||
|
|
||||||
|
val module = buildModule {
|
||||||
|
name = "Test"
|
||||||
|
declarations.add(
|
||||||
|
buildClass {
|
||||||
|
origin = SirOrigin.Unknown
|
||||||
|
visibility = SirVisibility.PUBLIC
|
||||||
|
name = "Foo"
|
||||||
|
documentation = """
|
||||||
|
/// Function foo description.
|
||||||
|
/// - Parameters:
|
||||||
|
/// - p: first Integer to consume
|
||||||
|
/// - Returns: Bool
|
||||||
|
""".trimIndent()
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
runTest(
|
||||||
|
module,
|
||||||
|
"testData/commented_class"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `should print DocC comment on namespaced class`() {
|
||||||
|
|
||||||
|
val module = buildModule {
|
||||||
|
name = "Test"
|
||||||
|
declarations.add(
|
||||||
|
buildEnum {
|
||||||
|
name = "NAMESPACE"
|
||||||
|
declarations += buildClass {
|
||||||
|
origin = SirOrigin.Unknown
|
||||||
|
visibility = SirVisibility.PUBLIC
|
||||||
|
name = "Foo"
|
||||||
|
documentation = """
|
||||||
|
/**
|
||||||
|
* demo comment for
|
||||||
|
* NAMESPACED_CLASS
|
||||||
|
*/
|
||||||
|
""".trimIndent()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
runTest(
|
||||||
|
module,
|
||||||
|
"testData/commented_namespaced_class"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `should print DocC comment on variable`() {
|
||||||
|
|
||||||
|
val module = buildModule {
|
||||||
|
name = "Test"
|
||||||
|
declarations.add(
|
||||||
|
buildVariable {
|
||||||
|
name = "myVariable"
|
||||||
|
type = SirNominalType(SirSwiftModule.bool)
|
||||||
|
getter = buildGetter {
|
||||||
|
kind = SirCallableKind.INSTANCE_METHOD
|
||||||
|
}
|
||||||
|
documentation = """
|
||||||
|
/// Function foo description.
|
||||||
|
/// - Parameters:
|
||||||
|
/// - p: first Integer to consume
|
||||||
|
/// - Returns: Bool
|
||||||
|
""".trimIndent()
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
runTest(
|
||||||
|
module,
|
||||||
|
"testData/commented_variable"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `should print empty class`() {
|
fun `should print empty class`() {
|
||||||
|
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
sealed class SirAccessor : SirCallable() {
|
sealed class SirAccessor : SirCallable() {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract override val kind: SirCallableKind
|
abstract override val kind: SirCallableKind
|
||||||
abstract override var body: SirFunctionBody?
|
abstract override var body: SirFunctionBody?
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
sealed class SirCallable : SirElementBase(), SirDeclaration {
|
sealed class SirCallable : SirElementBase(), SirDeclaration {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract val kind: SirCallableKind
|
abstract val kind: SirCallableKind
|
||||||
abstract var body: SirFunctionBody?
|
abstract var body: SirFunctionBody?
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
abstract class SirClass : SirDeclarationContainer(), SirNamedDeclaration {
|
abstract class SirClass : SirDeclarationContainer(), SirNamedDeclaration {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract override val name: String
|
abstract override val name: String
|
||||||
abstract override val declarations: List<SirDeclaration>
|
abstract override val declarations: List<SirDeclaration>
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
sealed interface SirDeclaration : SirElement {
|
sealed interface SirDeclaration : SirElement {
|
||||||
val origin: SirOrigin
|
val origin: SirOrigin
|
||||||
val visibility: SirVisibility
|
val visibility: SirVisibility
|
||||||
|
var documentation: String?
|
||||||
var parent: SirDeclarationParent
|
var parent: SirDeclarationParent
|
||||||
|
|
||||||
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
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 class SirEnum : SirDeclarationContainer(), SirNamedDeclaration {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract override val name: String
|
abstract override val name: String
|
||||||
abstract override val declarations: List<SirDeclaration>
|
abstract override val declarations: List<SirDeclaration>
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ abstract class SirFunction : SirCallable() {
|
|||||||
abstract val name: String
|
abstract val name: String
|
||||||
abstract val parameters: List<SirParameter>
|
abstract val parameters: List<SirParameter>
|
||||||
abstract val returnType: SirType
|
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 =
|
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
||||||
visitor.visitFunction(this, data)
|
visitor.visitFunction(this, data)
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
abstract class SirGetter : SirAccessor() {
|
abstract class SirGetter : SirAccessor() {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract override val kind: SirCallableKind
|
abstract override val kind: SirCallableKind
|
||||||
abstract override var body: SirFunctionBody?
|
abstract override var body: SirFunctionBody?
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
abstract class SirImport : SirElementBase(), SirDeclaration {
|
abstract class SirImport : SirElementBase(), SirDeclaration {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract val moduleName: String
|
abstract val moduleName: String
|
||||||
|
|
||||||
|
|||||||
@@ -17,13 +17,13 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
abstract class SirInit : SirCallable() {
|
abstract class SirInit : SirCallable() {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract override val kind: SirCallableKind
|
abstract override val kind: SirCallableKind
|
||||||
abstract override var body: SirFunctionBody?
|
abstract override var body: SirFunctionBody?
|
||||||
abstract val isFailable: Boolean
|
abstract val isFailable: Boolean
|
||||||
abstract val parameters: List<SirParameter>
|
abstract val parameters: List<SirParameter>
|
||||||
abstract val initKind: SirInitializerKind
|
abstract val initKind: SirInitializerKind
|
||||||
abstract var documentation: String?
|
|
||||||
|
|
||||||
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
||||||
visitor.visitInit(this, data)
|
visitor.visitInit(this, data)
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
sealed interface SirNamedDeclaration : SirDeclaration, SirNamed {
|
sealed interface SirNamedDeclaration : SirDeclaration, SirNamed {
|
||||||
override val origin: SirOrigin
|
override val origin: SirOrigin
|
||||||
override val visibility: SirVisibility
|
override val visibility: SirVisibility
|
||||||
|
override var documentation: String?
|
||||||
override var parent: SirDeclarationParent
|
override var parent: SirDeclarationParent
|
||||||
override val name: String
|
override val name: String
|
||||||
|
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
abstract class SirSetter : SirAccessor() {
|
abstract class SirSetter : SirAccessor() {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract override val kind: SirCallableKind
|
abstract override val kind: SirCallableKind
|
||||||
abstract override var body: SirFunctionBody?
|
abstract override var body: SirFunctionBody?
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
abstract class SirStruct : SirDeclarationContainer(), SirNamedDeclaration {
|
abstract class SirStruct : SirDeclarationContainer(), SirNamedDeclaration {
|
||||||
abstract override val origin: SirOrigin
|
abstract override val origin: SirOrigin
|
||||||
abstract override val visibility: SirVisibility
|
abstract override val visibility: SirVisibility
|
||||||
|
abstract override var documentation: String?
|
||||||
abstract override var parent: SirDeclarationParent
|
abstract override var parent: SirDeclarationParent
|
||||||
abstract override val name: String
|
abstract override val name: String
|
||||||
abstract override val declarations: List<SirDeclaration>
|
abstract override val declarations: List<SirDeclaration>
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ abstract class SirVariable : SirDeclarationParent(), SirDeclaration {
|
|||||||
abstract val type: SirType
|
abstract val type: SirType
|
||||||
abstract val getter: SirGetter
|
abstract val getter: SirGetter
|
||||||
abstract val setter: SirSetter?
|
abstract val setter: SirSetter?
|
||||||
|
abstract override var documentation: String?
|
||||||
|
|
||||||
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
override fun <R, D> accept(visitor: SirVisitor<R, D>, data: D): R =
|
||||||
visitor.visitVariable(this, data)
|
visitor.visitVariable(this, data)
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirClassImpl
|
|||||||
class SirClassBuilder {
|
class SirClassBuilder {
|
||||||
var origin: SirOrigin = SirOrigin.Unknown
|
var origin: SirOrigin = SirOrigin.Unknown
|
||||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||||
|
var documentation: String? = null
|
||||||
lateinit var name: String
|
lateinit var name: String
|
||||||
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
||||||
|
|
||||||
@@ -25,10 +26,12 @@ class SirClassBuilder {
|
|||||||
return SirClassImpl(
|
return SirClassImpl(
|
||||||
origin,
|
origin,
|
||||||
visibility,
|
visibility,
|
||||||
|
documentation,
|
||||||
name,
|
name,
|
||||||
declarations,
|
declarations,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(ExperimentalContracts::class)
|
@OptIn(ExperimentalContracts::class)
|
||||||
@@ -47,6 +50,7 @@ inline fun buildClassCopy(original: SirClass, init: SirClassBuilder.() -> Unit):
|
|||||||
val copyBuilder = SirClassBuilder()
|
val copyBuilder = SirClassBuilder()
|
||||||
copyBuilder.origin = original.origin
|
copyBuilder.origin = original.origin
|
||||||
copyBuilder.visibility = original.visibility
|
copyBuilder.visibility = original.visibility
|
||||||
|
copyBuilder.documentation = original.documentation
|
||||||
copyBuilder.name = original.name
|
copyBuilder.name = original.name
|
||||||
copyBuilder.declarations.addAll(original.declarations)
|
copyBuilder.declarations.addAll(original.declarations)
|
||||||
return copyBuilder.apply(init).build()
|
return copyBuilder.apply(init).build()
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirEnumImpl
|
|||||||
class SirEnumBuilder {
|
class SirEnumBuilder {
|
||||||
var origin: SirOrigin = SirOrigin.Unknown
|
var origin: SirOrigin = SirOrigin.Unknown
|
||||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||||
|
var documentation: String? = null
|
||||||
lateinit var name: String
|
lateinit var name: String
|
||||||
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
||||||
val cases: MutableList<SirEnumCase> = mutableListOf()
|
val cases: MutableList<SirEnumCase> = mutableListOf()
|
||||||
@@ -26,11 +27,13 @@ class SirEnumBuilder {
|
|||||||
return SirEnumImpl(
|
return SirEnumImpl(
|
||||||
origin,
|
origin,
|
||||||
visibility,
|
visibility,
|
||||||
|
documentation,
|
||||||
name,
|
name,
|
||||||
declarations,
|
declarations,
|
||||||
cases,
|
cases,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(ExperimentalContracts::class)
|
@OptIn(ExperimentalContracts::class)
|
||||||
@@ -49,6 +52,7 @@ inline fun buildEnumCopy(original: SirEnum, init: SirEnumBuilder.() -> Unit): Si
|
|||||||
val copyBuilder = SirEnumBuilder()
|
val copyBuilder = SirEnumBuilder()
|
||||||
copyBuilder.origin = original.origin
|
copyBuilder.origin = original.origin
|
||||||
copyBuilder.visibility = original.visibility
|
copyBuilder.visibility = original.visibility
|
||||||
|
copyBuilder.documentation = original.documentation
|
||||||
copyBuilder.name = original.name
|
copyBuilder.name = original.name
|
||||||
copyBuilder.declarations.addAll(original.declarations)
|
copyBuilder.declarations.addAll(original.declarations)
|
||||||
copyBuilder.cases.addAll(original.cases)
|
copyBuilder.cases.addAll(original.cases)
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirGetterImpl
|
|||||||
class SirGetterBuilder {
|
class SirGetterBuilder {
|
||||||
var origin: SirOrigin = SirOrigin.Unknown
|
var origin: SirOrigin = SirOrigin.Unknown
|
||||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||||
|
var documentation: String? = null
|
||||||
lateinit var kind: SirCallableKind
|
lateinit var kind: SirCallableKind
|
||||||
var body: SirFunctionBody? = null
|
var body: SirFunctionBody? = null
|
||||||
|
|
||||||
@@ -25,6 +26,7 @@ class SirGetterBuilder {
|
|||||||
return SirGetterImpl(
|
return SirGetterImpl(
|
||||||
origin,
|
origin,
|
||||||
visibility,
|
visibility,
|
||||||
|
documentation,
|
||||||
kind,
|
kind,
|
||||||
body,
|
body,
|
||||||
)
|
)
|
||||||
@@ -48,6 +50,7 @@ inline fun buildGetterCopy(original: SirGetter, init: SirGetterBuilder.() -> Uni
|
|||||||
val copyBuilder = SirGetterBuilder()
|
val copyBuilder = SirGetterBuilder()
|
||||||
copyBuilder.origin = original.origin
|
copyBuilder.origin = original.origin
|
||||||
copyBuilder.visibility = original.visibility
|
copyBuilder.visibility = original.visibility
|
||||||
|
copyBuilder.documentation = original.documentation
|
||||||
copyBuilder.kind = original.kind
|
copyBuilder.kind = original.kind
|
||||||
copyBuilder.body = original.body
|
copyBuilder.body = original.body
|
||||||
return copyBuilder.apply(init).build()
|
return copyBuilder.apply(init).build()
|
||||||
|
|||||||
@@ -21,15 +21,18 @@ import org.jetbrains.kotlin.sir.impl.SirImportImpl
|
|||||||
class SirImportBuilder {
|
class SirImportBuilder {
|
||||||
var origin: SirOrigin = SirOrigin.Unknown
|
var origin: SirOrigin = SirOrigin.Unknown
|
||||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||||
|
var documentation: String? = null
|
||||||
lateinit var moduleName: String
|
lateinit var moduleName: String
|
||||||
|
|
||||||
fun build(): SirImport {
|
fun build(): SirImport {
|
||||||
return SirImportImpl(
|
return SirImportImpl(
|
||||||
origin,
|
origin,
|
||||||
visibility,
|
visibility,
|
||||||
|
documentation,
|
||||||
moduleName,
|
moduleName,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(ExperimentalContracts::class)
|
@OptIn(ExperimentalContracts::class)
|
||||||
@@ -48,6 +51,7 @@ inline fun buildImportCopy(original: SirImport, init: SirImportBuilder.() -> Uni
|
|||||||
val copyBuilder = SirImportBuilder()
|
val copyBuilder = SirImportBuilder()
|
||||||
copyBuilder.origin = original.origin
|
copyBuilder.origin = original.origin
|
||||||
copyBuilder.visibility = original.visibility
|
copyBuilder.visibility = original.visibility
|
||||||
|
copyBuilder.documentation = original.documentation
|
||||||
copyBuilder.moduleName = original.moduleName
|
copyBuilder.moduleName = original.moduleName
|
||||||
return copyBuilder.apply(init).build()
|
return copyBuilder.apply(init).build()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,23 +18,23 @@ import org.jetbrains.kotlin.sir.impl.SirInitImpl
|
|||||||
class SirInitBuilder {
|
class SirInitBuilder {
|
||||||
var origin: SirOrigin = SirOrigin.Unknown
|
var origin: SirOrigin = SirOrigin.Unknown
|
||||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||||
|
var documentation: String? = null
|
||||||
lateinit var kind: SirCallableKind
|
lateinit var kind: SirCallableKind
|
||||||
var body: SirFunctionBody? = null
|
var body: SirFunctionBody? = null
|
||||||
var isFailable: Boolean by kotlin.properties.Delegates.notNull<Boolean>()
|
var isFailable: Boolean by kotlin.properties.Delegates.notNull<Boolean>()
|
||||||
val parameters: MutableList<SirParameter> = mutableListOf()
|
val parameters: MutableList<SirParameter> = mutableListOf()
|
||||||
lateinit var initKind: SirInitializerKind
|
lateinit var initKind: SirInitializerKind
|
||||||
var documentation: String? = null
|
|
||||||
|
|
||||||
fun build(): SirInit {
|
fun build(): SirInit {
|
||||||
return SirInitImpl(
|
return SirInitImpl(
|
||||||
origin,
|
origin,
|
||||||
visibility,
|
visibility,
|
||||||
|
documentation,
|
||||||
kind,
|
kind,
|
||||||
body,
|
body,
|
||||||
isFailable,
|
isFailable,
|
||||||
parameters,
|
parameters,
|
||||||
initKind,
|
initKind,
|
||||||
documentation,
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -56,11 +56,11 @@ inline fun buildInitCopy(original: SirInit, init: SirInitBuilder.() -> Unit): Si
|
|||||||
val copyBuilder = SirInitBuilder()
|
val copyBuilder = SirInitBuilder()
|
||||||
copyBuilder.origin = original.origin
|
copyBuilder.origin = original.origin
|
||||||
copyBuilder.visibility = original.visibility
|
copyBuilder.visibility = original.visibility
|
||||||
|
copyBuilder.documentation = original.documentation
|
||||||
copyBuilder.kind = original.kind
|
copyBuilder.kind = original.kind
|
||||||
copyBuilder.body = original.body
|
copyBuilder.body = original.body
|
||||||
copyBuilder.isFailable = original.isFailable
|
copyBuilder.isFailable = original.isFailable
|
||||||
copyBuilder.parameters.addAll(original.parameters)
|
copyBuilder.parameters.addAll(original.parameters)
|
||||||
copyBuilder.initKind = original.initKind
|
copyBuilder.initKind = original.initKind
|
||||||
copyBuilder.documentation = original.documentation
|
|
||||||
return copyBuilder.apply(init).build()
|
return copyBuilder.apply(init).build()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirSetterImpl
|
|||||||
class SirSetterBuilder {
|
class SirSetterBuilder {
|
||||||
var origin: SirOrigin = SirOrigin.Unknown
|
var origin: SirOrigin = SirOrigin.Unknown
|
||||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||||
|
var documentation: String? = null
|
||||||
lateinit var kind: SirCallableKind
|
lateinit var kind: SirCallableKind
|
||||||
var body: SirFunctionBody? = null
|
var body: SirFunctionBody? = null
|
||||||
var parameterName: String = "newValue"
|
var parameterName: String = "newValue"
|
||||||
@@ -26,6 +27,7 @@ class SirSetterBuilder {
|
|||||||
return SirSetterImpl(
|
return SirSetterImpl(
|
||||||
origin,
|
origin,
|
||||||
visibility,
|
visibility,
|
||||||
|
documentation,
|
||||||
kind,
|
kind,
|
||||||
body,
|
body,
|
||||||
parameterName,
|
parameterName,
|
||||||
@@ -50,6 +52,7 @@ inline fun buildSetterCopy(original: SirSetter, init: SirSetterBuilder.() -> Uni
|
|||||||
val copyBuilder = SirSetterBuilder()
|
val copyBuilder = SirSetterBuilder()
|
||||||
copyBuilder.origin = original.origin
|
copyBuilder.origin = original.origin
|
||||||
copyBuilder.visibility = original.visibility
|
copyBuilder.visibility = original.visibility
|
||||||
|
copyBuilder.documentation = original.documentation
|
||||||
copyBuilder.kind = original.kind
|
copyBuilder.kind = original.kind
|
||||||
copyBuilder.body = original.body
|
copyBuilder.body = original.body
|
||||||
copyBuilder.parameterName = original.parameterName
|
copyBuilder.parameterName = original.parameterName
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.impl.SirStructImpl
|
|||||||
class SirStructBuilder {
|
class SirStructBuilder {
|
||||||
var origin: SirOrigin = SirOrigin.Unknown
|
var origin: SirOrigin = SirOrigin.Unknown
|
||||||
var visibility: SirVisibility = SirVisibility.PUBLIC
|
var visibility: SirVisibility = SirVisibility.PUBLIC
|
||||||
|
var documentation: String? = null
|
||||||
lateinit var name: String
|
lateinit var name: String
|
||||||
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
val declarations: MutableList<SirDeclaration> = mutableListOf()
|
||||||
|
|
||||||
@@ -25,10 +26,12 @@ class SirStructBuilder {
|
|||||||
return SirStructImpl(
|
return SirStructImpl(
|
||||||
origin,
|
origin,
|
||||||
visibility,
|
visibility,
|
||||||
|
documentation,
|
||||||
name,
|
name,
|
||||||
declarations,
|
declarations,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(ExperimentalContracts::class)
|
@OptIn(ExperimentalContracts::class)
|
||||||
@@ -47,6 +50,7 @@ inline fun buildStructCopy(original: SirStruct, init: SirStructBuilder.() -> Uni
|
|||||||
val copyBuilder = SirStructBuilder()
|
val copyBuilder = SirStructBuilder()
|
||||||
copyBuilder.origin = original.origin
|
copyBuilder.origin = original.origin
|
||||||
copyBuilder.visibility = original.visibility
|
copyBuilder.visibility = original.visibility
|
||||||
|
copyBuilder.documentation = original.documentation
|
||||||
copyBuilder.name = original.name
|
copyBuilder.name = original.name
|
||||||
copyBuilder.declarations.addAll(original.declarations)
|
copyBuilder.declarations.addAll(original.declarations)
|
||||||
return copyBuilder.apply(init).build()
|
return copyBuilder.apply(init).build()
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ class SirVariableBuilder {
|
|||||||
lateinit var type: SirType
|
lateinit var type: SirType
|
||||||
lateinit var getter: SirGetter
|
lateinit var getter: SirGetter
|
||||||
var setter: SirSetter? = null
|
var setter: SirSetter? = null
|
||||||
|
var documentation: String? = null
|
||||||
|
|
||||||
fun build(): SirVariable {
|
fun build(): SirVariable {
|
||||||
return SirVariableImpl(
|
return SirVariableImpl(
|
||||||
@@ -31,6 +32,7 @@ class SirVariableBuilder {
|
|||||||
type,
|
type,
|
||||||
getter,
|
getter,
|
||||||
setter,
|
setter,
|
||||||
|
documentation,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -56,5 +58,6 @@ inline fun buildVariableCopy(original: SirVariable, init: SirVariableBuilder.()
|
|||||||
copyBuilder.type = original.type
|
copyBuilder.type = original.type
|
||||||
copyBuilder.getter = original.getter
|
copyBuilder.getter = original.getter
|
||||||
copyBuilder.setter = original.setter
|
copyBuilder.setter = original.setter
|
||||||
|
copyBuilder.documentation = original.documentation
|
||||||
return copyBuilder.apply(init).build()
|
return copyBuilder.apply(init).build()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
internal class SirClassImpl(
|
internal class SirClassImpl(
|
||||||
override val origin: SirOrigin,
|
override val origin: SirOrigin,
|
||||||
override val visibility: SirVisibility,
|
override val visibility: SirVisibility,
|
||||||
|
override var documentation: String?,
|
||||||
override val name: String,
|
override val name: String,
|
||||||
override val declarations: MutableList<SirDeclaration>,
|
override val declarations: MutableList<SirDeclaration>,
|
||||||
) : SirClass() {
|
) : SirClass() {
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
internal class SirEnumImpl(
|
internal class SirEnumImpl(
|
||||||
override val origin: SirOrigin,
|
override val origin: SirOrigin,
|
||||||
override val visibility: SirVisibility,
|
override val visibility: SirVisibility,
|
||||||
|
override var documentation: String?,
|
||||||
override val name: String,
|
override val name: String,
|
||||||
override val declarations: MutableList<SirDeclaration>,
|
override val declarations: MutableList<SirDeclaration>,
|
||||||
override val cases: MutableList<SirEnumCase>,
|
override val cases: MutableList<SirEnumCase>,
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
internal class SirGetterImpl(
|
internal class SirGetterImpl(
|
||||||
override val origin: SirOrigin,
|
override val origin: SirOrigin,
|
||||||
override val visibility: SirVisibility,
|
override val visibility: SirVisibility,
|
||||||
|
override var documentation: String?,
|
||||||
override val kind: SirCallableKind,
|
override val kind: SirCallableKind,
|
||||||
override var body: SirFunctionBody?,
|
override var body: SirFunctionBody?,
|
||||||
) : SirGetter() {
|
) : SirGetter() {
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
internal class SirImportImpl(
|
internal class SirImportImpl(
|
||||||
override val origin: SirOrigin,
|
override val origin: SirOrigin,
|
||||||
override val visibility: SirVisibility,
|
override val visibility: SirVisibility,
|
||||||
|
override var documentation: String?,
|
||||||
override val moduleName: String,
|
override val moduleName: String,
|
||||||
) : SirImport() {
|
) : SirImport() {
|
||||||
override lateinit var parent: SirDeclarationParent
|
override lateinit var parent: SirDeclarationParent
|
||||||
|
|||||||
@@ -17,12 +17,12 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
internal class SirInitImpl(
|
internal class SirInitImpl(
|
||||||
override val origin: SirOrigin,
|
override val origin: SirOrigin,
|
||||||
override val visibility: SirVisibility,
|
override val visibility: SirVisibility,
|
||||||
|
override var documentation: String?,
|
||||||
override val kind: SirCallableKind,
|
override val kind: SirCallableKind,
|
||||||
override var body: SirFunctionBody?,
|
override var body: SirFunctionBody?,
|
||||||
override val isFailable: Boolean,
|
override val isFailable: Boolean,
|
||||||
override val parameters: MutableList<SirParameter>,
|
override val parameters: MutableList<SirParameter>,
|
||||||
override val initKind: SirInitializerKind,
|
override val initKind: SirInitializerKind,
|
||||||
override var documentation: String?,
|
|
||||||
) : SirInit() {
|
) : SirInit() {
|
||||||
override lateinit var parent: SirDeclarationParent
|
override lateinit var parent: SirDeclarationParent
|
||||||
|
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
internal class SirSetterImpl(
|
internal class SirSetterImpl(
|
||||||
override val origin: SirOrigin,
|
override val origin: SirOrigin,
|
||||||
override val visibility: SirVisibility,
|
override val visibility: SirVisibility,
|
||||||
|
override var documentation: String?,
|
||||||
override val kind: SirCallableKind,
|
override val kind: SirCallableKind,
|
||||||
override var body: SirFunctionBody?,
|
override var body: SirFunctionBody?,
|
||||||
override val parameterName: String,
|
override val parameterName: String,
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.sir.visitors.SirVisitor
|
|||||||
internal class SirStructImpl(
|
internal class SirStructImpl(
|
||||||
override val origin: SirOrigin,
|
override val origin: SirOrigin,
|
||||||
override val visibility: SirVisibility,
|
override val visibility: SirVisibility,
|
||||||
|
override var documentation: String?,
|
||||||
override val name: String,
|
override val name: String,
|
||||||
override val declarations: MutableList<SirDeclaration>,
|
override val declarations: MutableList<SirDeclaration>,
|
||||||
) : SirStruct() {
|
) : SirStruct() {
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ internal class SirVariableImpl(
|
|||||||
override val type: SirType,
|
override val type: SirType,
|
||||||
override val getter: SirGetter,
|
override val getter: SirGetter,
|
||||||
override val setter: SirSetter?,
|
override val setter: SirSetter?,
|
||||||
|
override var documentation: String?,
|
||||||
) : SirVariable() {
|
) : SirVariable() {
|
||||||
override lateinit var parent: SirDeclarationParent
|
override lateinit var parent: SirDeclarationParent
|
||||||
|
|
||||||
|
|||||||
+3
-2
@@ -37,6 +37,7 @@ object SwiftIrTree : AbstractSwiftIrTreeBuilder() {
|
|||||||
customParentInVisitor = rootElement
|
customParentInVisitor = rootElement
|
||||||
+field("origin", originType)
|
+field("origin", originType)
|
||||||
+field("visibility", swiftVisibilityType)
|
+field("visibility", swiftVisibilityType)
|
||||||
|
+field(name = "documentation", string, nullable = true, mutable = true)
|
||||||
+field("parent", declarationParent, mutable = true, isChild = false) {
|
+field("parent", declarationParent, mutable = true, isChild = false) {
|
||||||
useInBaseTransformerDetection = false
|
useInBaseTransformerDetection = false
|
||||||
}
|
}
|
||||||
@@ -89,8 +90,6 @@ object SwiftIrTree : AbstractSwiftIrTreeBuilder() {
|
|||||||
+listField("parameters", parameterType)
|
+listField("parameters", parameterType)
|
||||||
|
|
||||||
+field("initKind", initKind)
|
+field("initKind", initKind)
|
||||||
|
|
||||||
+field(name = "documentation", string, nullable = true, mutable = true)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
val function by element {
|
val function by element {
|
||||||
@@ -129,6 +128,8 @@ object SwiftIrTree : AbstractSwiftIrTreeBuilder() {
|
|||||||
|
|
||||||
+field("getter", getter)
|
+field("getter", getter)
|
||||||
+field("setter", setter, nullable = true)
|
+field("setter", setter, nullable = true)
|
||||||
|
|
||||||
|
+field(name = "documentation", string, nullable = true, mutable = true)
|
||||||
}
|
}
|
||||||
|
|
||||||
val import by element {
|
val import by element {
|
||||||
|
|||||||
+48
@@ -72,6 +72,10 @@ public enum namespace {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* demo comment for
|
||||||
|
* NAMESPACED_CLASS
|
||||||
|
*/
|
||||||
public class NAMESPACED_CLASS {
|
public class NAMESPACED_CLASS {
|
||||||
public init() {
|
public init() {
|
||||||
fatalError()
|
fatalError()
|
||||||
@@ -81,19 +85,31 @@ public enum namespace {
|
|||||||
public init() {
|
public init() {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for INSIDE_CLASS with package
|
||||||
|
*/
|
||||||
public class INSIDE_CLASS {
|
public class INSIDE_CLASS {
|
||||||
public init() {
|
public init() {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for func on class with package
|
||||||
|
*/
|
||||||
public func foo() -> Swift.Bool {
|
public func foo() -> Swift.Bool {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for val on class with package
|
||||||
|
*/
|
||||||
public var my_value: Swift.UInt32 {
|
public var my_value: Swift.UInt32 {
|
||||||
get {
|
get {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for var on class with package
|
||||||
|
*/
|
||||||
public var my_variable: Swift.Int64 {
|
public var my_variable: Swift.Int64 {
|
||||||
get {
|
get {
|
||||||
fatalError()
|
fatalError()
|
||||||
@@ -105,32 +121,55 @@ public enum namespace {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for class without public constructor
|
||||||
|
*/
|
||||||
public class ClassWithNonPublicConstructor {
|
public class ClassWithNonPublicConstructor {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for class without package
|
||||||
|
* in order to support documentation for primary constructor - we will have to start parsing comment content:
|
||||||
|
* https://kotlinlang.org/docs/kotlin-doc.html#constructor
|
||||||
|
*/
|
||||||
public class Foo {
|
public class Foo {
|
||||||
public init(
|
public init(
|
||||||
a: Swift.Int32
|
a: Swift.Int32
|
||||||
) {
|
) {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for secondary constructor
|
||||||
|
*/
|
||||||
public init(
|
public init(
|
||||||
f: Swift.Float
|
f: Swift.Float
|
||||||
) {
|
) {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for INSIDE_CLASS without package
|
||||||
|
*/
|
||||||
public class INSIDE_CLASS {
|
public class INSIDE_CLASS {
|
||||||
public init() {
|
public init() {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for func on INSIDE_CLASS without package
|
||||||
|
*/
|
||||||
public func my_func() -> Swift.Bool {
|
public func my_func() -> Swift.Bool {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for val on INSIDE_CLASS without package
|
||||||
|
*/
|
||||||
public var my_value_inner: Swift.UInt32 {
|
public var my_value_inner: Swift.UInt32 {
|
||||||
get {
|
get {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for var on INSIDE_CLASS without package
|
||||||
|
*/
|
||||||
public var my_variable_inner: Swift.Int64 {
|
public var my_variable_inner: Swift.Int64 {
|
||||||
get {
|
get {
|
||||||
fatalError()
|
fatalError()
|
||||||
@@ -140,14 +179,23 @@ public class Foo {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for func on class without package
|
||||||
|
*/
|
||||||
public func foo() -> Swift.Bool {
|
public func foo() -> Swift.Bool {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for val on class without package
|
||||||
|
*/
|
||||||
public var my_value: Swift.UInt32 {
|
public var my_value: Swift.UInt32 {
|
||||||
get {
|
get {
|
||||||
fatalError()
|
fatalError()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for var on class without package
|
||||||
|
*/
|
||||||
public var my_variable: Swift.Int64 {
|
public var my_variable: Swift.Int64 {
|
||||||
get {
|
get {
|
||||||
fatalError()
|
fatalError()
|
||||||
|
|||||||
+16
-1
@@ -1,14 +1,29 @@
|
|||||||
package namespace
|
package namespace
|
||||||
|
|
||||||
|
/**
|
||||||
|
* demo comment for
|
||||||
|
* NAMESPACED_CLASS
|
||||||
|
*/
|
||||||
class NAMESPACED_CLASS
|
class NAMESPACED_CLASS
|
||||||
|
|
||||||
class Foo {
|
class Foo {
|
||||||
|
/**
|
||||||
|
* this is a sample comment for INSIDE_CLASS with package
|
||||||
|
*/
|
||||||
class INSIDE_CLASS
|
class INSIDE_CLASS
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for func on class with package
|
||||||
|
*/
|
||||||
fun foo(): Boolean = TODO()
|
fun foo(): Boolean = TODO()
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for val on class with package
|
||||||
|
*/
|
||||||
val my_value: UInt = 5u
|
val my_value: UInt = 5u
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for var on class with package
|
||||||
|
*/
|
||||||
var my_variable: Long = 5
|
var my_variable: Long = 5
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+36
-1
@@ -1,20 +1,55 @@
|
|||||||
|
/**
|
||||||
|
* this is a sample comment for class without public constructor
|
||||||
|
*/
|
||||||
public class ClassWithNonPublicConstructor internal constructor(public val a: Int)
|
public class ClassWithNonPublicConstructor internal constructor(public val a: Int)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for class without package
|
||||||
|
* in order to support documentation for primary constructor - we will have to start parsing comment content:
|
||||||
|
* https://kotlinlang.org/docs/kotlin-doc.html#constructor
|
||||||
|
*/
|
||||||
class Foo (a: Int) {
|
class Foo (a: Int) {
|
||||||
|
/**
|
||||||
|
* this is a sample comment for secondary constructor
|
||||||
|
*/
|
||||||
constructor(f: Float) : this(f.toInt())
|
constructor(f: Float) : this(f.toInt())
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for private constructor
|
||||||
|
*/
|
||||||
private constructor(d: Double) : this(d.toInt())
|
private constructor(d: Double) : this(d.toInt())
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for INSIDE_CLASS without package
|
||||||
|
*/
|
||||||
class INSIDE_CLASS {
|
class INSIDE_CLASS {
|
||||||
|
/**
|
||||||
|
* this is a sample comment for func on INSIDE_CLASS without package
|
||||||
|
*/
|
||||||
fun my_func(): Boolean = TODO()
|
fun my_func(): Boolean = TODO()
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for val on INSIDE_CLASS without package
|
||||||
|
*/
|
||||||
val my_value_inner: UInt = 5u
|
val my_value_inner: UInt = 5u
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for var on INSIDE_CLASS without package
|
||||||
|
*/
|
||||||
var my_variable_inner: Long = 5
|
var my_variable_inner: Long = 5
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* this is a sample comment for func on class without package
|
||||||
|
*/
|
||||||
fun foo(): Boolean = TODO()
|
fun foo(): Boolean = TODO()
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for val on class without package
|
||||||
|
*/
|
||||||
val my_value: UInt = 5u
|
val my_value: UInt = 5u
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this is a sample comment for var on class without package
|
||||||
|
*/
|
||||||
var my_variable: Long = 5
|
var my_variable: Long = 5
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+6
-6
@@ -2,12 +2,12 @@ import KotlinBridges
|
|||||||
import KotlinRuntime
|
import KotlinRuntime
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function foo description
|
* Function foo description
|
||||||
*
|
*
|
||||||
* @param p first Integer to consume
|
* @param p first Integer to consume
|
||||||
* @param p2 second Double to consume
|
* @param p2 second Double to consume
|
||||||
* @return Short, constant 1
|
* @return Short, constant 1
|
||||||
*/
|
*/
|
||||||
public func foo(
|
public func foo(
|
||||||
p: Swift.Int32,
|
p: Swift.Int32,
|
||||||
p2: Swift.Double
|
p2: Swift.Double
|
||||||
|
|||||||
Reference in New Issue
Block a user