Class ExpressionTypeFinder
- java.lang.Object
-
- org.vedantatree.expressionoasis.expressions.ExpressionTypeFinder
-
- All Implemented Interfaces:
ExpressionVisitor
public class ExpressionTypeFinder extends Object implements ExpressionVisitor
Use to find sub-expressions of a particular type within a given expression. For example, the following would extract a set of variables (IdentifierExpressions) from an expression: ExpressionTypeFinder finder = new ExpressionTypeFinder(someExpression, IdentifierExpression.class); Setvariables = finder.getExpressions();
-
-
Constructor Summary
Constructors Constructor Description ExpressionTypeFinder(Expression expressionToSearch, Class expressionTypeToFind)
Creates a new ExpressionTypeFinder
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LinkedHashSet<Expression>
getExpressions()
Gets a set of subexpressions of a given typevoid
visit(Expression expression)
Implementation of the visitor design pattern.
-
-
-
Constructor Detail
-
ExpressionTypeFinder
public ExpressionTypeFinder(Expression expressionToSearch, Class expressionTypeToFind)
Creates a new ExpressionTypeFinder- Parameters:
expressionToSearch
- the expression to search to find sub-expressionsexpressionTypeToFind
- the type of the sub-expressions to search
-
-
Method Detail
-
visit
public void visit(Expression expression)
Implementation of the visitor design pattern. An expression will call this with itself as theexpression
parameter.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
expression
-
-
getExpressions
public LinkedHashSet<Expression> getExpressions()
Gets a set of subexpressions of a given type- Returns:
- a set of expressions of type
expressionTypeToFind
contained withinexpressionToSearch
-
-