Class ValueExpressionRenderer
- java.lang.Object
-
- com.exasol.sql.expression.rendering.AbstractExpressionRenderer
-
- com.exasol.sql.expression.rendering.ValueExpressionRenderer
-
- All Implemented Interfaces:
BooleanExpressionVisitor
,ComparisonVisitor
,FunctionVisitor
,LiteralVisitor
,PredicateVisitor
,ValueExpressionVisitor
public class ValueExpressionRenderer extends AbstractExpressionRenderer implements BooleanExpressionVisitor, ComparisonVisitor, FunctionVisitor, LiteralVisitor, PredicateVisitor, ValueExpressionVisitor
Renderer for common value expressions.
-
-
Field Summary
-
Fields inherited from class com.exasol.sql.expression.rendering.AbstractExpressionRenderer
builder, config
-
-
Constructor Summary
Constructors Constructor Description ValueExpressionRenderer(StringRendererConfig config)
Create a new instance ofValueExpressionRenderer
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
visit(And and)
Visit a logicalAND
expression.void
visit(BinaryArithmeticExpression expression)
Visit a binary arithmetic expression.void
visit(BooleanExpression booleanExpression)
Visit a boolean expression.void
visit(ColumnReference columnReference)
Visit a column reference.void
visit(Comparison comparison)
Visit a comparison.void
visit(LikeComparison like)
Visit aLIKE
comparison.void
visit(SimpleComparison simpleComparison)
Visit a simple comparison (e.g.void
visit(DefaultValue defaultValue)
Visit a default value.void
visit(AnalyticFunction analyticFunction)
Visit an analytic function.void
visit(CastExasolFunction castFunction)
Visit an explicit cast.void
visit(ExasolFunction function)
Function visitorvoid
visit(ExasolUdf function)
Visit an Exasol user-defined function (UDF).void
visit(Function function)
Visit a function.void
visit(BigDecimalLiteral literal)
Visit a big decimal literal.void
visit(BooleanLiteral literal)
Visit a boolean literal.void
visit(DoubleLiteral literal)
Visit a double-precision floating point literal.void
visit(FloatLiteral literal)
Visit a single-precision floating point literal.void
visit(IntegerLiteral literal)
Visit an integer literal.void
visit(Literal literal)
Visit a literal.void
visit(LongLiteral literal)
Visit a long integer literal.void
visit(NullLiteral nullLiteral)
Visit a literal null.void
visit(StringLiteral literal)
Literal visitorvoid
visit(Not not)
Visit a unaryNOT
expression.void
visit(Or or)
Visit a logicalOR
expression.void
visit(BetweenPredicate betweenPredicate)
Visit a value-between predicate.void
visit(ExistsPredicate existsPredicate)
Visit a value-exists predicate.void
visit(InPredicate inPredicate)
Visit a value-in-constant-list predicate.void
visit(IsNullPredicate isNullPredicate)
Visit an is-null predicate.void
visit(Predicate predicate)
Visit a predicate.void
visit(ValueExpression... valueExpressions)
Visit a value expression.void
visit(UnnamedPlaceholder unnamedPlaceholder)
Visit an unnamed placeholder.void
visit(List<ValueExpression> valueExpressions)
Visit expressions.-
Methods inherited from class com.exasol.sql.expression.rendering.AbstractExpressionRenderer
append, appendAutoQuoted, appendBooleanLiteral, appendKeyword, endParenthesis, render, startParenthesis
-
-
-
-
Constructor Detail
-
ValueExpressionRenderer
public ValueExpressionRenderer(StringRendererConfig config)
Create a new instance ofValueExpressionRenderer
.- Parameters:
config
- render configuration
-
-
Method Detail
-
visit
public void visit(Not not)
Description copied from interface:BooleanExpressionVisitor
Visit a unaryNOT
expression.- Specified by:
visit
in interfaceBooleanExpressionVisitor
- Parameters:
not
- unaryNOT
to visit
-
visit
public void visit(And and)
Description copied from interface:BooleanExpressionVisitor
Visit a logicalAND
expression.- Specified by:
visit
in interfaceBooleanExpressionVisitor
- Parameters:
and
- logicalAND
to visit
-
visit
public void visit(Or or)
Description copied from interface:BooleanExpressionVisitor
Visit a logicalOR
expression.- Specified by:
visit
in interfaceBooleanExpressionVisitor
- Parameters:
or
- logicalOR
to visit
-
visit
public void visit(BooleanLiteral literal)
Description copied from interface:BooleanExpressionVisitor
Visit a boolean literal.- Specified by:
visit
in interfaceBooleanExpressionVisitor
- Specified by:
visit
in interfaceLiteralVisitor
- Parameters:
literal
- boolean literal to visit
-
visit
public void visit(Comparison comparison)
Description copied from interface:BooleanExpressionVisitor
Visit a comparison.- Specified by:
visit
in interfaceBooleanExpressionVisitor
- Parameters:
comparison
- comparison to visit
-
visit
public void visit(SimpleComparison simpleComparison)
Description copied from interface:ComparisonVisitor
Visit a simple comparison (e.g. equality).- Specified by:
visit
in interfaceComparisonVisitor
- Parameters:
simpleComparison
- comparison to visit
-
visit
public void visit(LikeComparison like)
Description copied from interface:ComparisonVisitor
Visit aLIKE
comparison.- Specified by:
visit
in interfaceComparisonVisitor
- Parameters:
like
- comparison to visit
-
visit
public void visit(Predicate predicate)
Description copied from interface:BooleanExpressionVisitor
Visit a predicate.- Specified by:
visit
in interfaceBooleanExpressionVisitor
- Parameters:
predicate
- predicate to visit
-
visit
public void visit(IsNullPredicate isNullPredicate)
Description copied from interface:PredicateVisitor
Visit an is-null predicate.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
isNullPredicate
- predicate to visit
-
visit
public void visit(InPredicate inPredicate)
Description copied from interface:PredicateVisitor
Visit a value-in-constant-list predicate.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
inPredicate
- predicate to visit
-
visit
public void visit(ExistsPredicate existsPredicate)
Description copied from interface:PredicateVisitor
Visit a value-exists predicate.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
existsPredicate
- predicate to visit
-
visit
public void visit(BetweenPredicate betweenPredicate)
Description copied from interface:PredicateVisitor
Visit a value-between predicate.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
betweenPredicate
- predicate to visit
-
visit
public void visit(List<ValueExpression> valueExpressions)
Visit expressions.- Parameters:
valueExpressions
- value expressions to visit
-
visit
public void visit(ValueExpression... valueExpressions)
Visit a value expression.- Parameters:
valueExpressions
- value expression to visit
-
visit
public void visit(ColumnReference columnReference)
Description copied from interface:ValueExpressionVisitor
Visit a column reference.- Specified by:
visit
in interfaceValueExpressionVisitor
- Parameters:
columnReference
- column reference to visit
-
visit
public void visit(Literal literal)
Description copied from interface:ValueExpressionVisitor
Visit a literal.- Specified by:
visit
in interfaceValueExpressionVisitor
- Parameters:
literal
- literal to visit
-
visit
public void visit(Function function)
Description copied from interface:ValueExpressionVisitor
Visit a function.- Specified by:
visit
in interfaceValueExpressionVisitor
- Parameters:
function
- function to visit
-
visit
public void visit(BooleanExpression booleanExpression)
Description copied from interface:ValueExpressionVisitor
Visit a boolean expression.- Specified by:
visit
in interfaceValueExpressionVisitor
- Parameters:
booleanExpression
- boolean expression to visit
-
visit
public void visit(UnnamedPlaceholder unnamedPlaceholder)
Description copied from interface:ValueExpressionVisitor
Visit an unnamed placeholder.- Specified by:
visit
in interfaceValueExpressionVisitor
- Parameters:
unnamedPlaceholder
- placeholder to visit
-
visit
public void visit(DefaultValue defaultValue)
Description copied from interface:ValueExpressionVisitor
Visit a default value.- Specified by:
visit
in interfaceValueExpressionVisitor
- Parameters:
defaultValue
- default value to visit
-
visit
public void visit(StringLiteral literal)
Literal visitor- Specified by:
visit
in interfaceLiteralVisitor
- Parameters:
literal
- string literal to visit
-
visit
public void visit(IntegerLiteral literal)
Description copied from interface:LiteralVisitor
Visit an integer literal.- Specified by:
visit
in interfaceLiteralVisitor
- Parameters:
literal
- integer literal to visit
-
visit
public void visit(LongLiteral literal)
Description copied from interface:LiteralVisitor
Visit a long integer literal.- Specified by:
visit
in interfaceLiteralVisitor
- Parameters:
literal
- long integer literal to visit
-
visit
public void visit(DoubleLiteral literal)
Description copied from interface:LiteralVisitor
Visit a double-precision floating point literal.- Specified by:
visit
in interfaceLiteralVisitor
- Parameters:
literal
- double-precision floating point literal ot visit
-
visit
public void visit(FloatLiteral literal)
Description copied from interface:LiteralVisitor
Visit a single-precision floating point literal.- Specified by:
visit
in interfaceLiteralVisitor
- Parameters:
literal
- single-precision floating point literal
-
visit
public void visit(BigDecimalLiteral literal)
Description copied from interface:LiteralVisitor
Visit a big decimal literal.- Specified by:
visit
in interfaceLiteralVisitor
- Parameters:
literal
- big decimal literal to visit
-
visit
public void visit(NullLiteral nullLiteral)
Description copied from interface:LiteralVisitor
Visit a literal null.- Specified by:
visit
in interfaceLiteralVisitor
- Parameters:
nullLiteral
- literal null to visit
-
visit
public void visit(ExasolFunction function)
Function visitor- Specified by:
visit
in interfaceFunctionVisitor
- Parameters:
function
- function to visit
-
visit
public void visit(ExasolUdf function)
Description copied from interface:FunctionVisitor
Visit an Exasol user-defined function (UDF).- Specified by:
visit
in interfaceFunctionVisitor
- Parameters:
function
- UDF to visit
-
visit
public void visit(AnalyticFunction analyticFunction)
Description copied from interface:FunctionVisitor
Visit an analytic function.- Specified by:
visit
in interfaceFunctionVisitor
- Parameters:
analyticFunction
- analytic function to visit
-
visit
public void visit(CastExasolFunction castFunction)
Description copied from interface:FunctionVisitor
Visit an explicit cast.- Specified by:
visit
in interfaceFunctionVisitor
- Parameters:
castFunction
- cast function to visit
-
visit
public void visit(BinaryArithmeticExpression expression)
Description copied from interface:ValueExpressionVisitor
Visit a binary arithmetic expression.- Specified by:
visit
in interfaceValueExpressionVisitor
- Parameters:
expression
- binary arithmetic expression to visit
-
-