Package io.substrait.expression
Class ImmutableExpression.MultiOrList
java.lang.Object
io.substrait.expression.Expression.MultiOrList
io.substrait.expression.ImmutableExpression.MultiOrList
- All Implemented Interfaces:
Expression,FunctionArg
- Enclosing class:
- ImmutableExpression
Immutable implementation of
Expression.MultiOrList.
Use the builder to create immutable instances:
ImmutableExpression.MultiOrList.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 TypeMethodDescriptionbuilder()Creates a builder forMultiOrList.copyOf(Expression.MultiOrList instance) Creates an immutable copy of aExpression.MultiOrListvalue.booleanThis instance is equal to all instances ofMultiOrListthat have equal attribute values.inthashCode()Computes a hash code from attributes:conditions,optionCombinations.toString()Prints the immutable valueMultiOrListwith attribute values.withConditions(Expression... elements) Copy the current immutable object with elements that replace the content ofconditions.withConditions(Iterable<? extends Expression> elements) Copy the current immutable object with elements that replace the content ofconditions.withOptionCombinations(Expression.MultiOrListRecord... elements) Copy the current immutable object with elements that replace the content ofoptionCombinations.withOptionCombinations(Iterable<? extends Expression.MultiOrListRecord> elements) Copy the current immutable object with elements that replace the content ofoptionCombinations.Methods inherited from class io.substrait.expression.Expression.MultiOrList
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
-
conditions
- Specified by:
conditionsin classExpression.MultiOrList- Returns:
- The value of the
conditionsattribute
-
optionCombinations
- Specified by:
optionCombinationsin classExpression.MultiOrList- Returns:
- The value of the
optionCombinationsattribute
-
withConditions
Copy the current immutable object with elements that replace the content ofconditions.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withConditions
public final ImmutableExpression.MultiOrList withConditions(Iterable<? extends Expression> elements) Copy the current immutable object with elements that replace the content ofconditions. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of conditions elements to set- Returns:
- A modified copy or
thisif not changed
-
withOptionCombinations
public final ImmutableExpression.MultiOrList withOptionCombinations(Expression.MultiOrListRecord... elements) Copy the current immutable object with elements that replace the content ofoptionCombinations.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withOptionCombinations
public final ImmutableExpression.MultiOrList withOptionCombinations(Iterable<? extends Expression.MultiOrListRecord> elements) Copy the current immutable object with elements that replace the content ofoptionCombinations. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of optionCombinations elements to set- Returns:
- A modified copy or
thisif not changed
-
equals
This instance is equal to all instances ofMultiOrListthat have equal attribute values. -
hashCode
public int hashCode()Computes a hash code from attributes:conditions,optionCombinations. -
toString
Prints the immutable valueMultiOrListwith attribute values. -
copyOf
Creates an immutable copy of aExpression.MultiOrListvalue. 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 MultiOrList instance
-
builder
Creates a builder forMultiOrList.ImmutableExpression.MultiOrList.builder() .addConditions|addAllConditions(io.substrait.expression.Expression) //conditionselements .addOptionCombinations|addAllOptionCombinations(io.substrait.expression.Expression.MultiOrListRecord) //optionCombinationselements .build();- Returns:
- A new MultiOrList builder
-