Class ExpandingVisitor
- java.lang.Object
-
- com.pressassociation.pr.ast.visitor.AstVisitor
-
- com.pressassociation.pr.ast.visitor.TransformingVisitor<AstNode>
-
- com.pressassociation.pr.ast.visitor.ExpandingVisitor
-
public class ExpandingVisitor extends TransformingVisitor<AstNode>
A visitor that will take an ast and expand out sub selection groups to their own paths. For example:
items(id, name) -> items/id,items/name
items(id, homeTown/id)/auth -> items/id/auth,items/homeTown/id/auth- Author:
- Matt Nathan
-
-
Constructor Summary
Constructors Constructor Description ExpandingVisitor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AstNodegetResult()Get the result from the visitor traversing the ast.voidvisitFields(Fields fields)voidvisitPath(Path path)voidvisitSubSelection(SubSelection subSelection)voidvisitWildcard(Wildcard wildcard)voidvisitWord(Word word)-
Methods inherited from class com.pressassociation.pr.ast.visitor.TransformingVisitor
applyTo, toString
-
Methods inherited from class com.pressassociation.pr.ast.visitor.AstVisitor
afterSubSelectionFields, beforeFieldsNext, beforePathField, beforeSubSelectionFields
-
-
-
-
Method Detail
-
visitFields
public void visitFields(Fields fields)
- Overrides:
visitFieldsin classAstVisitor
-
visitPath
public void visitPath(Path path)
- Overrides:
visitPathin classAstVisitor
-
visitSubSelection
public void visitSubSelection(SubSelection subSelection)
- Overrides:
visitSubSelectionin classAstVisitor
-
visitWildcard
public void visitWildcard(Wildcard wildcard)
- Overrides:
visitWildcardin classAstVisitor
-
visitWord
public void visitWord(Word word)
- Overrides:
visitWordin classAstVisitor
-
getResult
public AstNode getResult()
Get the result from the visitor traversing the ast. This is optional because if the visitor is never called then it is possible that there is no ast to return.- Specified by:
getResultin classTransformingVisitor<AstNode>- Returns:
- The result.
-
-