Skip to content
This repository was archived by the owner on Oct 23, 2024. It is now read-only.

Commit 4968d95

Browse files
authored
Belt: clean up uncurried handling; deprecate xxxU functions (#7)
* Belt: clean up uncurried handling; deprecate xxxU functions * review changes
1 parent 8db6b81 commit 4968d95

File tree

117 files changed

+1571
-2399
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

117 files changed

+1571
-2399
lines changed

belt-cppo/belt_Set.cppo.res

+7-6
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,11 @@ let maximum = N.maximum
2020
let maxUndefined = N.maxUndefined
2121

2222
let forEach = N.forEach
23-
let forEachU = N.forEachU
2423
let reduce = N.reduce
25-
let reduceU = N.reduceU
2624
let every = N.every
27-
let everyU = N.everyU
2825
let some = N.some
29-
let someU = N.someU
3026
let keep = N.keepShared
31-
let keepU = N.keepSharedU
3227
let partition = N.partitionShared
33-
let partitionU = N.partitionSharedU
3428

3529
let size = N.size
3630
let toList = N.toList
@@ -231,3 +225,10 @@ let rec diff = (s1: t, s2: t) =>
231225
N.joinShared(ll, v1, rr)
232226
}
233227
}
228+
229+
let forEachU = forEach
230+
let reduceU = reduce
231+
let everyU = every
232+
let someU = some
233+
let keepU = keep
234+
let partitionU = partition

belt-cppo/belt_Set.cppo.resi

+6
Original file line numberDiff line numberDiff line change
@@ -90,18 +90,21 @@ equal elements.
9090
*/
9191
let eq: (t, t) => bool
9292

93+
@deprecated("Use `forEach` instead")
9394
let forEachU: (t, value => unit) => unit
9495

9596
/**
9697
`forEach(s, f)` applies `f` in turn to all elements of `s`. In increasing order
9798
*/
9899
let forEach: (t, value => unit) => unit
99100

101+
@deprecated("Use `reduce` instead")
100102
let reduceU: (t, 'a, ('a, value) => 'a) => 'a
101103

102104
/** Iterate in increasing order. */
103105
let reduce: (t, 'a, ('a, value) => 'a) => 'a
104106

107+
@deprecated("Use `every` instead")
105108
let everyU: (t, value => bool) => bool
106109

107110
/**
@@ -110,6 +113,7 @@ unspecified.
110113
*/
111114
let every: (t, value => bool) => bool
112115

116+
@deprecated("Use `some` instead")
113117
let someU: (t, value => bool) => bool
114118

115119
/**
@@ -118,13 +122,15 @@ let someU: (t, value => bool) => bool
118122
*/
119123
let some: (t, value => bool) => bool
120124

125+
@deprecated("Use `keep` instead")
121126
let keepU: (t, value => bool) => t
122127

123128
/**
124129
`keep(p, s)` returns the set of all elements in `s` that satisfy predicate `p`.
125130
*/
126131
let keep: (t, value => bool) => t
127132

133+
@deprecated("Use `partition` instead")
128134
let partitionU: (t, value => bool) => (t, t)
129135

