proguard.classfile.editor
Class ElementValueAdder

java.lang.Object
  extended by proguard.classfile.editor.ElementValueAdder
All Implemented Interfaces:
ElementValueVisitor

public class ElementValueAdder
extends java.lang.Object
implements ElementValueVisitor

This AnnotationVisitor adds all element values that it visits to the given target annotation default attribute, annotation, or element value.


Constructor Summary
ElementValueAdder(ProgramClass targetClass, Annotation targetAnnotation, boolean replaceElementValues)
          Creates a new ElementValueAdder that will copy element values into the given target annotation.
ElementValueAdder(ProgramClass targetClass, AnnotationDefaultAttribute targetAnnotationDefaultAttribute, boolean replaceElementValues)
          Creates a new ElementValueAdder that will copy element values into the given target annotation default attribute value.
ElementValueAdder(ProgramClass targetClass, ArrayElementValue targetArrayElementValue, boolean replaceElementValues)
          Creates a new ElementValueAdder that will copy element values into the given target element value.
 
Method Summary
 void visitAnnotationElementValue(Clazz clazz, Annotation annotation, AnnotationElementValue annotationElementValue)
           
 void visitArrayElementValue(Clazz clazz, Annotation annotation, ArrayElementValue arrayElementValue)
           
 void visitClassElementValue(Clazz clazz, Annotation annotation, ClassElementValue classElementValue)
           
 void visitConstantElementValue(Clazz clazz, Annotation annotation, ConstantElementValue constantElementValue)
           
 void visitEnumConstantElementValue(Clazz clazz, Annotation annotation, EnumConstantElementValue enumConstantElementValue)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ElementValueAdder

public ElementValueAdder(ProgramClass targetClass,
                         AnnotationDefaultAttribute targetAnnotationDefaultAttribute,
                         boolean replaceElementValues)
Creates a new ElementValueAdder that will copy element values into the given target annotation default attribute value.


ElementValueAdder

public ElementValueAdder(ProgramClass targetClass,
                         Annotation targetAnnotation,
                         boolean replaceElementValues)
Creates a new ElementValueAdder that will copy element values into the given target annotation.


ElementValueAdder

public ElementValueAdder(ProgramClass targetClass,
                         ArrayElementValue targetArrayElementValue,
                         boolean replaceElementValues)
Creates a new ElementValueAdder that will copy element values into the given target element value.

Method Detail

visitConstantElementValue

public void visitConstantElementValue(Clazz clazz,
                                      Annotation annotation,
                                      ConstantElementValue constantElementValue)
Specified by:
visitConstantElementValue in interface ElementValueVisitor

visitEnumConstantElementValue

public void visitEnumConstantElementValue(Clazz clazz,
                                          Annotation annotation,
                                          EnumConstantElementValue enumConstantElementValue)
Specified by:
visitEnumConstantElementValue in interface ElementValueVisitor

visitClassElementValue

public void visitClassElementValue(Clazz clazz,
                                   Annotation annotation,
                                   ClassElementValue classElementValue)
Specified by:
visitClassElementValue in interface ElementValueVisitor

visitAnnotationElementValue

public void visitAnnotationElementValue(Clazz clazz,
                                        Annotation annotation,
                                        AnnotationElementValue annotationElementValue)
Specified by:
visitAnnotationElementValue in interface ElementValueVisitor

visitArrayElementValue

public void visitArrayElementValue(Clazz clazz,
                                   Annotation annotation,
                                   ArrayElementValue arrayElementValue)
Specified by:
visitArrayElementValue in interface ElementValueVisitor