-
Notifications
You must be signed in to change notification settings - Fork 10
/
extEnum_merge.mli
96 lines (96 loc) · 3.22 KB
/
extEnum_merge.mli
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
val join_inner_by :
('a -> 'b -> int) ->
('c -> 'a) -> ('d -> 'b) -> 'c Enum.t -> 'd Enum.t -> ('c * 'd) Enum.t
val join_inner_by_key :
('a -> 'a -> int) ->
('b -> 'a) -> 'b Enum.t -> 'b Enum.t -> ('b * 'b) Enum.t
val join_left_by :
('a -> 'b -> int) ->
('c -> 'a) ->
('d -> 'b) -> 'c Enum.t -> 'd Enum.t -> ('c * 'd option) Enum.t
val join_left_by_key :
('a -> 'a -> int) ->
('b -> 'a) -> 'b Enum.t -> 'b Enum.t -> ('b * 'b option) Enum.t
val join_right_by :
('a -> 'b -> int) ->
('c -> 'a) ->
('d -> 'b) -> 'c Enum.t -> 'd Enum.t -> ('c option * 'd) Enum.t
val join_right_by_key :
('a -> 'a -> int) ->
('b -> 'a) -> 'b Enum.t -> 'b Enum.t -> ('b option * 'b) Enum.t
val join_full_by :
('a -> 'b -> int) ->
('c -> 'a) ->
('d -> 'b) ->
'c Enum.t ->
'd Enum.t -> [> `Both of 'c * 'd | `Left of 'c | `Right of 'd ] Enum.t
val join_full_by_key :
('a -> 'a -> int) ->
('b -> 'a) ->
'b Enum.t ->
'b Enum.t -> [> `Both of 'b * 'b | `Left of 'b | `Right of 'b ] Enum.t
val join_inner_multi_by :
('a -> 'b -> int) ->
('c -> 'a) -> ('d -> 'b) -> 'c Enum.t -> 'd Enum.t -> ('c * 'd) Enum.t
val join_inner_multi_by_key :
('a -> 'a -> int) ->
('b -> 'a) -> 'b Enum.t -> 'b Enum.t -> ('b * 'b) Enum.t
val join_left_multi_by :
('a -> 'b -> int) ->
('c -> 'a) ->
('d -> 'b) -> 'c Enum.t -> 'd Enum.t -> ('c * 'd option) Enum.t
val join_left_multi_by_key :
('a -> 'a -> int) ->
('b -> 'a) -> 'b Enum.t -> 'b Enum.t -> ('b * 'b option) Enum.t
val join_right_multi_by :
('a -> 'b -> int) ->
('c -> 'a) ->
('d -> 'b) -> 'c Enum.t -> 'd Enum.t -> ('c option * 'd) Enum.t
val join_right_multi_by_key :
('a -> 'a -> int) ->
('b -> 'a) -> 'b Enum.t -> 'b Enum.t -> ('b option * 'b) Enum.t
val join_full_multi_by :
('a -> 'b -> int) ->
('c -> 'a) ->
('d -> 'b) ->
'c Enum.t ->
'd Enum.t -> [> `Both of 'c * 'd | `Left of 'c | `Right of 'd ] Enum.t
val join_full_multi_by_key :
('a -> 'a -> int) ->
('b -> 'a) ->
'b Enum.t ->
'b Enum.t -> [> `Both of 'b * 'b | `Left of 'b | `Right of 'b ] Enum.t
val join_assoc_inner :
('a -> 'b -> int) ->
('a * 'c) Enum.t -> ('b * 'd) Enum.t -> ('a * 'c * 'd) Enum.t
val join_assoc_left :
('a -> 'b -> int) ->
('a * 'c) Enum.t -> ('b * 'd) Enum.t -> ('a * 'c * 'd option) Enum.t
val join_assoc_right :
('a -> 'a -> int) ->
('a * 'b) Enum.t -> ('a * 'c) Enum.t -> ('a * 'b option * 'c) Enum.t
val join_assoc_full :
('a -> 'a -> int) ->
('a * 'b) Enum.t ->
('a * 'c) Enum.t ->
('a * [> `Both of 'b * 'c | `Left of 'b | `Right of 'c ]) Enum.t
val join_assoc_inner_multi :
('a -> 'b -> int) ->
('a * 'c) Enum.t -> ('b * 'd) Enum.t -> ('a * 'c * 'd) Enum.t
val join_assoc_left_multi :
('a -> 'b -> int) ->
('a * 'c) Enum.t -> ('b * 'd) Enum.t -> ('a * 'c * 'd option) Enum.t
val join_assoc_right_multi :
('a -> 'a -> int) ->
('a * 'b) Enum.t -> ('a * 'c) Enum.t -> ('a * 'b option * 'c) Enum.t
val join_assoc_full_multi :
('a -> 'a -> int) ->
('a * 'b) Enum.t ->
('a * 'c) Enum.t ->
('a * [> `Both of 'b * 'c | `Left of 'b | `Right of 'c ]) Enum.t
val merge :
('a -> 'b -> int) ->
'a Enum.t -> 'b Enum.t -> ('a option * 'b option) Enum.t
val merge_assoc :
('a -> 'a -> int) ->
('a * 'b) Enum.t -> ('a * 'c) Enum.t -> ('a * 'b option * 'c option) Enum.t