Package io.substrait.extendedexpression
Class ImmutableExtendedExpression.Builder
java.lang.Object
io.substrait.extendedexpression.ImmutableExtendedExpression.Builder
- Enclosing class:
- ImmutableExtendedExpression
Builds instances of type
ImmutableExtendedExpression.
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 TypeMethodDescriptionaddAllExpectedTypeUrls(Iterable<String> elements) Adds elements toexpectedTypeUrlslist.addAllReferredExpressions(Iterable<? extends ExtendedExpression.ExpressionReferenceBase> elements) Adds elements toreferredExpressionslist.addExpectedTypeUrls(String element) Adds one element toexpectedTypeUrlslist.addExpectedTypeUrls(String... elements) Adds elements toexpectedTypeUrlslist.Adds one element toreferredExpressionslist.Adds elements toreferredExpressionslist.advancedExtension(AdvancedExtension advancedExtension) Initializes the optional valueadvancedExtensionto advancedExtension.advancedExtension(Optional<? extends AdvancedExtension> advancedExtension) Initializes the optional valueadvancedExtensionto advancedExtension.baseSchema(NamedStruct baseSchema) Initializes the value for thebaseSchemaattribute.build()Builds a newImmutableExtendedExpression.expectedTypeUrls(Iterable<String> elements) Sets or replaces all elements forexpectedTypeUrlslist.from(ExtendedExpression instance) Fill a builder with attribute values from the providedExtendedExpressioninstance.referredExpressions(Iterable<? extends ExtendedExpression.ExpressionReferenceBase> elements) Sets or replaces all elements forreferredExpressionslist.
-
Method Details
-
from
Fill a builder with attribute values from the providedExtendedExpressioninstance. 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
-
addReferredExpressions
public final ImmutableExtendedExpression.Builder addReferredExpressions(ExtendedExpression.ExpressionReferenceBase element) Adds one element toreferredExpressionslist.- Parameters:
element- A referredExpressions element- Returns:
thisbuilder for use in a chained invocation
-
addReferredExpressions
public final ImmutableExtendedExpression.Builder addReferredExpressions(ExtendedExpression.ExpressionReferenceBase... elements) Adds elements toreferredExpressionslist.- Parameters:
elements- An array of referredExpressions elements- Returns:
thisbuilder for use in a chained invocation
-
referredExpressions
public final ImmutableExtendedExpression.Builder referredExpressions(Iterable<? extends ExtendedExpression.ExpressionReferenceBase> elements) Sets or replaces all elements forreferredExpressionslist.- Parameters:
elements- An iterable of referredExpressions elements- Returns:
thisbuilder for use in a chained invocation
-
addAllReferredExpressions
public final ImmutableExtendedExpression.Builder addAllReferredExpressions(Iterable<? extends ExtendedExpression.ExpressionReferenceBase> elements) Adds elements toreferredExpressionslist.- Parameters:
elements- An iterable of referredExpressions elements- Returns:
thisbuilder for use in a chained invocation
-
baseSchema
Initializes the value for thebaseSchemaattribute.- Parameters:
baseSchema- The value for baseSchema- Returns:
thisbuilder for use in a chained invocation
-
addExpectedTypeUrls
Adds one element toexpectedTypeUrlslist.- Parameters:
element- A expectedTypeUrls element- Returns:
thisbuilder for use in a chained invocation
-
addExpectedTypeUrls
Adds elements toexpectedTypeUrlslist.- Parameters:
elements- An array of expectedTypeUrls elements- Returns:
thisbuilder for use in a chained invocation
-
expectedTypeUrls
Sets or replaces all elements forexpectedTypeUrlslist.- Parameters:
elements- An iterable of expectedTypeUrls elements- Returns:
thisbuilder for use in a chained invocation
-
addAllExpectedTypeUrls
Adds elements toexpectedTypeUrlslist.- Parameters:
elements- An iterable of expectedTypeUrls elements- Returns:
thisbuilder for use in a chained invocation
-
advancedExtension
public final ImmutableExtendedExpression.Builder advancedExtension(AdvancedExtension advancedExtension) Initializes the optional valueadvancedExtensionto advancedExtension.- Parameters:
advancedExtension- The value for advancedExtension- Returns:
thisbuilder for chained invocation
-
advancedExtension
public final ImmutableExtendedExpression.Builder advancedExtension(Optional<? extends AdvancedExtension> advancedExtension) Initializes the optional valueadvancedExtensionto advancedExtension.- Parameters:
advancedExtension- The value for advancedExtension- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newImmutableExtendedExpression.- Returns:
- An immutable instance of ExtendedExpression
- Throws:
IllegalStateException- if any required attributes are missing
-