Package fj

Class P6<A,B,C,D,E,F>

java.lang.Object
fj.P6<A,B,C,D,E,F>

public abstract class P6<A,B,C,D,E,F> extends Object
A product-6.
  • Constructor Summary

    Constructors
    Constructor
    Description
    P6()
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static <A, B, C, D, E, F$>
    F<P6<A,B,C,D,E,F$>,A>
    __1()
    Returns a function that returns the first element of a product.
    static <A, B, C, D, E, F$>
    F<P6<A,B,C,D,E,F$>,B>
    __2()
    Returns a function that returns the second element of a product.
    static <A, B, C, D, E, F$>
    F<P6<A,B,C,D,E,F$>,C>
    __3()
    Returns a function that returns the third element of a product.
    static <A, B, C, D, E, F$>
    F<P6<A,B,C,D,E,F$>,D>
    __4()
    Returns a function that returns the fourth element of a product.
    static <A, B, C, D, E, F$>
    F<P6<A,B,C,D,E,F$>,E>
    __5()
    Returns a function that returns the fifth element of a product.
    static <A, B, C, D, E, F$>
    F<P6<A,B,C,D,E,F$>,F$>
    __6()
    Returns a function that returns the sixth element of a product.
    abstract A
    _1()
    Access the first element of the product.
    final P1<A>
    _1_()
    Returns the 1-product projection over the first element.
    abstract B
    _2()
    Access the second element of the product.
    final P1<B>
    _2_()
    Returns the 1-product projection over the second element.
    abstract C
    _3()
    Access the third element of the product.
    final P1<C>
    _3_()
    Returns the 1-product projection over the third element.
    abstract D
    _4()
    Access the fourth element of the product.
    final P1<D>
    _4_()
    Returns the 1-product projection over the fourth element.
    abstract E
    _5()
    Access the fifth element of the product.
    final P1<E>
    _5_()
    Returns the 1-product projection over the fifth element.
    abstract F
    _6()
    Access the sixth element of the product.
    final P1<F>
    _6_()
    Returns the 1-product projection over the sixth element.
    final <G, H> P8<A,B,C,D,E,F,G,H>
    append(P2<G,H> el)
    Creates a P8 by adding the given element to the current P6
    final <G> P7<A,B,C,D,E,F,G>
    append(G el)
    Creates a P7 by adding the given element to the current P6
    final boolean
    equals(Object other)
     
    final int
     
    final <X> P6<X,B,C,D,E,F>
    map1(F<A,X> f)
    Map the first element of the product.
    final <X> P6<A,X,C,D,E,F>
    map2(F<B,X> f)
    Map the second element of the product.
    final <X> P6<A,B,X,D,E,F>
    map3(F<C,X> f)
    Map the third element of the product.
    final <X> P6<A,B,C,X,E,F>
    map4(F<D,X> f)
    Map the fourth element of the product.
    final <X> P6<A,B,C,D,X,F>
    map5(F<E,X> f)
    Map the fifth element of the product.
    final <X> P6<A,B,C,D,E,X>
    map6(F<F,X> f)
    Map the sixth element of the product.
    final P6<A,B,C,D,E,F>
    Provides a memoising P6 that remembers its values.
    final String
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • P6

      public P6()
  • Method Details

    • _1

      public abstract A _1()
      Access the first element of the product.
      Returns:
      The first element of the product.
    • _2

      public abstract B _2()
      Access the second element of the product.
      Returns:
      The second element of the product.
    • _3

      public abstract C _3()
      Access the third element of the product.
      Returns:
      The third element of the product.
    • _4

      public abstract D _4()
      Access the fourth element of the product.
      Returns:
      The fourth element of the product.
    • _5

      public abstract E _5()
      Access the fifth element of the product.
      Returns:
      The fifth element of the product.
    • _6

      public abstract F _6()
      Access the sixth element of the product.
      Returns:
      The sixth element of the product.
    • map1

      public final <X> P6<X,B,C,D,E,F> map1(F<A,X> f)
      Map the first element of the product.
      Parameters:
      f - The function to map with.
      Returns:
      A product with the given function applied.
    • map2

      public final <X> P6<A,X,C,D,E,F> map2(F<B,X> f)
      Map the second element of the product.
      Parameters:
      f - The function to map with.
      Returns:
      A product with the given function applied.
    • map3

      public final <X> P6<A,B,X,D,E,F> map3(F<C,X> f)
      Map the third element of the product.
      Parameters:
      f - The function to map with.
      Returns:
      A product with the given function applied.
    • map4

      public final <X> P6<A,B,C,X,E,F> map4(F<D,X> f)
      Map the fourth element of the product.
      Parameters:
      f - The function to map with.
      Returns:
      A product with the given function applied.
    • map5

      public final <X> P6<A,B,C,D,X,F> map5(F<E,X> f)
      Map the fifth element of the product.
      Parameters:
      f - The function to map with.
      Returns:
      A product with the given function applied.
    • map6

      public final <X> P6<A,B,C,D,E,X> map6(F<F,X> f)
      Map the sixth element of the product.
      Parameters:
      f - The function to map with.
      Returns:
      A product with the given function applied.
    • _1_

      public final P1<A> _1_()
      Returns the 1-product projection over the first element.
      Returns:
      the 1-product projection over the first element.
    • _2_

      public final P1<B> _2_()
      Returns the 1-product projection over the second element.
      Returns:
      the 1-product projection over the second element.
    • _3_

      public final P1<C> _3_()
      Returns the 1-product projection over the third element.
      Returns:
      the 1-product projection over the third element.
    • _4_

      public final P1<D> _4_()
      Returns the 1-product projection over the fourth element.
      Returns:
      the 1-product projection over the fourth element.
    • _5_

      public final P1<E> _5_()
      Returns the 1-product projection over the fifth element.
      Returns:
      the 1-product projection over the fifth element.
    • _6_

      public final P1<F> _6_()
      Returns the 1-product projection over the sixth element.
      Returns:
      the 1-product projection over the sixth element.
    • append

      public final <G> P7<A,B,C,D,E,F,G> append(G el)
      Creates a P7 by adding the given element to the current P6
      Parameters:
      el - the element to append
      Returns:
      A P7 containing the original P6 with the extra element added at the end
    • append

      public final <G, H> P8<A,B,C,D,E,F,G,H> append(P2<G,H> el)
      Creates a P8 by adding the given element to the current P6
      Parameters:
      el - the element to append
      Returns:
      A P8 containing the original P6 with the extra element added at the end
    • memo

      public final P6<A,B,C,D,E,F> memo()
      Provides a memoising P6 that remembers its values.
      Returns:
      A P6 that calls this P6 once for any given element and remembers the value for subsequent calls.
    • __1

      public static <A, B, C, D, E, F$> F<P6<A,B,C,D,E,F$>,A> __1()
      Returns a function that returns the first element of a product.
      Returns:
      A function that returns the first element of a product.
    • __2

      public static <A, B, C, D, E, F$> F<P6<A,B,C,D,E,F$>,B> __2()
      Returns a function that returns the second element of a product.
      Returns:
      A function that returns the second element of a product.
    • __3

      public static <A, B, C, D, E, F$> F<P6<A,B,C,D,E,F$>,C> __3()
      Returns a function that returns the third element of a product.
      Returns:
      A function that returns the third element of a product.
    • __4

      public static <A, B, C, D, E, F$> F<P6<A,B,C,D,E,F$>,D> __4()
      Returns a function that returns the fourth element of a product.
      Returns:
      A function that returns the fourth element of a product.
    • __5

      public static <A, B, C, D, E, F$> F<P6<A,B,C,D,E,F$>,E> __5()
      Returns a function that returns the fifth element of a product.
      Returns:
      A function that returns the fifth element of a product.
    • __6

      public static <A, B, C, D, E, F$> F<P6<A,B,C,D,E,F$>,F$> __6()
      Returns a function that returns the sixth element of a product.
      Returns:
      A function that returns the sixth element of a product.
    • toString

      public final String toString()
      Overrides:
      toString in class Object
    • equals

      public final boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object