MCPcopy Create free account
hub / github.com/TruthHun/BookStack / repeatedWithSeparator

Function repeatedWithSeparator

static/word2md/mammoth.browser.js:15577–15594  ·  view source on GitHub ↗
(rule, separator, isOneOrMore)

Source from the content-addressed store, hash-verified

15575}
15576
15577var repeatedWithSeparator = function(rule, separator, isOneOrMore) {
15578 return function(input) {
15579 var result = rule(input);
15580 if (result.isSuccess()) {
15581 var mainRule = exports.sequence.capture(rule, "main");
15582 var remainingRule = zeroOrMore(exports.then(
15583 exports.sequence(separator, mainRule),
15584 exports.sequence.extract(mainRule)
15585 ));
15586 var remainingResult = remainingRule(result.remaining());
15587 return results.success([result.value()].concat(remainingResult.value()), remainingResult.remaining());
15588 } else if (isOneOrMore || result.isError()) {
15589 return result;
15590 } else {
15591 return results.success([], input);
15592 }
15593 };
15594};
15595
15596exports.leftAssociative = function(leftRule, rightRule, func) {
15597 var rights;

Callers 1

mammoth.browser.jsFile · 0.70

Calls 1

ruleFunction · 0.70

Tested by

no test coverage detected