@Documented @Retention(value=RUNTIME) @Target(value=TYPE) @StingProvider(value="[FlatEnclosingName]Sting_[SimpleName]_Fragment") public @interface AutoFragment
ContributeTo
where the ContributeTo.value()
parameter is exactly the as the value()
parameter.
The following constraints exist:
AutoFragment
annotated type and the ContributeTo
annotated types must be
compiled using in a single javac invocation. If the linked AutoFragment and ContributedTo
are compiled using different javac invocations then they will not find each other and will generate
an error.
AutoFragment
annotated types that specify the same value for the
value()
parameter and they are compiled using a single javac invocation then
the annotation processor will generate an error.
ContributeTo
annotated type is generated by an annotation
processor then it MUST NOT be generated in a round after the AutoFragment
has generated
the fragment. The annotation processor will generate the fragment for the AutoFragment
type
after a round where there is at least 1 contributor and no contributors have been added in the current
round.