Skip to content

Commit 4bb50a7

Browse files
committed
implemented Array.valuesIter to return Iterator of values of an array
1 parent 8c490a5 commit 4bb50a7

6 files changed

+23
-1
lines changed

__tests__/Array_Test.res

+2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ open StdlibFp
22
open Jest
33
open Expect
44

5+
@@warning("-27")
6+
57
open! Array
68
describe("singleton", () => {
79
test("equals an array literal of the same value", () => expect(singleton(1234))->toEqual([1234]))

rescript.json

+4-1
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,8 @@
2121
"@glennsl/rescript-jest"
2222
],
2323
"bs-dev-dependencies": [
24-
]
24+
],
25+
"warnings": {
26+
"number": "-44-3"
27+
}
2528
}

src/Stdlib__Array.res.mjs

+3
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,8 @@ let toIndexedList = TableclothArray.toIndexedList;
106106

107107
let equal = TableclothArray.equal;
108108

109+
let valuesIter = Stdlib__Array_Ext.valuesIter;
110+
109111
let append = Stdlib__Array_Ext.append;
110112

111113
let headUnsafe = Stdlib__Array_Ext.headUnsafe;
@@ -226,6 +228,7 @@ export {
226228
groupBy,
227229
toIndexedList,
228230
equal,
231+
valuesIter,
229232
append,
230233
headUnsafe,
231234
lastUnsafe,

src/Stdlib__Array_Ext.res

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
@@warning("-32-26")
2+
3+
@send external valuesIter: array<'a> => Iterator.t<'a> = "values"
4+
15
let append = Array.concat
26

37
let headUnsafe = xs => xs->Array.getUnsafe(0)

src/Stdlib__Array_Ext.res.mjs

+5
Original file line numberDiff line numberDiff line change
@@ -313,11 +313,16 @@ function combination4(a, b, c, d, f) {
313313
return combinationIf4(a, b, c, d, (x, y, z, w) => Primitive_option.some(f(x, y, z, w)));
314314
}
315315

316+
function valuesIter(prim) {
317+
return prim.values();
318+
}
319+
316320
let makeBy = Belt_Array.makeBy;
317321

318322
let zipWith = TableclothArray.map2;
319323

320324
export {
325+
valuesIter,
321326
append,
322327
headUnsafe,
323328
lastUnsafe,

src/Stdlib__Array_Ext.resi

+5
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
/**
2+
get iterator of values of an array
3+
*/
4+
let valuesIter: array<'a> => Iterator.t<'a>
5+
16
/**
27
`append(xs, ys)` concatenates two arrays.
38

0 commit comments

Comments
 (0)