diff options
Diffstat (limited to 'test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ParameterTypeProcessor.kt')
-rw-r--r-- | test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ParameterTypeProcessor.kt | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ParameterTypeProcessor.kt b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ParameterTypeProcessor.kt new file mode 100644 index 00000000..55e1eec7 --- /dev/null +++ b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ParameterTypeProcessor.kt @@ -0,0 +1,32 @@ +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.KSValueParameter +import com.google.devtools.ksp.visitor.KSTopDownVisitor + +class ParameterTypeProcessor : AbstractTestProcessor() { + val result = mutableListOf<String>() + + override fun toResult(): List<String> { + return result.sorted() + } + + override fun process(resolver: Resolver): List<KSAnnotated> { + resolver.getNewFiles().forEach { + it.accept( + object : KSTopDownVisitor<Unit, Unit>() { + override fun defaultHandler(node: KSNode, data: Unit) { + } + + override fun visitValueParameter(valueParameter: KSValueParameter, data: Unit) { + result.add("${valueParameter.name?.asString()}: ${valueParameter.type.resolve()}") + } + }, + Unit + ) + } + return emptyList() + } +} |