/
interop.gleam
79 lines (53 loc) · 2.06 KB
/
interop.gleam
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
pub external type ZList(a)
pub external fn new_1(List(t), fn() -> List(t)) -> ZList(t) =
"zlists" "new"
pub external fn new_2(ZList(t), fn() -> ZList(t)) -> ZList(t) =
"zlists" "new"
pub external fn generate(ZList(t), fn(t) -> ZList(t1)) -> ZList(t1) =
"zlists" "generate"
pub external fn recurrent_2(t, fn(t) -> t) -> ZList(t) =
"zlists" "recurrent"
pub external fn recurrent_3(t, t1, fn(t, t1) -> tuple(t, t1)) -> ZList(t) =
"zlists" "recurrent"
pub external fn foreach(fn(t) -> any, ZList(t)) -> Nil =
"zlists" "foreach"
pub external fn foldl(fn(t, acc) -> acc, acc, ZList(t)) -> acc =
"zlists" "foldl"
pub external fn map(fn(a) -> b, ZList(a)) -> ZList(b) =
"zlists" "map"
pub external fn seq(Int, Int, Int) -> ZList(Int) =
"zlists" "seq"
pub external fn dropwhile(fn(t) -> Bool, ZList(t)) -> ZList(t) =
"zlists" "dropwhile"
pub external fn drop(Int, ZList(t)) -> ZList(t) =
"zlists" "drop"
pub external fn takewhile(fn(t) -> Bool, ZList(t)) -> ZList(t) =
"zlists" "takewhile"
pub external fn take(Int, ZList(t)) -> ZList(t) =
"zlists" "take"
pub external fn filter(fn(t) -> Bool, ZList(t)) -> ZList(t) =
"zlists" "filter"
pub external fn expand(ZList(t)) -> List(t) =
"zlists" "expand"
pub external fn append(ZList(ZList(t))) -> ZList(t) =
"zlists" "append"
pub external fn scroll(Int, ZList(t)) -> tuple(List(t), ZList(t)) =
"zlists" "scroll"
pub external fn merge(ZList(t), ZList(t)) -> ZList(t) =
"zlists" "merge"
pub external fn splitwith(fn(t) -> Bool, ZList(t)) -> tuple(List(t), ZList(t)) =
"zlists" "splitwith"
pub external fn cartesian(ZList(t), ZList(t)) -> ZList(t) =
"zlists" "cartesian"
pub external fn zip(ZList(a), ZList(b)) -> ZList(tuple(a, b)) =
"zlists" "zip"
pub external fn ziph(ZList(a), ZList(b)) -> ZList(tuple(a, b)) =
"zlists" "ziph"
pub external fn unique_1(ZList(t)) -> ZList(t) =
"zlists" "unique"
pub external fn unique_2(fn(t, t) -> Bool, ZList(t)) -> ZList(t) =
"zlists" "unique"
pub external fn count(ZList(t)) -> Int =
"zlists" "count"
pub external fn print(ZList(t)) -> Nil =
"zlists" "print"