Package fj.data.hlist

Class HList.HAppend<A,B,C>

java.lang.Object
fj.data.hlist.HList.HAppend<A,B,C>
Type Parameters:
A - The type of the first list.
B - The type of the second list.
C - The type of the combined list.
Enclosing class:
HList<A extends HList<A>>

public static final class HList.HAppend<A,B,C> extends Object
The concatenation of two heterogeneous lists.
  • Field Details

    • append

      private final F2<A,B,C> append
  • Constructor Details

    • HAppend

      private HAppend(F2<A,B,C> f)
  • Method Details

    • append

      public C append(A a, B b)
      Append a given heterogeneous list to another.
      Parameters:
      a - a heterogeneous list to be appended to.
      b - a heterogeneous list to append to another.
      Returns:
      a new heterogeneous list consisting of the second argument appended to the first.
    • append

      public static <L extends HList<L>> HList.HAppend<HList.HNil,L,L> append()
      Returns a method for concatenating lists to the empty list.
      Returns:
      a method for concatenating lists to the empty list.
    • append

      public static <X, A extends HList<A>, B, C extends HList<C>, H extends HList.HAppend<A, B, C>> HList.HAppend<HList.HCons<X,A>,B,HList.HCons<X,C>> append(H h)
      Returns a method for appending lists to a nonempty heterogeneous list.
      Parameters:
      h - a method for appending lists to the tail of the given nonempty list.
      Returns:
      a method for appending lists to a nonempty heterogeneous list.