Interface QuadConsumer<A,​B,​C,​D>

  • Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    public interface QuadConsumer<A,​B,​C,​D>
    QuadConsumer Documentation.

    This is an extension of Java's original functional-interfaces package. The Functional Interface designed here creates a "Quad Consumer" - a straight-forward extension of interface java.util.function.Consumer - but instead has an 'accept(...)' method receiving four variable-type parameters instead of just one.

    NOTE: Java's Basic Package java.util.function.*, contains an interface named BiConsumer, that extends the basic Consumer<T> to interface BiConsumer<T, U>. The interface that is implemented here follows a similar vein, but extends the number of generic type-parameters to four, instead of two.

    • Method Detail

      • accept

        void accept​(A a,
                    B b,
                    C c,
                    D d)
        Performs 'this' operation on the given arguments.
        a - the first input argument
        b - the second input argument
        c - the third input argument
        d - the fourth input argument
      • andThen

        default QuadConsumer<A,​B,​C,​DandThen​
                    (QuadConsumer<? super A,​? super B,​? super C,​? super D> after)
        Returns a composed consumer that performs, in sequence, 'this' operation followed by the after operation. If performing either operation throws an exception, it is relayed to the caller of the composed operation. If performing this operation throws an exception, the 'after' operation will not be performed.
        after - The operation to perform after this operation
        A composed consumer that performs in sequence 'this' operation followed by the 'after' operation.
        java.lang.NullPointerException - if parameter 'other' is null.
        Exact Method Body:
         if (after == null)
             throw new NullPointerException("null has been passed to parameter 'after'");
         return (A a, B b, C c, D d) ->
             this.accept(a, b, c, d);
             after.accept(a, b, c, d);