123456789101112131415161718192021222324 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = buildMatchPatternFn;
- function buildMatchPatternFn(args) {
- return function (string) {
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- var matchResult = string.match(args.matchPattern);
- if (!matchResult) return null;
- var matchedString = matchResult[0];
- var parseResult = string.match(args.parsePattern);
- if (!parseResult) return null;
- var value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];
- value = options.valueCallback ? options.valueCallback(value) : value;
- var rest = string.slice(matchedString.length);
- return {
- value: value,
- rest: rest
- };
- };
- }
- module.exports = exports.default;
|