> import { MultiRange, normalize } from "multi-integer-range"
undefined
> new MultiRange([0,1,2,5,6,7])
MultiRange {
ranges: [ [ 0, 2 ], [ 5, 7 ] ],
options: { parseNegative: false, parseUnbounded: false }
}
> new MultiRange(Iterator.from([0,1,2,5,6,7]))
Uncaught TypeError: Invalid input
at new MultiRange (file:///I:/test/node_modules/.pnpm/multi-integer-range@6.0.0/node_modules/multi-integer-range/lib/MultiRange.js:29:19)
at <anonymous>:1:22
> normalize([0,1,2,5,6,7])
[ [ 0, 2 ], [ 5, 7 ] ]
> normalize(Iterator.from([0,1,2,5,6,7]))
[ [ 0, 2 ], [ 5, 7 ] ]
> normalize((function *() { yield 0; yield 1; yield 5; })())
[ [ 0, 1 ], [ 5, 5 ] ]
> new MultiRange((function *() { yield 0; yield 1; yield 5; })())
Uncaught TypeError: Invalid input
at new MultiRange (file:///I:/test/node_modules/.pnpm/multi-integer-range@6.0.0/node_modules/multi-integer-range/lib/MultiRange.js:29:19)
at <anonymous>:1:22
|
} else if (typeof data === 'number' || Array.isArray(data)) { |
|
this.ranges = mr.normalize(data); |
Please add a logic to detect Iterators here.
node-multi-integer-range/src/MultiRange.ts
Lines 26 to 27 in c9f1045
Please add a logic to detect Iterators here.