forked from quic-issues/427e7578-d7bf-49c8-aee9-2dd999e25316
implemented frontend including separate message system; started to implement backend
This commit is contained in:
78
yjs-poll/node_modules/lib0/dist/iterator-9fc627c1.cjs
generated
vendored
Normal file
78
yjs-poll/node_modules/lib0/dist/iterator-9fc627c1.cjs
generated
vendored
Normal file
@@ -0,0 +1,78 @@
|
||||
'use strict';
|
||||
|
||||
/**
|
||||
* Utility module to create and manipulate Iterators.
|
||||
*
|
||||
* @module iterator
|
||||
*/
|
||||
|
||||
/**
|
||||
* @template T,R
|
||||
* @param {Iterator<T>} iterator
|
||||
* @param {function(T):R} f
|
||||
* @return {IterableIterator<R>}
|
||||
*/
|
||||
const mapIterator = (iterator, f) => ({
|
||||
[Symbol.iterator] () {
|
||||
return this
|
||||
},
|
||||
// @ts-ignore
|
||||
next () {
|
||||
const r = iterator.next();
|
||||
return { value: r.done ? undefined : f(r.value), done: r.done }
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* @template T
|
||||
* @param {function():IteratorResult<T>} next
|
||||
* @return {IterableIterator<T>}
|
||||
*/
|
||||
const createIterator = next => ({
|
||||
/**
|
||||
* @return {IterableIterator<T>}
|
||||
*/
|
||||
[Symbol.iterator] () {
|
||||
return this
|
||||
},
|
||||
// @ts-ignore
|
||||
next
|
||||
});
|
||||
|
||||
/**
|
||||
* @template T
|
||||
* @param {Iterator<T>} iterator
|
||||
* @param {function(T):boolean} filter
|
||||
*/
|
||||
const iteratorFilter = (iterator, filter) => createIterator(() => {
|
||||
let res;
|
||||
do {
|
||||
res = iterator.next();
|
||||
} while (!res.done && !filter(res.value))
|
||||
return res
|
||||
});
|
||||
|
||||
/**
|
||||
* @template T,M
|
||||
* @param {Iterator<T>} iterator
|
||||
* @param {function(T):M} fmap
|
||||
*/
|
||||
const iteratorMap = (iterator, fmap) => createIterator(() => {
|
||||
const { done, value } = iterator.next();
|
||||
return { done, value: done ? undefined : fmap(value) }
|
||||
});
|
||||
|
||||
var iterator = /*#__PURE__*/Object.freeze({
|
||||
__proto__: null,
|
||||
mapIterator: mapIterator,
|
||||
createIterator: createIterator,
|
||||
iteratorFilter: iteratorFilter,
|
||||
iteratorMap: iteratorMap
|
||||
});
|
||||
|
||||
exports.createIterator = createIterator;
|
||||
exports.iterator = iterator;
|
||||
exports.iteratorFilter = iteratorFilter;
|
||||
exports.iteratorMap = iteratorMap;
|
||||
exports.mapIterator = mapIterator;
|
||||
//# sourceMappingURL=iterator-9fc627c1.cjs.map
|
||||
Reference in New Issue
Block a user