130136
/**

belt-cppo/hashmap.cppo.res

+4-3
Original file line numberDiff line numberDiff line change
@@ -191,12 +191,9 @@ let has = (h, key) => {
191191
let make = (~hintSize) => C.make(~hintSize, ~hash=(), ~eq=())
192192
let clear = C.clear
193193
let size = h => h.C.size
194-
let forEachU = N.forEachU
195194
let forEach = N.forEach
196-
let reduceU = N.reduceU
197195
let reduce = N.reduce
198196
let logStats = N.logStats
199-
let keepMapInPlaceU = N.keepMapInPlaceU
200197
let keepMapInPlace = N.keepMapInPlace
201198
let toArray = N.toArray
202199
let copy = N.copy
@@ -223,3 +220,7 @@ let mergeMany = (h, arr) => {
223220
set(h, k, v)
224221
}
225222
}
223+
224+
let forEachU = forEach
225+
let reduceU = reduce
226+
let keepMapInPlaceU = keepMapInPlace

belt-cppo/hashmap.cppo.resi

+3
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,15 @@ let has: (t<'b>, key) => bool
2727

2828
let remove: (t<'a>, key) => unit
2929

30+
@deprecated("Use `forEach` instead")
3031
let forEachU: (t<'b>, (key, 'b) => unit) => unit
3132
let forEach: (t<'b>, (key, 'b) => unit) => unit
3233

34+
@deprecated("Use `reduce` instead")
3335
let reduceU: (t<'b>, 'c, ('c, key, 'b) => 'c) => 'c
3436
let reduce: (t<'b>, 'c, ('c, key, 'b) => 'c) => 'c
3537

38+
@deprecated("Use `keepMapInPlace` instead")
3639
let keepMapInPlaceU: (t<'a>, (key, 'a) => option<'a>) => unit
3740
let keepMapInPlace: (t<'a>, (key, 'a) => option<'a>) => unit
3841

belt-cppo/hashset.cppo.res

+3-2
Original file line numberDiff line numberDiff line change
@@ -136,9 +136,7 @@ let make = (~hintSize) => C.make(~hintSize, ~hash=(), ~eq=())
136136

137137
let clear = C.clear
138138
let size = h => h.C.size
139-
let forEachU = N.forEachU
140139
let forEach = N.forEach
141-
let reduceU = N.reduceU
142140
let reduce = N.reduce
143141
let logStats = N.logStats
144142
let toArray = N.toArray
@@ -162,3 +160,6 @@ let mergeMany = (h, arr) => {
162160
add(h, A.getUnsafe(arr, i))
163161
}
164162
}
163+
164+
let forEachU = forEach
165+
let reduceU = reduce

belt-cppo/hashset.cppo.resi

+2
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,11 @@ let has: (t, key) => bool
5555

5656
let remove: (t, key) => unit
5757

58+
@deprecated("Use `forEach` instead")
5859
let forEachU: (t, key => unit) => unit
5960
let forEach: (t, key => unit) => unit
6061

62+
@deprecated("Use `reduce` instead")
6163
let reduceU: (t, 'c, ('c, key) => 'c) => 'c
6264
let reduce: (t, 'c, ('c, key) => 'c) => 'c
6365

belt-cppo/internal_map.cppo.res

+10-12
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ let split = (x: key, n) =>
174174
| Some(n) => splitAux(x, n)
175175
}
176176

177-
let rec mergeU = (s1, s2, f) =>
177+
let rec merge = (s1, s2, f) =>
178178
switch (s1, s2) {
179179
| (None, None) => None
180180
| (Some(n) /* (Node (l1, v1, d1, r1, h1), _) */, _)
@@ -185,16 +185,14 @@ let rec mergeU = (s1, s2, f) =>
185185
} =>
186186
let {N.left: l1, key: v1, value: d1, right: r1} = n
187187
let (l2, d2, r2) = split(v1, s2)
188-
N.concatOrJoin(mergeU(l1, l2, f), v1, f(v1, Some(d1), d2), mergeU(r1, r2, f))
188+
N.concatOrJoin(merge(l1, l2, f), v1, f(v1, Some(d1), d2), merge(r1, r2, f))
189189
| (_, Some(n)) /* Node (l2, v2, d2, r2, h2) */ =>
190190
let {N.left: l2, key: v2, value: d2, right: r2} = n
191191
let (l1, d1, r1) = split(v2, s1)
192-
N.concatOrJoin(mergeU(l1, l2, f), v2, f(v2, d1, Some(d2)), mergeU(r1, r2, f))
192+
N.concatOrJoin(merge(l1, l2, f), v2, f(v2, d1, Some(d2)), merge(r1, r2, f))
193193
| _ => assert(false)
194194
}
195195

196-
let merge = (s1, s2, f) => mergeU(s1, s2, (a, b, c) => f(a, b, c))
197-
198196
let rec compareAux = (e1, e2, vcmp) =>
199197
switch (e1, e2) {
200198
| (list{h1, ...t1}, list{h2, ...t2}) =>
@@ -212,7 +210,7 @@ let rec compareAux = (e1, e2, vcmp) =>
212210
| (_, _) => 0
213211
}
214212

