Class PatternVariableVisitor
- java.lang.Object
-
- com.github.javaparser.ast.visitor.GenericVisitorWithDefaults<PatternVariableResult,java.lang.Void>
-
- com.github.javaparser.symbolsolver.javaparsermodel.PatternVariableVisitor
-
- All Implemented Interfaces:
GenericVisitor<PatternVariableResult,java.lang.Void>
public class PatternVariableVisitor extends GenericVisitorWithDefaults<PatternVariableResult,java.lang.Void>
-
-
Constructor Summary
Constructors Constructor Description PatternVariableVisitor()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description PatternVariableResult
defaultAction(Node node, java.lang.Void unused)
This will be called by every node visit method that is not overridden.private static PatternVariableResult
getVariablesIntroducedByAnd(BinaryExpr expression)
The following rules apply to a conditional-and expression a && b: - A pattern variable is introduced by a && b when true iff either (i) it is introduced by a when true or (ii) it is introduced by b when true.private static PatternVariableResult
getVariablesIntroducedByLogicalComplement(UnaryExpr unaryExpr)
The following rules apply to a logical complement expression !a: - A pattern variable is introduced by !a when true iff it is introduced by a when false.private static PatternVariableResult
getVariablesIntroducedByOr(BinaryExpr expression)
The following rules apply to a conditional-or expression a || b: - A pattern variable is introduced by a || b when false iff either (i) it is introduced by a when false or (ii) it is introduced by b when false.PatternVariableResult
visit(BinaryExpr expression, java.lang.Void unused)
PatternVariableResult
visit(EnclosedExpr enclosedExpr, java.lang.Void unused)
The following rules apply to a parenthesized expression (a): - A pattern variable is introduced by (a) when true iff it is introduced by a when true.PatternVariableResult
visit(InstanceOfExpr instanceOfExpr, java.lang.Void unused)
The following rule applies to an instanceof expression with a pattern operand, a instanceof p: - A pattern variable is introduced by a instanceof p when true iff the pattern p contains a declaration of the pattern variable.PatternVariableResult
visit(UnaryExpr expr, java.lang.Void unused)
-
Methods inherited from class com.github.javaparser.ast.visitor.GenericVisitorWithDefaults
defaultAction, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
-
-
-
-
Method Detail
-
defaultAction
public PatternVariableResult defaultAction(Node node, java.lang.Void unused)
Description copied from class:GenericVisitorWithDefaults
This will be called by every node visit method that is not overridden.- Overrides:
defaultAction
in classGenericVisitorWithDefaults<PatternVariableResult,java.lang.Void>
-
visit
public PatternVariableResult visit(BinaryExpr expression, java.lang.Void unused)
- Specified by:
visit
in interfaceGenericVisitor<PatternVariableResult,java.lang.Void>
- Overrides:
visit
in classGenericVisitorWithDefaults<PatternVariableResult,java.lang.Void>
-
getVariablesIntroducedByAnd
private static PatternVariableResult getVariablesIntroducedByAnd(BinaryExpr expression)
The following rules apply to a conditional-and expression a && b: - A pattern variable is introduced by a && b when true iff either (i) it is introduced by a when true or (ii) it is introduced by b when true. It should be noted that there is no rule for introducing a pattern variable by a && b when false. This is because it cannot be determined at compile time which operand will evaluate to false. https://docs.oracle.com/javase/specs/jls/se22/html/jls-6.html#jls-6.3.1.1
-
getVariablesIntroducedByOr
private static PatternVariableResult getVariablesIntroducedByOr(BinaryExpr expression)
The following rules apply to a conditional-or expression a || b: - A pattern variable is introduced by a || b when false iff either (i) it is introduced by a when false or (ii) it is introduced by b when false. It should be noted that there is no rule for introducing a pattern variable by a || b when true. This is because it cannot be determined at compile time which operand will evaluate to true. https://docs.oracle.com/javase/specs/jls/se22/html/jls-6.html#jls-6.3.1.2
-
visit
public PatternVariableResult visit(UnaryExpr expr, java.lang.Void unused)
- Specified by:
visit
in interfaceGenericVisitor<PatternVariableResult,java.lang.Void>
- Overrides:
visit
in classGenericVisitorWithDefaults<PatternVariableResult,java.lang.Void>
-
getVariablesIntroducedByLogicalComplement
private static PatternVariableResult getVariablesIntroducedByLogicalComplement(UnaryExpr unaryExpr)
The following rules apply to a logical complement expression !a: - A pattern variable is introduced by !a when true iff it is introduced by a when false. - A pattern variable is introduced by !a when false iff it is introduced by a when true. https://docs.oracle.com/javase/specs/jls/se22/html/jls-6.html#jls-6.3.1.3
-
visit
public PatternVariableResult visit(InstanceOfExpr instanceOfExpr, java.lang.Void unused)
The following rule applies to an instanceof expression with a pattern operand, a instanceof p: - A pattern variable is introduced by a instanceof p when true iff the pattern p contains a declaration of the pattern variable. https://docs.oracle.com/javase/specs/jls/se22/html/jls-6.html#jls-6.3.1.5- Specified by:
visit
in interfaceGenericVisitor<PatternVariableResult,java.lang.Void>
- Overrides:
visit
in classGenericVisitorWithDefaults<PatternVariableResult,java.lang.Void>
-
visit
public PatternVariableResult visit(EnclosedExpr enclosedExpr, java.lang.Void unused)
The following rules apply to a parenthesized expression (a): - A pattern variable is introduced by (a) when true iff it is introduced by a when true. - A pattern variable is introduced by (a) when false iff it is introduced by a when false. https://docs.oracle.com/javase/specs/jls/se22/html/jls-6.html#jls-6.3.1.7- Specified by:
visit
in interfaceGenericVisitor<PatternVariableResult,java.lang.Void>
- Overrides:
visit
in classGenericVisitorWithDefaults<PatternVariableResult,java.lang.Void>
-
-