Idris2Doc : JS.Union

JS.Union

(source)
Union types (= sum types) in the FFI.

Definitions

dataNPP : (Type->Type->Type) ->ListType->ListType->Type
Totality: total
Visibility: public export
Constructors:
Nil : NPPf [] []
(::) : fab->NPPfps1ps2->NPPf (a::ps1) (b::ps2)

Hints:
NPPFromFFI [a, b] [m, n] =>AllSafeCast [m, n] =>FromFFI (HSum [a, b]) (Union2mn)
NPPFromFFI [a, b, c] [m, n, o] =>AllSafeCast [m, n, o] =>FromFFI (HSum [a, b, c]) (Union3mno)
NPPFromFFI [a, b, c, d] [m, n, o, p] =>AllSafeCast [m, n, o, p] =>FromFFI (HSum [a, b, c, d]) (Union4mnop)
NPPFromFFI [a, b, c, d, e] [m, n, o, p, r] =>AllSafeCast [m, n, o, p, r] =>FromFFI (HSum [a, b, c, d, e]) (Union5mnopr)
NPPFromFFI [a, b, c, d, e, f] [m, n, o, p, r, s] =>AllSafeCast [m, n, o, p, r, s] =>FromFFI (HSum [a, b, c, d, e, f]) (Union6mnoprs)
NPPFromFFI [a, b, c, d, e, f, g] [m, n, o, p, r, s, t] =>AllSafeCast [m, n, o, p, r, s, t] =>FromFFI (HSum [a, b, c, d, e, f, g]) (Union7mnoprst)
NPPFromFFI [a, b, c, d, e, f, g, h] [m, n, o, p, r, s, t, u] =>AllSafeCast [m, n, o, p, r, s, t, u] =>FromFFI (HSum [a, b, c, d, e, f, g, h]) (Union8mnoprstu)
NPPFromFFI [a, b, c, d, e, f, g, h, i] [m, n, o, p, r, s, t, u, v] =>AllSafeCast [m, n, o, p, r, s, t, u, v] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i]) (Union9mnoprstuv)
NPPFromFFI [a, b, c, d, e, f, g, h, i, j] [m, n, o, p, r, s, t, u, v, w] =>AllSafeCast [m, n, o, p, r, s, t, u, v, w] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j]) (Union10mnoprstuvw)
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k] [m, n, o, p, q, r, s, t, u, v, w] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k]) (Union11mnopqrstuvw)
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l] [m, n, o, p, q, r, s, t, u, v, w, x] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l]) (Union12mnopqrstuvwx)
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1] [m, n, o, p, q, r, s, t, u, v, w, x, y] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x, y] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1]) (Union13mnopqrstuvwxy)
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2] [m, n, o, p, q, r, s, t, u, v, w, x, y, z] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x, y, z] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2]) (Union14mnopqrstuvwxyz)
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3] [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3]) (Union15mnopqrstuvwxyzz1)
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4] [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1, z2] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1, z2] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4]) (Union16mnopqrstuvwxyzz1z2)
NPPToFFI [a, b] [m, n] =>ToFFI (HSum [a, b]) (Union2mn)
NPPToFFI [a, b, c] [m, n, o] =>ToFFI (HSum [a, b, c]) (Union3mno)
NPPToFFI [a, b, c, d] [m, n, o, p] =>ToFFI (HSum [a, b, c, d]) (Union4mnop)
NPPToFFI [a, b, c, d, e] [m, n, o, p, q] =>ToFFI (HSum [a, b, c, d, e]) (Union5mnopq)
NPPToFFI [a, b, c, d, e, f] [m, n, o, p, q, r] =>ToFFI (HSum [a, b, c, d, e, f]) (Union6mnopqr)
NPPToFFI [a, b, c, d, e, f, g] [m, n, o, p, q, r, s] =>ToFFI (HSum [a, b, c, d, e, f, g]) (Union7mnopqrs)
NPPToFFI [a, b, c, d, e, f, g, h] [m, n, o, p, q, r, s, t] =>ToFFI (HSum [a, b, c, d, e, f, g, h]) (Union8mnopqrst)
NPPToFFI [a, b, c, d, e, f, g, h, i] [m, n, o, p, q, r, s, t, u] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i]) (Union9mnopqrstu)
NPPToFFI [a, b, c, d, e, f, g, h, i, j] [m, n, o, p, q, r, s, t, u, v] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j]) (Union10mnopqrstuv)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k] [m, n, o, p, q, r, s, t, u, v, w] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k]) (Union11mnopqrstuvw)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l] [m, n, o, p, q, r, s, t, u, v, w, x] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l]) (Union12mnopqrstuvwx)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1] [m, n, o, p, q, r, s, t, u, v, w, x, y] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1]) (Union13mnopqrstuvwxy)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2] [m, n, o, p, q, r, s, t, u, v, w, x, y, z] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2]) (Union14mnopqrstuvwxyz)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3] [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3]) (Union15mnopqrstuvwxyzz1)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4] [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1, z2] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4]) (Union16mnopqrstuvwxyzz1z2)
dataUnion2 : Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b] [m, n] =>AllSafeCast [m, n] =>FromFFI (HSum [a, b]) (Union2mn)
FromFFI (Union2ab) (Union2ab)
NPPToFFI [a, b] [m, n] =>ToFFI (HSum [a, b]) (Union2mn)
ToFFI (Union2ab) (Union2ab)
toUnion2 : HSum [a, b] ->Union2ab
Totality: total
Visibility: export
fromUnion2 : AllSafeCast [a, b] =>Union2ab->Maybe (HSum [a, b])
Totality: total
Visibility: export
dataUnion3 : Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c] [m, n, o] =>AllSafeCast [m, n, o] =>FromFFI (HSum [a, b, c]) (Union3mno)
FromFFI (Union3abc) (Union3abc)
NPPToFFI [a, b, c] [m, n, o] =>ToFFI (HSum [a, b, c]) (Union3mno)
ToFFI (Union3abc) (Union3abc)
toUnion3 : HSum [a, b, c] ->Union3abc
Totality: total
Visibility: export
fromUnion3 : AllSafeCast [a, b, c] =>Union3abc->Maybe (HSum [a, b, c])
Totality: total
Visibility: export
dataUnion4 : Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d] [m, n, o, p] =>AllSafeCast [m, n, o, p] =>FromFFI (HSum [a, b, c, d]) (Union4mnop)
FromFFI (Union4abcd) (Union4abcd)
NPPToFFI [a, b, c, d] [m, n, o, p] =>ToFFI (HSum [a, b, c, d]) (Union4mnop)
ToFFI (Union4abcd) (Union4abcd)
toUnion4 : HSum [a, b, c, d] ->Union4abcd
Totality: total
Visibility: export
fromUnion4 : AllSafeCast [a, b, c, d] =>Union4abcd->Maybe (HSum [a, b, c, d])
Totality: total
Visibility: export
dataUnion5 : Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e] [m, n, o, p, r] =>AllSafeCast [m, n, o, p, r] =>FromFFI (HSum [a, b, c, d, e]) (Union5mnopr)
FromFFI (Union5abcde) (Union5abcde)
NPPToFFI [a, b, c, d, e] [m, n, o, p, q] =>ToFFI (HSum [a, b, c, d, e]) (Union5mnopq)
ToFFI (Union5abcde) (Union5abcde)
toUnion5 : HSum [a, b, c, d, e] ->Union5abcde
Totality: total
Visibility: export
fromUnion5 : AllSafeCast [a, b, c, d, e] =>Union5abcde->Maybe (HSum [a, b, c, d, e])
Totality: total
Visibility: export
dataUnion6 : Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f] [m, n, o, p, r, s] =>AllSafeCast [m, n, o, p, r, s] =>FromFFI (HSum [a, b, c, d, e, f]) (Union6mnoprs)
FromFFI (Union6abcdef) (Union6abcdef)
NPPToFFI [a, b, c, d, e, f] [m, n, o, p, q, r] =>ToFFI (HSum [a, b, c, d, e, f]) (Union6mnopqr)
ToFFI (Union6abcdef) (Union6abcdef)
toUnion6 : HSum [a, b, c, d, e, f] ->Union6abcdef
Totality: total
Visibility: export
fromUnion6 : AllSafeCast [a, b, c, d, e, f] =>Union6abcdef->Maybe (HSum [a, b, c, d, e, f])
Totality: total
Visibility: export
dataUnion7 : Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g] [m, n, o, p, r, s, t] =>AllSafeCast [m, n, o, p, r, s, t] =>FromFFI (HSum [a, b, c, d, e, f, g]) (Union7mnoprst)
FromFFI (Union7abcdefg) (Union7abcdefg)
NPPToFFI [a, b, c, d, e, f, g] [m, n, o, p, q, r, s] =>ToFFI (HSum [a, b, c, d, e, f, g]) (Union7mnopqrs)
ToFFI (Union7abcdefg) (Union7abcdefg)
toUnion7 : HSum [a, b, c, d, e, f, g] ->Union7abcdefg
Totality: total
Visibility: export
fromUnion7 : AllSafeCast [a, b, c, d, e, f, g] =>Union7abcdefg->Maybe (HSum [a, b, c, d, e, f, g])
Totality: total
Visibility: export
dataUnion8 : Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h] [m, n, o, p, r, s, t, u] =>AllSafeCast [m, n, o, p, r, s, t, u] =>FromFFI (HSum [a, b, c, d, e, f, g, h]) (Union8mnoprstu)
FromFFI (Union8abcdefgh) (Union8abcdefgh)
NPPToFFI [a, b, c, d, e, f, g, h] [m, n, o, p, q, r, s, t] =>ToFFI (HSum [a, b, c, d, e, f, g, h]) (Union8mnopqrst)
ToFFI (Union8abcdefgh) (Union8abcdefgh)
toUnion8 : HSum [a, b, c, d, e, f, g, h] ->Union8abcdefgh
Totality: total
Visibility: export
fromUnion8 : AllSafeCast [a, b, c, d, e, f, g, h] =>Union8abcdefgh->Maybe (HSum [a, b, c, d, e, f, g, h])
Totality: total
Visibility: export
dataUnion9 : Type->Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h, i] [m, n, o, p, r, s, t, u, v] =>AllSafeCast [m, n, o, p, r, s, t, u, v] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i]) (Union9mnoprstuv)
FromFFI (Union9abcdefghi) (Union9abcdefghi)
NPPToFFI [a, b, c, d, e, f, g, h, i] [m, n, o, p, q, r, s, t, u] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i]) (Union9mnopqrstu)
ToFFI (Union9abcdefghi) (Union9abcdefghi)
toUnion9 : HSum [a, b, c, d, e, f, g, h, i] ->Union9abcdefghi
Totality: total
Visibility: export
fromUnion9 : AllSafeCast [a, b, c, d, e, f, g, h, i] =>Union9abcdefghi->Maybe (HSum [a, b, c, d, e, f, g, h, i])
Totality: total
Visibility: export
dataUnion10 : Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h, i, j] [m, n, o, p, r, s, t, u, v, w] =>AllSafeCast [m, n, o, p, r, s, t, u, v, w] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j]) (Union10mnoprstuvw)
FromFFI (Union10abcdefghij) (Union10abcdefghij)
NPPToFFI [a, b, c, d, e, f, g, h, i, j] [m, n, o, p, q, r, s, t, u, v] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j]) (Union10mnopqrstuv)
ToFFI (Union10abcdefghij) (Union10abcdefghij)
toUnion10 : HSum [a, b, c, d, e, f, g, h, i, j] ->Union10abcdefghij
Totality: total
Visibility: export
fromUnion10 : AllSafeCast [a, b, c, d, e, f, g, h, i, j] =>Union10abcdefghij->Maybe (HSum [a, b, c, d, e, f, g, h, i, j])
Totality: total
Visibility: export
dataUnion11 : Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k] [m, n, o, p, q, r, s, t, u, v, w] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k]) (Union11mnopqrstuvw)
FromFFI (Union11abcdefghijk) (Union11abcdefghijk)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k] [m, n, o, p, q, r, s, t, u, v, w] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k]) (Union11mnopqrstuvw)
ToFFI (Union11abcdefghijk) (Union11abcdefghijk)
toUnion11 : HSum [a, b, c, d, e, f, g, h, i, j, k] ->Union11abcdefghijk
Totality: total
Visibility: export
fromUnion11 : AllSafeCast [a, b, c, d, e, f, g, h, i, j, k] =>Union11abcdefghijk->Maybe (HSum [a, b, c, d, e, f, g, h, i, j, k])
Totality: total
Visibility: export
dataUnion12 : Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l] [m, n, o, p, q, r, s, t, u, v, w, x] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l]) (Union12mnopqrstuvwx)
FromFFI (Union12abcdefghijkl) (Union12abcdefghijkl)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l] [m, n, o, p, q, r, s, t, u, v, w, x] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l]) (Union12mnopqrstuvwx)
ToFFI (Union12abcdefghijkl) (Union12abcdefghijkl)
toUnion12 : HSum [a, b, c, d, e, f, g, h, i, j, k, l] ->Union12abcdefghijkl
Totality: total
Visibility: export
fromUnion12 : AllSafeCast [a, b, c, d, e, f, g, h, i, j, k, l] =>Union12abcdefghijkl->Maybe (HSum [a, b, c, d, e, f, g, h, i, j, k, l])
Totality: total
Visibility: export
dataUnion13 : Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1] [m, n, o, p, q, r, s, t, u, v, w, x, y] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x, y] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1]) (Union13mnopqrstuvwxy)
FromFFI (Union13abcdefghijklm) (Union13abcdefghijklm)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1] [m, n, o, p, q, r, s, t, u, v, w, x, y] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1]) (Union13mnopqrstuvwxy)
ToFFI (Union13abcdefghijklm) (Union13abcdefghijklm)
toUnion13 : HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1] ->Union13abcdefghijkla1
Totality: total
Visibility: export
fromUnion13 : AllSafeCast [a, b, c, d, e, f, g, h, i, j, k, l, a1] =>Union13abcdefghijkla1->Maybe (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1])
Totality: total
Visibility: export
dataUnion14 : Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2] [m, n, o, p, q, r, s, t, u, v, w, x, y, z] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x, y, z] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2]) (Union14mnopqrstuvwxyz)
FromFFI (Union14abcdefghijklmn) (Union14abcdefghijklmn)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2] [m, n, o, p, q, r, s, t, u, v, w, x, y, z] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2]) (Union14mnopqrstuvwxyz)
ToFFI (Union14abcdefghijklmn) (Union14abcdefghijklmn)
toUnion14 : HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2] ->Union14abcdefghijkla1a2
Totality: total
Visibility: export
fromUnion14 : AllSafeCast [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2] =>Union14abcdefghijkla1a2->Maybe (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2])
Totality: total
Visibility: export
dataUnion15 : Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3] [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3]) (Union15mnopqrstuvwxyzz1)
FromFFI (Union15abcdefghijklmno) (Union15abcdefghijklmno)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3] [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3]) (Union15mnopqrstuvwxyzz1)
ToFFI (Union15abcdefghijklmno) (Union15abcdefghijklmno)
toUnion15 : HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3] ->Union15abcdefghijkla1a2a3
Totality: total
Visibility: export
fromUnion15 : AllSafeCast [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3] =>Union15abcdefghijkla1a2a3->Maybe (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3])
Totality: total
Visibility: export
dataUnion16 : Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type->Type
Totality: total
Visibility: export
Hints:
NPPFromFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4] [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1, z2] =>AllSafeCast [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1, z2] =>FromFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4]) (Union16mnopqrstuvwxyzz1z2)
FromFFI (Union16abcdefghijklmnop) (Union16abcdefghijklmnop)
NPPToFFI [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4] [m, n, o, p, q, r, s, t, u, v, w, x, y, z, z1, z2] =>ToFFI (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4]) (Union16mnopqrstuvwxyzz1z2)
ToFFI (Union16abcdefghijklmnop) (Union16abcdefghijklmnop)
toUnion16 : HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4] ->Union16abcdefghijkla1a2a3a4
Totality: total
Visibility: export
fromUnion16 : AllSafeCast [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4] =>Union16abcdefghijkla1a2a3a4->Maybe (HSum [a, b, c, d, e, f, g, h, i, j, k, l, a1, a2, a3, a4])
Totality: total
Visibility: export