Class EvaluatingVisitor
- java.lang.Object
-
- com.thoughtworks.qdox.model.annotation.EvaluatingVisitor
-
- All Implemented Interfaces:
AnnotationVisitor
public abstract class EvaluatingVisitor extends java.lang.Object implements AnnotationVisitor
Visitor that evaluates annotation expressions.Users of this class must override
getFieldReferenceValue(JavaField)to return values for referenced fields.- Author:
- Jochen Kuhnle
-
-
Constructor Summary
Constructors Constructor Description EvaluatingVisitor()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract java.lang.ObjectgetFieldReferenceValue(JavaField javaField)java.util.ListgetListValue(Annotation annotation, java.lang.String property)java.lang.ObjectgetValue(Annotation annotation, java.lang.String property)protected static java.lang.ClassnumericResultType(java.lang.Object left, java.lang.Object right)Return the numeric result type of a binary operatorprotected static java.lang.ClassresultType(java.lang.Object left, java.lang.Object right)Return the result type of a binary operatorprotected static java.lang.ClassunaryNumericResultType(java.lang.Object value)Return the result type of an unary operatorprotected static java.lang.ClassunaryResultType(java.lang.Object value)java.lang.ObjectvisitAnnotation(Annotation annotation)java.lang.ObjectvisitAnnotationAdd(AnnotationAdd op)java.lang.ObjectvisitAnnotationAnd(AnnotationAnd and)java.lang.ObjectvisitAnnotationCast(AnnotationCast annotationCast)java.lang.ObjectvisitAnnotationConstant(AnnotationConstant constant)java.lang.ObjectvisitAnnotationDivide(AnnotationDivide op)java.lang.ObjectvisitAnnotationEquals(AnnotationEquals annotationEquals)java.lang.ObjectvisitAnnotationExclusiveOr(AnnotationExclusiveOr annotationExclusiveOr)java.lang.ObjectvisitAnnotationFieldRef(AnnotationFieldRef fieldRef)java.lang.ObjectvisitAnnotationGreaterEquals(AnnotationGreaterEquals greaterEquals)java.lang.ObjectvisitAnnotationGreaterThan(AnnotationGreaterThan op)java.lang.ObjectvisitAnnotationLessEquals(AnnotationLessEquals lessEquals)java.lang.ObjectvisitAnnotationLessThan(AnnotationLessThan op)java.lang.ObjectvisitAnnotationLogicalAnd(AnnotationLogicalAnd and)java.lang.ObjectvisitAnnotationLogicalNot(AnnotationLogicalNot not)java.lang.ObjectvisitAnnotationLogicalOr(AnnotationLogicalOr or)java.lang.ObjectvisitAnnotationMinusSign(AnnotationMinusSign sign)java.lang.ObjectvisitAnnotationMultiply(AnnotationMultiply op)java.lang.ObjectvisitAnnotationNot(AnnotationNot not)java.lang.ObjectvisitAnnotationNotEquals(AnnotationNotEquals annotationNotEquals)java.lang.ObjectvisitAnnotationOr(AnnotationOr or)java.lang.ObjectvisitAnnotationParenExpression(AnnotationParenExpression parenExpression)java.lang.ObjectvisitAnnotationPlusSign(AnnotationPlusSign sign)java.lang.ObjectvisitAnnotationQuery(AnnotationQuery annotationQuery)java.lang.ObjectvisitAnnotationRemainder(AnnotationRemainder remainder)java.lang.ObjectvisitAnnotationShiftLeft(AnnotationShiftLeft shiftLeft)java.lang.ObjectvisitAnnotationShiftRight(AnnotationShiftRight shiftRight)java.lang.ObjectvisitAnnotationSubtract(AnnotationSubtract op)java.lang.ObjectvisitAnnotationTypeRef(AnnotationTypeRef typeRef)java.lang.ObjectvisitAnnotationUnsignedShiftRight(AnnotationUnsignedShiftRight shiftRight)java.lang.ObjectvisitAnnotationValueList(AnnotationValueList valueList)
-
-
-
Method Detail
-
getValue
public java.lang.Object getValue(Annotation annotation, java.lang.String property)
-
getListValue
public java.util.List getListValue(Annotation annotation, java.lang.String property)
-
resultType
protected static java.lang.Class resultType(java.lang.Object left, java.lang.Object right)Return the result type of a binary operatorPerforms binary numeric promotion as specified in the Java Language Specification,
- See Also:
- section 5.6.1
-
numericResultType
protected static java.lang.Class numericResultType(java.lang.Object left, java.lang.Object right)Return the numeric result type of a binary operatorPerforms binary numeric promotion as specified in the Java Language Specification,
- See Also:
- section 5.6.1
-
unaryNumericResultType
protected static java.lang.Class unaryNumericResultType(java.lang.Object value)
Return the result type of an unary operatorPerforms unary numeric promotion as specified in the Java Language Specification,
- See Also:
- section 5.6.2
-
unaryResultType
protected static java.lang.Class unaryResultType(java.lang.Object value)
-
visitAnnotation
public java.lang.Object visitAnnotation(Annotation annotation)
- Specified by:
visitAnnotationin interfaceAnnotationVisitor
-
visitAnnotationAdd
public java.lang.Object visitAnnotationAdd(AnnotationAdd op)
- Specified by:
visitAnnotationAddin interfaceAnnotationVisitor
-
visitAnnotationConstant
public java.lang.Object visitAnnotationConstant(AnnotationConstant constant)
- Specified by:
visitAnnotationConstantin interfaceAnnotationVisitor
-
visitAnnotationDivide
public java.lang.Object visitAnnotationDivide(AnnotationDivide op)
- Specified by:
visitAnnotationDividein interfaceAnnotationVisitor
-
visitAnnotationFieldRef
public java.lang.Object visitAnnotationFieldRef(AnnotationFieldRef fieldRef)
- Specified by:
visitAnnotationFieldRefin interfaceAnnotationVisitor
-
getFieldReferenceValue
protected abstract java.lang.Object getFieldReferenceValue(JavaField javaField)
-
visitAnnotationGreaterThan
public java.lang.Object visitAnnotationGreaterThan(AnnotationGreaterThan op)
- Specified by:
visitAnnotationGreaterThanin interfaceAnnotationVisitor
-
visitAnnotationLessThan
public java.lang.Object visitAnnotationLessThan(AnnotationLessThan op)
- Specified by:
visitAnnotationLessThanin interfaceAnnotationVisitor
-
visitAnnotationMultiply
public java.lang.Object visitAnnotationMultiply(AnnotationMultiply op)
- Specified by:
visitAnnotationMultiplyin interfaceAnnotationVisitor
-
visitAnnotationParenExpression
public java.lang.Object visitAnnotationParenExpression(AnnotationParenExpression parenExpression)
- Specified by:
visitAnnotationParenExpressionin interfaceAnnotationVisitor
-
visitAnnotationSubtract
public java.lang.Object visitAnnotationSubtract(AnnotationSubtract op)
- Specified by:
visitAnnotationSubtractin interfaceAnnotationVisitor
-
visitAnnotationTypeRef
public java.lang.Object visitAnnotationTypeRef(AnnotationTypeRef typeRef)
- Specified by:
visitAnnotationTypeRefin interfaceAnnotationVisitor
-
visitAnnotationValueList
public java.lang.Object visitAnnotationValueList(AnnotationValueList valueList)
- Specified by:
visitAnnotationValueListin interfaceAnnotationVisitor
-
visitAnnotationAnd
public java.lang.Object visitAnnotationAnd(AnnotationAnd and)
- Specified by:
visitAnnotationAndin interfaceAnnotationVisitor
-
visitAnnotationGreaterEquals
public java.lang.Object visitAnnotationGreaterEquals(AnnotationGreaterEquals greaterEquals)
- Specified by:
visitAnnotationGreaterEqualsin interfaceAnnotationVisitor
-
visitAnnotationLessEquals
public java.lang.Object visitAnnotationLessEquals(AnnotationLessEquals lessEquals)
- Specified by:
visitAnnotationLessEqualsin interfaceAnnotationVisitor
-
visitAnnotationLogicalAnd
public java.lang.Object visitAnnotationLogicalAnd(AnnotationLogicalAnd and)
- Specified by:
visitAnnotationLogicalAndin interfaceAnnotationVisitor
-
visitAnnotationLogicalNot
public java.lang.Object visitAnnotationLogicalNot(AnnotationLogicalNot not)
- Specified by:
visitAnnotationLogicalNotin interfaceAnnotationVisitor
-
visitAnnotationLogicalOr
public java.lang.Object visitAnnotationLogicalOr(AnnotationLogicalOr or)
- Specified by:
visitAnnotationLogicalOrin interfaceAnnotationVisitor
-
visitAnnotationMinusSign
public java.lang.Object visitAnnotationMinusSign(AnnotationMinusSign sign)
- Specified by:
visitAnnotationMinusSignin interfaceAnnotationVisitor
-
visitAnnotationNot
public java.lang.Object visitAnnotationNot(AnnotationNot not)
- Specified by:
visitAnnotationNotin interfaceAnnotationVisitor
-
visitAnnotationOr
public java.lang.Object visitAnnotationOr(AnnotationOr or)
- Specified by:
visitAnnotationOrin interfaceAnnotationVisitor
-
visitAnnotationPlusSign
public java.lang.Object visitAnnotationPlusSign(AnnotationPlusSign sign)
- Specified by:
visitAnnotationPlusSignin interfaceAnnotationVisitor
-
visitAnnotationRemainder
public java.lang.Object visitAnnotationRemainder(AnnotationRemainder remainder)
- Specified by:
visitAnnotationRemainderin interfaceAnnotationVisitor
-
visitAnnotationShiftLeft
public java.lang.Object visitAnnotationShiftLeft(AnnotationShiftLeft shiftLeft)
- Specified by:
visitAnnotationShiftLeftin interfaceAnnotationVisitor
-
visitAnnotationShiftRight
public java.lang.Object visitAnnotationShiftRight(AnnotationShiftRight shiftRight)
- Specified by:
visitAnnotationShiftRightin interfaceAnnotationVisitor
-
visitAnnotationUnsignedShiftRight
public java.lang.Object visitAnnotationUnsignedShiftRight(AnnotationUnsignedShiftRight shiftRight)
- Specified by:
visitAnnotationUnsignedShiftRightin interfaceAnnotationVisitor
-
visitAnnotationEquals
public java.lang.Object visitAnnotationEquals(AnnotationEquals annotationEquals)
- Specified by:
visitAnnotationEqualsin interfaceAnnotationVisitor
-
visitAnnotationExclusiveOr
public java.lang.Object visitAnnotationExclusiveOr(AnnotationExclusiveOr annotationExclusiveOr)
- Specified by:
visitAnnotationExclusiveOrin interfaceAnnotationVisitor
-
visitAnnotationNotEquals
public java.lang.Object visitAnnotationNotEquals(AnnotationNotEquals annotationNotEquals)
- Specified by:
visitAnnotationNotEqualsin interfaceAnnotationVisitor
-
visitAnnotationQuery
public java.lang.Object visitAnnotationQuery(AnnotationQuery annotationQuery)
- Specified by:
visitAnnotationQueryin interfaceAnnotationVisitor
-
visitAnnotationCast
public java.lang.Object visitAnnotationCast(AnnotationCast annotationCast)
- Specified by:
visitAnnotationCastin interfaceAnnotationVisitor
-
-