UNPKG

parjs

Version:

A parser-combinator library for JavaScript.

29 lines (28 loc) 727 B
"use strict"; /** @module parjs/combinators */ /** */ Object.defineProperty(exports, "__esModule", { value: true }); const map_1 = require("./map"); function flattenNestedArrays(arr) { if (!Array.isArray(arr)) { return [arr]; } let items = []; for (let item of arr) { if (Array.isArray(item)) { items.push(...flattenNestedArrays(item)); } else { items.push(item); } } return items; } /** * Applies the source parser and projects its result into a flat array - an array * with non-array elements. */ function flatten() { return map_1.map(x => flattenNestedArrays(x)); } exports.flatten = flatten; //# sourceMappingURL=flatten.js.map