commonMain.software.amazon.lastmile.kotlin.inject.anvil.extend.ContributingAnnotation.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of runtime-jvm Show documentation
Show all versions of runtime-jvm Show documentation
Extensions for kotlin-inject to make dependency injection easier with a similar feature set as Anvil.
package software.amazon.lastmile.kotlin.inject.anvil.extend
import kotlin.annotation.AnnotationTarget.ANNOTATION_CLASS
/**
* kotlin-inject-anvil is extensible. You can you create your own annotations and write
* your own KSP processors to generate code. kotlin-inject-anvil supports multiple rounds and
* will pick up the generated code.
*
* When defining an annotation that will generate new code, make sure to annotate this
* annotation class with [ContributingAnnotation]. The annotation will generate a marker for
* kotlin-inject-anvil's merge phase and wait until all code has been generated in your custom
* symbol processor in multiple rounds, e.g.
* ```
* @ContributingAnnotation
* @Target(CLASS)
* annotation class ContributesCustomCode
* ```
*/
@Target(ANNOTATION_CLASS)
public annotation class ContributingAnnotation
© 2015 - 2024 Weber Informatics LLC | Privacy Policy