aboutsummaryrefslogtreecommitdiff
path: root/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/GetPackageProcessor.kt
diff options
context:
space:
mode:
Diffstat (limited to 'test-utils/src/main/kotlin/com/google/devtools/ksp/processor/GetPackageProcessor.kt')
-rw-r--r--test-utils/src/main/kotlin/com/google/devtools/ksp/processor/GetPackageProcessor.kt29
1 files changed, 29 insertions, 0 deletions
diff --git a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/GetPackageProcessor.kt b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/GetPackageProcessor.kt
new file mode 100644
index 00000000..5af50859
--- /dev/null
+++ b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/GetPackageProcessor.kt
@@ -0,0 +1,29 @@
+package com.google.devtools.ksp.processor
+
+import com.google.devtools.ksp.KspExperimental
+import com.google.devtools.ksp.processing.Resolver
+import com.google.devtools.ksp.symbol.KSAnnotated
+
+class GetPackageProcessor : AbstractTestProcessor() {
+ val results = mutableListOf<String>()
+
+ override fun toResult(): List<String> {
+ return results
+ }
+
+ @OptIn(KspExperimental::class)
+ override fun process(resolver: Resolver): List<KSAnnotated> {
+ addPackage("lib1", resolver)
+ addPackage("lib2", resolver)
+ addPackage("main.test", resolver)
+ return emptyList()
+ }
+
+ @KspExperimental
+ private fun addPackage(name: String, resolver: Resolver) {
+ results.add("symbols from package $name")
+ resolver.getDeclarationsFromPackage(name).forEach {
+ results.add("${it.qualifiedName?.asString() ?: "error"} ${it.origin}")
+ }
+ }
+}