Package org.sonar.java.se
Class ExplodedGraphWalker
java.lang.Object
org.sonar.java.se.ExplodedGraphWalker
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classThis class ensures that the SE checks are placed in the correct order for the ExplodedGraphWalker In addition, checks that are needed for a correct ExplodedGraphWalker processing are provided in all cases.static classstatic classstatic class -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final MethodMatchersstatic final MethodMatchersstatic final int -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedExplodedGraphWalker(List<SECheck> seChecks, BehaviorCache behaviorCache, JavaFileScannerContext context) ExplodedGraphWalker(BehaviorCache behaviorCache, JavaFileScannerContext context) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddExceptionalYield(SymbolicValue target, ProgramState exceptionalState, String exceptionFullyQualifiedName, SECheck check) voidcleanupStack(Tree tree) voidenqueue(ProgramPoint programPoint, ProgramState programState) voidenqueue(ProgramPoint newProgramPoint, ProgramState programState, boolean exitPath) voidenqueue(ProgramPoint newProgramPoint, ProgramState programState, boolean exitPath, MethodYield methodYield) voidenqueue(ProgramPoint programPoint, ProgramState programState, MethodYield methodYield) protected intmaxSteps()protected MethodBehaviorvisitMethod(MethodTree tree) visitMethod(MethodTree tree, MethodBehavior methodBehavior)
-
Field Details
-
MAX_NESTED_BOOLEAN_STATES
public static final int MAX_NESTED_BOOLEAN_STATES- See Also:
-
EQUALS_METHODS
-
BOOLEAN_VALUE_MATCHER
-
-
Constructor Details
-
ExplodedGraphWalker
-
ExplodedGraphWalker
protected ExplodedGraphWalker(List<SECheck> seChecks, BehaviorCache behaviorCache, JavaFileScannerContext context)
-
-
Method Details
-
visitMethod
-
visitMethod
-
addExceptionalYield
public void addExceptionalYield(SymbolicValue target, ProgramState exceptionalState, String exceptionFullyQualifiedName, SECheck check) -
cleanupStack
-
enqueue
-
enqueue
public void enqueue(ProgramPoint programPoint, ProgramState programState, @Nullable MethodYield methodYield) -
enqueue
-
enqueue
public void enqueue(ProgramPoint newProgramPoint, ProgramState programState, boolean exitPath, @Nullable MethodYield methodYield) -
maxSteps
protected int maxSteps() -
peekMethodBehavior
-