Package io.substrait.expression
Interface ExpressionVisitor<R,C extends VisitationContext,E extends Throwable>
- Type Parameters:
R- result type returned by each visitC- visitation context typeE- throwable type that visit methods may throw
- All Known Implementing Classes:
AbstractExpressionVisitor,ExpressionCopyOnWriteVisitor,ExpressionProtoConverter
public interface ExpressionVisitor<R,C extends VisitationContext,E extends Throwable>
Visitor for
Expression nodes.-
Method Summary
Modifier and TypeMethodDescriptionvisit(Expression.BinaryLiteral expr, C context) Visit a binary literal.visit(Expression.BoolLiteral expr, C context) Visit a boolean literal.visit(Expression.Cast expr, C context) Visit a cast.visit(Expression.DateLiteral expr, C context) Visit a date literal.visit(Expression.DecimalLiteral expr, C context) Visit a decimal literal.visit(Expression.EmptyListLiteral expr, C context) Visit an empty list literal.visit(Expression.EmptyMapLiteral expr, C context) Visit an empty map literal.visit(Expression.FixedBinaryLiteral expr, C context) Visit a fixed-length binary literal.visit(Expression.FixedCharLiteral expr, C context) Visit a fixed-length char literal.visit(Expression.FP32Literal expr, C context) Visit a 32-bit floating-point literal.visit(Expression.FP64Literal expr, C context) Visit a 64-bit floating-point literal.visit(Expression.I16Literal expr, C context) Visit a 16-bit integer literal.visit(Expression.I32Literal expr, C context) Visit a 32-bit integer literal.visit(Expression.I64Literal expr, C context) Visit a 64-bit integer literal.visit(Expression.I8Literal expr, C context) Visit an 8-bit integer literal.visit(Expression.IfThen expr, C context) Visit an if-then expression.visit(Expression.InPredicate expr, C context) Visit an IN predicate.visit(Expression.IntervalCompoundLiteral expr, C context) Visit a compound interval literal.visit(Expression.IntervalDayLiteral expr, C context) Visit a day/time interval literal.visit(Expression.IntervalYearLiteral expr, C context) Visit a year/month interval literal.visit(Expression.Lambda expr, C context) Visit a Lambda expression.visit(Expression.ListLiteral expr, C context) Visit a list literal.visit(Expression.MapLiteral expr, C context) Visit a map literal.visit(Expression.MultiOrList expr, C context) Visit a multi-or-list expression.visit(Expression.NestedList expr, C context) Visit a nested list.visit(Expression.NestedStruct expr, C context) Visit a nested struct.visit(Expression.NullLiteral expr, C context) Visit a NULL literal.visit(Expression.PrecisionTimeLiteral expr, C context) Visit a precision time literal.visit(Expression.PrecisionTimestampLiteral expr, C context) Visit a precision timestamp literal.visit(Expression.PrecisionTimestampTZLiteral expr, C context) Visit a precision timestamp-with-timezone literal.visit(Expression.ScalarFunctionInvocation expr, C context) Visit a scalar function invocation.visit(Expression.ScalarSubquery expr, C context) Visit a scalar subquery.visit(Expression.SetPredicate expr, C context) Visit a set predicate.visit(Expression.SingleOrList expr, C context) Visit a single-or-list expression.visit(Expression.StrLiteral expr, C context) Visit a string literal.visit(Expression.StructLiteral expr, C context) Visit a struct literal.visit(Expression.Switch expr, C context) Visit a switch expression.visit(Expression.TimeLiteral expr, C context) Visit a time literal.visit(Expression.TimestampLiteral expr, C context) Visit a timestamp literal.visit(Expression.TimestampTZLiteral expr, C context) Visit a timestamp-with-timezone literal.visit(Expression.UserDefinedAnyLiteral expr, C context) Visit a user-defined any literal.visit(Expression.UserDefinedStructLiteral expr, C context) Visit a user-defined struct literal.visit(Expression.UUIDLiteral expr, C context) Visit a UUID literal.visit(Expression.VarCharLiteral expr, C context) Visit a variable-length char literal.visit(Expression.WindowFunctionInvocation expr, C context) Visit a window function invocation.visit(FieldReference expr, C context) Visit a field reference.
-
Method Details
-
visit
Visit a NULL literal.- Parameters:
expr- the NULL literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a boolean literal.- Parameters:
expr- the boolean literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit an 8-bit integer literal.- Parameters:
expr- the i8 literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a 16-bit integer literal.- Parameters:
expr- the i16 literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a 32-bit integer literal.- Parameters:
expr- the i32 literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a 64-bit integer literal.- Parameters:
expr- the i64 literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a 32-bit floating-point literal.- Parameters:
expr- the fp32 literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a 64-bit floating-point literal.- Parameters:
expr- the fp64 literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a string literal.- Parameters:
expr- the string literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a binary literal.- Parameters:
expr- the binary literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a time literal.- Parameters:
expr- the time literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a precision time literal.- Parameters:
expr- the precision time literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a date literal.- Parameters:
expr- the date literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a timestamp literal.- Parameters:
expr- the timestamp literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a timestamp-with-timezone literal.- Parameters:
expr- the timestamp TZ literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a precision timestamp literal.- Parameters:
expr- the precision timestamp literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a precision timestamp-with-timezone literal.- Parameters:
expr- the precision timestamp TZ literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a year/month interval literal.- Parameters:
expr- the interval (year) literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a day/time interval literal.- Parameters:
expr- the interval (day) literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a compound interval literal.- Parameters:
expr- the compound interval literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a UUID literal.- Parameters:
expr- the UUID literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a fixed-length char literal.- Parameters:
expr- the fixed char literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a variable-length char literal.- Parameters:
expr- the varchar literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a fixed-length binary literal.- Parameters:
expr- the fixed binary literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a decimal literal.- Parameters:
expr- the decimal literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a map literal.- Parameters:
expr- the map literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit an empty map literal.- Parameters:
expr- the empty map literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a list literal.- Parameters:
expr- the list literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit an empty list literal.- Parameters:
expr- the empty list literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a struct literal.- Parameters:
expr- the struct literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a nested struct.- Parameters:
expr- the nested structcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a Lambda expression.- Parameters:
expr- the Lambda expressioncontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a user-defined any literal.- Parameters:
expr- the user-defined literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a user-defined struct literal.- Parameters:
expr- the user-defined literalcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a switch expression.- Parameters:
expr- the switch expressioncontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit an if-then expression.- Parameters:
expr- the if-then expressioncontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a scalar function invocation.- Parameters:
expr- the scalar function invocationcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a window function invocation.- Parameters:
expr- the window function invocationcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a cast.- Parameters:
expr- the cast expressioncontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a single-or-list expression.- Parameters:
expr- the single-or-list expressioncontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a multi-or-list expression.- Parameters:
expr- the multi-or-list expressioncontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a nested list.- Parameters:
expr- the nested listcontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a field reference.- Parameters:
expr- the field referencecontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a set predicate.- Parameters:
expr- the set predicatecontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit a scalar subquery.- Parameters:
expr- the scalar subquerycontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-
visit
Visit an IN predicate.- Parameters:
expr- the IN predicatecontext- visitation context- Returns:
- visit result
- Throws:
E- on visit failure
-