Package io.substrait.expression
Class ImmutableFieldReference.Builder
java.lang.Object
io.substrait.expression.ImmutableFieldReference.Builder
- Enclosing class:
- ImmutableFieldReference
Builds instances of type
ImmutableFieldReference.
Initialize attributes and then invoke the build() method to create an
immutable instance.
Builder is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
-
Method Summary
Modifier and TypeMethodDescriptionaddAllSegments(Iterable<? extends FieldReference.ReferenceSegment> elements) Adds elements tosegmentslist.Adds one element tosegmentslist.addSegments(FieldReference.ReferenceSegment... elements) Adds elements tosegmentslist.build()Builds a newImmutableFieldReference.from(FieldReference instance) Fill a builder with attribute values from the providedFieldReferenceinstance.inputExpression(Expression inputExpression) Initializes the optional valueinputExpressionto inputExpression.inputExpression(Optional<? extends Expression> inputExpression) Initializes the optional valueinputExpressionto inputExpression.lambdaParameterReferenceStepsOut(int lambdaParameterReferenceStepsOut) Initializes the optional valuelambdaParameterReferenceStepsOutto lambdaParameterReferenceStepsOut.lambdaParameterReferenceStepsOut(Optional<Integer> lambdaParameterReferenceStepsOut) Initializes the optional valuelambdaParameterReferenceStepsOutto lambdaParameterReferenceStepsOut.outerReferenceStepsOut(int outerReferenceStepsOut) Initializes the optional valueouterReferenceStepsOutto outerReferenceStepsOut.outerReferenceStepsOut(Optional<Integer> outerReferenceStepsOut) Initializes the optional valueouterReferenceStepsOutto outerReferenceStepsOut.segments(Iterable<? extends FieldReference.ReferenceSegment> elements) Sets or replaces all elements forsegmentslist.Initializes the value for thetypeattribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedFieldReferenceinstance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
addSegments
Adds one element tosegmentslist.- Parameters:
element- A segments element- Returns:
thisbuilder for use in a chained invocation
-
addSegments
public final ImmutableFieldReference.Builder addSegments(FieldReference.ReferenceSegment... elements) Adds elements tosegmentslist.- Parameters:
elements- An array of segments elements- Returns:
thisbuilder for use in a chained invocation
-
segments
public final ImmutableFieldReference.Builder segments(Iterable<? extends FieldReference.ReferenceSegment> elements) Sets or replaces all elements forsegmentslist.- Parameters:
elements- An iterable of segments elements- Returns:
thisbuilder for use in a chained invocation
-
addAllSegments
public final ImmutableFieldReference.Builder addAllSegments(Iterable<? extends FieldReference.ReferenceSegment> elements) Adds elements tosegmentslist.- Parameters:
elements- An iterable of segments elements- Returns:
thisbuilder for use in a chained invocation
-
type
Initializes the value for thetypeattribute.- Parameters:
type- The value for type- Returns:
thisbuilder for use in a chained invocation
-
inputExpression
Initializes the optional valueinputExpressionto inputExpression.- Parameters:
inputExpression- The value for inputExpression- Returns:
thisbuilder for chained invocation
-
inputExpression
public final ImmutableFieldReference.Builder inputExpression(Optional<? extends Expression> inputExpression) Initializes the optional valueinputExpressionto inputExpression.- Parameters:
inputExpression- The value for inputExpression- Returns:
thisbuilder for use in a chained invocation
-
outerReferenceStepsOut
Initializes the optional valueouterReferenceStepsOutto outerReferenceStepsOut.- Parameters:
outerReferenceStepsOut- The value for outerReferenceStepsOut- Returns:
thisbuilder for chained invocation
-
outerReferenceStepsOut
public final ImmutableFieldReference.Builder outerReferenceStepsOut(Optional<Integer> outerReferenceStepsOut) Initializes the optional valueouterReferenceStepsOutto outerReferenceStepsOut.- Parameters:
outerReferenceStepsOut- The value for outerReferenceStepsOut- Returns:
thisbuilder for use in a chained invocation
-
lambdaParameterReferenceStepsOut
public final ImmutableFieldReference.Builder lambdaParameterReferenceStepsOut(int lambdaParameterReferenceStepsOut) Initializes the optional valuelambdaParameterReferenceStepsOutto lambdaParameterReferenceStepsOut.- Parameters:
lambdaParameterReferenceStepsOut- The value for lambdaParameterReferenceStepsOut- Returns:
thisbuilder for chained invocation
-
lambdaParameterReferenceStepsOut
public final ImmutableFieldReference.Builder lambdaParameterReferenceStepsOut(Optional<Integer> lambdaParameterReferenceStepsOut) Initializes the optional valuelambdaParameterReferenceStepsOutto lambdaParameterReferenceStepsOut.- Parameters:
lambdaParameterReferenceStepsOut- The value for lambdaParameterReferenceStepsOut- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newImmutableFieldReference.- Returns:
- An immutable instance of FieldReference
- Throws:
IllegalStateException- if any required attributes are missing
-