<lambda>null1 import com.google.devtools.ksp.processing.*
2 import com.google.devtools.ksp.symbol.KSAnnotated
3 import com.google.devtools.ksp.symbol.KSFunctionDeclaration
4 
5 class TestProcessor(
6     private val codeGenerator: CodeGenerator,
7     private val options: Map<String, String>,
8     private val logger: KSPLogger
9 ) : SymbolProcessor {
10     override fun process(resolver: Resolver): List<KSAnnotated> {
11         resolver
12             .getSymbolsWithAnnotation("com.example.ann.MyAnn")
13             .filterIsInstance<KSFunctionDeclaration>()
14             .forEach { func ->
15                 val arg = func.annotations.first().arguments.first().value.toString()
16                 if (!arg.startsWith("REPLACE"))
17                     throw IllegalStateException(arg)
18             }
19 
20         return emptyList()
21     }
22 }
23 
24 class TestProcessorProvider : SymbolProcessorProvider {
createnull25     override fun create(environment: SymbolProcessorEnvironment): SymbolProcessor =
26         TestProcessor(environment.codeGenerator, environment.options, environment.logger)
27 }
28