occam-furtle 2.0.291 → 2.0.292

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,9 +9,9 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _necessary = require("necessary");
12
- var _occamgrammars = require("occam-grammars");
13
12
  var _constants = require("../constants");
14
13
  var _verify = require("../process/verify");
14
+ var _furtle = require("../utilities/furtle");
15
15
  var _node = require("../utilities/node");
16
16
  var _context = require("../utilities/context");
17
17
  function _array_like_to_array(arr, len) {
@@ -79,8 +79,7 @@ function _unsupported_iterable_to_array(o, minLen) {
79
79
  if (n === "Map" || n === "Set") return Array.from(n);
80
80
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
81
81
  }
82
- var push = _necessary.arrayUtilities.push, furtleLexerFromNothing = _occamgrammars.lexersUtilities.furtleLexerFromNothing, furtleParserFromNothing = _occamgrammars.parsersUtilities.furtleParserFromNothing, _LEVELS = _sliced_to_array(_constants.LEVELS, 5), TRACE_LEVEL = _LEVELS[0], DEBUG_LEVEL = _LEVELS[1], INFO_LEVEL = _LEVELS[2], WARNING_LEVEL = _LEVELS[3], ERROR_LEVEL = _LEVELS[4];
83
- var furtleLexer = furtleLexerFromNothing(), furtleParser = furtleParserFromNothing();
82
+ var push = _necessary.arrayUtilities.push, _LEVELS = _sliced_to_array(_constants.LEVELS, 5), TRACE_LEVEL = _LEVELS[0], DEBUG_LEVEL = _LEVELS[1], INFO_LEVEL = _LEVELS[2], WARNING_LEVEL = _LEVELS[3], ERROR_LEVEL = _LEVELS[4];
84
83
  var FileContext = /*#__PURE__*/ function() {
85
84
  function FileContext(context, filePath, lineIndex, node, tokens, procedures) {
86
85
  _class_call_check(this, FileContext);
@@ -126,14 +125,14 @@ var FileContext = /*#__PURE__*/ function() {
126
125
  {
127
126
  key: "getLexer",
128
127
  value: function getLexer() {
129
- var lexer = furtleLexer; ///
128
+ var lexer = _furtle.furtleLexer; ///
130
129
  return lexer;
131
130
  }
132
131
  },
133
132
  {
134
133
  key: "getParser",
135
134
  value: function getParser() {
136
- var parser = furtleParser; ///
135
+ var parser = _furtle.furtleParser; ///
137
136
  return parser;
138
137
  }
139
138
  },
@@ -428,4 +427,4 @@ var FileContext = /*#__PURE__*/ function() {
428
427
  return FileContext;
429
428
  }();
430
429
 
431
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L2ZpbGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuaW1wb3J0IHsgbGV4ZXJzVXRpbGl0aWVzLCBwYXJzZXJzVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWdyYW1tYXJzXCI7XG5cbmltcG9ydCB7IExFVkVMUyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IHZlcmlmeUZpbGUgfSBmcm9tIFwiLi4vcHJvY2Vzcy92ZXJpZnlcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZywgbm9kZXNBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvbm9kZVwiO1xuaW1wb3J0IHsgY2hhaW5Db250ZXh0LCBsaW5lSW5kZXhGcm9tTm9kZUFuZFRva2VucyB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGV4dFwiO1xuXG5jb25zdCB7IHB1c2ggfSA9IGFycmF5VXRpbGl0aWVzLFxuICAgICAgeyBmdXJ0bGVMZXhlckZyb21Ob3RoaW5nIH0gPSBsZXhlcnNVdGlsaXRpZXMsXG4gICAgICB7IGZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nIH0gPSBwYXJzZXJzVXRpbGl0aWVzLFxuICAgICAgWyBUUkFDRV9MRVZFTCwgREVCVUdfTEVWRUwsIElORk9fTEVWRUwsIFdBUk5JTkdfTEVWRUwsIEVSUk9SX0xFVkVMIF0gPSBMRVZFTFM7XG5cbmNvbnN0IGZ1cnRsZUxleGVyID0gZnVydGxlTGV4ZXJGcm9tTm90aGluZygpLFxuICAgICAgZnVydGxlUGFyc2VyID0gZnVydGxlUGFyc2VyRnJvbU5vdGhpbmcoKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRmlsZUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBmaWxlUGF0aCwgbGluZUluZGV4LCBub2RlLCB0b2tlbnMsIHByb2NlZHVyZXMpIHtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICAgIHRoaXMuZmlsZVBhdGggPSBmaWxlUGF0aDtcbiAgICB0aGlzLmxpbmVJbmRleCA9IGxpbmVJbmRleDtcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMudG9rZW5zID0gdG9rZW5zO1xuICAgIHRoaXMucHJvY2VkdXJlcyA9IHByb2NlZHVyZXM7XG5cbiAgICByZXR1cm4gY2hhaW5Db250ZXh0KHRoaXMpO1xuICB9XG5cbiAgZ2V0Q29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0O1xuICB9XG5cbiAgZ2V0RmlsZVBhdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsZVBhdGg7XG4gIH1cblxuICBnZXRMaW5lSW5kZXgoKSB7XG4gICAgcmV0dXJuIHRoaXMubGluZUluZGV4O1xuICB9XG5cbiAgZ2V0Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlO1xuICB9XG5cbiAgZ2V0VG9rZW5zKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VucztcbiAgfVxuXG4gIGdldExleGVyKCkge1xuICAgIGNvbnN0IGxleGVyID0gZnVydGxlTGV4ZXI7ICAvLy9cblxuICAgIHJldHVybiBsZXhlcjtcbiAgfVxuXG4gIGdldFBhcnNlcigpIHtcbiAgICBjb25zdCBwYXJzZXIgPSBmdXJ0bGVQYXJzZXI7ICAvLy9cblxuICAgIHJldHVybiBwYXJzZXI7XG4gIH1cblxuICBnZXRMYWJlbHMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbGFiZWxzID0gW107XG5cbiAgICByZXR1cm4gbGFiZWxzO1xuICB9XG5cbiAgZ2V0VHlwZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgdHlwZXMgPSBbXTtcblxuICAgIHJldHVybiB0eXBlcztcbiAgfVxuXG4gIGdldFJ1bGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHJ1bGVzID0gW11cblxuICAgIHJldHVybiBydWxlcztcbiAgfVxuXG4gIGdldEF4aW9tcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBheGlvbXMgPSBbXTtcblxuICAgIHJldHVybiBheGlvbXM7XG4gIH1cblxuICBnZXRMZW1tYXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbGVtbWFzID0gW107XG5cbiAgICByZXR1cm4gbGVtbWFzO1xuICB9XG5cbiAgZ2V0VGhlb3JlbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgdGhlb3JlbXMgPSBbXTtcblxuICAgIHJldHVybiB0aGVvcmVtcztcbiAgfVxuXG4gIGdldFByb2NlZHVyZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlcyA9IFtdO1xuXG4gICAgcHVzaChwcm9jZWR1cmVzLCB0aGlzLnByb2NlZHVyZXMpO1xuXG4gICAgaWYgKGluY2x1ZGVSZWxlYXNlKSB7XG4gICAgICBjb25zdCByZWxlYXNlQ29udGV4dFByb2NlZHVyZXMgPSB0aGlzLmNvbnRleHQuZ2V0UHJvY2VkdXJlcygpO1xuXG4gICAgICBwdXNoKHByb2NlZHVyZXMsIHJlbGVhc2VDb250ZXh0UHJvY2VkdXJlcyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHByb2NlZHVyZXM7XG4gIH1cblxuICBnZXRNZXRhTGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IG1ldGFMZW1tYXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhTGVtbWFzO1xuICB9XG5cbiAgZ2V0Q29uamVjdHVyZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgY29uamVjdHVyZXMgPSBbXTtcblxuICAgIHJldHVybiBjb25qZWN0dXJlcztcbiAgfVxuXG4gIGdldENvbWJpbmF0b3JzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbWJpbmF0b3JzID0gW107XG5cbiAgICByZXR1cm4gY29tYmluYXRvcnM7XG4gIH1cblxuICBnZXRUeXBlUHJlZml4ZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgdHlwZVByZWZpeGVzID0gW107XG5cbiAgICByZXR1cm4gdHlwZVByZWZpeGVzO1xuICB9XG5cbiAgZ2V0Q29uc3RydWN0b3JzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbnN0cnVjdG9ycyA9IFtdO1xuXG4gICAgcmV0dXJuIGNvbnN0cnVjdG9ycztcbiAgfVxuXG4gIGdldE1ldGF0aGVvcmVtcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhdGhlb3JlbXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhdGhlb3JlbXM7XG4gIH1cblxuICBnZXRNZXRhdmFyaWFibGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVzO1xuICB9XG5cbiAgYWRkUHJvY2VkdXJlKHByb2NlZHVyZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZVN0cmluZyA9IHByb2NlZHVyZS5nZXRTdHJpbmcoKTtcblxuICAgIHRoaXMucHJvY2VkdXJlcy5wdXNoKHByb2NlZHVyZSk7XG5cbiAgICB0aGlzLmRlYnVnKGBBZGRlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgcHJvY2VkdXJlIHRvIHRoZSBjb250ZXh0LmApO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKCkge1xuICAgIGNvbnN0IHZhcmlhYmxlcyA9IFtdO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlcztcbiAgfVxuXG4gIG5vZGVBc1N0cmluZyhub2RlKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gbm9kZUFzU3RyaW5nKG5vZGUsIHRoaXMudG9rZW5zKTtcblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICBub2Rlc0FzU3RyaW5nKG5vZGVzKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gbm9kZXNBc1N0cmluZyhub2RlcywgdGhpcy50b2tlbnMpO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHRyYWNlKG1lc3NhZ2UsIG5vZGUgPSBudWxsKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBUUkFDRV9MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSwgbm9kZSk7XG4gIH1cblxuICBkZWJ1ZyhtZXNzYWdlLCBub2RlID0gbnVsbCkge1xuICAgIGNvbnN0IGxldmVsID0gREVCVUdfTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UsIG5vZGUpO1xuICB9XG5cbiAgaW5mbyhtZXNzYWdlLCBub2RlID0gbnVsbCkge1xuICAgIGNvbnN0IGxldmVsID0gSU5GT19MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSwgbm9kZSk7XG4gIH1cblxuICB3YXJuaW5nKG1lc3NhZ2UsIG5vZGUgPSBudWxsKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBXQVJOSU5HX0xFVkVMO1xuXG4gICAgdGhpcy53cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlLCBub2RlKTtcbiAgfVxuXG4gIGVycm9yKG1lc3NhZ2UsIG5vZGUgPSBudWxsKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBFUlJPUl9MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSwgbm9kZSk7XG4gIH1cblxuICB3cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlLCBub2RlKSB7XG4gICAgY29uc3QgbGluZUluZGV4ID0gbGluZUluZGV4RnJvbU5vZGVBbmRUb2tlbnMobm9kZSwgdGhpcy50b2tlbnMsIHRoaXMubGluZUluZGV4KSxcbiAgICAgICAgICBmaWxlUGF0aCA9IChsaW5lSW5kZXggPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maWxlUGF0aCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgbnVsbDtcblxuICAgIHRoaXMuY29udGV4dC53cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlLCBmaWxlUGF0aCwgbGluZUluZGV4KTtcblxuICAgIHRoaXMubGluZUluZGV4ID0gbGluZUluZGV4O1xuICB9XG5cbiAgZ2V0RmlsZUNvbnRleHQoKSB7XG4gICAgY29uc3QgZmlsZUNvbnRleHQgPSB0aGlzOyAvLy9cblxuICAgIHJldHVybiBmaWxlQ29udGV4dDtcbiAgfVxuXG4gIGdldERlcHRoKCkge1xuICAgIGxldCBkZXB0aCA9IHRoaXMuY29udGV4dC5nZXREZXB0aCgpO1xuXG4gICAgZGVwdGgrKztcblxuICAgIHJldHVybiBkZXB0aDtcbiAgfVxuXG4gIHZlcmlmeSgpIHtcbiAgICBsZXQgdmVyaWZpZXMgPSBmYWxzZTtcblxuICAgIHRoaXMucHJlcGFyZSgpO1xuXG4gICAgaWYgKHRoaXMubm9kZSA9PT0gbnVsbCkge1xuICAgICAgdGhpcy53YXJuaW5nKGBVbmFibGUgdG8gdmVyaWZ5IHRoZSAnJHt0aGlzLmZpbGVQYXRofScgZmlsZSBiZWNhdXNlIGl0IGNhbm5vdCBiZSBwYXJzZWQuYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGVidWcoYFZlcmlmeWluZyB0aGUgJyR7dGhpcy5maWxlUGF0aH0nIGZpbGUuLi5gKTtcblxuICAgICAgY29uc3QgY29udGV4dCA9IHRoaXMsIC8vL1xuICAgICAgICAgICAgZmlsZU5vZGUgPSB0aGlzLm5vZGU7IC8vL1xuXG4gICAgICB2ZXJpZmllcyA9IHZlcmlmeUZpbGUoZmlsZU5vZGUsIGNvbnRleHQpO1xuXG4gICAgICB2ZXJpZmllcyA/XG4gICAgICAgIHRoaXMuY29tcGxldGUoKSA6XG4gICAgICAgICAgdGhpcy5jbGVhcigpO1xuXG4gICAgICBpZiAodmVyaWZpZXMpIHtcbiAgICAgICAgdGhpcy5pbmZvKGAuLi52ZXJpZmllZCB0aGUgJyR7dGhpcy5maWxlUGF0aH0nIGZpbGUuYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHZlcmlmaWVzO1xuICB9XG5cbiAgcHJlcGFyZSgpIHtcbiAgICBpZiAodGhpcy50b2tlbnMgIT09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBmaWxlID0gdGhpcy5maW5kRmlsZSh0aGlzLmZpbGVQYXRoKSxcbiAgICAgICAgICBsZXhlciA9IHRoaXMuZ2V0TGV4ZXIoKSxcbiAgICAgICAgICBwYXJzZXIgPSB0aGlzLmdldFBhcnNlcigpLFxuICAgICAgICAgIGNvbnRlbnQgPSBmaWxlLmdldENvbnRlbnQoKTtcblxuICAgIHRoaXMudG9rZW5zID0gbGV4ZXIudG9rZW5pc2UoY29udGVudCk7XG5cbiAgICB0aGlzLm5vZGUgPSBwYXJzZXIucGFyc2UodGhpcy50b2tlbnMpO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5saW5lSW5kZXggPSBudWxsO1xuXG4gICAgdGhpcy5wcm9jZWR1cmVzID0gW107XG4gIH1cblxuICBjb21wbGV0ZSgpIHtcbiAgICB0aGlzLmxpbmVJbmRleCA9IG51bGw7XG4gIH1cblxuICBpbml0aWFsaXNlKGpzb24pIHtcbiAgICBjb25zdCB7IGNvbnRlbnQgfSA9IGpzb24sXG4gICAgICAgICAgbGV4ZXIgPSB0aGlzLmdldExleGVyKCksXG4gICAgICAgICAgcGFyc2VyID0gdGhpcy5nZXRQYXJzZXIoKTtcblxuICAgIHRoaXMudG9rZW5zID0gbGV4ZXIudG9rZW5pc2UoY29udGVudCk7XG5cbiAgICB0aGlzLm5vZGUgPSBwYXJzZXIucGFyc2UodGhpcy50b2tlbnMpO1xuXG4gICAgdGhpcy5jbGVhcigpO1xuXG4gICAgdGhpcy5hZGRQcm9jZWR1cmVzKCk7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgZmlsZSA9IHRoaXMuZmluZEZpbGUodGhpcy5maWxlUGF0aCksXG4gICAgICAgICAgZmlsZVBhdGggPSB0aGlzLmZpbGVQYXRoLCAvLy9cbiAgICAgICAgICBjb250ZW50ID0gZmlsZS5nZXRDb250ZW50KCksXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGZpbGVQYXRoLFxuICAgICAgICAgICAgY29udGVudFxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRmlsZShmaWxlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgZmlsZVBhdGggPSBmaWxlLmdldFBhdGgoKSxcbiAgICAgICAgICBsaW5lSW5kZXggPSBudWxsLFxuICAgICAgICAgIHRva2VucyA9IG51bGwsXG4gICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IFtdLFxuICAgICAgICAgIGZpbGVDb250ZXh0ID0gbmV3IEZpbGVDb250ZXh0KGNvbnRleHQsIGZpbGVQYXRoLCBsaW5lSW5kZXgsIG5vZGUsIHRva2VucywgcHJvY2VkdXJlcyk7XG5cbiAgICByZXR1cm4gZmlsZUNvbnRleHQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbUZpbGVQYXRoKGZpbGVQYXRoLCBjb250ZXh0KSB7XG4gICAgY29uc3QgbGluZUluZGV4ID0gbnVsbCxcbiAgICAgICAgICB0b2tlbnMgPSBudWxsLFxuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIHByb2NlZHVyZXMgPSBudWxsLFxuICAgICAgICAgIGZpbGVDb250ZXh0ID0gbmV3IEZpbGVDb250ZXh0KGNvbnRleHQsIGZpbGVQYXRoLCBsaW5lSW5kZXgsIG5vZGUsIHRva2VucywgcHJvY2VkdXJlcyk7XG5cbiAgICByZXR1cm4gZmlsZUNvbnRleHQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJGaWxlQ29udGV4dCIsInB1c2giLCJhcnJheVV0aWxpdGllcyIsImZ1cnRsZUxleGVyRnJvbU5vdGhpbmciLCJsZXhlcnNVdGlsaXRpZXMiLCJmdXJ0bGVQYXJzZXJGcm9tTm90aGluZyIsInBhcnNlcnNVdGlsaXRpZXMiLCJMRVZFTFMiLCJUUkFDRV9MRVZFTCIsIkRFQlVHX0xFVkVMIiwiSU5GT19MRVZFTCIsIldBUk5JTkdfTEVWRUwiLCJFUlJPUl9MRVZFTCIsImZ1cnRsZUxleGVyIiwiZnVydGxlUGFyc2VyIiwiY29udGV4dCIsImZpbGVQYXRoIiwibGluZUluZGV4Iiwibm9kZSIsInRva2VucyIsInByb2NlZHVyZXMiLCJjaGFpbkNvbnRleHQiLCJnZXRDb250ZXh0IiwiZ2V0RmlsZVBhdGgiLCJnZXRMaW5lSW5kZXgiLCJnZXROb2RlIiwiZ2V0VG9rZW5zIiwiZ2V0TGV4ZXIiLCJsZXhlciIsImdldFBhcnNlciIsInBhcnNlciIsImdldExhYmVscyIsImluY2x1ZGVSZWxlYXNlIiwibGFiZWxzIiwiZ2V0VHlwZXMiLCJ0eXBlcyIsImdldFJ1bGVzIiwicnVsZXMiLCJnZXRBeGlvbXMiLCJheGlvbXMiLCJnZXRMZW1tYXMiLCJsZW1tYXMiLCJnZXRUaGVvcmVtcyIsInRoZW9yZW1zIiwiZ2V0UHJvY2VkdXJlcyIsInJlbGVhc2VDb250ZXh0UHJvY2VkdXJlcyIsImdldE1ldGFMZW1tYXMiLCJtZXRhTGVtbWFzIiwiZ2V0Q29uamVjdHVyZXMiLCJjb25qZWN0dXJlcyIsImdldENvbWJpbmF0b3JzIiwiY29tYmluYXRvcnMiLCJnZXRUeXBlUHJlZml4ZXMiLCJ0eXBlUHJlZml4ZXMiLCJnZXRDb25zdHJ1Y3RvcnMiLCJjb25zdHJ1Y3RvcnMiLCJnZXRNZXRhdGhlb3JlbXMiLCJtZXRhdGhlb3JlbXMiLCJnZXRNZXRhdmFyaWFibGVzIiwibWV0YXZhcmlhYmxlcyIsImFkZFByb2NlZHVyZSIsInByb2NlZHVyZSIsInByb2NlZHVyZVN0cmluZyIsImdldFN0cmluZyIsImRlYnVnIiwiZ2V0VmFyaWFibGVzIiwidmFyaWFibGVzIiwibm9kZUFzU3RyaW5nIiwic3RyaW5nIiwibm9kZXNBc1N0cmluZyIsIm5vZGVzIiwidHJhY2UiLCJtZXNzYWdlIiwibGV2ZWwiLCJ3cml0ZVRvTG9nIiwiaW5mbyIsIndhcm5pbmciLCJlcnJvciIsImxpbmVJbmRleEZyb21Ob2RlQW5kVG9rZW5zIiwiZ2V0RmlsZUNvbnRleHQiLCJmaWxlQ29udGV4dCIsImdldERlcHRoIiwiZGVwdGgiLCJ2ZXJpZnkiLCJ2ZXJpZmllcyIsInByZXBhcmUiLCJmaWxlTm9kZSIsInZlcmlmeUZpbGUiLCJjb21wbGV0ZSIsImNsZWFyIiwiZmlsZSIsImZpbmRGaWxlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJ0b2tlbmlzZSIsInBhcnNlIiwiaW5pdGlhbGlzZSIsImpzb24iLCJhZGRQcm9jZWR1cmVzIiwidG9KU09OIiwiZnJvbUZpbGUiLCJnZXRQYXRoIiwiZnJvbUZpbGVQYXRoIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQWtCcUJBOzs7eUJBaEJVOzZCQUNtQjt5QkFFM0I7c0JBQ0k7b0JBQ2lCO3VCQUNhOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFekQsSUFBTSxBQUFFQyxPQUFTQyx5QkFBYyxDQUF2QkQsTUFDRixBQUFFRSx5QkFBMkJDLDhCQUFlLENBQTFDRCx3QkFDRixBQUFFRSwwQkFBNEJDLCtCQUFnQixDQUE1Q0QseUJBQ3FFRSwyQkFBQUEsaUJBQU0sTUFBM0VDLGNBQXFFRCxZQUF4REUsY0FBd0RGLFlBQTNDRyxhQUEyQ0gsWUFBL0JJLGdCQUErQkosWUFBaEJLLGNBQWdCTDtBQUU3RSxJQUFNTSxjQUFjViwwQkFDZFcsZUFBZVQ7QUFFTixJQUFBLEFBQU1MLDRCQUFOO2FBQU1BLFlBQ1BlLE9BQU8sRUFBRUMsUUFBUSxFQUFFQyxTQUFTLEVBQUVDLElBQUksRUFBRUMsTUFBTSxFQUFFQyxVQUFVO2dDQUQvQ3BCO1FBRWpCLElBQUksQ0FBQ2UsT0FBTyxHQUFHQTtRQUNmLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTtRQUNoQixJQUFJLENBQUNDLFNBQVMsR0FBR0E7UUFDakIsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyxVQUFVLEdBQUdBO1FBRWxCLE9BQU9DLElBQUFBLHFCQUFZLEVBQUMsSUFBSTs7a0JBVFByQjs7WUFZbkJzQixLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNQLE9BQU87WUFDckI7OztZQUVBUSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNQLFFBQVE7WUFDdEI7OztZQUVBUSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNQLFNBQVM7WUFDdkI7OztZQUVBUSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNQLElBQUk7WUFDbEI7OztZQUVBUSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNQLE1BQU07WUFDcEI7OztZQUVBUSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsUUFBUWYsYUFBYyxHQUFHO2dCQUUvQixPQUFPZTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLFNBQVNoQixjQUFlLEdBQUc7Z0JBRWpDLE9BQU9nQjtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO29CQUFVQyxpQkFBQUEsaUVBQWlCO2dCQUN6QixJQUFNQyxTQUFTLEVBQUU7Z0JBRWpCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7b0JBQVNGLGlCQUFBQSxpRUFBaUI7Z0JBQ3hCLElBQU1HLFFBQVEsRUFBRTtnQkFFaEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtvQkFBU0osaUJBQUFBLGlFQUFpQjtnQkFDeEIsSUFBTUssUUFBUSxFQUFFO2dCQUVoQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO29CQUFVTixpQkFBQUEsaUVBQWlCO2dCQUN6QixJQUFNTyxTQUFTLEVBQUU7Z0JBRWpCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7b0JBQVVSLGlCQUFBQSxpRUFBaUI7Z0JBQ3pCLElBQU1TLFNBQVMsRUFBRTtnQkFFakIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtvQkFBWVYsaUJBQUFBLGlFQUFpQjtnQkFDM0IsSUFBTVcsV0FBVyxFQUFFO2dCQUVuQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO29CQUFjWixpQkFBQUEsaUVBQWlCO2dCQUM3QixJQUFNWixhQUFhLEVBQUU7Z0JBRXJCbkIsS0FBS21CLFlBQVksSUFBSSxDQUFDQSxVQUFVO2dCQUVoQyxJQUFJWSxnQkFBZ0I7b0JBQ2xCLElBQU1hLDJCQUEyQixJQUFJLENBQUM5QixPQUFPLENBQUM2QixhQUFhO29CQUUzRDNDLEtBQUttQixZQUFZeUI7Z0JBQ25CO2dCQUVBLE9BQU96QjtZQUNUOzs7WUFFQTBCLEtBQUFBO21CQUFBQSxTQUFBQTtvQkFBY2QsaUJBQUFBLGlFQUFpQjtnQkFDN0IsSUFBTWUsYUFBYSxFQUFFO2dCQUVyQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO29CQUFlaEIsaUJBQUFBLGlFQUFpQjtnQkFDOUIsSUFBTWlCLGNBQWMsRUFBRTtnQkFFdEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtvQkFBZWxCLGlCQUFBQSxpRUFBaUI7Z0JBQzlCLElBQU1tQixjQUFjLEVBQUU7Z0JBRXRCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7b0JBQWdCcEIsaUJBQUFBLGlFQUFpQjtnQkFDL0IsSUFBTXFCLGVBQWUsRUFBRTtnQkFFdkIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtvQkFBZ0J0QixpQkFBQUEsaUVBQWlCO2dCQUMvQixJQUFNdUIsZUFBZSxFQUFFO2dCQUV2QixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO29CQUFnQnhCLGlCQUFBQSxpRUFBaUI7Z0JBQy9CLElBQU15QixlQUFlLEVBQUU7Z0JBRXZCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7b0JBQWlCMUIsaUJBQUFBLGlFQUFpQjtnQkFDaEMsSUFBTTJCLGdCQUFnQixFQUFFO2dCQUV4QixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGFBQWFDLFNBQVM7Z0JBQ3BCLElBQU1DLGtCQUFrQkQsVUFBVUUsU0FBUztnQkFFM0MsSUFBSSxDQUFDM0MsVUFBVSxDQUFDbkIsSUFBSSxDQUFDNEQ7Z0JBRXJCLElBQUksQ0FBQ0csS0FBSyxDQUFDLEFBQUMsY0FBNkIsT0FBaEJGLGlCQUFnQjtZQUMzQzs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxZQUFZLEVBQUU7Z0JBRXBCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsYUFBYWpELElBQUk7Z0JBQ2YsSUFBTWtELFNBQVNELElBQUFBLGtCQUFZLEVBQUNqRCxNQUFNLElBQUksQ0FBQ0MsTUFBTTtnQkFFN0MsT0FBT2lEO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBY0MsS0FBSztnQkFDakIsSUFBTUYsU0FBU0MsSUFBQUEsbUJBQWEsRUFBQ0MsT0FBTyxJQUFJLENBQUNuRCxNQUFNO2dCQUUvQyxPQUFPaUQ7WUFDVDs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxNQUFNQyxPQUFPO29CQUFFdEQsT0FBQUEsaUVBQU87Z0JBQ3BCLElBQU11RCxRQUFRakU7Z0JBRWQsSUFBSSxDQUFDa0UsVUFBVSxDQUFDRCxPQUFPRCxTQUFTdEQ7WUFDbEM7OztZQUVBOEMsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1RLE9BQU87b0JBQUV0RCxPQUFBQSxpRUFBTztnQkFDcEIsSUFBTXVELFFBQVFoRTtnQkFFZCxJQUFJLENBQUNpRSxVQUFVLENBQUNELE9BQU9ELFNBQVN0RDtZQUNsQzs7O1lBRUF5RCxLQUFBQTttQkFBQUEsU0FBQUEsS0FBS0gsT0FBTztvQkFBRXRELE9BQUFBLGlFQUFPO2dCQUNuQixJQUFNdUQsUUFBUS9EO2dCQUVkLElBQUksQ0FBQ2dFLFVBQVUsQ0FBQ0QsT0FBT0QsU0FBU3REO1lBQ2xDOzs7WUFFQTBELEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRSixPQUFPO29CQUFFdEQsT0FBQUEsaUVBQU87Z0JBQ3RCLElBQU11RCxRQUFROUQ7Z0JBRWQsSUFBSSxDQUFDK0QsVUFBVSxDQUFDRCxPQUFPRCxTQUFTdEQ7WUFDbEM7OztZQUVBMkQsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1MLE9BQU87b0JBQUV0RCxPQUFBQSxpRUFBTztnQkFDcEIsSUFBTXVELFFBQVE3RDtnQkFFZCxJQUFJLENBQUM4RCxVQUFVLENBQUNELE9BQU9ELFNBQVN0RDtZQUNsQzs7O1lBRUF3RCxLQUFBQTttQkFBQUEsU0FBQUEsV0FBV0QsS0FBSyxFQUFFRCxPQUFPLEVBQUV0RCxJQUFJO2dCQUM3QixJQUFNRCxZQUFZNkQsSUFBQUEsbUNBQTBCLEVBQUM1RCxNQUFNLElBQUksQ0FBQ0MsTUFBTSxFQUFFLElBQUksQ0FBQ0YsU0FBUyxHQUN4RUQsV0FBVyxBQUFDQyxjQUFjLE9BQ2IsSUFBSSxDQUFDRCxRQUFRLEdBQ1g7Z0JBRXJCLElBQUksQ0FBQ0QsT0FBTyxDQUFDMkQsVUFBVSxDQUFDRCxPQUFPRCxTQUFTeEQsVUFBVUM7Z0JBRWxELElBQUksQ0FBQ0EsU0FBUyxHQUFHQTtZQUNuQjs7O1lBRUE4RCxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsY0FBYyxJQUFJLEVBQUUsR0FBRztnQkFFN0IsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFJQyxRQUFRLElBQUksQ0FBQ25FLE9BQU8sQ0FBQ2tFLFFBQVE7Z0JBRWpDQztnQkFFQSxPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQUlDLFdBQVc7Z0JBRWYsSUFBSSxDQUFDQyxPQUFPO2dCQUVaLElBQUksSUFBSSxDQUFDbkUsSUFBSSxLQUFLLE1BQU07b0JBQ3RCLElBQUksQ0FBQzBELE9BQU8sQ0FBQyxBQUFDLHlCQUFzQyxPQUFkLElBQUksQ0FBQzVELFFBQVEsRUFBQztnQkFDdEQsT0FBTztvQkFDTCxJQUFJLENBQUNnRCxLQUFLLENBQUMsQUFBQyxrQkFBK0IsT0FBZCxJQUFJLENBQUNoRCxRQUFRLEVBQUM7b0JBRTNDLElBQU1ELFVBQVUsSUFBSSxFQUNkdUUsV0FBVyxJQUFJLENBQUNwRSxJQUFJLEVBQUUsR0FBRztvQkFFL0JrRSxXQUFXRyxJQUFBQSxrQkFBVSxFQUFDRCxVQUFVdkU7b0JBRWhDcUUsV0FDRSxJQUFJLENBQUNJLFFBQVEsS0FDWCxJQUFJLENBQUNDLEtBQUs7b0JBRWQsSUFBSUwsVUFBVTt3QkFDWixJQUFJLENBQUNULElBQUksQ0FBQyxBQUFDLG9CQUFpQyxPQUFkLElBQUksQ0FBQzNELFFBQVEsRUFBQztvQkFDOUM7Z0JBQ0Y7Z0JBRUEsT0FBT29FO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxJQUFJLENBQUNsRSxNQUFNLEtBQUssTUFBTTtvQkFDeEI7Z0JBQ0Y7Z0JBRUEsSUFBTXVFLE9BQU8sSUFBSSxDQUFDQyxRQUFRLENBQUMsSUFBSSxDQUFDM0UsUUFBUSxHQUNsQ1ksUUFBUSxJQUFJLENBQUNELFFBQVEsSUFDckJHLFNBQVMsSUFBSSxDQUFDRCxTQUFTLElBQ3ZCK0QsVUFBVUYsS0FBS0csVUFBVTtnQkFFL0IsSUFBSSxDQUFDMUUsTUFBTSxHQUFHUyxNQUFNa0UsUUFBUSxDQUFDRjtnQkFFN0IsSUFBSSxDQUFDMUUsSUFBSSxHQUFHWSxPQUFPaUUsS0FBSyxDQUFDLElBQUksQ0FBQzVFLE1BQU07WUFDdEM7OztZQUVBc0UsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQUksQ0FBQ3hFLFNBQVMsR0FBRztnQkFFakIsSUFBSSxDQUFDRyxVQUFVLEdBQUcsRUFBRTtZQUN0Qjs7O1lBRUFvRSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDdkUsU0FBUyxHQUFHO1lBQ25COzs7WUFFQStFLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXQyxJQUFJO2dCQUNiLElBQU0sQUFBRUwsVUFBWUssS0FBWkwsU0FDRmhFLFFBQVEsSUFBSSxDQUFDRCxRQUFRLElBQ3JCRyxTQUFTLElBQUksQ0FBQ0QsU0FBUztnQkFFN0IsSUFBSSxDQUFDVixNQUFNLEdBQUdTLE1BQU1rRSxRQUFRLENBQUNGO2dCQUU3QixJQUFJLENBQUMxRSxJQUFJLEdBQUdZLE9BQU9pRSxLQUFLLENBQUMsSUFBSSxDQUFDNUUsTUFBTTtnQkFFcEMsSUFBSSxDQUFDc0UsS0FBSztnQkFFVixJQUFJLENBQUNTLGFBQWE7WUFDcEI7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTVQsT0FBTyxJQUFJLENBQUNDLFFBQVEsQ0FBQyxJQUFJLENBQUMzRSxRQUFRLEdBQ2xDQSxXQUFXLElBQUksQ0FBQ0EsUUFBUSxFQUN4QjRFLFVBQVVGLEtBQUtHLFVBQVUsSUFDekJJLE9BQU87b0JBQ0xqRixVQUFBQTtvQkFDQTRFLFNBQUFBO2dCQUNGO2dCQUVOLE9BQU9LO1lBQ1Q7Ozs7WUFFT0csS0FBQUE7bUJBQVAsU0FBT0EsU0FBU1YsSUFBSSxFQUFFM0UsT0FBTztnQkFDM0IsSUFBTUMsV0FBVzBFLEtBQUtXLE9BQU8sSUFDdkJwRixZQUFZLE1BQ1pFLFNBQVMsTUFDVEQsT0FBTyxNQUNQRSxhQUFhLEVBQUUsRUFDZjRELGNBQWMsSUE3U0hoRixZQTZTbUJlLFNBQVNDLFVBQVVDLFdBQVdDLE1BQU1DLFFBQVFDO2dCQUVoRixPQUFPNEQ7WUFDVDs7O1lBRU9zQixLQUFBQTttQkFBUCxTQUFPQSxhQUFhdEYsUUFBUSxFQUFFRCxPQUFPO2dCQUNuQyxJQUFNRSxZQUFZLE1BQ1pFLFNBQVMsTUFDVEQsT0FBTyxNQUNQRSxhQUFhLE1BQ2I0RCxjQUFjLElBdlRIaEYsWUF1VG1CZSxTQUFTQyxVQUFVQyxXQUFXQyxNQUFNQyxRQUFRQztnQkFFaEYsT0FBTzREO1lBQ1Q7OztXQTFUbUJoRiJ9
430
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L2ZpbGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgeyBMRVZFTFMgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyB2ZXJpZnlGaWxlIH0gZnJvbSBcIi4uL3Byb2Nlc3MvdmVyaWZ5XCI7XG5pbXBvcnQgeyBmdXJ0bGVMZXhlciwgZnVydGxlUGFyc2VyIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9mdXJ0bGVcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZywgbm9kZXNBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvbm9kZVwiO1xuaW1wb3J0IHsgY2hhaW5Db250ZXh0LCBsaW5lSW5kZXhGcm9tTm9kZUFuZFRva2VucyB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGV4dFwiO1xuXG5jb25zdCB7IHB1c2ggfSA9IGFycmF5VXRpbGl0aWVzLFxuICAgICAgWyBUUkFDRV9MRVZFTCwgREVCVUdfTEVWRUwsIElORk9fTEVWRUwsIFdBUk5JTkdfTEVWRUwsIEVSUk9SX0xFVkVMIF0gPSBMRVZFTFM7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZpbGVDb250ZXh0IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgZmlsZVBhdGgsIGxpbmVJbmRleCwgbm9kZSwgdG9rZW5zLCBwcm9jZWR1cmVzKSB7XG4gICAgdGhpcy5jb250ZXh0ID0gY29udGV4dDtcbiAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7XG4gICAgdGhpcy5saW5lSW5kZXggPSBsaW5lSW5kZXg7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgICB0aGlzLnRva2VucyA9IHRva2VucztcbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzO1xuXG4gICAgcmV0dXJuIGNoYWluQ29udGV4dCh0aGlzKTtcbiAgfVxuXG4gIGdldENvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dDtcbiAgfVxuXG4gIGdldEZpbGVQYXRoKCkge1xuICAgIHJldHVybiB0aGlzLmZpbGVQYXRoO1xuICB9XG5cbiAgZ2V0TGluZUluZGV4KCkge1xuICAgIHJldHVybiB0aGlzLmxpbmVJbmRleDtcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIGdldFRva2VucygpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbnM7XG4gIH1cblxuICBnZXRMZXhlcigpIHtcbiAgICBjb25zdCBsZXhlciA9IGZ1cnRsZUxleGVyOyAgLy8vXG5cbiAgICByZXR1cm4gbGV4ZXI7XG4gIH1cblxuICBnZXRQYXJzZXIoKSB7XG4gICAgY29uc3QgcGFyc2VyID0gZnVydGxlUGFyc2VyOyAgLy8vXG5cbiAgICByZXR1cm4gcGFyc2VyO1xuICB9XG5cbiAgZ2V0TGFiZWxzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxhYmVscyA9IFtdO1xuXG4gICAgcmV0dXJuIGxhYmVscztcbiAgfVxuXG4gIGdldFR5cGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cblxuICBnZXRSdWxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBydWxlcyA9IFtdXG5cbiAgICByZXR1cm4gcnVsZXM7XG4gIH1cblxuICBnZXRBeGlvbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgYXhpb21zID0gW107XG5cbiAgICByZXR1cm4gYXhpb21zO1xuICB9XG5cbiAgZ2V0TGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxlbW1hcyA9IFtdO1xuXG4gICAgcmV0dXJuIGxlbW1hcztcbiAgfVxuXG4gIGdldFRoZW9yZW1zKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gdGhlb3JlbXM7XG4gIH1cblxuICBnZXRQcm9jZWR1cmVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZXMgPSBbXTtcblxuICAgIHB1c2gocHJvY2VkdXJlcywgdGhpcy5wcm9jZWR1cmVzKTtcblxuICAgIGlmIChpbmNsdWRlUmVsZWFzZSkge1xuICAgICAgY29uc3QgcmVsZWFzZUNvbnRleHRQcm9jZWR1cmVzID0gdGhpcy5jb250ZXh0LmdldFByb2NlZHVyZXMoKTtcblxuICAgICAgcHVzaChwcm9jZWR1cmVzLCByZWxlYXNlQ29udGV4dFByb2NlZHVyZXMpO1xuICAgIH1cblxuICAgIHJldHVybiBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0TWV0YUxlbW1hcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhTGVtbWFzID0gW107XG5cbiAgICByZXR1cm4gbWV0YUxlbW1hcztcbiAgfVxuXG4gIGdldENvbmplY3R1cmVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbmplY3R1cmVzID0gW107XG5cbiAgICByZXR1cm4gY29uamVjdHVyZXM7XG4gIH1cblxuICBnZXRDb21iaW5hdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb21iaW5hdG9ycyA9IFtdO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3JzO1xuICB9XG5cbiAgZ2V0VHlwZVByZWZpeGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVQcmVmaXhlcyA9IFtdO1xuXG4gICAgcmV0dXJuIHR5cGVQcmVmaXhlcztcbiAgfVxuXG4gIGdldENvbnN0cnVjdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb25zdHJ1Y3RvcnMgPSBbXTtcblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcnM7XG4gIH1cblxuICBnZXRNZXRhdGhlb3JlbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbWV0YXRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gbWV0YXRoZW9yZW1zO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlcztcbiAgfVxuXG4gIGFkZFByb2NlZHVyZShwcm9jZWR1cmUpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVTdHJpbmcgPSBwcm9jZWR1cmUuZ2V0U3RyaW5nKCk7XG5cbiAgICB0aGlzLnByb2NlZHVyZXMucHVzaChwcm9jZWR1cmUpO1xuXG4gICAgdGhpcy5kZWJ1ZyhgQWRkZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIHByb2NlZHVyZSB0byB0aGUgY29udGV4dC5gKTtcbiAgfVxuXG4gIGdldFZhcmlhYmxlcygpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHJldHVybiB2YXJpYWJsZXM7XG4gIH1cblxuICBub2RlQXNTdHJpbmcobm9kZSkge1xuICAgIGNvbnN0IHN0cmluZyA9IG5vZGVBc1N0cmluZyhub2RlLCB0aGlzLnRva2Vucyk7XG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgbm9kZXNBc1N0cmluZyhub2Rlcykge1xuICAgIGNvbnN0IHN0cmluZyA9IG5vZGVzQXNTdHJpbmcobm9kZXMsIHRoaXMudG9rZW5zKTtcblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICB0cmFjZShtZXNzYWdlLCBub2RlID0gbnVsbCkge1xuICAgIGNvbnN0IGxldmVsID0gVFJBQ0VfTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UsIG5vZGUpO1xuICB9XG5cbiAgZGVidWcobWVzc2FnZSwgbm9kZSA9IG51bGwpIHtcbiAgICBjb25zdCBsZXZlbCA9IERFQlVHX0xFVkVMO1xuXG4gICAgdGhpcy53cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlLCBub2RlKTtcbiAgfVxuXG4gIGluZm8obWVzc2FnZSwgbm9kZSA9IG51bGwpIHtcbiAgICBjb25zdCBsZXZlbCA9IElORk9fTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UsIG5vZGUpO1xuICB9XG5cbiAgd2FybmluZyhtZXNzYWdlLCBub2RlID0gbnVsbCkge1xuICAgIGNvbnN0IGxldmVsID0gV0FSTklOR19MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSwgbm9kZSk7XG4gIH1cblxuICBlcnJvcihtZXNzYWdlLCBub2RlID0gbnVsbCkge1xuICAgIGNvbnN0IGxldmVsID0gRVJST1JfTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UsIG5vZGUpO1xuICB9XG5cbiAgd3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSwgbm9kZSkge1xuICAgIGNvbnN0IGxpbmVJbmRleCA9IGxpbmVJbmRleEZyb21Ob2RlQW5kVG9rZW5zKG5vZGUsIHRoaXMudG9rZW5zLCB0aGlzLmxpbmVJbmRleCksXG4gICAgICAgICAgZmlsZVBhdGggPSAobGluZUluZGV4ID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmlsZVBhdGggOlxuICAgICAgICAgICAgICAgICAgICAgICAgIG51bGw7XG5cbiAgICB0aGlzLmNvbnRleHQud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSwgZmlsZVBhdGgsIGxpbmVJbmRleCk7XG5cbiAgICB0aGlzLmxpbmVJbmRleCA9IGxpbmVJbmRleDtcbiAgfVxuXG4gIGdldEZpbGVDb250ZXh0KCkge1xuICAgIGNvbnN0IGZpbGVDb250ZXh0ID0gdGhpczsgLy8vXG5cbiAgICByZXR1cm4gZmlsZUNvbnRleHQ7XG4gIH1cblxuICBnZXREZXB0aCgpIHtcbiAgICBsZXQgZGVwdGggPSB0aGlzLmNvbnRleHQuZ2V0RGVwdGgoKTtcblxuICAgIGRlcHRoKys7XG5cbiAgICByZXR1cm4gZGVwdGg7XG4gIH1cblxuICB2ZXJpZnkoKSB7XG4gICAgbGV0IHZlcmlmaWVzID0gZmFsc2U7XG5cbiAgICB0aGlzLnByZXBhcmUoKTtcblxuICAgIGlmICh0aGlzLm5vZGUgPT09IG51bGwpIHtcbiAgICAgIHRoaXMud2FybmluZyhgVW5hYmxlIHRvIHZlcmlmeSB0aGUgJyR7dGhpcy5maWxlUGF0aH0nIGZpbGUgYmVjYXVzZSBpdCBjYW5ub3QgYmUgcGFyc2VkLmApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke3RoaXMuZmlsZVBhdGh9JyBmaWxlLi4uYCk7XG5cbiAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLCAvLy9cbiAgICAgICAgICAgIGZpbGVOb2RlID0gdGhpcy5ub2RlOyAvLy9cblxuICAgICAgdmVyaWZpZXMgPSB2ZXJpZnlGaWxlKGZpbGVOb2RlLCBjb250ZXh0KTtcblxuICAgICAgdmVyaWZpZXMgP1xuICAgICAgICB0aGlzLmNvbXBsZXRlKCkgOlxuICAgICAgICAgIHRoaXMuY2xlYXIoKTtcblxuICAgICAgaWYgKHZlcmlmaWVzKSB7XG4gICAgICAgIHRoaXMuaW5mbyhgLi4udmVyaWZpZWQgdGhlICcke3RoaXMuZmlsZVBhdGh9JyBmaWxlLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB2ZXJpZmllcztcbiAgfVxuXG4gIHByZXBhcmUoKSB7XG4gICAgaWYgKHRoaXMudG9rZW5zICE9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZmlsZSA9IHRoaXMuZmluZEZpbGUodGhpcy5maWxlUGF0aCksXG4gICAgICAgICAgbGV4ZXIgPSB0aGlzLmdldExleGVyKCksXG4gICAgICAgICAgcGFyc2VyID0gdGhpcy5nZXRQYXJzZXIoKSxcbiAgICAgICAgICBjb250ZW50ID0gZmlsZS5nZXRDb250ZW50KCk7XG5cbiAgICB0aGlzLnRva2VucyA9IGxleGVyLnRva2VuaXNlKGNvbnRlbnQpO1xuXG4gICAgdGhpcy5ub2RlID0gcGFyc2VyLnBhcnNlKHRoaXMudG9rZW5zKTtcbiAgfVxuXG4gIGNsZWFyKCkge1xuICAgIHRoaXMubGluZUluZGV4ID0gbnVsbDtcblxuICAgIHRoaXMucHJvY2VkdXJlcyA9IFtdO1xuICB9XG5cbiAgY29tcGxldGUoKSB7XG4gICAgdGhpcy5saW5lSW5kZXggPSBudWxsO1xuICB9XG5cbiAgaW5pdGlhbGlzZShqc29uKSB7XG4gICAgY29uc3QgeyBjb250ZW50IH0gPSBqc29uLFxuICAgICAgICAgIGxleGVyID0gdGhpcy5nZXRMZXhlcigpLFxuICAgICAgICAgIHBhcnNlciA9IHRoaXMuZ2V0UGFyc2VyKCk7XG5cbiAgICB0aGlzLnRva2VucyA9IGxleGVyLnRva2VuaXNlKGNvbnRlbnQpO1xuXG4gICAgdGhpcy5ub2RlID0gcGFyc2VyLnBhcnNlKHRoaXMudG9rZW5zKTtcblxuICAgIHRoaXMuY2xlYXIoKTtcblxuICAgIHRoaXMuYWRkUHJvY2VkdXJlcygpO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGNvbnN0IGZpbGUgPSB0aGlzLmZpbmRGaWxlKHRoaXMuZmlsZVBhdGgpLFxuICAgICAgICAgIGZpbGVQYXRoID0gdGhpcy5maWxlUGF0aCwgLy8vXG4gICAgICAgICAgY29udGVudCA9IGZpbGUuZ2V0Q29udGVudCgpLFxuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBmaWxlUGF0aCxcbiAgICAgICAgICAgIGNvbnRlbnRcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUZpbGUoZmlsZSwgY29udGV4dCkge1xuICAgIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXG4gICAgICAgICAgbGluZUluZGV4ID0gbnVsbCxcbiAgICAgICAgICB0b2tlbnMgPSBudWxsLFxuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIHByb2NlZHVyZXMgPSBbXSxcbiAgICAgICAgICBmaWxlQ29udGV4dCA9IG5ldyBGaWxlQ29udGV4dChjb250ZXh0LCBmaWxlUGF0aCwgbGluZUluZGV4LCBub2RlLCB0b2tlbnMsIHByb2NlZHVyZXMpO1xuXG4gICAgcmV0dXJuIGZpbGVDb250ZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21GaWxlUGF0aChmaWxlUGF0aCwgY29udGV4dCkge1xuICAgIGNvbnN0IGxpbmVJbmRleCA9IG51bGwsXG4gICAgICAgICAgdG9rZW5zID0gbnVsbCxcbiAgICAgICAgICBub2RlID0gbnVsbCxcbiAgICAgICAgICBwcm9jZWR1cmVzID0gbnVsbCxcbiAgICAgICAgICBmaWxlQ29udGV4dCA9IG5ldyBGaWxlQ29udGV4dChjb250ZXh0LCBmaWxlUGF0aCwgbGluZUluZGV4LCBub2RlLCB0b2tlbnMsIHByb2NlZHVyZXMpO1xuXG4gICAgcmV0dXJuIGZpbGVDb250ZXh0O1xuICB9XG59XG4iXSwibmFtZXMiOlsiRmlsZUNvbnRleHQiLCJwdXNoIiwiYXJyYXlVdGlsaXRpZXMiLCJMRVZFTFMiLCJUUkFDRV9MRVZFTCIsIkRFQlVHX0xFVkVMIiwiSU5GT19MRVZFTCIsIldBUk5JTkdfTEVWRUwiLCJFUlJPUl9MRVZFTCIsImNvbnRleHQiLCJmaWxlUGF0aCIsImxpbmVJbmRleCIsIm5vZGUiLCJ0b2tlbnMiLCJwcm9jZWR1cmVzIiwiY2hhaW5Db250ZXh0IiwiZ2V0Q29udGV4dCIsImdldEZpbGVQYXRoIiwiZ2V0TGluZUluZGV4IiwiZ2V0Tm9kZSIsImdldFRva2VucyIsImdldExleGVyIiwibGV4ZXIiLCJmdXJ0bGVMZXhlciIsImdldFBhcnNlciIsInBhcnNlciIsImZ1cnRsZVBhcnNlciIsImdldExhYmVscyIsImluY2x1ZGVSZWxlYXNlIiwibGFiZWxzIiwiZ2V0VHlwZXMiLCJ0eXBlcyIsImdldFJ1bGVzIiwicnVsZXMiLCJnZXRBeGlvbXMiLCJheGlvbXMiLCJnZXRMZW1tYXMiLCJsZW1tYXMiLCJnZXRUaGVvcmVtcyIsInRoZW9yZW1zIiwiZ2V0UHJvY2VkdXJlcyIsInJlbGVhc2VDb250ZXh0UHJvY2VkdXJlcyIsImdldE1ldGFMZW1tYXMiLCJtZXRhTGVtbWFzIiwiZ2V0Q29uamVjdHVyZXMiLCJjb25qZWN0dXJlcyIsImdldENvbWJpbmF0b3JzIiwiY29tYmluYXRvcnMiLCJnZXRUeXBlUHJlZml4ZXMiLCJ0eXBlUHJlZml4ZXMiLCJnZXRDb25zdHJ1Y3RvcnMiLCJjb25zdHJ1Y3RvcnMiLCJnZXRNZXRhdGhlb3JlbXMiLCJtZXRhdGhlb3JlbXMiLCJnZXRNZXRhdmFyaWFibGVzIiwibWV0YXZhcmlhYmxlcyIsImFkZFByb2NlZHVyZSIsInByb2NlZHVyZSIsInByb2NlZHVyZVN0cmluZyIsImdldFN0cmluZyIsImRlYnVnIiwiZ2V0VmFyaWFibGVzIiwidmFyaWFibGVzIiwibm9kZUFzU3RyaW5nIiwic3RyaW5nIiwibm9kZXNBc1N0cmluZyIsIm5vZGVzIiwidHJhY2UiLCJtZXNzYWdlIiwibGV2ZWwiLCJ3cml0ZVRvTG9nIiwiaW5mbyIsIndhcm5pbmciLCJlcnJvciIsImxpbmVJbmRleEZyb21Ob2RlQW5kVG9rZW5zIiwiZ2V0RmlsZUNvbnRleHQiLCJmaWxlQ29udGV4dCIsImdldERlcHRoIiwiZGVwdGgiLCJ2ZXJpZnkiLCJ2ZXJpZmllcyIsInByZXBhcmUiLCJmaWxlTm9kZSIsInZlcmlmeUZpbGUiLCJjb21wbGV0ZSIsImNsZWFyIiwiZmlsZSIsImZpbmRGaWxlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJ0b2tlbmlzZSIsInBhcnNlIiwiaW5pdGlhbGlzZSIsImpzb24iLCJhZGRQcm9jZWR1cmVzIiwidG9KU09OIiwiZnJvbUZpbGUiLCJnZXRQYXRoIiwiZnJvbUZpbGVQYXRoIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQWFxQkE7Ozt5QkFYVTt5QkFFUjtzQkFDSTtzQkFDZTtvQkFDRTt1QkFDYTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get furtleLexer () {
13
+ return furtleLexer;
14
+ },
15
+ get furtleParser () {
16
+ return furtleParser;
17
+ }
18
+ });
19
+ var _occamgrammars = require("occam-grammars");
20
+ var _Lexer = /*#__PURE__*/ _interop_require_default(require("../furtle/Lexer"));
21
+ var _Parser = /*#__PURE__*/ _interop_require_default(require("../furtle/Parser"));
22
+ function _interop_require_default(obj) {
23
+ return obj && obj.__esModule ? obj : {
24
+ default: obj
25
+ };
26
+ }
27
+ var furtleLexerFromNothing = _occamgrammars.lexersUtilities.furtleLexerFromNothing, furtleParserFromNothing = _occamgrammars.parsersUtilities.furtleParserFromNothing;
28
+ var furtleLexer = furtleLexerFromNothing(_Lexer.default);
29
+ var furtleParser = furtleParserFromNothing(_Parser.default);
30
+
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZnVydGxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBsZXhlcnNVdGlsaXRpZXMsIHBhcnNlcnNVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tZ3JhbW1hcnNcIjtcblxuaW1wb3J0IEZ1cnRsZUxleGVyIGZyb20gXCIuLi9mdXJ0bGUvTGV4ZXJcIjtcbmltcG9ydCBGdXJ0bGVQYXJzZXIgZnJvbSBcIi4uL2Z1cnRsZS9QYXJzZXJcIjtcblxuY29uc3QgeyBmdXJ0bGVMZXhlckZyb21Ob3RoaW5nIH0gPSBsZXhlcnNVdGlsaXRpZXMsXG4gICAgICB7IGZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nIH0gPSBwYXJzZXJzVXRpbGl0aWVzO1xuXG5leHBvcnQgY29uc3QgZnVydGxlTGV4ZXIgPSBmdXJ0bGVMZXhlckZyb21Ob3RoaW5nKEZ1cnRsZUxleGVyKTtcblxuZXhwb3J0IGNvbnN0IGZ1cnRsZVBhcnNlciA9IGZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nKEZ1cnRsZVBhcnNlcik7XG4iXSwibmFtZXMiOlsiZnVydGxlTGV4ZXIiLCJmdXJ0bGVQYXJzZXIiLCJmdXJ0bGVMZXhlckZyb21Ob3RoaW5nIiwibGV4ZXJzVXRpbGl0aWVzIiwiZnVydGxlUGFyc2VyRnJvbU5vdGhpbmciLCJwYXJzZXJzVXRpbGl0aWVzIiwiRnVydGxlTGV4ZXIiLCJGdXJ0bGVQYXJzZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQVVhQTtlQUFBQTs7UUFFQUM7ZUFBQUE7Ozs2QkFWcUM7NERBRTFCOzZEQUNDOzs7Ozs7QUFFekIsSUFBTSxBQUFFQyx5QkFBMkJDLDhCQUFlLENBQTFDRCx3QkFDRixBQUFFRSwwQkFBNEJDLCtCQUFnQixDQUE1Q0Q7QUFFRCxJQUFNSixjQUFjRSx1QkFBdUJJLGNBQVc7QUFFdEQsSUFBTUwsZUFBZUcsd0JBQXdCRyxlQUFZIn0=
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get default () {
13
+ return _default;
14
+ },
15
+ get furtleLexerFromEntries () {
16
+ return furtleLexerFromEntries;
17
+ },
18
+ get furtleLexerFromNothing () {
19
+ return furtleLexerFromNothing;
20
+ }
21
+ });
22
+ var _occamlexers = require("occam-lexers");
23
+ var _lexer = /*#__PURE__*/ _interop_require_default(require("../furtle/lexer"));
24
+ function _interop_require_default(obj) {
25
+ return obj && obj.__esModule ? obj : {
26
+ default: obj
27
+ };
28
+ }
29
+ var lexerFromRules = _occamlexers.lexerUtilities.lexerFromRules, rulesFromEntries = _occamlexers.lexerUtilities.rulesFromEntries;
30
+ function furtleLexerFromEntries(Class, entries) {
31
+ if (entries === undefined) {
32
+ entries = Class; ///
33
+ Class = _lexer.default; ///
34
+ }
35
+ var rules;
36
+ rules = rulesFromEntries(entries);
37
+ var furtleLexer = lexerFromRules(Class, rules);
38
+ return furtleLexer;
39
+ }
40
+ function furtleLexerFromNothing(Class) {
41
+ if (Class === undefined) {
42
+ Class = _lexer.default; ///
43
+ }
44
+ var entries = _lexer.default.entries;
45
+ var rules;
46
+ rules = rulesFromEntries(entries);
47
+ var furtleLexer = lexerFromRules(Class, rules);
48
+ return furtleLexer;
49
+ }
50
+ var _default = {
51
+ furtleLexerFromEntries: furtleLexerFromEntries,
52
+ furtleLexerFromNothing: furtleLexerFromNothing
53
+ };
54
+
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbGV4ZXJzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBsZXhlclV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1sZXhlcnNcIjtcblxuaW1wb3J0IEZ1cnRsZUxleGVyIGZyb20gXCIuLi9mdXJ0bGUvbGV4ZXJcIjtcblxuY29uc3QgeyBsZXhlckZyb21SdWxlcywgcnVsZXNGcm9tRW50cmllcyB9ID0gbGV4ZXJVdGlsaXRpZXM7XG5cbmV4cG9ydCBmdW5jdGlvbiBmdXJ0bGVMZXhlckZyb21FbnRyaWVzKENsYXNzLCBlbnRyaWVzKSB7XG4gIGlmIChlbnRyaWVzID09PSB1bmRlZmluZWQpIHtcbiAgICBlbnRyaWVzID0gQ2xhc3M7ICAvLy9cblxuICAgIENsYXNzID0gRnVydGxlTGV4ZXI7ICAvLy9cbiAgfVxuXG4gIGxldCBydWxlcztcblxuICBydWxlcyA9IHJ1bGVzRnJvbUVudHJpZXMoZW50cmllcyk7XG5cbiAgY29uc3QgZnVydGxlTGV4ZXIgPSBsZXhlckZyb21SdWxlcyhDbGFzcywgcnVsZXMpO1xuXG4gIHJldHVybiBmdXJ0bGVMZXhlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZ1cnRsZUxleGVyRnJvbU5vdGhpbmcoQ2xhc3MpIHtcbiAgaWYgKENsYXNzID09PSB1bmRlZmluZWQpIHtcbiAgICBDbGFzcyA9IEZ1cnRsZUxleGVyOyAgLy8vXG4gIH1cblxuICBjb25zdCB7IGVudHJpZXMgfSA9IEZ1cnRsZUxleGVyO1xuXG4gIGxldCBydWxlcztcblxuICBydWxlcyA9IHJ1bGVzRnJvbUVudHJpZXMoZW50cmllcyk7XG5cbiAgY29uc3QgZnVydGxlTGV4ZXIgPSBsZXhlckZyb21SdWxlcyhDbGFzcywgcnVsZXMpO1xuXG4gIHJldHVybiBmdXJ0bGVMZXhlcjtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBmdXJ0bGVMZXhlckZyb21FbnRyaWVzLFxuICBmdXJ0bGVMZXhlckZyb21Ob3RoaW5nXG59O1xuIl0sIm5hbWVzIjpbImZ1cnRsZUxleGVyRnJvbUVudHJpZXMiLCJmdXJ0bGVMZXhlckZyb21Ob3RoaW5nIiwibGV4ZXJGcm9tUnVsZXMiLCJsZXhlclV0aWxpdGllcyIsInJ1bGVzRnJvbUVudHJpZXMiLCJDbGFzcyIsImVudHJpZXMiLCJ1bmRlZmluZWQiLCJGdXJ0bGVMZXhlciIsInJ1bGVzIiwiZnVydGxlTGV4ZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQXdDQTtlQUFBOztRQWhDZ0JBO2VBQUFBOztRQWdCQUM7ZUFBQUE7OzsyQkF0QmU7NERBRVA7Ozs7OztBQUV4QixJQUFRQyxpQkFBcUNDLDJCQUFjLENBQW5ERCxnQkFBZ0JFLG1CQUFxQkQsMkJBQWMsQ0FBbkNDO0FBRWpCLFNBQVNKLHVCQUF1QkssS0FBSyxFQUFFQyxPQUFPO0lBQ25ELElBQUlBLFlBQVlDLFdBQVc7UUFDekJELFVBQVVELE9BQVEsR0FBRztRQUVyQkEsUUFBUUcsY0FBVyxFQUFHLEdBQUc7SUFDM0I7SUFFQSxJQUFJQztJQUVKQSxRQUFRTCxpQkFBaUJFO0lBRXpCLElBQU1JLGNBQWNSLGVBQWVHLE9BQU9JO0lBRTFDLE9BQU9DO0FBQ1Q7QUFFTyxTQUFTVCx1QkFBdUJJLEtBQUs7SUFDMUMsSUFBSUEsVUFBVUUsV0FBVztRQUN2QkYsUUFBUUcsY0FBVyxFQUFHLEdBQUc7SUFDM0I7SUFFQSxJQUFNLEFBQUVGLFVBQVlFLGNBQVcsQ0FBdkJGO0lBRVIsSUFBSUc7SUFFSkEsUUFBUUwsaUJBQWlCRTtJQUV6QixJQUFNSSxjQUFjUixlQUFlRyxPQUFPSTtJQUUxQyxPQUFPQztBQUNUO0lBRUEsV0FBZTtJQUNiVix3QkFBQUE7SUFDQUMsd0JBQUFBO0FBQ0YifQ==
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get default () {
13
+ return _default;
14
+ },
15
+ get furtleParserFromBNF () {
16
+ return furtleParserFromBNF;
17
+ },
18
+ get furtleParserFromBNFAndStartRuleName () {
19
+ return furtleParserFromBNFAndStartRuleName;
20
+ },
21
+ get furtleParserFromNothing () {
22
+ return furtleParserFromNothing;
23
+ }
24
+ });
25
+ var _occamparsers = require("occam-parsers");
26
+ var _occamgrammarutilities = require("occam-grammar-utilities");
27
+ var _parser = /*#__PURE__*/ _interop_require_default(require("../furtle/parser"));
28
+ function _interop_require_default(obj) {
29
+ return obj && obj.__esModule ? obj : {
30
+ default: obj
31
+ };
32
+ }
33
+ var rulesFromBNF = _occamparsers.parserUtilities.rulesFromBNF, parserFromRules = _occamparsers.parserUtilities.parserFromRules, parserFromRulesAndStartRuleName = _occamparsers.parserUtilities.parserFromRulesAndStartRuleName;
34
+ function furtleParserFromBNF(Class, bnf) {
35
+ if (bnf === undefined) {
36
+ bnf = Class; ///
37
+ Class = _parser.default; ///
38
+ }
39
+ var rules;
40
+ rules = rulesFromBNF(bnf);
41
+ rules = (0, _occamgrammarutilities.eliminateLeftRecursion)(rules); ///
42
+ var furtleParser = parserFromRules(Class, rules);
43
+ return furtleParser;
44
+ }
45
+ function furtleParserFromNothing(Class) {
46
+ if (Class === undefined) {
47
+ Class = _parser.default; ///
48
+ }
49
+ var bnf = _parser.default.bnf;
50
+ var rules;
51
+ rules = rulesFromBNF(bnf);
52
+ rules = (0, _occamgrammarutilities.eliminateLeftRecursion)(rules); ///
53
+ var furtleParser = parserFromRules(Class, rules);
54
+ return furtleParser;
55
+ }
56
+ function furtleParserFromBNFAndStartRuleName(Class, bnf, startRuleName) {
57
+ if (startRuleName === undefined) {
58
+ startRuleName = bnf; ///
59
+ bnf = Class; ///
60
+ Class = _parser.default; ///
61
+ }
62
+ var rules;
63
+ rules = rulesFromBNF(bnf);
64
+ rules = (0, _occamgrammarutilities.eliminateLeftRecursion)(rules); ///
65
+ var furtleParser = parserFromRulesAndStartRuleName(Class, rules, startRuleName);
66
+ return furtleParser;
67
+ }
68
+ var _default = {
69
+ furtleParserFromBNF: furtleParserFromBNF,
70
+ furtleParserFromNothing: furtleParserFromNothing,
71
+ furtleParserFromBNFAndStartRuleName: furtleParserFromBNFAndStartRuleName
72
+ };
73
+
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcGFyc2Vycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcGFyc2VyVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcbmltcG9ydCB7IGVsaW1pbmF0ZUxlZnRSZWN1cnNpb24gfSBmcm9tIFwib2NjYW0tZ3JhbW1hci11dGlsaXRpZXNcIjtcblxuaW1wb3J0IEZ1cnRsZVBhcnNlciBmcm9tIFwiLi4vZnVydGxlL3BhcnNlclwiO1xuXG5jb25zdCB7IHJ1bGVzRnJvbUJORiwgcGFyc2VyRnJvbVJ1bGVzLCBwYXJzZXJGcm9tUnVsZXNBbmRTdGFydFJ1bGVOYW1lIH0gPSBwYXJzZXJVdGlsaXRpZXM7XG5cbmV4cG9ydCBmdW5jdGlvbiBmdXJ0bGVQYXJzZXJGcm9tQk5GKENsYXNzLCBibmYpIHtcbiAgaWYgKGJuZiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgYm5mID0gQ2xhc3M7ICAvLy9cblxuICAgIENsYXNzID0gRnVydGxlUGFyc2VyOyAgLy8vXG4gIH1cblxuICBsZXQgcnVsZXM7XG5cbiAgcnVsZXMgPSBydWxlc0Zyb21CTkYoYm5mKTtcblxuICBydWxlcyA9IGVsaW1pbmF0ZUxlZnRSZWN1cnNpb24ocnVsZXMpOyAgLy8vXG5cbiAgY29uc3QgZnVydGxlUGFyc2VyID0gcGFyc2VyRnJvbVJ1bGVzKENsYXNzLCBydWxlcyk7XG5cbiAgcmV0dXJuIGZ1cnRsZVBhcnNlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nKENsYXNzKSB7XG4gIGlmIChDbGFzcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgQ2xhc3MgPSBGdXJ0bGVQYXJzZXI7ICAvLy9cbiAgfVxuXG4gIGNvbnN0IHsgYm5mIH0gPSBGdXJ0bGVQYXJzZXI7XG5cbiAgbGV0IHJ1bGVzO1xuXG4gIHJ1bGVzID0gcnVsZXNGcm9tQk5GKGJuZik7XG5cbiAgcnVsZXMgPSBlbGltaW5hdGVMZWZ0UmVjdXJzaW9uKHJ1bGVzKTsgIC8vL1xuXG4gIGNvbnN0IGZ1cnRsZVBhcnNlciA9IHBhcnNlckZyb21SdWxlcyhDbGFzcywgcnVsZXMpO1xuXG4gIHJldHVybiBmdXJ0bGVQYXJzZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmdXJ0bGVQYXJzZXJGcm9tQk5GQW5kU3RhcnRSdWxlTmFtZShDbGFzcywgYm5mLCBzdGFydFJ1bGVOYW1lKSB7XG4gIGlmIChzdGFydFJ1bGVOYW1lID09PSB1bmRlZmluZWQpIHtcbiAgICBzdGFydFJ1bGVOYW1lID0gYm5mOyAgLy8vXG5cbiAgICBibmYgPSBDbGFzczsgIC8vL1xuXG4gICAgQ2xhc3MgPSBGdXJ0bGVQYXJzZXI7ICAvLy9cbiAgfVxuXG4gIGxldCBydWxlcztcblxuICBydWxlcyA9IHJ1bGVzRnJvbUJORihibmYpO1xuXG4gIHJ1bGVzID0gZWxpbWluYXRlTGVmdFJlY3Vyc2lvbihydWxlcyk7ICAvLy9cblxuICBjb25zdCBmdXJ0bGVQYXJzZXIgPSBwYXJzZXJGcm9tUnVsZXNBbmRTdGFydFJ1bGVOYW1lKENsYXNzLCBydWxlcywgc3RhcnRSdWxlTmFtZSk7XG5cbiAgcmV0dXJuIGZ1cnRsZVBhcnNlcjtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBmdXJ0bGVQYXJzZXJGcm9tQk5GLFxuICBmdXJ0bGVQYXJzZXJGcm9tTm90aGluZyxcbiAgZnVydGxlUGFyc2VyRnJvbUJORkFuZFN0YXJ0UnVsZU5hbWVcbn07XG4iXSwibmFtZXMiOlsiZnVydGxlUGFyc2VyRnJvbUJORiIsImZ1cnRsZVBhcnNlckZyb21CTkZBbmRTdGFydFJ1bGVOYW1lIiwiZnVydGxlUGFyc2VyRnJvbU5vdGhpbmciLCJydWxlc0Zyb21CTkYiLCJwYXJzZXJVdGlsaXRpZXMiLCJwYXJzZXJGcm9tUnVsZXMiLCJwYXJzZXJGcm9tUnVsZXNBbmRTdGFydFJ1bGVOYW1lIiwiQ2xhc3MiLCJibmYiLCJ1bmRlZmluZWQiLCJGdXJ0bGVQYXJzZXIiLCJydWxlcyIsImVsaW1pbmF0ZUxlZnRSZWN1cnNpb24iLCJmdXJ0bGVQYXJzZXIiLCJzdGFydFJ1bGVOYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFpRUE7ZUFBQTs7UUF4RGdCQTtlQUFBQTs7UUFvQ0FDO2VBQUFBOztRQWxCQUM7ZUFBQUE7Ozs0QkF6QmdCO3FDQUNPOzZEQUVkOzs7Ozs7QUFFekIsSUFBUUMsZUFBbUVDLDZCQUFlLENBQWxGRCxjQUFjRSxrQkFBcURELDZCQUFlLENBQXBFQyxpQkFBaUJDLGtDQUFvQ0YsNkJBQWUsQ0FBbkRFO0FBRWhDLFNBQVNOLG9CQUFvQk8sS0FBSyxFQUFFQyxHQUFHO0lBQzVDLElBQUlBLFFBQVFDLFdBQVc7UUFDckJELE1BQU1ELE9BQVEsR0FBRztRQUVqQkEsUUFBUUcsZUFBWSxFQUFHLEdBQUc7SUFDNUI7SUFFQSxJQUFJQztJQUVKQSxRQUFRUixhQUFhSztJQUVyQkcsUUFBUUMsSUFBQUEsNkNBQXNCLEVBQUNELFFBQVMsR0FBRztJQUUzQyxJQUFNRSxlQUFlUixnQkFBZ0JFLE9BQU9JO0lBRTVDLE9BQU9FO0FBQ1Q7QUFFTyxTQUFTWCx3QkFBd0JLLEtBQUs7SUFDM0MsSUFBSUEsVUFBVUUsV0FBVztRQUN2QkYsUUFBUUcsZUFBWSxFQUFHLEdBQUc7SUFDNUI7SUFFQSxJQUFNLEFBQUVGLE1BQVFFLGVBQVksQ0FBcEJGO0lBRVIsSUFBSUc7SUFFSkEsUUFBUVIsYUFBYUs7SUFFckJHLFFBQVFDLElBQUFBLDZDQUFzQixFQUFDRCxRQUFTLEdBQUc7SUFFM0MsSUFBTUUsZUFBZVIsZ0JBQWdCRSxPQUFPSTtJQUU1QyxPQUFPRTtBQUNUO0FBRU8sU0FBU1osb0NBQW9DTSxLQUFLLEVBQUVDLEdBQUcsRUFBRU0sYUFBYTtJQUMzRSxJQUFJQSxrQkFBa0JMLFdBQVc7UUFDL0JLLGdCQUFnQk4sS0FBTSxHQUFHO1FBRXpCQSxNQUFNRCxPQUFRLEdBQUc7UUFFakJBLFFBQVFHLGVBQVksRUFBRyxHQUFHO0lBQzVCO0lBRUEsSUFBSUM7SUFFSkEsUUFBUVIsYUFBYUs7SUFFckJHLFFBQVFDLElBQUFBLDZDQUFzQixFQUFDRCxRQUFTLEdBQUc7SUFFM0MsSUFBTUUsZUFBZVAsZ0NBQWdDQyxPQUFPSSxPQUFPRztJQUVuRSxPQUFPRDtBQUNUO0lBRUEsV0FBZTtJQUNiYixxQkFBQUE7SUFDQUUseUJBQUFBO0lBQ0FELHFDQUFBQTtBQUNGIn0=
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-furtle",
3
3
  "author": "James Smith",
