Interface AnnotationValueVisitor<R,P>

Type Parameters:
R - the return type of this visitor's methods
P - the type of the additional parameter to this visitor's methods.
All Known Implementing Classes:
AbstractAnnotationValueVisitor14, AbstractAnnotationValueVisitor6, AbstractAnnotationValueVisitor7, AbstractAnnotationValueVisitor8, AbstractAnnotationValueVisitor9, SimpleAnnotationValueVisitor14, SimpleAnnotationValueVisitor6, SimpleAnnotationValueVisitor7, SimpleAnnotationValueVisitor8, SimpleAnnotationValueVisitor9

public interface AnnotationValueVisitor<R,P>
A visitor of the values of annotation interface elements, using a variant of the visitor design pattern. Unlike a standard visitor which dispatches based on the concrete type of a member of a type hierarchy, this visitor dispatches based on the type of data stored; there are no distinct subclasses for storing, for example, boolean values versus int values. Classes implementing this interface are used to operate on a value when the type of that value is unknown at compile time. When a visitor is passed to a value's accept method, the visitXyz method applicable to that value is invoked.

Classes implementing this interface may or may not throw a NullPointerException if the additional parameter p is null; see documentation of the implementing class for details.

Since:
1.6
  • Method Details

    • visit

      R visit(AnnotationValue av, P p)
      Visits an annotation value.
      Parameters:
      av - the value to visit
      p - a visitor-specified parameter
      Returns:
      a visitor-specified result
    • visit

      default R visit(AnnotationValue av)
      A convenience method equivalent to visit(av, null).
      Parameters:
      av - the value to visit
      Returns:
      a visitor-specified result
    • visitBoolean

      R visitBoolean(boolean b, P p)
      Visits a boolean value in an annotation.
      Parameters:
      b - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitByte

      R visitByte(byte b, P p)
      Visits a byte value in an annotation.
      Parameters:
      b - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitChar

      R visitChar(char c, P p)
      Visits a char value in an annotation.
      Parameters:
      c - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitDouble

      R visitDouble(double d, P p)
      Visits a double value in an annotation.
      Parameters:
      d - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitFloat

      R visitFloat(float f, P p)
      Visits a float value in an annotation.
      Parameters:
      f - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitInt

      R visitInt(int i, P p)
      Visits an int value in an annotation.
      Parameters:
      i - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitLong

      R visitLong(long i, P p)
      Visits a long value in an annotation.
      Parameters:
      i - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitShort

      R visitShort(short s, P p)
      Visits a short value in an annotation.
      Parameters:
      s - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitString

      R visitString(String s, P p)
      Visits a string value in an annotation.
      Parameters:
      s - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitType

      R visitType(TypeMirror t, P p)
      Visits a type value in an annotation.
      Parameters:
      t - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitEnumConstant

      R visitEnumConstant(VariableElement c, P p)
      Visits an enum value in an annotation.
      Parameters:
      c - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitAnnotation

      R visitAnnotation(AnnotationMirror a, P p)
      Visits an annotation value in an annotation.
      Parameters:
      a - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitArray

      R visitArray(List<? extends AnnotationValue> vals, P p)
      Visits an array value in an annotation.
      Parameters:
      vals - the value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
    • visitUnknown

      R visitUnknown(AnnotationValue av, P p)
      Visits an unknown kind of annotation value. This can occur if the language evolves and new kinds of value can be stored in an annotation.
      Parameters:
      av - the unknown value being visited
      p - a visitor-specified parameter
      Returns:
      the result of the visit
      Throws:
      UnknownAnnotationValueException - a visitor implementation may optionally throw this exception