Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Documentation
type family ListToTuple (t :: [Type]) :: Type where ... Source #
ListToTuple '[] = () | |
ListToTuple (a ': '[]) = a | |
ListToTuple (a ': (b ': '[])) = (a, b) | |
ListToTuple (a ': (b ': (c ': '[]))) = (a, b, c) | |
ListToTuple (a ': (b ': (c ': (d ': '[])))) = (a, b, c, d) | |
ListToTuple (a ': (b ': (c ': (d ': (e ': '[]))))) = (a, b, c, d, e) | |
ListToTuple (a ': (b ': (c ': (d ': (e ': (f ': '[])))))) = (a, b, c, d, e, f) | |
ListToTuple (a ': (b ': (c ': (d ': (e ': (f ': (g ': '[]))))))) = (a, b, c, d, e, f, g) | |
ListToTuple (a ': (b ': (c ': (d ': (e ': (f ': (g ': (h ': '[])))))))) = (a, b, c, d, e, f, g, h) | |
ListToTuple (a ': (b ': (c ': (d ': (e ': (f ': (g ': (h ': (i ': '[]))))))))) = (a, b, c, d, e, f, g, h, i) | |
ListToTuple (a ': (b ': (c ': (d ': (e ': (f ': (g ': (h ': (i ': (j ': '[])))))))))) = (a, b, c, d, e, f, g, h, i, j) | |
ListToTuple (a ': (b ': (c ': (d ': (e ': (f ': (g ': (h ': (i ': (j ': (k ': '[]))))))))))) = (a, b, c, d, e, f, g, h, i, j, k) |
type family TupleToList (t :: Type) :: [Type] where ... Source #
TupleToList () = '[] | |
TupleToList (a, b) = '[a, b] | |
TupleToList (a, b, c) = '[a, b, c] | |
TupleToList (a, b, c, d) = '[a, b, c, d] | |
TupleToList (a, b, c, d, e) = '[a, b, c, d, e] | |
TupleToList (a, b, c, d, e, f) = '[a, b, c, d, e, f] | |
TupleToList (a, b, c, d, e, f, g) = '[a, b, c, d, e, f, g] | |
TupleToList (a, b, c, d, e, f, g, h) = '[a, b, c, d, e, f, g, h] | |
TupleToList (a, b, c, d, e, f, g, h, i) = '[a, b, c, d, e, f, g, h, i] | |
TupleToList (a, b, c, d, e, f, g, h, i, j) = '[a, b, c, d, e, f, g, h, i, j] | |
TupleToList (a, b, c, d, e, f, g, h, i, j, k) = '[a, b, c, d, e, f, g, h, i, j, k] | |
TupleToList a = '[a] |
type family TupleSize (x :: tupleKind) :: Nat where ... Source #
TupleSize a = ListSize (TupleToList a) |