- java.lang.Object
-
- com.thoughtworks.qdox.builder.impl.EvaluatingVisitor
-
- All Implemented Interfaces:
ExpressionVisitor
public class EvaluatingVisitor extends Object implements ExpressionVisitor
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
-
-
-
Method Detail
-
getValue
public Object getValue(JavaAnnotation annotation, String property)
-
getListValue
public List<?> getListValue(JavaAnnotation annotation, String property)
-
resultType
protected static Class<?> resultType(Object left, Object right)
Return the result type of a binary operatorPerforms binary numeric promotion as specified in the Java Language Specification,
- Parameters:
left
- the left hand side instanceright
- the right hand side instance- Returns:
- the expected result Class
- See Also:
- section 5.6.1
-
numericResultType
protected static Class<?> numericResultType(Object left, Object right)
Return the numeric result type of a binary operatorPerforms binary numeric promotion as specified in the Java Language Specification,
- Parameters:
left
- the left hand side instanceright
- the right hand side instance- Returns:
- the expected result Class
- See Also:
- section 5.6.1
-
unaryNumericResultType
protected static Class<?> unaryNumericResultType(Object value)
Return the result type of an unary operatorPerforms unary numeric promotion as specified in the Java Language Specification,
- Parameters:
value
- the instance- Returns:
- the expected result Class
- See Also:
- section 5.6.2
-
visit
public Object visit(JavaAnnotation annotation) throws UnsupportedOperationException
- Specified by:
visit
in interfaceExpressionVisitor
- Throws:
UnsupportedOperationException
-
visit
public Object visit(Add op)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Constant constant)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Divide op)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(FieldRef fieldRef)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(GreaterThan op)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(LessThan op)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Multiply op)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(ParenExpression parenExpression)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Subtract op)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public JavaType visit(TypeRef typeRef)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public List<?> visit(AnnotationValueList valueList)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(And and)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(GreaterEquals greaterEquals)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(LessEquals lessEquals)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(LogicalAnd and)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(LogicalNot not)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(LogicalOr or)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(MinusSign sign)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Not not)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Or or)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(PlusSign sign)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Remainder remainder)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(ShiftLeft shiftLeft)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(ShiftRight shiftRight)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(UnsignedShiftRight shiftRight)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Equals annotationEquals)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(ExclusiveOr annotationExclusiveOr)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(NotEquals annotationNotEquals)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Query annotationQuery)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Cast annotationCast)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(PreDecrement preDecrement)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(PreIncrement preIncrement)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(PostDecrement postDecrement)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(PostIncrement postIncrement)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(Assignment assignment)
- Specified by:
visit
in interfaceExpressionVisitor
-
visit
public Object visit(MethodInvocation methodInvocation)
- Specified by:
visit
in interfaceExpressionVisitor
-
-