Package io.dialob.program.expr.arith
Class ImmutableArrayReducerOperator.Builder<T>
- java.lang.Object
-
- io.dialob.program.expr.arith.ImmutableArrayReducerOperator.Builder<T>
-
- Enclosing class:
- ImmutableArrayReducerOperator<T>
@NotThreadSafe public static final class ImmutableArrayReducerOperator.Builder<T> extends Object
Builds instances of typeImmutableArrayReducerOperator. 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 ImmutableArrayReducerOperator.Builder<T>arrayExpression(Expression arrayExpression)Initializes the value for thearrayExpressionattribute.ImmutableArrayReducerOperator<T>build()Builds a newImmutableArrayReducerOperator.ImmutableArrayReducerOperator.Builder<T>from(ArrayReducerOperator<T> instance)Fill a builder with attribute values from the providedArrayReducerOperatorinstance.ImmutableArrayReducerOperator.Builder<T>placeholderValue(@Nullable Object placeholderValue)Initializes the value for theplaceholderValueattribute.ImmutableArrayReducerOperator.Builder<T>reducer(BinaryOperator<T> reducer)Initializes the value for thereducerattribute.
-
-
-
Method Detail
-
from
@CanIgnoreReturnValue public final ImmutableArrayReducerOperator.Builder<T> from(ArrayReducerOperator<T> instance)
Fill a builder with attribute values from the providedArrayReducerOperatorinstance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
reducer
@CanIgnoreReturnValue public final ImmutableArrayReducerOperator.Builder<T> reducer(BinaryOperator<T> reducer)
Initializes the value for thereducerattribute.- Parameters:
reducer- The value for reducer- Returns:
thisbuilder for use in a chained invocation
-
arrayExpression
@CanIgnoreReturnValue public final ImmutableArrayReducerOperator.Builder<T> arrayExpression(Expression arrayExpression)
Initializes the value for thearrayExpressionattribute.- Parameters:
arrayExpression- The value for arrayExpression- Returns:
thisbuilder for use in a chained invocation
-
placeholderValue
@CanIgnoreReturnValue public final ImmutableArrayReducerOperator.Builder<T> placeholderValue(@Nullable @Nullable Object placeholderValue)
Initializes the value for theplaceholderValueattribute.If not set, this attribute will have a default value as returned by the initializer of
placeholderValue.- Parameters:
placeholderValue- The value for placeholderValue (can benull)- Returns:
thisbuilder for use in a chained invocation
-
build
public ImmutableArrayReducerOperator<T> build()
Builds a newImmutableArrayReducerOperator.- Returns:
- An immutable instance of ArrayReducerOperator
- Throws:
IllegalStateException- if any required attributes are missing
-
-