Class UnaryCompositeBinaryFunction.Helper<G,​H,​L,​R,​T>

  • Type Parameters:
    G - the adapted function left argument type.
    H - the adapted function right argument type.
    L - the left argument type.
    R - the right argument type.
    T - the returned value type.
    All Implemented Interfaces:
    java.io.Serializable, BinaryFunction<L,​R,​T>, BinaryFunctor<L,​R>, Functor
    Enclosing class:
    UnaryCompositeBinaryFunction<L,​R,​T>

    private static class UnaryCompositeBinaryFunction.Helper<G,​H,​L,​R,​T>
    extends java.lang.Object
    implements BinaryFunction<L,​R,​T>, java.io.Serializable
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private BinaryFunction<? super G,​? super H,​? extends T> f
      The adapted function to receive (output(g), output(h)).
      private UnaryFunction<? super L,​? extends G> g
      The adapted left function.
      private UnaryFunction<? super R,​? extends H> h
      The adapted right function.
      private static long serialVersionUID
      serialVersionUID declaration.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      T evaluate​(L left, R right)
      Evaluate this function.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        serialVersionUID declaration.
        See Also:
        Constant Field Values
      • f

        private BinaryFunction<? super G,​? super H,​? extends T> f
        The adapted function to receive (output(g), output(h)).
      • g

        private UnaryFunction<? super L,​? extends G> g
        The adapted left function.
      • h

        private UnaryFunction<? super R,​? extends H> h
        The adapted right function.
    • Constructor Detail

      • Helper

        public Helper​(BinaryFunction<? super G,​? super H,​? extends T> f,
                      UnaryFunction<? super L,​? extends G> g,
                      UnaryFunction<? super R,​? extends H> h)
        Create a new Helper.
        Parameters:
        f - BinaryFunction to receive (output(g), output(h))
        g - left UnaryFunction
        h - right UnaryFunction
    • Method Detail

      • evaluate

        public T evaluate​(L left,
                          R right)
        Evaluate this function.
        Specified by:
        evaluate in interface BinaryFunction<G,​H,​L>
        Parameters:
        left - the L element of the ordered pair of arguments
        right - the R element of the ordered pair of arguments
        Returns:
        the T result of this function for the given arguments