Package io.substrait.expression
Interface FunctionArg
- All Known Subinterfaces:
EnumArg,Expression,Expression.Literal,Expression.Subquery,Type
- All Known Implementing Classes:
Expression.BinaryLiteral,Expression.BoolLiteral,Expression.Cast,Expression.DateLiteral,Expression.DecimalLiteral,Expression.EmptyListLiteral,Expression.EmptyMapLiteral,Expression.FixedBinaryLiteral,Expression.FixedCharLiteral,Expression.FP32Literal,Expression.FP64Literal,Expression.I16Literal,Expression.I32Literal,Expression.I64Literal,Expression.I8Literal,Expression.IfThen,Expression.InPredicate,Expression.IntervalCompoundLiteral,Expression.IntervalDayLiteral,Expression.IntervalYearLiteral,Expression.ListLiteral,Expression.MapLiteral,Expression.MultiOrList,Expression.NullLiteral,Expression.PrecisionTimestampLiteral,Expression.PrecisionTimestampTZLiteral,Expression.ScalarFunctionInvocation,Expression.ScalarSubquery,Expression.SetPredicate,Expression.SingleOrList,Expression.StrLiteral,Expression.StructLiteral,Expression.Switch,Expression.TimeLiteral,Expression.TimestampLiteral,Expression.TimestampTZLiteral,Expression.UserDefinedLiteral,Expression.UUIDLiteral,Expression.VarCharLiteral,Expression.WindowFunctionInvocation,FieldReference,Type.Binary,Type.Bool,Type.Date,Type.Decimal,Type.FixedBinary,Type.FixedChar,Type.FP32,Type.FP64,Type.I16,Type.I32,Type.I64,Type.I8,Type.IntervalCompound,Type.IntervalDay,Type.IntervalYear,Type.ListType,Type.Map,Type.PrecisionTime,Type.PrecisionTimestamp,Type.PrecisionTimestampTZ,Type.Str,Type.Struct,Type.Time,Type.Timestamp,Type.TimestampTZ,Type.UserDefined,Type.UUID,Type.VarChar
public interface FunctionArg
FunctionArg is a marker interface that represents an argument of a
SimpleExtension.Function invocation. Subtypes are Expression, Type, and EnumArg. Methods processing/visiting FunctionArg instances should be passed the SimpleExtension.Function and the argument index.-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceFunctionArg.FuncArgVisitor<R,C extends VisitationContext, E extends Throwable> static classConverts fromFunctionArgumenttoFunctionArg -
Method Summary
Modifier and TypeMethodDescription<R,C extends VisitationContext, E extends Throwable>
Raccept(SimpleExtension.Function fnDef, int argIdx, FunctionArg.FuncArgVisitor<R, C, E> fnArgVisitor, C context) toProto(TypeExpressionVisitor<Type, RuntimeException> typeVisitor, ExpressionVisitor<Expression, EmptyVisitationContext, RuntimeException> expressionVisitor)
-
Method Details
-
accept
<R,C extends VisitationContext, R acceptE extends Throwable> (SimpleExtension.Function fnDef, int argIdx, FunctionArg.FuncArgVisitor<R, C, throws EE> fnArgVisitor, C context) - Throws:
E extends Throwable
-
toProto
static FunctionArg.FuncArgVisitor<FunctionArgument,EmptyVisitationContext, toProtoRuntimeException> (TypeExpressionVisitor<Type, RuntimeException> typeVisitor, ExpressionVisitor<Expression, EmptyVisitationContext, RuntimeException> expressionVisitor)
-