215-
let cmpU = (s1, s2, cmp) => {
213+
let cmp = (s1, s2, cmp) => {
216214
let (len1, len2) = (N.size(s1), N.size(s2))
217215
if len1 == len2 {
218216
compareAux(N.stackAllLeft(s1, list{}), N.stackAllLeft(s2, list{}), cmp)
@@ -223,8 +221,6 @@ let cmpU = (s1, s2, cmp) => {
223221
}
224222
}
225223

226-
let cmp = (s1, s2, f) => cmpU(s1, s2, (a, b) => f(a, b))
227-
228224
let rec eqAux = (e1, e2, eq) =>
229225
switch (e1, e2) {
230226
| (list{h1, ...t1}, list{h2, ...t2}) =>
@@ -236,7 +232,7 @@ let rec eqAux = (e1, e2, eq) =>
236232
| (_, _) => true
237233
} /* end */
238234

239-
let eqU = (s1, s2, eq) => {
235+
let eq = (s1, s2, eq) => {
240236
let (len1, len2) = (N.size(s1), N.size(s2))
241237
if len1 == len2 {
242238
eqAux(N.stackAllLeft(s1, list{}), N.stackAllLeft(s2, list{}), eq)
@@ -245,8 +241,6 @@ let eqU = (s1, s2, eq) => {
245241
}
246242
}
247243

248-
let eq = (s1, s2, f) => eqU(s1, s2, (a, b) => f(a, b))
249-
250244
let rec addMutate = (t: t<_>, x, data): t<_> =>
251245
switch t {
252246
| None => N.singleton(x, data)
@@ -275,7 +269,7 @@ let fromArray = (xs: array<(key, _)>) => {
275269
if len == 0 {
276270
None
277271
} else {
278-
let next = ref(S.strictlySortedLengthU(xs, ((x0, _), (y0, _)) => x0 < y0))
272+
let next = ref(S.strictlySortedLength(xs, ((x0, _), (y0, _)) => x0 < y0))
279273

280274
let result = ref(
281275
if next.contents >= 0 {
@@ -292,3 +286,7 @@ let fromArray = (xs: array<(key, _)>) => {
292286
result.contents
293287
}
294288
}
289+
290+
let cmpU = cmp
291+
let eqU = eq
292+
let mergeU = merge

belt-cppo/map.cppo.res

+18-19
Original file line numberDiff line numberDiff line change
@@ -25,21 +25,14 @@ let minimum = N.minimum
2525
let minUndefined = N.minUndefined
2626
let maximum = N.maximum
2727
let maxUndefined = N.maxUndefined
28-
let forEachU = N.forEachU
28+
let findFirstBy = N.findFirstBy
2929
let forEach = N.forEach
30-
let mapU = N.mapU
3130
let map = N.map
32-
let mapWithKeyU = N.mapWithKeyU
3331
let mapWithKey = N.mapWithKey
34-
let reduceU = N.reduceU
3532
let reduce = N.reduce
36-
let everyU = N.everyU
3733
let every = N.every
38-
let someU = N.someU
3934
let some = N.some
40-
let keepU = N.keepSharedU
4135
let keep = N.keepShared
42-
let partitionU = N.partitionSharedU
4336
let partition = N.partitionShared
4437
let size = N.size
4538
let toList = N.toList
@@ -65,7 +58,7 @@ let rec set = (t, newK: key, newD: _) =>
6558
}
6659
}
6760

68-
let rec updateU = (t, x: key, f) =>
61+
let rec update = (t, x: key, f) =>
6962
switch t {
7063
| None =>
7164
switch f(None) {
@@ -91,14 +84,14 @@ let rec updateU = (t, x: key, f) =>
9184
} else {
9285
let {N.left: l, right: r, value: v} = n
9386
if x < k {
94-
let ll = updateU(l, x, f)
87+
let ll = update(l, x, f)
9588
if l === ll {
9689
t
9790
} else {
9891
N.bal(ll, k, v, r)
9992
}
10093
} else {
101-
let rr = updateU(r, x, f)
94+
let rr = update(r, x, f)
10295
if r === rr {
10396
t
10497
} else {
@@ -108,8 +101,6 @@ let rec updateU = (t, x: key, f) =>
108101
}
109102
}
110103

111-
let update = (t, x, f) => updateU(t, x, a => f(a))
112-
113104
let rec removeAux = (n, x: key) => {
114105
let {N.left: l, key: v, right: r} = n
115106
if x == v {
@@ -169,9 +160,6 @@ let removeMany = (t, keys) => {
169160
}
170161
}
171162

172-
let findFirstByU = N.findFirstByU
173-
let findFirstBy = N.findFirstBy
174-
175163
let mergeMany = (h, arr) => {
176164
let len = A.length(arr)
177165
let v = ref(h)
@@ -185,15 +173,26 @@ let mergeMany = (h, arr) => {
185173
/* let mergeArray = mergeMany */
186174

187175
let has = I.has
188-
let cmpU = I.cmpU
189176
let cmp = I.cmp
190-
let eqU = I.eqU
191177
let eq = I.eq
192178
let get = I.get
193179
let getUndefined = I.getUndefined
194180
let getWithDefault = I.getWithDefault
195181
let getExn = I.getExn
196182
let split = I.split
197-
let mergeU = I.mergeU
198183
let merge = I.merge
199184
let fromArray = I.fromArray
185+
186+
let cmpU = cmp
187+
let eqU = eq
188+
let everyU = every
189+
let findFirstByU = findFirstBy
190+
let forEachU = forEach
191+
let keepU = keep
192+
let mapU = map
193+
let mapWithKeyU = mapWithKey
194+
let mergeU = merge
195+
let partitionU = partition
196+
let reduceU = reduce
197+
let someU = some
198+
let updateU = update

0 commit comments

Comments
 (0)