Class ImmutableBinaryOperator.Builder<T>

java.lang.Object
io.dialob.session.engine.program.expr.arith.ImmutableBinaryOperator.Builder<T>
Enclosing class:
ImmutableBinaryOperator<T>

@Generated(from="BinaryOperator", generator="Immutables") @NotThreadSafe public static final class ImmutableBinaryOperator.Builder<T> extends Object
Builds instances of type ImmutableBinaryOperator. 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 Details

    • from

      @CanIgnoreReturnValue public final ImmutableBinaryOperator.Builder<T> from(BinaryOperator<T> instance)
      Fill a builder with attribute values from the provided BinaryOperator instance. 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:
      this builder for use in a chained invocation
    • addNodes

      @CanIgnoreReturnValue public final ImmutableBinaryOperator.Builder<T> addNodes(Expression element)
      Adds one element to nodes list.
      Parameters:
      element - A nodes element
      Returns:
      this builder for use in a chained invocation
    • addNodes

      @CanIgnoreReturnValue public final ImmutableBinaryOperator.Builder<T> addNodes(Expression... elements)
      Adds elements to nodes list.
      Parameters:
      elements - An array of nodes elements
      Returns:
      this builder for use in a chained invocation
    • nodes

      @CanIgnoreReturnValue public final ImmutableBinaryOperator.Builder<T> nodes(Iterable<? extends Expression> elements)
      Sets or replaces all elements for nodes list.
      Parameters:
      elements - An iterable of nodes elements
      Returns:
      this builder for use in a chained invocation
    • addAllNodes

      @CanIgnoreReturnValue public final ImmutableBinaryOperator.Builder<T> addAllNodes(Iterable<? extends Expression> elements)
      Adds elements to nodes list.
      Parameters:
      elements - An iterable of nodes elements
      Returns:
      this builder for use in a chained invocation
    • reducer

      @CanIgnoreReturnValue public final ImmutableBinaryOperator.Builder<T> reducer(Reducer<T> reducer)
      Initializes the value for the reducer attribute.
      Parameters:
      reducer - The value for reducer
      Returns:
      this builder for use in a chained invocation
    • build

      public ImmutableBinaryOperator<T> build()
      Returns:
      An immutable instance of BinaryOperator
      Throws:
      IllegalStateException - if any required attributes are missing