parjs
Version:
A parser-combinator library for JavaScript.
41 lines (40 loc) • 1.21 kB
JavaScript
;
/**
* @module parjs/internal
*
*/ /** */
Object.defineProperty(exports, "__esModule", { value: true });
const string_1 = require("./parsers/string");
const regexp_1 = require("./parsers/regexp");
/**
* A {@link Parjser} or a literal value convertible to a {@link Parjser}.
*/
/**
* @private
* Should not be used from user code. Used to implement implicit parser literals.
* @type {symbol}
*/
exports.convertibleSymbol = Symbol("ParjsConvertibleLiteral");
/**
* A helper for working with implicit parsers.
*/
var ScalarConverter;
(function (ScalarConverter) {
/**
* Normalizes scalars and Parjsers into Parjsers.
* @param scalarOrParjser The literal or parjser.
*/
function convert(scalarOrParjser) {
if (typeof scalarOrParjser === "string") {
return string_1.string(scalarOrParjser);
}
else if (scalarOrParjser instanceof RegExp) {
return regexp_1.regexp(scalarOrParjser);
}
else {
return scalarOrParjser;
}
}
ScalarConverter.convert = convert;
})(ScalarConverter = exports.ScalarConverter || (exports.ScalarConverter = {}));
//# sourceMappingURL=scalar-converter.js.map