diff options
Diffstat (limited to 'test-utils/src/main/kotlin')
2 files changed, 36 insertions, 2 deletions
diff --git a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/FunctionTypeAnnotationProcessor.kt b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/FunctionTypeAnnotationProcessor.kt new file mode 100644 index 00000000..c35d156e --- /dev/null +++ b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/FunctionTypeAnnotationProcessor.kt @@ -0,0 +1,36 @@ +package com.google.devtools.ksp.processor + +import com.google.devtools.ksp.processing.Resolver +import com.google.devtools.ksp.symbol.KSAnnotated +import com.google.devtools.ksp.symbol.KSNode +import com.google.devtools.ksp.symbol.KSPropertyDeclaration +import com.google.devtools.ksp.visitor.KSTopDownVisitor + +class FunctionTypeAnnotationProcessor : AbstractTestProcessor() { + val results = mutableListOf<String>() + + override fun toResult(): List<String> { + return results + } + + override fun process(resolver: Resolver): List<KSAnnotated> { + val files = resolver.getNewFiles() + + files.forEach { + it.accept( + object : KSTopDownVisitor<Unit, Unit>() { + override fun defaultHandler(node: KSNode, data: Unit) = Unit + + override fun visitPropertyDeclaration(property: KSPropertyDeclaration, data: Unit) { + val type = property.type.resolve() + val propertyName = property.simpleName.asString() + val typeName = type.declaration.simpleName.asString() + results.add("$propertyName: $typeName ${type.annotations.joinToString { it.toString() }}") + } + }, + Unit + ) + } + return emptyList() + } +} diff --git a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/FunctionTypeProcessor.kt b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/FunctionTypeProcessor.kt index 4e5f4e07..f361599b 100644 --- a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/FunctionTypeProcessor.kt +++ b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/FunctionTypeProcessor.kt @@ -23,12 +23,10 @@ import com.google.devtools.ksp.visitor.KSTopDownVisitor open class FunctionTypeProcessor : AbstractTestProcessor() { val results = mutableListOf<String>() - val typeCollector = TypeCollector() val types = mutableSetOf<KSType>() override fun process(resolver: Resolver): List<KSAnnotated> { val files = resolver.getNewFiles() - val ignoredNames = mutableSetOf<String>() files.forEach { it.accept( |