Maintains annotations in the form
Named("Customer") and also
Named(value="Customer").
In the AST, the first form is represented as a {@link SingleMemberAnnotation} andthe second as a {@link NormalAnnotation}. This evaluator/modifier deals with both forms transparently.
When modifying, if the supplied value is null or is an empty STRING, then the annotation is removed. Equally, if a non-null value/non-empty STRING is provided and there is no annotation, then it will be automatically added (as a {@link SingleMemberAnnotation}).
Annotations with multiple elements can be maintained using either {@link MultipleValueAnnotationEvaluatorAndModifier} or {@link MultipleValueAnnotationSingleMemberEvaluatorAndModifier}.