Package io.substrait.expression
Class ImmutableExpression.Lambda
java.lang.Object
io.substrait.expression.Expression.Lambda
io.substrait.expression.ImmutableExpression.Lambda
- All Implemented Interfaces:
Expression,FunctionArg
- Enclosing class:
- ImmutableExpression
Immutable implementation of
Expression.Lambda.
Use the builder to create immutable instances:
ImmutableExpression.Lambda.builder().
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface io.substrait.expression.Expression
Expression.AggregationInvocation, Expression.AggregationPhase, Expression.BinaryLiteral, Expression.BoolLiteral, Expression.Cast, Expression.DateLiteral, Expression.DecimalLiteral, Expression.EmptyListLiteral, Expression.EmptyMapLiteral, Expression.FailureBehavior, Expression.FixedBinaryLiteral, Expression.FixedCharLiteral, Expression.FP32Literal, Expression.FP64Literal, Expression.I16Literal, Expression.I32Literal, Expression.I64Literal, Expression.I8Literal, Expression.IfClause, Expression.IfThen, Expression.InPredicate, Expression.IntervalCompoundLiteral, Expression.IntervalDayLiteral, Expression.IntervalYearLiteral, Expression.Lambda, Expression.ListLiteral, Expression.Literal, Expression.MapLiteral, Expression.MultiOrList, Expression.MultiOrListRecord, Expression.Nested, Expression.NestedList, Expression.NestedStruct, Expression.NullLiteral, Expression.PrecisionTimeLiteral, Expression.PrecisionTimestampLiteral, Expression.PrecisionTimestampTZLiteral, Expression.PredicateOp, Expression.ScalarFunctionInvocation, Expression.ScalarSubquery, Expression.SetPredicate, Expression.SingleOrList, Expression.SortDirection, Expression.SortField, Expression.StrLiteral, Expression.StructLiteral, Expression.Subquery, Expression.Switch, Expression.SwitchClause, Expression.TimeLiteral, Expression.TimestampLiteral, Expression.TimestampTZLiteral, Expression.UserDefinedAnyLiteral, Expression.UserDefinedLiteral, Expression.UserDefinedStructLiteral, Expression.UUIDLiteral, Expression.VarCharLiteral, Expression.WindowBoundsType, Expression.WindowFunctionInvocationNested classes/interfaces inherited from interface io.substrait.expression.FunctionArg
FunctionArg.FuncArgVisitor<R,C extends VisitationContext, E extends Throwable>, FunctionArg.ProtoFrom -
Method Summary
Modifier and TypeMethodDescriptionbody()builder()Creates a builder forLambda.static ImmutableExpression.LambdacopyOf(Expression.Lambda instance) Creates an immutable copy of aExpression.Lambdavalue.booleanThis instance is equal to all instances ofLambdathat have equal attribute values.inthashCode()Computes a hash code from attributes:parameters,body.toString()Prints the immutable valueLambdawith attribute values.withBody(Expression value) Copy the current immutable object by setting a value for thebodyattribute.withParameters(Type.Struct value) Copy the current immutable object by setting a value for theparametersattribute.Methods inherited from class io.substrait.expression.Expression.Lambda
accept, getTypeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface io.substrait.expression.Expression
accept
-
Method Details
-
parameters
- Specified by:
parametersin classExpression.Lambda- Returns:
- The value of the
parametersattribute
-
body
- Specified by:
bodyin classExpression.Lambda- Returns:
- The value of the
bodyattribute
-
withParameters
Copy the current immutable object by setting a value for theparametersattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for parameters- Returns:
- A modified copy or the
thisobject
-
withBody
Copy the current immutable object by setting a value for thebodyattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for body- Returns:
- A modified copy or the
thisobject
-
equals
This instance is equal to all instances ofLambdathat have equal attribute values. -
hashCode
public int hashCode()Computes a hash code from attributes:parameters,body. -
toString
Prints the immutable valueLambdawith attribute values. -
copyOf
Creates an immutable copy of aExpression.Lambdavalue. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.- Parameters:
instance- The instance to copy- Returns:
- A copied immutable Lambda instance
-
builder
Creates a builder forLambda.ImmutableExpression.Lambda.builder() .parameters(io.substrait.type.Type.Struct) // requiredparameters.body(io.substrait.expression.Expression) // requiredbody.build();- Returns:
- A new Lambda builder
-