Package io.dialob.program.expr
Class ImmutableExpressionList.Builder
- java.lang.Object
-
- io.dialob.program.expr.ImmutableExpressionList.Builder
-
- Enclosing class:
- ImmutableExpressionList
@NotThreadSafe public static final class ImmutableExpressionList.Builder extends Object
Builds instances of typeImmutableExpressionList. Initialize attributes and then invoke thebuild()method to create an immutable instance.Builderis not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ImmutableExpressionList.BuilderaddAllExpressions(Iterable<? extends Expression> elements)Adds elements toexpressionslist.ImmutableExpressionList.BuilderaddExpressions(Expression element)Adds one element toexpressionslist.ImmutableExpressionList.BuilderaddExpressions(Expression... elements)Adds elements toexpressionslist.ImmutableExpressionListbuild()Builds a newImmutableExpressionList.ImmutableExpressionList.Builderexpressions(Iterable<? extends Expression> elements)Sets or replaces all elements forexpressionslist.ImmutableExpressionList.Builderfrom(ExpressionList instance)Fill a builder with attribute values from the providedExpressionListinstance.
-
-
-
Method Detail
-
from
@CanIgnoreReturnValue public final ImmutableExpressionList.Builder from(ExpressionList instance)
Fill a builder with attribute values from the providedExpressionListinstance. 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
-
addExpressions
@CanIgnoreReturnValue public final ImmutableExpressionList.Builder addExpressions(Expression element)
Adds one element toexpressionslist.- Parameters:
element- A expressions element- Returns:
thisbuilder for use in a chained invocation
-
addExpressions
@CanIgnoreReturnValue public final ImmutableExpressionList.Builder addExpressions(Expression... elements)
Adds elements toexpressionslist.- Parameters:
elements- An array of expressions elements- Returns:
thisbuilder for use in a chained invocation
-
expressions
@CanIgnoreReturnValue public final ImmutableExpressionList.Builder expressions(Iterable<? extends Expression> elements)
Sets or replaces all elements forexpressionslist.- Parameters:
elements- An iterable of expressions elements- Returns:
thisbuilder for use in a chained invocation
-
addAllExpressions
@CanIgnoreReturnValue public final ImmutableExpressionList.Builder addAllExpressions(Iterable<? extends Expression> elements)
Adds elements toexpressionslist.- Parameters:
elements- An iterable of expressions elements- Returns:
thisbuilder for use in a chained invocation
-
build
public ImmutableExpressionList build()
Builds a newImmutableExpressionList.- Returns:
- An immutable instance of ExpressionList
- Throws:
IllegalStateException- if any required attributes are missing
-
-