Package dev.cel.parser
Class CelUnparserVisitor
- java.lang.Object
-
- dev.cel.common.ast.CelExprVisitor
-
- dev.cel.parser.CelUnparserVisitor
-
public class CelUnparserVisitor extends CelExprVisitor
Visitor implementation to unparse an AST.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class dev.cel.common.ast.CelExprVisitor
CelExprVisitor.ComprehensionArg
-
-
Field Summary
Fields Modifier and Type Field Description protected CelAbstractSyntaxTree
ast
protected static java.lang.String
BACKTICK
protected static java.lang.String
COLON
protected static java.lang.String
COMMA
protected static java.lang.String
DOT
protected static java.lang.String
LEFT_BRACE
protected static java.lang.String
LEFT_BRACKET
protected static java.lang.String
LEFT_PAREN
protected static java.lang.String
QUESTION_MARK
protected static java.lang.String
RIGHT_BRACE
protected static java.lang.String
RIGHT_BRACKET
protected static java.lang.String
RIGHT_PAREN
protected CelSource
sourceInfo
protected static java.lang.String
SPACE
protected java.lang.StringBuilder
stringBuilder
-
Constructor Summary
Constructors Constructor Description CelUnparserVisitor(CelAbstractSyntaxTree ast)
Creates a newCelUnparserVisitor
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
isBinaryOrTernaryOperator(CelExpr expr)
java.lang.String
unparse()
void
visit(CelExpr expr)
Visit theexpr
value, routing to overloads based on the kind of expression.protected void
visit(CelExpr expr, CelConstant constant)
Visit aCelConstant
expression.protected void
visit(CelExpr expr, CelExpr.CelCall call)
Visit aCelCall
expression.protected void
visit(CelExpr expr, CelExpr.CelComprehension comprehension)
Visit aCelComprehension
expression.protected void
visit(CelExpr expr, CelExpr.CelIdent ident)
Visit anCelIdent
expression.protected void
visit(CelExpr expr, CelExpr.CelList list)
Visit aCelList
expression.protected void
visit(CelExpr expr, CelExpr.CelMap map)
Visit aCelMap
expression.protected void
visit(CelExpr expr, CelExpr.CelSelect select)
Visit aCelSelect
expression.protected void
visit(CelExpr expr, CelExpr.CelStruct struct)
Visit aCelStruct
expression.protected void
visitMaybeNested(CelExpr expr, boolean nested)
-
Methods inherited from class dev.cel.common.ast.CelExprVisitor
visit, visitArg
-
-
-
-
Field Detail
-
LEFT_PAREN
protected static final java.lang.String LEFT_PAREN
- See Also:
- Constant Field Values
-
RIGHT_PAREN
protected static final java.lang.String RIGHT_PAREN
- See Also:
- Constant Field Values
-
DOT
protected static final java.lang.String DOT
- See Also:
- Constant Field Values
-
COMMA
protected static final java.lang.String COMMA
- See Also:
- Constant Field Values
-
SPACE
protected static final java.lang.String SPACE
- See Also:
- Constant Field Values
-
LEFT_BRACKET
protected static final java.lang.String LEFT_BRACKET
- See Also:
- Constant Field Values
-
RIGHT_BRACKET
protected static final java.lang.String RIGHT_BRACKET
- See Also:
- Constant Field Values
-
LEFT_BRACE
protected static final java.lang.String LEFT_BRACE
- See Also:
- Constant Field Values
-
RIGHT_BRACE
protected static final java.lang.String RIGHT_BRACE
- See Also:
- Constant Field Values
-
COLON
protected static final java.lang.String COLON
- See Also:
- Constant Field Values
-
QUESTION_MARK
protected static final java.lang.String QUESTION_MARK
- See Also:
- Constant Field Values
-
BACKTICK
protected static final java.lang.String BACKTICK
- See Also:
- Constant Field Values
-
ast
protected final CelAbstractSyntaxTree ast
-
sourceInfo
protected final CelSource sourceInfo
-
stringBuilder
protected final java.lang.StringBuilder stringBuilder
-
-
Constructor Detail
-
CelUnparserVisitor
public CelUnparserVisitor(CelAbstractSyntaxTree ast)
Creates a newCelUnparserVisitor
.
-
-
Method Detail
-
unparse
public java.lang.String unparse()
-
visit
public void visit(CelExpr expr)
Description copied from class:CelExprVisitor
Visit theexpr
value, routing to overloads based on the kind of expression.- Overrides:
visit
in classCelExprVisitor
-
visit
protected void visit(CelExpr expr, CelConstant constant)
Description copied from class:CelExprVisitor
Visit aCelConstant
expression.- Overrides:
visit
in classCelExprVisitor
-
visit
protected void visit(CelExpr expr, CelExpr.CelIdent ident)
Description copied from class:CelExprVisitor
Visit anCelIdent
expression.- Overrides:
visit
in classCelExprVisitor
-
visit
protected void visit(CelExpr expr, CelExpr.CelSelect select)
Description copied from class:CelExprVisitor
Visit aCelSelect
expression.- Overrides:
visit
in classCelExprVisitor
-
visit
protected void visit(CelExpr expr, CelExpr.CelCall call)
Description copied from class:CelExprVisitor
Visit aCelCall
expression.Arguments to the call are provided to the
CelExprVisitor.visitArg(dev.cel.common.ast.CelExpr, dev.cel.common.ast.CelExpr, int)
function after they have beenvisit
ed.- Overrides:
visit
in classCelExprVisitor
-
visit
protected void visit(CelExpr expr, CelExpr.CelList list)
Description copied from class:CelExprVisitor
Visit aCelList
expression.- Overrides:
visit
in classCelExprVisitor
-
visit
protected void visit(CelExpr expr, CelExpr.CelStruct struct)
Description copied from class:CelExprVisitor
Visit aCelStruct
expression.- Overrides:
visit
in classCelExprVisitor
-
visit
protected void visit(CelExpr expr, CelExpr.CelMap map)
Description copied from class:CelExprVisitor
Visit aCelMap
expression.- Overrides:
visit
in classCelExprVisitor
-
visit
protected void visit(CelExpr expr, CelExpr.CelComprehension comprehension)
Description copied from class:CelExprVisitor
Visit aCelComprehension
expression.Arguments to the comprehension are provided to the
CelExprVisitor.visitArg(dev.cel.common.ast.CelExpr, dev.cel.common.ast.CelExpr, int)
function after they have beenvisit
ed.- Overrides:
visit
in classCelExprVisitor
-
visitMaybeNested
protected void visitMaybeNested(CelExpr expr, boolean nested)
-
isBinaryOrTernaryOperator
protected boolean isBinaryOrTernaryOperator(CelExpr expr)
-
-