@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.