Package org.checkerframework.javacutil
Class SwitchExpressionScanner<R,P> 
java.lang.Object
com.sun.source.util.TreeScanner<R,P>
 
org.checkerframework.javacutil.SwitchExpressionScanner<R,P> 
- Type Parameters:
- R- the type of the result of- visitSwitchResultExpression(ExpressionTree, Object)
- P- the type of the parameter to pass to- visitSwitchResultExpression(ExpressionTree, Object)
- All Implemented Interfaces:
- TreeVisitor<R,- P> 
- Direct Known Subclasses:
- SwitchExpressionScanner.FunctionalSwitchExpressionScanner
A class that visits each result expression of a switch expression and calls 
visitSwitchResultExpression(ExpressionTree, Object) on each result expression. The results of
 these method calls are combined using combineResults(Object, Object). Call scanSwitchExpression(Tree, Object) to start scanning the switch expression.
 SwitchExpressionScanner.FunctionalSwitchExpressionScanner can be used to pass functions for to use for visitSwitchResultExpression(ExpressionTree, Object) and combineResults(Object, Object).
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic classAn implementation ofSwitchExpressionScannerthat uses functions passed to the constructor forSwitchExpressionScanner.FunctionalSwitchExpressionScanner.visitSwitchResultExpression(ExpressionTree, Object)andSwitchExpressionScanner.FunctionalSwitchExpressionScanner.combineResults(Object, Object).protected classA scanner that visits all the yield trees in a given tree and callsvisitSwitchResultExpression(ExpressionTree, Object)on the expression in the yield trees.
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected final SwitchExpressionScanner<R,P>.YieldVisitor A scanner that visits all the yield trees in a given tree and callsvisitSwitchResultExpression(ExpressionTree, Object)on the expression in the yield trees.
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprotected abstract RcombineResults(@Nullable R r1, @Nullable R r2) This method combines the result of two calls tovisitSwitchResultExpression(ExpressionTree, Object)ornulland the result of one call tovisitSwitchResultExpression(ExpressionTree, Object).scanSwitchExpression(Tree switchExpression, P p) Scans the given switch expression and callsvisitSwitchResultExpression(ExpressionTree, Object)on each result expression of the switch expression.protected abstract RvisitSwitchResultExpression(ExpressionTree resultExpressionTree, P p) This method is called for each result expression of the switch expression passed inscanSwitchExpression(Tree, Object).Methods inherited from class com.sun.source.util.TreeScannerreduce, scan, scan, visitAnnotatedType, visitAnnotation, visitArrayAccess, visitArrayType, visitAssert, visitAssignment, visitBinary, visitBindingPattern, visitBlock, visitBreak, visitCase, visitCatch, visitClass, visitCompilationUnit, visitCompoundAssignment, visitConditionalExpression, visitContinue, visitDefaultCaseLabel, visitDoWhileLoop, visitEmptyStatement, visitEnhancedForLoop, visitErroneous, visitExports, visitExpressionStatement, visitForLoop, visitGuardedPattern, visitIdentifier, visitIf, visitImport, visitInstanceOf, visitIntersectionType, visitLabeledStatement, visitLambdaExpression, visitLiteral, visitMemberReference, visitMemberSelect, visitMethod, visitMethodInvocation, visitModifiers, visitModule, visitNewArray, visitNewClass, visitOpens, visitOther, visitPackage, visitParameterizedType, visitParenthesized, visitParenthesizedPattern, visitPrimitiveType, visitProvides, visitRequires, visitReturn, visitSwitch, visitSwitchExpression, visitSynchronized, visitThrow, visitTry, visitTypeCast, visitTypeParameter, visitUnary, visitUnionType, visitUses, visitVariable, visitWhileLoop, visitWildcard, visitYield
- 
Field Details- 
yieldVisitorA scanner that visits all the yield trees in a given tree and callsvisitSwitchResultExpression(ExpressionTree, Object)on the expression in the yield trees. It does not descend into switch expressions.
 
- 
- 
Constructor Details- 
SwitchExpressionScannerpublic SwitchExpressionScanner()
 
- 
- 
Method Details- 
visitSwitchResultExpressionThis method is called for each result expression of the switch expression passed inscanSwitchExpression(Tree, Object).- Parameters:
- resultExpressionTree- a result expression of the switch expression currently being scanned
- p- a parameter
- Returns:
- the result of visiting the result expression
 
- 
combineResultsThis method combines the result of two calls tovisitSwitchResultExpression(ExpressionTree, Object)ornulland the result of one call tovisitSwitchResultExpression(ExpressionTree, Object).- Parameters:
- r1- a possibly null result returned by- visitSwitchResultExpression(ExpressionTree, Object)
- r2- a possibly null result returned by- visitSwitchResultExpression(ExpressionTree, Object)
- Returns:
- the combination of r1andr2
 
- 
scanSwitchExpressionScans the given switch expression and callsvisitSwitchResultExpression(ExpressionTree, Object)on each result expression of the switch expression.combineResults(Object, Object)is called to combine the results of visiting multiple switch result expressions.- Parameters:
- switchExpression- a switch expression tree
- p- the parameter to pass to- visitSwitchResultExpression(ExpressionTree, Object)
- Returns:
- the result of calling visitSwitchResultExpression(ExpressionTree, Object)on each result expression ofswitchExpressionand combining the results usingcombineResults(Object, Object)
 
 
-