Package io.substrait.relation
Class ImmutableProject.Builder
java.lang.Object
io.substrait.relation.ImmutableProject.Builder
- Enclosing class:
- ImmutableProject
Builds instances of type
ImmutableProject.
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 TypeMethodDescriptionfinal ImmutableProject.BuilderaddAllExpressions(Iterable<? extends Expression> elements) Adds elements toexpressionslist.final ImmutableProject.BuilderaddExpressions(Expression element) Adds one element toexpressionslist.final ImmutableProject.BuilderaddExpressions(Expression... elements) Adds elements toexpressionslist.build()Builds a newImmutableProject.final ImmutableProject.BuildercommonExtension(AdvancedExtension commonExtension) Initializes the optional valuecommonExtensionto commonExtension.final ImmutableProject.BuildercommonExtension(Optional<? extends AdvancedExtension> commonExtension) Initializes the optional valuecommonExtensionto commonExtension.final ImmutableProject.Builderexpressions(Iterable<? extends Expression> elements) Sets or replaces all elements forexpressionslist.final ImmutableProject.Builderextension(AdvancedExtension extension) Initializes the optional valueextensionto extension.final ImmutableProject.Builderextension(Optional<? extends AdvancedExtension> extension) Initializes the optional valueextensionto extension.final ImmutableProject.Builderfrom(AbstractRel instance) Fill a builder with attribute values from the providedio.substrait.relation.AbstractRelinstance.final ImmutableProject.Builderfrom(HasExtension instance) Fill a builder with attribute values from the providedio.substrait.relation.HasExtensioninstance.final ImmutableProject.BuilderFill a builder with attribute values from the providedio.substrait.relation.Projectinstance.final ImmutableProject.BuilderFill a builder with attribute values from the providedio.substrait.relation.Relinstance.final ImmutableProject.Builderfrom(SingleInputRel instance) Fill a builder with attribute values from the providedio.substrait.relation.SingleInputRelinstance.final ImmutableProject.BuilderInitializes the optional valuehintto hint.final ImmutableProject.BuilderInitializes the optional valuehintto hint.final ImmutableProject.BuilderInitializes the value for theinputattribute.final ImmutableProject.BuilderInitializes the optional valueremapto remap.final ImmutableProject.BuilderInitializes the optional valueremapto remap.
-
Method Details
-
from
Fill a builder with attribute values from the providedio.substrait.relation.HasExtensioninstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedio.substrait.relation.Relinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedio.substrait.relation.AbstractRelinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedio.substrait.relation.SingleInputRelinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedio.substrait.relation.Projectinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
extension
Initializes the optional valueextensionto extension.- Parameters:
extension- The value for extension- Returns:
thisbuilder for chained invocation
-
extension
Initializes the optional valueextensionto extension.- Parameters:
extension- The value for extension- Returns:
thisbuilder for use in a chained invocation
-
remap
Initializes the optional valueremapto remap.- Parameters:
remap- The value for remap- Returns:
thisbuilder for chained invocation
-
remap
Initializes the optional valueremapto remap.- Parameters:
remap- The value for remap- Returns:
thisbuilder for use in a chained invocation
-
commonExtension
Initializes the optional valuecommonExtensionto commonExtension.- Parameters:
commonExtension- The value for commonExtension- Returns:
thisbuilder for chained invocation
-
commonExtension
public final ImmutableProject.Builder commonExtension(Optional<? extends AdvancedExtension> commonExtension) Initializes the optional valuecommonExtensionto commonExtension.- Parameters:
commonExtension- The value for commonExtension- Returns:
thisbuilder for use in a chained invocation
-
hint
Initializes the optional valuehintto hint.- Parameters:
hint- The value for hint- Returns:
thisbuilder for chained invocation
-
hint
Initializes the optional valuehintto hint.- Parameters:
hint- The value for hint- Returns:
thisbuilder for use in a chained invocation
-
input
Initializes the value for theinputattribute.- Parameters:
input- The value for input- Returns:
thisbuilder for use in a chained invocation
-
addExpressions
Adds one element toexpressionslist.- Parameters:
element- A expressions element- Returns:
thisbuilder for use in a chained invocation
-
addExpressions
Adds elements toexpressionslist.- Parameters:
elements- An array of expressions elements- Returns:
thisbuilder for use in a chained invocation
-
expressions
Sets or replaces all elements forexpressionslist.- Parameters:
elements- An iterable of expressions elements- Returns:
thisbuilder for use in a chained invocation
-
addAllExpressions
Adds elements toexpressionslist.- Parameters:
elements- An iterable of expressions elements- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newImmutableProject.- Returns:
- An immutable instance of Project
- Throws:
IllegalStateException- if any required attributes are missing
-