ts-regex-builder
Version:
Maintainable regular expressions for TypeScript and JavaScript.
18 lines (17 loc) • 527 B
JavaScript
exports.choiceOf = choiceOf;
var _encoder = require("../encoder.js");
function choiceOf(...alternatives) {
if (alternatives.length === 0) {
throw new Error('Expected at least one alternative');
}
const encodedAlternatives = alternatives.map(c => (0, _encoder.encode)(c));
if (encodedAlternatives.length === 1) {
return encodedAlternatives[0];
}
return {
precedence: 'disjunction',
pattern: encodedAlternatives.map(n => n.pattern).join('|')
};
}
//# sourceMappingURL=choice-of.js.map
;