4
- "version": "2.0.291",
4
+ "version": "2.0.292",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-furtle",
7
7
  "description": "Occam's Furtle language.",
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "necessary": "^17.0.9",
14
- "occam-grammars": "^1.3.439",
14
+ "occam-grammars": "^1.3.442",
15
15
  "occam-parsers": "^23.1.38"
16
16
  },
17
17
  "devDependencies": {
@@ -20,8 +20,8 @@
20
20
  "express": "^5.1.0",
21
21
  "lively-cli": "^2.0.77",
22
22
  "mocha": "^6.0.2",
23
- "occam-custom-grammars": "^5.0.1341",
24
- "occam-entities": "^1.0.445",
23
+ "occam-custom-grammars": "^5.0.1342",
24
+ "occam-entities": "^1.0.446",
25
25
  "occam-query": "^4.1.142",
26
26
  "watchful-cli": "^1.7.67"
27
27
  },
@@ -1,21 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  import { arrayUtilities } from "necessary";
4
- import { lexersUtilities, parsersUtilities } from "occam-grammars";
5
4
 
6
5
  import { LEVELS } from "../constants";
7
6
  import { verifyFile } from "../process/verify";
7
+ import { furtleLexer, furtleParser } from "../utilities/furtle";
8
8
  import { nodeAsString, nodesAsString } from "../utilities/node";
