Class ReachingDefinitionTransfer
java.lang.Object
org.checkerframework.dataflow.cfg.node.AbstractNodeVisitor<TransferResult<UnusedAbstractValue,ReachingDefinitionStore>,TransferInput<UnusedAbstractValue,ReachingDefinitionStore>>
   
org.checkerframework.dataflow.reachingdef.ReachingDefinitionTransfer
- All Implemented Interfaces:
- ForwardTransferFunction<UnusedAbstractValue,,- ReachingDefinitionStore> - TransferFunction<UnusedAbstractValue,,- ReachingDefinitionStore> - NodeVisitor<TransferResult<UnusedAbstractValue,- ReachingDefinitionStore>, - TransferInput<UnusedAbstractValue, - ReachingDefinitionStore>> 
public class ReachingDefinitionTransfer
extends AbstractNodeVisitor<TransferResult<UnusedAbstractValue,ReachingDefinitionStore>,TransferInput<UnusedAbstractValue,ReachingDefinitionStore>>
implements ForwardTransferFunction<UnusedAbstractValue,ReachingDefinitionStore>    
The reaching definition transfer function. The transfer function processes the
 ReachingDefinitionNode in ReachingDefinitionStore, killing the node with same LHS and putting new
 generated node into the store. See dataflow manual for more details.
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptioninitialStore(UnderlyingAST underlyingAST, @Nullable List<LocalVariableNode> parameters) Returns the initial store to be used by the org.checkerframework.dataflow analysis.Methods inherited from class org.checkerframework.dataflow.cfg.node.AbstractNodeVisitorvisitArrayAccess, visitArrayCreation, visitArrayType, visitAssertionError, visitBitwiseAnd, visitBitwiseComplement, visitBitwiseOr, visitBitwiseXor, visitBooleanLiteral, visitCase, visitCharacterLiteral, visitClassDeclaration, visitClassName, visitConditionalAnd, visitConditionalNot, visitConditionalOr, visitDeconstructorPattern, visitDoubleLiteral, visitEqualTo, visitExplicitThis, visitExpressionStatement, visitFieldAccess, visitFloatingDivision, visitFloatingRemainder, visitFloatLiteral, visitGreaterThan, visitGreaterThanOrEqual, visitImplicitThis, visitInstanceOf, visitIntegerDivision, visitIntegerLiteral, visitIntegerRemainder, visitLambdaResultExpression, visitLeftShift, visitLessThan, visitLessThanOrEqual, visitLocalVariable, visitLongLiteral, visitMarker, visitMemberReference, visitMethodAccess, visitMethodInvocation, visitNarrowingConversion, visitNotEqual, visitNullChk, visitNullLiteral, visitNumericalAddition, visitNumericalMinus, visitNumericalMultiplication, visitNumericalPlus, visitNumericalSubtraction, visitObjectCreation, visitPackageName, visitParameterizedType, visitPrimitiveType, visitReturn, visitShortLiteral, visitSignedRightShift, visitStringConcatenate, visitStringConversion, visitStringLiteral, visitSuper, visitSwitchExpressionNode, visitSynchronized, visitTernaryExpression, visitThis, visitThrow, visitTypeCast, visitUnsignedRightShift, visitValueLiteral, visitVariableDeclaration, visitWideningConversionMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.checkerframework.dataflow.cfg.node.NodeVisitorvisitArrayAccess, visitArrayCreation, visitArrayType, visitAssertionError, visitBitwiseAnd, visitBitwiseComplement, visitBitwiseOr, visitBitwiseXor, visitBooleanLiteral, visitCase, visitCharacterLiteral, visitClassDeclaration, visitClassName, visitConditionalAnd, visitConditionalNot, visitConditionalOr, visitDeconstructorPattern, visitDoubleLiteral, visitEqualTo, visitExplicitThis, visitExpressionStatement, visitFieldAccess, visitFloatingDivision, visitFloatingRemainder, visitFloatLiteral, visitGreaterThan, visitGreaterThanOrEqual, visitImplicitThis, visitInstanceOf, visitIntegerDivision, visitIntegerLiteral, visitIntegerRemainder, visitLambdaResultExpression, visitLeftShift, visitLessThan, visitLessThanOrEqual, visitLocalVariable, visitLongLiteral, visitMarker, visitMemberReference, visitMethodAccess, visitMethodInvocation, visitNarrowingConversion, visitNotEqual, visitNullChk, visitNullLiteral, visitNumericalAddition, visitNumericalMinus, visitNumericalMultiplication, visitNumericalPlus, visitNumericalSubtraction, visitObjectCreation, visitPackageName, visitParameterizedType, visitPrimitiveType, visitReturn, visitShortLiteral, visitSignedRightShift, visitStringConcatenate, visitStringConversion, visitStringLiteral, visitSuper, visitSwitchExpressionNode, visitSynchronized, visitTernaryExpression, visitThrow, visitTypeCast, visitUnsignedRightShift, visitVariableDeclaration, visitWideningConversion
- 
Constructor Details- 
ReachingDefinitionTransferpublic ReachingDefinitionTransfer()Create a new ReachingDefinitionTransfer.
 
- 
- 
Method Details- 
initialStorepublic ReachingDefinitionStore initialStore(UnderlyingAST underlyingAST, @Nullable List<LocalVariableNode> parameters) Description copied from interface:ForwardTransferFunctionReturns the initial store to be used by the org.checkerframework.dataflow analysis.- Specified by:
- initialStorein interface- ForwardTransferFunction<UnusedAbstractValue,- ReachingDefinitionStore> 
- Parameters:
- underlyingAST- an abstract syntax tree
- parameters- a list of local variable nodes representing formal parameters (if any)
- Returns:
- the initial store
 
- 
visitNodepublic RegularTransferResult<UnusedAbstractValue,ReachingDefinitionStore> visitNode(Node n, TransferInput<UnusedAbstractValue, ReachingDefinitionStore> p) 
- 
visitAssignmentpublic RegularTransferResult<UnusedAbstractValue,ReachingDefinitionStore> visitAssignment(AssignmentNode n, TransferInput<UnusedAbstractValue, ReachingDefinitionStore> p) - Specified by:
- visitAssignmentin interface- NodeVisitor<TransferResult<UnusedAbstractValue,- ReachingDefinitionStore>, - TransferInput<UnusedAbstractValue, - ReachingDefinitionStore>> 
- Overrides:
- visitAssignmentin class- AbstractNodeVisitor<TransferResult<UnusedAbstractValue,- ReachingDefinitionStore>, - TransferInput<UnusedAbstractValue, - ReachingDefinitionStore>> 
 
 
-