Class InitializedFieldsTransfer
- java.lang.Object
-
- org.checkerframework.dataflow.cfg.node.AbstractNodeVisitor<TransferResult<V,S>,TransferInput<V,S>>
-
- org.checkerframework.framework.flow.CFAbstractTransfer<AccumulationValue,AccumulationStore,AccumulationTransfer>
-
- org.checkerframework.common.accumulation.AccumulationTransfer
-
- org.checkerframework.common.initializedfields.InitializedFieldsTransfer
-
- All Implemented Interfaces:
ForwardTransferFunction<AccumulationValue,AccumulationStore>
,TransferFunction<AccumulationValue,AccumulationStore>
,NodeVisitor<TransferResult<AccumulationValue,AccumulationStore>,TransferInput<AccumulationValue,AccumulationStore>>
public class InitializedFieldsTransfer extends AccumulationTransfer
Accumulates the names of fields that are initialized.
-
-
Field Summary
-
Fields inherited from class org.checkerframework.common.accumulation.AccumulationTransfer
atypeFactory
-
Fields inherited from class org.checkerframework.framework.flow.CFAbstractTransfer
analysis, sequentialSemantics
-
-
Constructor Summary
Constructors Constructor Description InitializedFieldsTransfer(AccumulationAnalysis analysis)
Create an InitializedFieldsTransfer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TransferResult<AccumulationValue,AccumulationStore>
visitAssignment(AssignmentNode node, TransferInput<AccumulationValue,AccumulationStore> input)
-
Methods inherited from class org.checkerframework.common.accumulation.AccumulationTransfer
accumulate
-
Methods inherited from class org.checkerframework.framework.flow.CFAbstractTransfer
addInformationFromPreconditions, createTransferResult, finishValue, finishValue, getNarrowedValue, getValueFromFactory, getWidenedValue, initialStore, insertIntoStores, isNotFullyInitializedReceiver, moreSpecificValue, processCommonAssignment, processConditionalPostconditions, processPostconditions, recreateTransferResult, setFixedInitialStore, splitAssignments, strengthenAnnotationOfEqualTo, usesSequentialSemantics, visitArrayAccess, visitCase, visitClassName, visitConditionalNot, visitDeconstructorPattern, visitEqualTo, visitExpressionStatement, visitFieldAccess, visitInstanceOf, visitLambdaResultExpression, visitLocalVariable, visitMethodInvocation, visitNarrowingConversion, visitNode, visitNotEqual, visitObjectCreation, visitReturn, visitStringConversion, visitSwitchExpressionNode, visitTernaryExpression, visitThis, visitVariableDeclaration, visitWideningConversion
-
Methods inherited from class org.checkerframework.dataflow.cfg.node.AbstractNodeVisitor
visitArrayCreation, visitArrayType, visitAssertionError, visitBitwiseAnd, visitBitwiseComplement, visitBitwiseOr, visitBitwiseXor, visitBooleanLiteral, visitCharacterLiteral, visitClassDeclaration, visitConditionalAnd, visitConditionalOr, visitDoubleLiteral, visitExplicitThis, visitFloatingDivision, visitFloatingRemainder, visitFloatLiteral, visitGreaterThan, visitGreaterThanOrEqual, visitImplicitThis, visitIntegerDivision, visitIntegerLiteral, visitIntegerRemainder, visitLeftShift, visitLessThan, visitLessThanOrEqual, visitLongLiteral, visitMarker, visitMemberReference, visitMethodAccess, visitNullChk, visitNullLiteral, visitNumericalAddition, visitNumericalMinus, visitNumericalMultiplication, visitNumericalPlus, visitNumericalSubtraction, visitPackageName, visitParameterizedType, visitPrimitiveType, visitShortLiteral, visitSignedRightShift, visitStringConcatenate, visitStringLiteral, visitSuper, visitSynchronized, visitThrow, visitTypeCast, visitUnsignedRightShift, visitValueLiteral
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.checkerframework.dataflow.cfg.node.NodeVisitor
visitArrayCreation, visitArrayType, visitAssertionError, visitBitwiseAnd, visitBitwiseComplement, visitBitwiseOr, visitBitwiseXor, visitBooleanLiteral, visitCharacterLiteral, visitClassDeclaration, visitConditionalAnd, visitConditionalOr, visitDoubleLiteral, visitExplicitThis, visitFloatingDivision, visitFloatingRemainder, visitFloatLiteral, visitGreaterThan, visitGreaterThanOrEqual, visitImplicitThis, visitIntegerDivision, visitIntegerLiteral, visitIntegerRemainder, visitLeftShift, visitLessThan, visitLessThanOrEqual, visitLongLiteral, visitMarker, visitMemberReference, visitMethodAccess, visitNullChk, visitNullLiteral, visitNumericalAddition, visitNumericalMinus, visitNumericalMultiplication, visitNumericalPlus, visitNumericalSubtraction, visitPackageName, visitParameterizedType, visitPrimitiveType, visitShortLiteral, visitSignedRightShift, visitStringConcatenate, visitStringLiteral, visitSuper, visitSynchronized, visitThrow, visitTypeCast, visitUnsignedRightShift
-
-
-
-
Constructor Detail
-
InitializedFieldsTransfer
public InitializedFieldsTransfer(AccumulationAnalysis analysis)
Create an InitializedFieldsTransfer.- Parameters:
analysis
- the analysis
-
-
Method Detail
-
visitAssignment
public TransferResult<AccumulationValue,AccumulationStore> visitAssignment(AssignmentNode node, TransferInput<AccumulationValue,AccumulationStore> input)
- Specified by:
visitAssignment
in interfaceNodeVisitor<TransferResult<AccumulationValue,AccumulationStore>,TransferInput<AccumulationValue,AccumulationStore>>
- Overrides:
visitAssignment
in classCFAbstractTransfer<AccumulationValue,AccumulationStore,AccumulationTransfer>
-
-