9
9
  import { chainContext, lineIndexFromNodeAndTokens } from "../utilities/context";
10
10
 
11
11
  const { push } = arrayUtilities,
12
- { furtleLexerFromNothing } = lexersUtilities,
13
- { furtleParserFromNothing } = parsersUtilities,
14
12
  [ TRACE_LEVEL, DEBUG_LEVEL, INFO_LEVEL, WARNING_LEVEL, ERROR_LEVEL ] = LEVELS;
15
13
 
16
- const furtleLexer = furtleLexerFromNothing(),
17
- furtleParser = furtleParserFromNothing();
18
-
19
14
  export default class FileContext {
20
15
  constructor(context, filePath, lineIndex, node, tokens, procedures) {
21
16
  this.context = context;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ import { lexersUtilities, parsersUtilities } from "occam-grammars";
4
+
5
+ import FurtleLexer from "../furtle/Lexer";
6
+ import FurtleParser from "../furtle/Parser";
7
+
8
+ const { furtleLexerFromNothing } = lexersUtilities,
9
+ { furtleParserFromNothing } = parsersUtilities;
10
+
11
+ export const furtleLexer = furtleLexerFromNothing(FurtleLexer);
12
+
13
+ export const furtleParser = furtleParserFromNothing(FurtleParser);
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ import { lexerUtilities } from "occam-lexers";
4
+
5
+ import FurtleLexer from "../furtle/lexer";
6
+
7
+ const { lexerFromRules, rulesFromEntries } = lexerUtilities;
8
+
9
+ export function furtleLexerFromEntries(Class, entries) {
10
+ if (entries === undefined) {
11
+ entries = Class; ///
12
+
13
+ Class = FurtleLexer; ///
14
+ }
15
+
16
+ let rules;
17
+
18
+ rules = rulesFromEntries(entries);
19
+
20
+ const furtleLexer = lexerFromRules(Class, rules);
21
+
22
+ return furtleLexer;
23
+ }
24
+
25
+ export function furtleLexerFromNothing(Class) {
26
+ if (Class === undefined) {
27
+ Class = FurtleLexer; ///
28
+ }
29
+
30
+ const { entries } = FurtleLexer;
31
+
32
+ let rules;
33
+
34
+ rules = rulesFromEntries(entries);
35
+
36
+ const furtleLexer = lexerFromRules(Class, rules);
37
+
38
+ return furtleLexer;
39
+ }
40
+
41
+ export default {
42
+ furtleLexerFromEntries,
43
+ furtleLexerFromNothing
44
+ };
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ import { parserUtilities } from "occam-parsers";
4
+ import { eliminateLeftRecursion } from "occam-grammar-utilities";
5
+
6
+ import FurtleParser from "../furtle/parser";
7
+
8
+ const { rulesFromBNF, parserFromRules, parserFromRulesAndStartRuleName } = parserUtilities;
9
+
10
+ export function furtleParserFromBNF(Class, bnf) {
11
+ if (bnf === undefined) {
12
+ bnf = Class; ///
13
+
14
+ Class = FurtleParser; ///
15
+ }
16
+
17
+ let rules;
18
+
19
+ rules = rulesFromBNF(bnf);
20
+
21
+ rules = eliminateLeftRecursion(rules); ///
22
+
23
+ const furtleParser = parserFromRules(Class, rules);
24
+
25
+ return furtleParser;
26
+ }
27
+
28
+ export function furtleParserFromNothing(Class) {
29
+ if (Class === undefined) {
30
+ Class = FurtleParser; ///
31
+ }
32
+
33
+ const { bnf } = FurtleParser;
34
+
35
+ let rules;
36
+
37
+ rules = rulesFromBNF(bnf);
38
+
39
+ rules = eliminateLeftRecursion(rules); ///
40
+
41
+ const furtleParser = parserFromRules(Class, rules);
42
+
43
+ return furtleParser;
44
+ }
45
+
46
+ export function furtleParserFromBNFAndStartRuleName(Class, bnf, startRuleName) {
47
+ if (startRuleName === undefined) {
48
+ startRuleName = bnf; ///
49
+
50
+ bnf = Class; ///
51
+
52
+ Class = FurtleParser; ///
53
+ }
54
+
55
+ let rules;
56
+
57
+ rules = rulesFromBNF(bnf);
58
+
59
+ rules = eliminateLeftRecursion(rules); ///
60
+
61
+ const furtleParser = parserFromRulesAndStartRuleName(Class, rules, startRuleName);
62
+
63
+ return furtleParser;
64
+ }
65
+
66
+ export default {
67
+ furtleParserFromBNF,
68
+ furtleParserFromNothing,
69
+ furtleParserFromBNFAndStartRuleName
70
+ };