Skip to content

Commit 58e2652

Browse files
Fix
1 parent 048d6e3 commit 58e2652

4 files changed

Lines changed: 9 additions & 5 deletions

File tree

convertible-core/src/main/kotlin/pro/vlprojects/convertible/core/definition/ConvertibleDefinition.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package pro.vlprojects.convertible.core.definition
22

33
import com.google.devtools.ksp.isConstructor
4+
import com.google.devtools.ksp.symbol.KSFile
45
import com.google.devtools.ksp.symbol.KSFunctionDeclaration
56
import com.google.devtools.ksp.symbol.KSPropertyDeclaration
67
import com.squareup.kotlinpoet.ClassName
@@ -9,6 +10,7 @@ import com.squareup.kotlinpoet.ksp.toTypeName
910

1011
data class ConvertibleDefinition(
1112
val objectClassName: ClassName,
13+
val source: KSFile,
1214
val scope: String,
1315
val nullable: Boolean,
1416
val valueAccessor: ValueAccessor,

convertible-core/src/main/kotlin/pro/vlprojects/convertible/core/processor/ConvertibleProcessor.kt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import com.google.devtools.ksp.processing.Resolver
77
import com.google.devtools.ksp.processing.SymbolProcessor
88
import com.google.devtools.ksp.symbol.KSAnnotated
99
import com.google.devtools.ksp.symbol.KSClassDeclaration
10+
import com.google.devtools.ksp.symbol.KSFile
1011
import com.google.devtools.ksp.validate
1112
import com.squareup.kotlinpoet.FileSpec
1213
import pro.vlprojects.convertible.core.annotation.Convertible
@@ -44,8 +45,8 @@ class ConvertibleProcessor(
4445
.filter { it.supports(definition) }
4546
.forEach { strategy ->
4647
val specification = strategy.build(definition)
47-
specification.writeWith(generator, targetPackage)
48-
48+
logger.info("Generating file: $targetPackage.${specification.name}")
49+
specification.writeWith(generator, targetPackage, definition.source)
4950
logger.info("Generated file: $targetPackage.${specification.name}")
5051
}
5152
}
@@ -55,8 +56,8 @@ class ConvertibleProcessor(
5556
logger.error("Failed to process @Convertible")
5657
}
5758

58-
private fun FileSpec.writeWith(generator: CodeGenerator, targetPackage: String) = generator
59-
.createNewFile(Dependencies(false), targetPackage, name)
59+
private fun FileSpec.writeWith(generator: CodeGenerator, targetPackage: String, source: KSFile) = generator
60+
.createNewFile(Dependencies(false, source), targetPackage, name)
6061
.use { stream ->
6162
OutputStreamWriter(stream)
6263
.use { writer -> writeTo(writer) }

convertible-core/src/main/kotlin/pro/vlprojects/convertible/core/processor/ConvertibleVisitor.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ class ConvertibleVisitor(
4444

4545
val definition = ConvertibleDefinition(
4646
objectClassName = className,
47+
source = classDeclaration.containingFile.let(::checkNotNull),
4748
scope = scope,
4849
nullable = nullable,
4950
valueAccessor = valueAccessor,

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
group=pro.vlprojects
2-
version=0.0.2
2+
version=0.0.3
33
kotlin.version=2.1.21
44
kotlin.code.style=official

0 commit comments

Comments
 (0)