Class QueryTreeWalker<T> (5.0.3)
Stay organized with collections
Save and categorize content based on your preferences.
public class QueryTreeWalker<T>
The walking of the query tree. This class takes care of visiting
a tree resulting from parsing a query. As it traverses the tree
it calls appropriate methods of the visitor, set at the construction
time. The class uses a depth-first search, visiting all children
of a node, before visiting the node. The visit is done by calling
an appropriate method of the visitor. Typical code should match
the following pattern:
class MyVisitor implements QueryTreeVisitor {
...
}
class MyContext extends QueryTreeContext<MyContext> {
...
@Override
protected MyContext newChildContext() {
return new MyContext();
}
}
MyContext context = new MyContext();
QueryTreeWalker<MyContext> walker = new QueryTreeWalker<MyContext>(new MyVisitor());
Tree root = parser.query(queryStr);
walker.walk(root, context);
// retrieve whatever information you need from context
Type Parameter |
| Name |
Description |
T |
|
Static Methods
simplify(Tree tree)
public static Tree simplify(Tree tree)
| Parameter |
| Name |
Description |
tree |
org.antlr.runtime.tree.Tree
|
| Returns |
| Type |
Description |
org.antlr.runtime.tree.Tree |
|
Constructors
QueryTreeWalker(QueryTreeVisitor<T> visitor)
public QueryTreeWalker(QueryTreeVisitor<T> visitor)
Creates a new query walker that calls the given visitor.
| Parameter |
| Name |
Description |
visitor |
QueryTreeVisitor<T>
the visitor to be called by this walker
|
Methods
postBooleanExpression(T context)
protected void postBooleanExpression(T context)
| Parameter |
| Name |
Description |
context |
T
|
walk(Tree tree, T context)
public void walk(Tree tree, T context)
| Parameters |
| Name |
Description |
tree |
org.antlr.runtime.tree.Tree
the tree to be walked
|
context |
T
the context in which the tree is walked
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-06-03 UTC.
[null,null,["Last updated 2026-06-03 UTC."],[],[]]