Class AbstractNodeVisitor<R,P>
- java.lang.Object
-
- org.checkerframework.dataflow.cfg.node.AbstractNodeVisitor<R,P>
-
- Type Parameters:
R- return type of the visitorP- parameter type of the visitor
- All Implemented Interfaces:
NodeVisitor<R,P>
- Direct Known Subclasses:
BusyExprTransfer,CFAbstractTransfer,ConstantPropagationTransfer,LiveVarTransfer,ReachingDefinitionTransfer
public abstract class AbstractNodeVisitor<R,P> extends java.lang.Object implements NodeVisitor<R,P>
A default implementation of the node visitor interface. The class introduces several 'summary' methods, that can be overridden to change the behavior of several related visit methods at once. An example is thevisitValueLiteral(org.checkerframework.dataflow.cfg.node.ValueLiteralNode, P)method, which is called for everyValueLiteralNode.This is useful to implement a visitor that performs the same operation (e.g., nothing) for most
Nodes and only has special behavior for a few.
-
-
Constructor Summary
Constructors Constructor Description AbstractNodeVisitor()
-
Method Summary
-
-
-
Method Detail
-
visitValueLiteral
public R visitValueLiteral(ValueLiteralNode n, P p)
-
visitShortLiteral
public R visitShortLiteral(ShortLiteralNode n, P p)
- Specified by:
visitShortLiteralin interfaceNodeVisitor<R,P>
-
visitIntegerLiteral
public R visitIntegerLiteral(IntegerLiteralNode n, P p)
- Specified by:
visitIntegerLiteralin interfaceNodeVisitor<R,P>
-
visitLongLiteral
public R visitLongLiteral(LongLiteralNode n, P p)
- Specified by:
visitLongLiteralin interfaceNodeVisitor<R,P>
-
visitFloatLiteral
public R visitFloatLiteral(FloatLiteralNode n, P p)
- Specified by:
visitFloatLiteralin interfaceNodeVisitor<R,P>
-
visitDoubleLiteral
public R visitDoubleLiteral(DoubleLiteralNode n, P p)
- Specified by:
visitDoubleLiteralin interfaceNodeVisitor<R,P>
-
visitBooleanLiteral
public R visitBooleanLiteral(BooleanLiteralNode n, P p)
- Specified by:
visitBooleanLiteralin interfaceNodeVisitor<R,P>
-
visitCharacterLiteral
public R visitCharacterLiteral(CharacterLiteralNode n, P p)
- Specified by:
visitCharacterLiteralin interfaceNodeVisitor<R,P>
-
visitStringLiteral
public R visitStringLiteral(StringLiteralNode n, P p)
- Specified by:
visitStringLiteralin interfaceNodeVisitor<R,P>
-
visitNullLiteral
public R visitNullLiteral(NullLiteralNode n, P p)
- Specified by:
visitNullLiteralin interfaceNodeVisitor<R,P>
-
visitNumericalMinus
public R visitNumericalMinus(NumericalMinusNode n, P p)
- Specified by:
visitNumericalMinusin interfaceNodeVisitor<R,P>
-
visitNumericalPlus
public R visitNumericalPlus(NumericalPlusNode n, P p)
- Specified by:
visitNumericalPlusin interfaceNodeVisitor<R,P>
-
visitBitwiseComplement
public R visitBitwiseComplement(BitwiseComplementNode n, P p)
- Specified by:
visitBitwiseComplementin interfaceNodeVisitor<R,P>
-
visitNullChk
public R visitNullChk(NullChkNode n, P p)
- Specified by:
visitNullChkin interfaceNodeVisitor<R,P>
-
visitStringConcatenate
public R visitStringConcatenate(StringConcatenateNode n, P p)
- Specified by:
visitStringConcatenatein interfaceNodeVisitor<R,P>
-
visitNumericalAddition
public R visitNumericalAddition(NumericalAdditionNode n, P p)
- Specified by:
visitNumericalAdditionin interfaceNodeVisitor<R,P>
-
visitNumericalSubtraction
public R visitNumericalSubtraction(NumericalSubtractionNode n, P p)
- Specified by:
visitNumericalSubtractionin interfaceNodeVisitor<R,P>
-
visitNumericalMultiplication
public R visitNumericalMultiplication(NumericalMultiplicationNode n, P p)
- Specified by:
visitNumericalMultiplicationin interfaceNodeVisitor<R,P>
-
visitIntegerDivision
public R visitIntegerDivision(IntegerDivisionNode n, P p)
- Specified by:
visitIntegerDivisionin interfaceNodeVisitor<R,P>
-
visitFloatingDivision
public R visitFloatingDivision(FloatingDivisionNode n, P p)
- Specified by:
visitFloatingDivisionin interfaceNodeVisitor<R,P>
-
visitIntegerRemainder
public R visitIntegerRemainder(IntegerRemainderNode n, P p)
- Specified by:
visitIntegerRemainderin interfaceNodeVisitor<R,P>
-
visitFloatingRemainder
public R visitFloatingRemainder(FloatingRemainderNode n, P p)
- Specified by:
visitFloatingRemainderin interfaceNodeVisitor<R,P>
-
visitLeftShift
public R visitLeftShift(LeftShiftNode n, P p)
- Specified by:
visitLeftShiftin interfaceNodeVisitor<R,P>
-
visitSignedRightShift
public R visitSignedRightShift(SignedRightShiftNode n, P p)
- Specified by:
visitSignedRightShiftin interfaceNodeVisitor<R,P>
-
visitUnsignedRightShift
public R visitUnsignedRightShift(UnsignedRightShiftNode n, P p)
- Specified by:
visitUnsignedRightShiftin interfaceNodeVisitor<R,P>
-
visitBitwiseAnd
public R visitBitwiseAnd(BitwiseAndNode n, P p)
- Specified by:
visitBitwiseAndin interfaceNodeVisitor<R,P>
-
visitBitwiseOr
public R visitBitwiseOr(BitwiseOrNode n, P p)
- Specified by:
visitBitwiseOrin interfaceNodeVisitor<R,P>
-
visitBitwiseXor
public R visitBitwiseXor(BitwiseXorNode n, P p)
- Specified by:
visitBitwiseXorin interfaceNodeVisitor<R,P>
-
visitLessThan
public R visitLessThan(LessThanNode n, P p)
- Specified by:
visitLessThanin interfaceNodeVisitor<R,P>
-
visitLessThanOrEqual
public R visitLessThanOrEqual(LessThanOrEqualNode n, P p)
- Specified by:
visitLessThanOrEqualin interfaceNodeVisitor<R,P>
-
visitGreaterThan
public R visitGreaterThan(GreaterThanNode n, P p)
- Specified by:
visitGreaterThanin interfaceNodeVisitor<R,P>
-
visitGreaterThanOrEqual
public R visitGreaterThanOrEqual(GreaterThanOrEqualNode n, P p)
- Specified by:
visitGreaterThanOrEqualin interfaceNodeVisitor<R,P>
-
visitEqualTo
public R visitEqualTo(EqualToNode n, P p)
- Specified by:
visitEqualToin interfaceNodeVisitor<R,P>
-
visitNotEqual
public R visitNotEqual(NotEqualNode n, P p)
- Specified by:
visitNotEqualin interfaceNodeVisitor<R,P>
-
visitConditionalAnd
public R visitConditionalAnd(ConditionalAndNode n, P p)
- Specified by:
visitConditionalAndin interfaceNodeVisitor<R,P>
-
visitConditionalOr
public R visitConditionalOr(ConditionalOrNode n, P p)
- Specified by:
visitConditionalOrin interfaceNodeVisitor<R,P>
-
visitConditionalNot
public R visitConditionalNot(ConditionalNotNode n, P p)
- Specified by:
visitConditionalNotin interfaceNodeVisitor<R,P>
-
visitTernaryExpression
public R visitTernaryExpression(TernaryExpressionNode n, P p)
- Specified by:
visitTernaryExpressionin interfaceNodeVisitor<R,P>
-
visitSwitchExpressionNode
public R visitSwitchExpressionNode(SwitchExpressionNode n, P p)
- Specified by:
visitSwitchExpressionNodein interfaceNodeVisitor<R,P>
-
visitAssignment
public R visitAssignment(AssignmentNode n, P p)
- Specified by:
visitAssignmentin interfaceNodeVisitor<R,P>
-
visitLocalVariable
public R visitLocalVariable(LocalVariableNode n, P p)
- Specified by:
visitLocalVariablein interfaceNodeVisitor<R,P>
-
visitVariableDeclaration
public R visitVariableDeclaration(VariableDeclarationNode n, P p)
- Specified by:
visitVariableDeclarationin interfaceNodeVisitor<R,P>
-
visitFieldAccess
public R visitFieldAccess(FieldAccessNode n, P p)
- Specified by:
visitFieldAccessin interfaceNodeVisitor<R,P>
-
visitMethodAccess
public R visitMethodAccess(MethodAccessNode n, P p)
- Specified by:
visitMethodAccessin interfaceNodeVisitor<R,P>
-
visitArrayAccess
public R visitArrayAccess(ArrayAccessNode n, P p)
- Specified by:
visitArrayAccessin interfaceNodeVisitor<R,P>
-
visitImplicitThis
public R visitImplicitThis(ImplicitThisNode n, P p)
- Specified by:
visitImplicitThisin interfaceNodeVisitor<R,P>
-
visitExplicitThis
public R visitExplicitThis(ExplicitThisNode n, P p)
- Specified by:
visitExplicitThisin interfaceNodeVisitor<R,P>
-
visitSuper
public R visitSuper(SuperNode n, P p)
- Specified by:
visitSuperin interfaceNodeVisitor<R,P>
-
visitReturn
public R visitReturn(ReturnNode n, P p)
- Specified by:
visitReturnin interfaceNodeVisitor<R,P>
-
visitLambdaResultExpression
public R visitLambdaResultExpression(LambdaResultExpressionNode n, P p)
- Specified by:
visitLambdaResultExpressionin interfaceNodeVisitor<R,P>
-
visitStringConversion
public R visitStringConversion(StringConversionNode n, P p)
- Specified by:
visitStringConversionin interfaceNodeVisitor<R,P>
-
visitWideningConversion
public R visitWideningConversion(WideningConversionNode n, P p)
- Specified by:
visitWideningConversionin interfaceNodeVisitor<R,P>
-
visitNarrowingConversion
public R visitNarrowingConversion(NarrowingConversionNode n, P p)
- Specified by:
visitNarrowingConversionin interfaceNodeVisitor<R,P>
-
visitInstanceOf
public R visitInstanceOf(InstanceOfNode n, P p)
- Specified by:
visitInstanceOfin interfaceNodeVisitor<R,P>
-
visitTypeCast
public R visitTypeCast(TypeCastNode n, P p)
- Specified by:
visitTypeCastin interfaceNodeVisitor<R,P>
-
visitAssertionError
public R visitAssertionError(AssertionErrorNode n, P p)
- Specified by:
visitAssertionErrorin interfaceNodeVisitor<R,P>
-
visitSynchronized
public R visitSynchronized(SynchronizedNode n, P p)
- Specified by:
visitSynchronizedin interfaceNodeVisitor<R,P>
-
visitThrow
public R visitThrow(ThrowNode n, P p)
- Specified by:
visitThrowin interfaceNodeVisitor<R,P>
-
visitCase
public R visitCase(CaseNode n, P p)
- Specified by:
visitCasein interfaceNodeVisitor<R,P>
-
visitMethodInvocation
public R visitMethodInvocation(MethodInvocationNode n, P p)
- Specified by:
visitMethodInvocationin interfaceNodeVisitor<R,P>
-
visitObjectCreation
public R visitObjectCreation(ObjectCreationNode n, P p)
- Specified by:
visitObjectCreationin interfaceNodeVisitor<R,P>
-
visitClassDeclaration
public R visitClassDeclaration(ClassDeclarationNode n, P p)
Description copied from interface:NodeVisitorVisits an anonymous/inner/nested class declaration within a method.- Specified by:
visitClassDeclarationin interfaceNodeVisitor<R,P>- Parameters:
n- theClassDeclarationNodeto be visitedp- the argument for the operation implemented by this visitor- Returns:
- the return value of the operation implemented by this visitor
-
visitMemberReference
public R visitMemberReference(FunctionalInterfaceNode n, P p)
- Specified by:
visitMemberReferencein interfaceNodeVisitor<R,P>
-
visitArrayCreation
public R visitArrayCreation(ArrayCreationNode n, P p)
- Specified by:
visitArrayCreationin interfaceNodeVisitor<R,P>
-
visitArrayType
public R visitArrayType(ArrayTypeNode n, P p)
- Specified by:
visitArrayTypein interfaceNodeVisitor<R,P>
-
visitPrimitiveType
public R visitPrimitiveType(PrimitiveTypeNode n, P p)
- Specified by:
visitPrimitiveTypein interfaceNodeVisitor<R,P>
-
visitClassName
public R visitClassName(ClassNameNode n, P p)
- Specified by:
visitClassNamein interfaceNodeVisitor<R,P>
-
visitPackageName
public R visitPackageName(PackageNameNode n, P p)
- Specified by:
visitPackageNamein interfaceNodeVisitor<R,P>
-
visitParameterizedType
public R visitParameterizedType(ParameterizedTypeNode n, P p)
- Specified by:
visitParameterizedTypein interfaceNodeVisitor<R,P>
-
visitMarker
public R visitMarker(MarkerNode n, P p)
- Specified by:
visitMarkerin interfaceNodeVisitor<R,P>
-
visitExpressionStatement
public R visitExpressionStatement(ExpressionStatementNode n, P p)
Description copied from interface:NodeVisitorVisits an expression that is used as a statement. This node is a marker after the expression node(s).- Specified by:
visitExpressionStatementin interfaceNodeVisitor<R,P>- Parameters:
n- theExpressionStatementNodeto be visitedp- the argument for the operation implemented by this visitor- Returns:
- the return value of the operation implemented by this visitor
-
visitDeconstructorPattern
public R visitDeconstructorPattern(DeconstructorPatternNode n, P p)
Description copied from interface:NodeVisitorVisits a deconstructor pattern node.- Specified by:
visitDeconstructorPatternin interfaceNodeVisitor<R,P>- Parameters:
n- theDeconstructorPatternNodeto be visitedp- the argument for the operation implemented by this visitor- Returns:
- the return value of the operation implemented by this visitor
-
-