mingo
Version:
MongoDB query language for in-memory objects
14 lines (13 loc) • 512 B
JavaScript
import { computeValue, ProcessingMode } from "../../core/_internal";
import { Lazy } from "../../lazy";
import { assert, cloneDeep, isArray } from "../../util";
const $documents = (_, expr, options) => {
const docs = computeValue(null, expr, null, options);
assert(isArray(docs), "$documents: expression must resolve to an array.");
const iter = Lazy(docs);
const mode = options.processingMode;
return mode & ProcessingMode.CLONE_ALL ? iter.map((o) => cloneDeep(o)) : iter;
};
export {
$documents
};