Package io.substrait.expression
Class ImmutableExpression.IntervalYearLiteral
java.lang.Object
io.substrait.expression.Expression.IntervalYearLiteral
io.substrait.expression.ImmutableExpression.IntervalYearLiteral
- All Implemented Interfaces:
Expression,Expression.Literal,FunctionArg
- Enclosing class:
- ImmutableExpression
public static final class ImmutableExpression.IntervalYearLiteral
extends Expression.IntervalYearLiteral
Immutable implementation of
Expression.IntervalYearLiteral.
Use the builder to create immutable instances:
ImmutableExpression.IntervalYearLiteral.builder().
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeIntervalYearLiteral.Nested 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 forIntervalYearLiteral.copyOf(Expression.IntervalYearLiteral instance) Creates an immutable copy of aExpression.IntervalYearLiteralvalue.booleanThis instance is equal to all instances ofIntervalYearLiteralthat have equal attribute values.inthashCode()Computes a hash code from attributes:nullable,years,months.intmonths()booleannullable()toString()Prints the immutable valueIntervalYearLiteralwith attribute values.withMonths(int value) Copy the current immutable object by setting a value for themonthsattribute.withNullable(boolean value) Copy the current immutable object by setting a value for thenullableattribute.withYears(int value) Copy the current immutable object by setting a value for theyearsattribute.intyears()Methods inherited from class io.substrait.expression.Expression.IntervalYearLiteral
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
-
nullable
public boolean nullable()- Returns:
- The value of the
nullableattribute
-
years
public int years()- Specified by:
yearsin classExpression.IntervalYearLiteral- Returns:
- The value of the
yearsattribute
-
months
public int months()- Specified by:
monthsin classExpression.IntervalYearLiteral- Returns:
- The value of the
monthsattribute
-
withNullable
Copy the current immutable object by setting a value for thenullableattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for nullable- Returns:
- A modified copy or the
thisobject
-
withYears
Copy the current immutable object by setting a value for theyearsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for years- Returns:
- A modified copy or the
thisobject
-
withMonths
Copy the current immutable object by setting a value for themonthsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for months- Returns:
- A modified copy or the
thisobject
-
equals
This instance is equal to all instances ofIntervalYearLiteralthat have equal attribute values. -
hashCode
public int hashCode()Computes a hash code from attributes:nullable,years,months. -
toString
Prints the immutable valueIntervalYearLiteralwith attribute values. -
copyOf
public static ImmutableExpression.IntervalYearLiteral copyOf(Expression.IntervalYearLiteral instance) Creates an immutable copy of aExpression.IntervalYearLiteralvalue. 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 IntervalYearLiteral instance
-
builder
Creates a builder forIntervalYearLiteral.ImmutableExpression.IntervalYearLiteral.builder() .nullable(boolean) // optionalnullable.years(int) // requiredyears.months(int) // requiredmonths.build();- Returns:
- A new IntervalYearLiteral builder
-