occam-custom-grammars 5.0.1227 → 5.0.1228

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.
Files changed (36) hide show
  1. package/example.js +654 -467
  2. package/lib/constants.js +9 -1
  3. package/lib/customGrammar/combined.js +15 -17
  4. package/lib/customGrammar/default.js +9 -9
  5. package/lib/customGrammar.js +55 -47
  6. package/lib/example/customGrammar/userDefined1.js +4 -4
  7. package/lib/example/customGrammar/userDefined2.js +4 -4
  8. package/lib/example/grammarNames.js +3 -3
  9. package/lib/example/select/{patternName.js → vocabularyName.js} +23 -23
  10. package/lib/example/{input/pattern.js → textarea/vocabulary.js} +23 -23
  11. package/lib/example/view.js +11 -11
  12. package/lib/index.js +5 -5
  13. package/lib/utilities/bnf.js +18 -0
  14. package/lib/utilities/query.js +36 -0
  15. package/lib/utilities/vocabulary.js +69 -0
  16. package/lib/vocabularyNames.js +29 -0
  17. package/package.json +4 -3
  18. package/src/constants.js +2 -0
  19. package/src/customGrammar/combined.js +18 -22
  20. package/src/customGrammar/default.js +5 -4
  21. package/src/customGrammar.js +48 -41
  22. package/src/example/customGrammar/userDefined1.js +6 -6
  23. package/src/example/customGrammar/userDefined2.js +6 -6
  24. package/src/example/grammarNames.js +1 -1
  25. package/src/example/select/vocabularyName.js +52 -0
  26. package/src/example/textarea/vocabulary.js +33 -0
  27. package/src/example/view.js +14 -14
  28. package/src/index.js +1 -1
  29. package/src/utilities/bnf.js +12 -0
  30. package/src/utilities/query.js +25 -0
  31. package/src/utilities/vocabulary.js +91 -0
  32. package/src/vocabularyNames.js +9 -0
  33. package/lib/patternNames.js +0 -29
  34. package/src/example/input/pattern.js +0 -33
  35. package/src/example/select/patternName.js +0 -52
  36. package/src/patternNames.js +0 -9
package/lib/constants.js CHANGED
@@ -12,11 +12,19 @@ _export(exports, {
12
12
  get EMPTY_STRING () {
13
13
  return EMPTY_STRING;
14
14
  },
15
+ get UNASSIGNED_TYPE () {
16
+ return UNASSIGNED_TYPE;
17
+ },
18
+ get UNDERSCORE_CHARACTER () {
19
+ return UNDERSCORE_CHARACTER;
20
+ },
15
21
  get VERTICAL_BAR () {
16
22
  return VERTICAL_BAR;
17
23
  }
18
24
  });
19
25
  var EMPTY_STRING = "";
20
26
  var VERTICAL_BAR = "|";
27
+ var UNASSIGNED_TYPE = "unassigned";
28
+ var UNDERSCORE_CHARACTER = "_";
21
29
 
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBFTVBUWV9TVFJJTkcgPSBcIlwiO1xuZXhwb3J0IGNvbnN0IFZFUlRJQ0FMX0JBUiA9IFwifFwiO1xuIl0sIm5hbWVzIjpbIkVNUFRZX1NUUklORyIsIlZFUlRJQ0FMX0JBUiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBRWFBO2VBQUFBOztRQUNBQztlQUFBQTs7O0FBRE4sSUFBTUQsZUFBZTtBQUNyQixJQUFNQyxlQUFlIn0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBFTVBUWV9TVFJJTkcgPSBcIlwiO1xuZXhwb3J0IGNvbnN0IFZFUlRJQ0FMX0JBUiA9IFwifFwiO1xuZXhwb3J0IGNvbnN0IFVOQVNTSUdORURfVFlQRSA9IFwidW5hc3NpZ25lZFwiO1xuZXhwb3J0IGNvbnN0IFVOREVSU0NPUkVfQ0hBUkFDVEVSID0gXCJfXCI7XG4iXSwibmFtZXMiOlsiRU1QVFlfU1RSSU5HIiwiVU5BU1NJR05FRF9UWVBFIiwiVU5ERVJTQ09SRV9DSEFSQUNURVIiLCJWRVJUSUNBTF9CQVIiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQUVhQTtlQUFBQTs7UUFFQUM7ZUFBQUE7O1FBQ0FDO2VBQUFBOztRQUZBQztlQUFBQTs7O0FBRE4sSUFBTUgsZUFBZTtBQUNyQixJQUFNRyxlQUFlO0FBQ3JCLElBQU1GLGtCQUFrQjtBQUN4QixJQUFNQyx1QkFBdUIifQ==
@@ -13,7 +13,8 @@ var _occamparsers = require("occam-parsers");
13
13
  var _occamgrammarutilities = require("occam-grammar-utilities");
14
14
  var _default = /*#__PURE__*/ _interop_require_default(require("../customGrammar/default"));
15
15
  var _constants = require("../constants");
16
- var _patternNames = require("../patternNames");
16
+ var _vocabulary = require("../utilities/vocabulary");
17
+ var _vocabularyNames = require("../vocabularyNames");
17
18
  function _array_like_to_array(arr, len) {
18
19
  if (len == null || len > arr.length) len = arr.length;
19
20
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
@@ -144,28 +145,25 @@ function rulesFromCustomGrammarsAndDefaultBNF(customGrammars) {
144
145
  return rules;
145
146
  }
146
147
  function entriesFromCustomGrammars(customGrammars) {
147
- var patternNames = [
148
- _patternNames.TYPE_PATTERN_NAME,
149
- _patternNames.SYMBOL_PATTERN_NAME
150
- ], entries = patternNames.map(function(patternName) {
151
- var entry = entryFromCustomGrammars(customGrammars, patternName);
148
+ var vocabularyNames = [
149
+ _vocabularyNames.TYPE_VOCABULARY_NAME,
150
+ _vocabularyNames.SYMBOL_VOCABULARY_NAME
151
+ ], entries = vocabularyNames.map(function(vocabularyName) {
152
+ var entry = entryFromCustomGrammars(customGrammars, vocabularyName);
152
153
  return entry;
153
154
  });
154
155
  return entries;
155
156
  }
156
- function entryFromCustomGrammars(customGrammars, patternName) {
157
- var patterns = [];
157
+ function entryFromCustomGrammars(customGrammars, vocabularyName) {
158
+ var expressions = [];
158
159
  backwardsForEach(customGrammars, function(customGrammar) {
159
- var pattern = customGrammar.getPattern(patternName);
160
- if (pattern !== null && pattern !== _constants.EMPTY_STRING) {
161
- var subPatterns = pattern.split(_constants.VERTICAL_BAR);
162
- subPatterns.forEach(function(subPattern) {
163
- var pattern = patternName === _patternNames.TYPE_PATTERN_NAME ? "".concat(subPattern, "(?!\\w)") : subPattern; ///
164
- patterns.push(pattern);
165
- });
160
+ var vocabulary = customGrammar.getVocabulary(vocabularyName), customGrammarDefaultCustomGrammar = customGrammar.isDefaultCustomGrammar();
161
+ if (!customGrammarDefaultCustomGrammar) {
162
+ (0, _vocabulary.validateVocabulary)(vocabulary);
166
163
  }
164
+ (0, _vocabulary.expressionsFromVocabulary)(vocabulary, expressions);
167
165
  });
168
- var patternsString = patterns.join(_constants.VERTICAL_BAR), entryName = patternName, entryValue = "^(?:".concat(patternsString, ")"), entry = _define_property({}, entryName, entryValue);
166
+ var pattern = expressions.join(_constants.VERTICAL_BAR), entryName = vocabularyName, entryValue = "^(?:".concat(pattern, ")"), entry = _define_property({}, entryName, entryValue);
169
167
  return entry;
170
168
  }
171
169
  function combineRules(rules) {
@@ -190,4 +188,4 @@ function combineRules(rules) {
190
188
  }
191
189
  }
192
190
 
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdXN0b21HcmFtbWFyL2NvbWJpbmVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcbmltcG9ydCB7IHBhcnNlclV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1wYXJzZXJzXCI7XG5pbXBvcnQgeyBlbGltaW5hdGVMZWZ0UmVjdXJzaW9uIH0gZnJvbSBcIm9jY2FtLWdyYW1tYXItdXRpbGl0aWVzXCI7XG5cbmltcG9ydCBkZWZhdWx0Q3VzdG9tR3JhbW1hciBmcm9tIFwiLi4vY3VzdG9tR3JhbW1hci9kZWZhdWx0XCI7XG5cbmltcG9ydCB7IEVNUFRZX1NUUklORywgVkVSVElDQUxfQkFSIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgVFlQRV9QQVRURVJOX05BTUUsIFNZTUJPTF9QQVRURVJOX05BTUUgfSBmcm9tIFwiLi4vcGF0dGVybk5hbWVzXCI7XG5cbmNvbnN0IHsgcnVsZXNGcm9tQk5GIH0gPSBwYXJzZXJVdGlsaXRpZXMsXG4gICAgICB7IHVuc2hpZnQsIGJhY2t3YXJkc0ZvckVhY2ggfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb21iaW5lZEN1c3RvbUdyYW1tYXIge1xuICBjb25zdHJ1Y3RvcihydWxlcywgZW50cmllcykge1xuICAgIHRoaXMucnVsZXMgPSBydWxlcztcbiAgICB0aGlzLmVudHJpZXMgPSBlbnRyaWVzO1xuICB9XG4gIFxuICBnZXRSdWxlcygpIHtcbiAgICByZXR1cm4gdGhpcy5ydWxlcztcbiAgfVxuXG4gIGdldEVudHJpZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZW50cmllcztcbiAgfVxuXG4gIHBvc3RQcm9jZXNzKHJ1bGVzKSB7XG4gICAgcnVsZXMgPSBbIC8vL1xuICAgICAgLi4ucnVsZXMsXG4gICAgICAuLi50aGlzLnJ1bGVzXG4gICAgXTtcblxuICAgIHJ1bGVzID0gZWxpbWluYXRlTGVmdFJlY3Vyc2lvbihydWxlcyk7ICAvLy9cblxuICAgIHJldHVybiBydWxlcztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTm90aGluZyhpbmNsdWRlRGVmYXVsdCA9IHRydWUpIHtcbiAgICBsZXQgY3VzdG9tR3JhbW1hcnMgPSBbXTtcblxuICAgIGlmIChpbmNsdWRlRGVmYXVsdCkge1xuICAgICAgY3VzdG9tR3JhbW1hcnMgPSBbIGRlZmF1bHRDdXN0b21HcmFtbWFyLCAuLi5jdXN0b21HcmFtbWFycyBdOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBydWxlcyA9IHJ1bGVzRnJvbUN1c3RvbUdyYW1tYXJzQW5kRGVmYXVsdEJORihjdXN0b21HcmFtbWFycyksXG4gICAgICAgICAgZW50cmllcyA9IGVudHJpZXNGcm9tQ3VzdG9tR3JhbW1hcnMoY3VzdG9tR3JhbW1hcnMpLFxuICAgICAgICAgIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9IG5ldyBDb21iaW5lZEN1c3RvbUdyYW1tYXIocnVsZXMsIGVudHJpZXMpO1xuXG4gICAgcmV0dXJuIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tQ3VzdG9tR3JhbW1hcnMoY3VzdG9tR3JhbW1hcnMsIGluY2x1ZGVEZWZhdWx0ID0gdHJ1ZSkge1xuICAgIGlmIChpbmNsdWRlRGVmYXVsdCkge1xuICAgICAgY3VzdG9tR3JhbW1hcnMgPSBbIGRlZmF1bHRDdXN0b21HcmFtbWFyLCAuLi5jdXN0b21HcmFtbWFycyBdOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBydWxlcyA9IHJ1bGVzRnJvbUN1c3RvbUdyYW1tYXJzQW5kRGVmYXVsdEJORihjdXN0b21HcmFtbWFycyksXG4gICAgICAgICAgZW50cmllcyA9IGVudHJpZXNGcm9tQ3VzdG9tR3JhbW1hcnMoY3VzdG9tR3JhbW1hcnMpLFxuICAgICAgICAgIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9IG5ldyBDb21iaW5lZEN1c3RvbUdyYW1tYXIocnVsZXMsIGVudHJpZXMpO1xuICAgIFxuICAgIHJldHVybiBjb21iaW5lZEN1c3RvbUdyYW1tYXI7XG4gIH1cbn1cblxuZnVuY3Rpb24gcnVsZXNGcm9tQ3VzdG9tR3JhbW1hcnNBbmREZWZhdWx0Qk5GKGN1c3RvbUdyYW1tYXJzKSB7XG4gIGNvbnN0IGJuZnMgPSBjdXN0b21HcmFtbWFycy5tYXAoKGN1c3RvbUdyYW1tYXIpID0+IHtcbiAgICAgICAgICBjb25zdCBibmYgPSBjdXN0b21HcmFtbWFyLmdldEJORigpO1xuXG4gICAgICAgICAgcmV0dXJuIGJuZjtcbiAgICAgICAgfSksXG4gICAgICAgIGJuZiA9IGJuZnMuam9pbihFTVBUWV9TVFJJTkcpLFxuICAgICAgICBydWxlcyA9IHJ1bGVzRnJvbUJORihibmYpO1xuXG4gIGNvbWJpbmVSdWxlcyhydWxlcylcblxuICByZXR1cm4gcnVsZXM7XG59XG5cbmZ1bmN0aW9uIGVudHJpZXNGcm9tQ3VzdG9tR3JhbW1hcnMoY3VzdG9tR3JhbW1hcnMpIHtcbiAgY29uc3QgcGF0dGVybk5hbWVzID0gW1xuICAgICAgICAgIFRZUEVfUEFUVEVSTl9OQU1FLFxuICAgICAgICAgIFNZTUJPTF9QQVRURVJOX05BTUVcbiAgICAgICAgXSxcbiAgICAgICAgZW50cmllcyA9IHBhdHRlcm5OYW1lcy5tYXAoKHBhdHRlcm5OYW1lKSA9PiB7XG4gICAgICAgICAgY29uc3QgZW50cnkgPSBlbnRyeUZyb21DdXN0b21HcmFtbWFycyhjdXN0b21HcmFtbWFycywgcGF0dGVybk5hbWUpO1xuXG4gICAgICAgICAgcmV0dXJuIGVudHJ5O1xuICAgICAgICB9KTtcblxuICByZXR1cm4gZW50cmllcztcbn1cblxuZnVuY3Rpb24gZW50cnlGcm9tQ3VzdG9tR3JhbW1hcnMoY3VzdG9tR3JhbW1hcnMsIHBhdHRlcm5OYW1lKSB7XG4gIGNvbnN0IHBhdHRlcm5zID0gW107XG5cbiAgYmFja3dhcmRzRm9yRWFjaChjdXN0b21HcmFtbWFycywgKGN1c3RvbUdyYW1tYXIpID0+IHtcbiAgICBjb25zdCBwYXR0ZXJuID0gY3VzdG9tR3JhbW1hci5nZXRQYXR0ZXJuKHBhdHRlcm5OYW1lKTtcblxuICAgIGlmICgocGF0dGVybiAhPT0gbnVsbCkgJiYgKHBhdHRlcm4gIT09IEVNUFRZX1NUUklORykpIHtcbiAgICAgIGNvbnN0IHN1YlBhdHRlcm5zID0gcGF0dGVybi5zcGxpdChWRVJUSUNBTF9CQVIpO1xuXG4gICAgICBzdWJQYXR0ZXJucy5mb3JFYWNoKChzdWJQYXR0ZXJuKSA9PiB7XG4gICAgICAgIGNvbnN0IHBhdHRlcm4gPSAocGF0dGVybk5hbWUgPT09IFRZUEVfUEFUVEVSTl9OQU1FKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGAke3N1YlBhdHRlcm59KD8hXFxcXHcpYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1YlBhdHRlcm47IC8vL1xuXG4gICAgICAgIHBhdHRlcm5zLnB1c2gocGF0dGVybik7XG4gICAgICB9KTtcbiAgICB9XG4gIH0pO1xuXG4gIGNvbnN0IHBhdHRlcm5zU3RyaW5nID0gcGF0dGVybnMuam9pbihWRVJUSUNBTF9CQVIpLFxuICAgICAgICBlbnRyeU5hbWUgPSBwYXR0ZXJuTmFtZSwgIC8vL1xuICAgICAgICBlbnRyeVZhbHVlID0gYF4oPzoke3BhdHRlcm5zU3RyaW5nfSlgLFxuICAgICAgICBlbnRyeSA9IHtcbiAgICAgICAgICBbZW50cnlOYW1lXTogZW50cnlWYWx1ZVxuICAgICAgICB9O1xuXG4gIHJldHVybiBlbnRyeTtcbn1cblxuZnVuY3Rpb24gY29tYmluZVJ1bGVzKHJ1bGVzKSB7XG4gIGxldCBvdXRlckluZGV4ID0gMCxcbiAgICAgIGxlbmd0aCA9IHJ1bGVzLmxlbmd0aDtcblxuICB3aGlsZSAob3V0ZXJJbmRleCA8IGxlbmd0aCkge1xuICAgIGNvbnN0IG91dGVyUnVsZSA9IHJ1bGVzW291dGVySW5kZXhdLFxuICAgICAgICAgIG91dGVyUnVsZU5hbWUgPSBvdXRlclJ1bGUuZ2V0TmFtZSgpO1xuXG4gICAgbGV0IGlubmVySW5kZXggPSBvdXRlckluZGV4ICsgMTtcblxuICAgIHdoaWxlIChpbm5lckluZGV4IDwgbGVuZ3RoKSB7XG4gICAgICBjb25zdCBpbm5lclJ1bGUgPSBydWxlc1tpbm5lckluZGV4XSxcbiAgICAgICAgICAgIGlubmVyUnVsZU5hbWUgPSBpbm5lclJ1bGUuZ2V0TmFtZSgpO1xuXG4gICAgICBpZiAoaW5uZXJSdWxlTmFtZSA9PT0gb3V0ZXJSdWxlTmFtZSkge1xuICAgICAgICBjb25zdCBpbm5lclJ1bGVEZWZpbml0aW9ucyA9IGlubmVyUnVsZS5nZXREZWZpbml0aW9ucygpLFxuICAgICAgICAgICAgICBvdXRlclJ1bGVEZWZpbml0aW9ucyA9IG91dGVyUnVsZS5nZXREZWZpbml0aW9ucygpO1xuXG4gICAgICAgIHVuc2hpZnQob3V0ZXJSdWxlRGVmaW5pdGlvbnMsIGlubmVyUnVsZURlZmluaXRpb25zKTtcblxuICAgICAgICBjb25zdCBzdGFydCA9IGlubmVySW5kZXgsIC8vL1xuICAgICAgICAgICAgICBkZWxldGVDb3VudCA9IDE7XG5cbiAgICAgICAgcnVsZXMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCk7XG5cbiAgICAgICAgbGVuZ3RoID0gcnVsZXMubGVuZ3RoO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaW5uZXJJbmRleCsrO1xuICAgICAgfVxuICAgIH1cblxuICAgIG91dGVySW5kZXgrKztcblxuICAgIGxlbmd0aCA9IHJ1bGVzLmxlbmd0aDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsInJ1bGVzRnJvbUJORiIsInBhcnNlclV0aWxpdGllcyIsInVuc2hpZnQiLCJhcnJheVV0aWxpdGllcyIsImJhY2t3YXJkc0ZvckVhY2giLCJydWxlcyIsImVudHJpZXMiLCJnZXRSdWxlcyIsImdldEVudHJpZXMiLCJwb3N0UHJvY2VzcyIsImVsaW1pbmF0ZUxlZnRSZWN1cnNpb24iLCJmcm9tTm90aGluZyIsImluY2x1ZGVEZWZhdWx0IiwiY3VzdG9tR3JhbW1hcnMiLCJkZWZhdWx0Q3VzdG9tR3JhbW1hciIsInJ1bGVzRnJvbUN1c3RvbUdyYW1tYXJzQW5kRGVmYXVsdEJORiIsImVudHJpZXNGcm9tQ3VzdG9tR3JhbW1hcnMiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJmcm9tQ3VzdG9tR3JhbW1hcnMiLCJibmZzIiwibWFwIiwiY3VzdG9tR3JhbW1hciIsImJuZiIsImdldEJORiIsImpvaW4iLCJFTVBUWV9TVFJJTkciLCJjb21iaW5lUnVsZXMiLCJwYXR0ZXJuTmFtZXMiLCJUWVBFX1BBVFRFUk5fTkFNRSIsIlNZTUJPTF9QQVRURVJOX05BTUUiLCJwYXR0ZXJuTmFtZSIsImVudHJ5IiwiZW50cnlGcm9tQ3VzdG9tR3JhbW1hcnMiLCJwYXR0ZXJucyIsInBhdHRlcm4iLCJnZXRQYXR0ZXJuIiwic3ViUGF0dGVybnMiLCJzcGxpdCIsIlZFUlRJQ0FMX0JBUiIsImZvckVhY2giLCJzdWJQYXR0ZXJuIiwicHVzaCIsInBhdHRlcm5zU3RyaW5nIiwiZW50cnlOYW1lIiwiZW50cnlWYWx1ZSIsIm91dGVySW5kZXgiLCJsZW5ndGgiLCJvdXRlclJ1bGUiLCJvdXRlclJ1bGVOYW1lIiwiZ2V0TmFtZSIsImlubmVySW5kZXgiLCJpbm5lclJ1bGUiLCJpbm5lclJ1bGVOYW1lIiwiaW5uZXJSdWxlRGVmaW5pdGlvbnMiLCJnZXREZWZpbml0aW9ucyIsIm91dGVyUnVsZURlZmluaXRpb25zIiwic3RhcnQiLCJkZWxldGVDb3VudCIsInNwbGljZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFjcUJBOzs7eUJBWlU7NEJBQ0M7cUNBQ087OERBRU47eUJBRVU7NEJBQ1k7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV2RCxJQUFNLEFBQUVDLGVBQWlCQyw2QkFBZSxDQUFoQ0QsY0FDQUUsVUFBOEJDLHlCQUFjLENBQTVDRCxTQUFTRSxtQkFBcUJELHlCQUFj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
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdXN0b21HcmFtbWFyL2NvbWJpbmVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcbmltcG9ydCB7IHBhcnNlclV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1wYXJzZXJzXCI7XG5pbXBvcnQgeyBlbGltaW5hdGVMZWZ0UmVjdXJzaW9uIH0gZnJvbSBcIm9jY2FtLWdyYW1tYXItdXRpbGl0aWVzXCI7XG5cbmltcG9ydCBkZWZhdWx0Q3VzdG9tR3JhbW1hciBmcm9tIFwiLi4vY3VzdG9tR3JhbW1hci9kZWZhdWx0XCI7XG5cbmltcG9ydCB7IEVNUFRZX1NUUklORywgVkVSVElDQUxfQkFSIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgdmFsaWRhdGVWb2NhYnVsYXJ5LCBleHByZXNzaW9uc0Zyb21Wb2NhYnVsYXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy92b2NhYnVsYXJ5XCI7XG5pbXBvcnQgeyBUWVBFX1ZPQ0FCVUxBUllfTkFNRSwgU1lNQk9MX1ZPQ0FCVUxBUllfTkFNRSB9IGZyb20gXCIuLi92b2NhYnVsYXJ5TmFtZXNcIjtcblxuY29uc3QgeyBydWxlc0Zyb21CTkYgfSA9IHBhcnNlclV0aWxpdGllcyxcbiAgICAgIHsgdW5zaGlmdCwgYmFja3dhcmRzRm9yRWFjaCB9ID0gYXJyYXlVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvbWJpbmVkQ3VzdG9tR3JhbW1hciB7XG4gIGNvbnN0cnVjdG9yKHJ1bGVzLCBlbnRyaWVzKSB7XG4gICAgdGhpcy5ydWxlcyA9IHJ1bGVzO1xuICAgIHRoaXMuZW50cmllcyA9IGVudHJpZXM7XG4gIH1cbiAgXG4gIGdldFJ1bGVzKCkge1xuICAgIHJldHVybiB0aGlzLnJ1bGVzO1xuICB9XG5cbiAgZ2V0RW50cmllcygpIHtcbiAgICByZXR1cm4gdGhpcy5lbnRyaWVzO1xuICB9XG5cbiAgcG9zdFByb2Nlc3MocnVsZXMpIHtcbiAgICBydWxlcyA9IFsgLy8vXG4gICAgICAuLi5ydWxlcyxcbiAgICAgIC4uLnRoaXMucnVsZXNcbiAgICBdO1xuXG4gICAgcnVsZXMgPSBlbGltaW5hdGVMZWZ0UmVjdXJzaW9uKHJ1bGVzKTsgIC8vL1xuXG4gICAgcmV0dXJuIHJ1bGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKGluY2x1ZGVEZWZhdWx0ID0gdHJ1ZSkge1xuICAgIGxldCBjdXN0b21HcmFtbWFycyA9IFtdO1xuXG4gICAgaWYgKGluY2x1ZGVEZWZhdWx0KSB7XG4gICAgICBjdXN0b21HcmFtbWFycyA9IFsgZGVmYXVsdEN1c3RvbUdyYW1tYXIsIC4uLmN1c3RvbUdyYW1tYXJzIF07IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IHJ1bGVzID0gcnVsZXNGcm9tQ3VzdG9tR3JhbW1hcnNBbmREZWZhdWx0Qk5GKGN1c3RvbUdyYW1tYXJzKSxcbiAgICAgICAgICBlbnRyaWVzID0gZW50cmllc0Zyb21DdXN0b21HcmFtbWFycyhjdXN0b21HcmFtbWFycyksXG4gICAgICAgICAgY29tYmluZWRDdXN0b21HcmFtbWFyID0gbmV3IENvbWJpbmVkQ3VzdG9tR3JhbW1hcihydWxlcywgZW50cmllcyk7XG5cbiAgICByZXR1cm4gY29tYmluZWRDdXN0b21HcmFtbWFyO1xuICB9XG5cbiAgc3RhdGljIGZyb21DdXN0b21HcmFtbWFycyhjdXN0b21HcmFtbWFycywgaW5jbHVkZURlZmF1bHQgPSB0cnVlKSB7XG4gICAgaWYgKGluY2x1ZGVEZWZhdWx0KSB7XG4gICAgICBjdXN0b21HcmFtbWFycyA9IFsgZGVmYXVsdEN1c3RvbUdyYW1tYXIsIC4uLmN1c3RvbUdyYW1tYXJzIF07IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IHJ1bGVzID0gcnVsZXNGcm9tQ3VzdG9tR3JhbW1hcnNBbmREZWZhdWx0Qk5GKGN1c3RvbUdyYW1tYXJzKSxcbiAgICAgICAgICBlbnRyaWVzID0gZW50cmllc0Zyb21DdXN0b21HcmFtbWFycyhjdXN0b21HcmFtbWFycyksXG4gICAgICAgICAgY29tYmluZWRDdXN0b21HcmFtbWFyID0gbmV3IENvbWJpbmVkQ3VzdG9tR3JhbW1hcihydWxlcywgZW50cmllcyk7XG4gICAgXG4gICAgcmV0dXJuIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcjtcbiAgfVxufVxuXG5mdW5jdGlvbiBydWxlc0Zyb21DdXN0b21HcmFtbWFyc0FuZERlZmF1bHRCTkYoY3VzdG9tR3JhbW1hcnMpIHtcbiAgY29uc3QgYm5mcyA9IGN1c3RvbUdyYW1tYXJzLm1hcCgoY3VzdG9tR3JhbW1hcikgPT4ge1xuICAgICAgICAgIGNvbnN0IGJuZiA9IGN1c3RvbUdyYW1tYXIuZ2V0Qk5GKCk7XG5cbiAgICAgICAgICByZXR1cm4gYm5mO1xuICAgICAgICB9KSxcbiAgICAgICAgYm5mID0gYm5mcy5qb2luKEVNUFRZX1NUUklORyksXG4gICAgICAgIHJ1bGVzID0gcnVsZXNGcm9tQk5GKGJuZik7XG5cbiAgY29tYmluZVJ1bGVzKHJ1bGVzKVxuXG4gIHJldHVybiBydWxlcztcbn1cblxuZnVuY3Rpb24gZW50cmllc0Zyb21DdXN0b21HcmFtbWFycyhjdXN0b21HcmFtbWFycykge1xuICBjb25zdCB2b2NhYnVsYXJ5TmFtZXMgPSBbXG4gICAgICAgICAgVFlQRV9WT0NBQlVMQVJZX05BTUUsXG4gICAgICAgICAgU1lNQk9MX1ZPQ0FCVUxBUllfTkFNRVxuICAgICAgICBdLFxuICAgICAgICBlbnRyaWVzID0gdm9jYWJ1bGFyeU5hbWVzLm1hcCgodm9jYWJ1bGFyeU5hbWUpID0+IHtcbiAgICAgICAgICBjb25zdCBlbnRyeSA9IGVudHJ5RnJvbUN1c3RvbUdyYW1tYXJzKGN1c3RvbUdyYW1tYXJzLCB2b2NhYnVsYXJ5TmFtZSk7XG5cbiAgICAgICAgICByZXR1cm4gZW50cnk7XG4gICAgICAgIH0pO1xuXG4gIHJldHVybiBlbnRyaWVzO1xufVxuXG5mdW5jdGlvbiBlbnRyeUZyb21DdXN0b21HcmFtbWFycyhjdXN0b21HcmFtbWFycywgdm9jYWJ1bGFyeU5hbWUpIHtcbiAgY29uc3QgZXhwcmVzc2lvbnMgPSBbXTtcblxuICBiYWNrd2FyZHNGb3JFYWNoKGN1c3RvbUdyYW1tYXJzLCAoY3VzdG9tR3JhbW1hcikgPT4ge1xuICAgIGNvbnN0IHZvY2FidWxhcnkgPSBjdXN0b21HcmFtbWFyLmdldFZvY2FidWxhcnkodm9jYWJ1bGFyeU5hbWUpLFxuICAgICAgICAgIGN1c3RvbUdyYW1tYXJEZWZhdWx0Q3VzdG9tR3JhbW1hciA9IGN1c3RvbUdyYW1tYXIuaXNEZWZhdWx0Q3VzdG9tR3JhbW1hcigpO1xuXG4gICAgaWYgKCFjdXN0b21HcmFtbWFyRGVmYXVsdEN1c3RvbUdyYW1tYXIpIHtcbiAgICAgIHZhbGlkYXRlVm9jYWJ1bGFyeSh2b2NhYnVsYXJ5KTtcbiAgICB9XG5cbiAgICBleHByZXNzaW9uc0Zyb21Wb2NhYnVsYXJ5KHZvY2FidWxhcnksIGV4cHJlc3Npb25zKTtcbiAgfSk7XG5cbiAgY29uc3QgcGF0dGVybiA9IGV4cHJlc3Npb25zLmpvaW4oVkVSVElDQUxfQkFSKSxcbiAgICAgICAgZW50cnlOYW1lID0gdm9jYWJ1bGFyeU5hbWUsICAvLy9cbiAgICAgICAgZW50cnlWYWx1ZSA9IGBeKD86JHtwYXR0ZXJufSlgLFxuICAgICAgICBlbnRyeSA9IHtcbiAgICAgICAgICBbZW50cnlOYW1lXTogZW50cnlWYWx1ZVxuICAgICAgICB9O1xuXG4gIHJldHVybiBlbnRyeTtcbn1cblxuZnVuY3Rpb24gY29tYmluZVJ1bGVzKHJ1bGVzKSB7XG4gIGxldCBvdXRlckluZGV4ID0gMCxcbiAgICAgIGxlbmd0aCA9IHJ1bGVzLmxlbmd0aDtcblxuICB3aGlsZSAob3V0ZXJJbmRleCA8IGxlbmd0aCkge1xuICAgIGNvbnN0IG91dGVyUnVsZSA9IHJ1bGVzW291dGVySW5kZXhdLFxuICAgICAgICAgIG91dGVyUnVsZU5hbWUgPSBvdXRlclJ1bGUuZ2V0TmFtZSgpO1xuXG4gICAgbGV0IGlubmVySW5kZXggPSBvdXRlckluZGV4ICsgMTtcblxuICAgIHdoaWxlIChpbm5lckluZGV4IDwgbGVuZ3RoKSB7XG4gICAgICBjb25zdCBpbm5lclJ1bGUgPSBydWxlc1tpbm5lckluZGV4XSxcbiAgICAgICAgICAgIGlubmVyUnVsZU5hbWUgPSBpbm5lclJ1bGUuZ2V0TmFtZSgpO1xuXG4gICAgICBpZiAoaW5uZXJSdWxlTmFtZSA9PT0gb3V0ZXJSdWxlTmFtZSkge1xuICAgICAgICBjb25zdCBpbm5lclJ1bGVEZWZpbml0aW9ucyA9IGlubmVyUnVsZS5nZXREZWZpbml0aW9ucygpLFxuICAgICAgICAgICAgICBvdXRlclJ1bGVEZWZpbml0aW9ucyA9IG91dGVyUnVsZS5nZXREZWZpbml0aW9ucygpO1xuXG4gICAgICAgIHVuc2hpZnQob3V0ZXJSdWxlRGVmaW5pdGlvbnMsIGlubmVyUnVsZURlZmluaXRpb25zKTtcblxuICAgICAgICBjb25zdCBzdGFydCA9IGlubmVySW5kZXgsIC8vL1xuICAgICAgICAgICAgICBkZWxldGVDb3VudCA9IDE7XG5cbiAgICAgICAgcnVsZXMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCk7XG5cbiAgICAgICAgbGVuZ3RoID0gcnVsZXMubGVuZ3RoO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaW5uZXJJbmRleCsrO1xuICAgICAgfVxuICAgIH1cblxuICAgIG91dGVySW5kZXgrKztcblxuICAgIGxlbmd0aCA9IHJ1bGVzLmxlbmd0aDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsInJ1bGVzRnJvbUJORiIsInBhcnNlclV0aWxpdGllcyIsInVuc2hpZnQiLCJhcnJheVV0aWxpdGllcyIsImJhY2t3YXJkc0ZvckVhY2giLCJydWxlcyIsImVudHJpZXMiLCJnZXRSdWxlcyIsImdldEVudHJpZXMiLCJwb3N0UHJvY2VzcyIsImVsaW1pbmF0ZUxlZnRSZWN1cnNpb24iLCJmcm9tTm90aGluZyIsImluY2x1ZGVEZWZhdWx0IiwiY3VzdG9tR3JhbW1hcnMiLCJkZWZhdWx0Q3VzdG9tR3JhbW1hciIsInJ1bGVzRnJvbUN1c3RvbUdyYW1tYXJzQW5kRGVmYXVsdEJORiIsImVudHJpZXNGcm9tQ3VzdG9tR3JhbW1hcnMiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJmcm9tQ3VzdG9tR3JhbW1hcnMiLCJibmZzIiwibWFwIiwiY3VzdG9tR3JhbW1hciIsImJuZiIsImdldEJORiIsImpvaW4iLCJFTVBUWV9TVFJJTkciLCJjb21iaW5lUnVsZXMiLCJ2b2NhYnVsYXJ5TmFtZXMiLCJUWVBFX1ZPQ0FCVUxBUllfTkFNRSIsIlNZTUJPTF9WT0NBQlVMQVJZX05BTUUiLCJ2b2NhYnVsYXJ5TmFtZSIsImVudHJ5IiwiZW50cnlGcm9tQ3VzdG9tR3JhbW1hcnMiLCJleHByZXNzaW9ucyIsInZvY2FidWxhcnkiLCJnZXRWb2NhYnVsYXJ5IiwiY3VzdG9tR3JhbW1hckRlZmF1bHRDdXN0b21HcmFtbWFyIiwiaXNEZWZhdWx0Q3VzdG9tR3JhbW1hciIsInZhbGlkYXRlVm9jYWJ1bGFyeSIsImV4cHJlc3Npb25zRnJvbVZvY2FidWxhcnkiLCJwYXR0ZXJuIiwiVkVSVElDQUxfQkFSIiwiZW50cnlOYW1lIiwiZW50cnlWYWx1ZSIsIm91dGVySW5kZXgiLCJsZW5ndGgiLCJvdXRlclJ1bGUiLCJvdXRlclJ1bGVOYW1lIiwiZ2V0TmFtZSIsImlubmVySW5kZXgiLCJpbm5lclJ1bGUiLCJpbm5lclJ1bGVOYW1lIiwiaW5uZXJSdWxlRGVmaW5pdGlvbnMiLCJnZXREZWZpbml0aW9ucyIsIm91dGVyUnVsZURlZmluaXRpb25zIiwic3RhcnQiLCJkZWxldGVDb3VudCIsInNwbGljZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFlcUJBOzs7eUJBYlU7NEJBQ0M7cUNBQ087OERBRU47eUJBRVU7MEJBQ21COytCQUNEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFN0QsSUFBTSxBQUFFQyxl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
@@ -15,14 +15,14 @@ _export(exports, {
15
15
  get statementBNF () {
16
16
  return statementBNF;
17
17
  },
18
- get symbolPattern () {
19
- return symbolPattern;
18
+ get symbolVocabulary () {
19
+ return symbolVocabulary;
20
20
  },
21
21
  get termBNF () {
22
22
  return termBNF;
23
23
  },
24
- get typePattern () {
25
- return typePattern;
24
+ get typeVocabulary () {
25
+ return typeVocabulary;
26
26
  }
27
27
  });
28
28
  var _customGrammar = /*#__PURE__*/ _interop_require_default(require("../customGrammar"));
@@ -34,16 +34,16 @@ function _interop_require_default(obj) {
34
34
  }
35
35
  var termBNF = 'term. ::= "(" argument ")"\n\n | variable \n \n ;';
36
36
  var statementBNF = 'statement. ::= "(" metaArgument ")" \n \n | equality\n\n | judgement\n\n | typeAssertion \n \n | definedAssertion \n\n | containedAssertion \n \n | satisfiesAssertion\n\n | subproofAssertion \n\n | propertyAssertion \n\n | metavariable ( frameSubstitution | termSubstitution )?\n\n ;\n\nequality ::= term "=" term ;\n\njudgement ::= frame "|-" declaration ;\n\ntypeAssertion ::= term ":" type ;\n\ndefinedAssertion ::= ( frame | term ) "is" ( "defined" | "undefined" );\n\ncontainedAssertion ::= ( frame | term ) "is" ( "present" | "missing" ) "in" statement ;\n\nsatisfiesAssertion ::= signature "satisfies" metavariable ; \n\nsubproofAssertion ::= "[" statement ( "," statement )* "]" "..." statement ;\n\npropertyAssertion ::= term "is" ( "a" | "an" ) propertyRelation ;\n\npropertyRelation ::= property "of" term ;\n\nframe ::= "[" ( ( declaration | metavariable ) ( "," ( declaration | metavariable ) )* )? "]" ;\n \ndeclaration ::= metavariable "::" statement ;\n\ntermSubstitution ::= "[" term "for" term "]";\n\nframeSubstitution ::= "[" frame "for" frame "]";\n\nstatementSubstitution ::= "[" statement "for" statement "]";\n\nreferenceSubstitution ::= "[" reference "for" reference "]";';
37
- var typePattern = "_";
38
- var symbolPattern = "";
37
+ var typeVocabulary = "_\n";
38
+ var symbolVocabulary = "";
39
39
  var name = _grammarNames.DEFAULT_CUSTOM_GRAMMAR_NAME, json = {
40
40
  name: name,
41
41
  termBNF: termBNF,
42
42
  statementBNF: statementBNF,
43
- typePattern: typePattern,
44
- symbolPattern: symbolPattern
43
+ typeVocabulary: typeVocabulary,
44
+ symbolVocabulary: symbolVocabulary
45
45
  };
46
46
  var defaultCustomGrammar = _customGrammar.default.fromJSON(json);
47
47
  var _default = defaultCustomGrammar;
48
48
 
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdXN0b21HcmFtbWFyL2RlZmF1bHQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBDdXN0b21HcmFtbWFyIGZyb20gXCIuLi9jdXN0b21HcmFtbWFyXCI7XG5cbmltcG9ydCB7IERFRkFVTFRfQ1VTVE9NX0dSQU1NQVJfTkFNRSB9IGZyb20gXCIuLi9ncmFtbWFyTmFtZXNcIjtcblxuZXhwb3J0IGNvbnN0IHRlcm1CTkYgPSBgdGVybS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6PSAgXCIoXCIgYXJndW1lbnQgXCIpXCJcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdmFyaWFibGUgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtgO1xuXG5leHBvcnQgY29uc3Qgc3RhdGVtZW50Qk5GID0gYHN0YXRlbWVudC4gICAgICAgICAgICAgICAgICAgICAgICAgICA6Oj0gIFwiKFwiIG1ldGFBcmd1bWVudCBcIilcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBlcXVhbGl0eVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBqdWRnZW1lbnRcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdHlwZUFzc2VydGlvbiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBkZWZpbmVkQXNzZXJ0aW9uICBcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgY29udGFpbmVkQXNzZXJ0aW9uICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgc2F0aXNmaWVzQXNzZXJ0aW9uXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHN1YnByb29mQXNzZXJ0aW9uICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHByb3BlcnR5QXNzZXJ0aW9uICBcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbWV0YXZhcmlhYmxlICggZnJhbWVTdWJzdGl0dXRpb24gfCB0ZXJtU3Vic3RpdHV0aW9uICk/XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuZXF1YWxpdHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6PSAgdGVybSBcIj1cIiB0ZXJtIDtcblxuanVkZ2VtZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6PSAgZnJhbWUgXCJ8LVwiIGRlY2xhcmF0aW9uIDtcblxudHlwZUFzc2VydGlvbiAgICAgICAgICAgICAgICAgICAgICAgIDo6PSAgdGVybSBcIjpcIiB0eXBlIDtcblxuZGVmaW5lZEFzc2VydGlvbiAgICAgICAgICAgICAgICAgICAgIDo6PSAgKCBmcmFtZSB8IHRlcm0gKSBcImlzXCIgKCBcImRlZmluZWRcIiB8IFwidW5kZWZpbmVkXCIgKTtcblxuY29udGFpbmVkQXNzZXJ0aW9uICAgICAgICAgICAgICAgICAgIDo6PSAgKCBmcmFtZSB8IHRlcm0gKSBcImlzXCIgKCBcInByZXNlbnRcIiB8IFwibWlzc2luZ1wiICkgXCJpblwiIHN0YXRlbWVudCA7XG5cbnNhdGlzZmllc0Fzc2VydGlvbiAgICAgICAgICAgICAgICAgICA6Oj0gIHNpZ25hdHVyZSBcInNhdGlzZmllc1wiIG1ldGF2YXJpYWJsZSA7ICBcblxuc3VicHJvb2ZBc3NlcnRpb24gICAgICAgICAgICAgICAgICAgIDo6PSAgXCJbXCIgc3RhdGVtZW50ICggXCIsXCIgc3RhdGVtZW50ICkqIFwiXVwiIFwiLi4uXCIgc3RhdGVtZW50IDtcblxucHJvcGVydHlBc3NlcnRpb24gICAgICAgICAgICAgICAgICAgIDo6PSAgdGVybSBcImlzXCIgKCBcImFcIiB8IFwiYW5cIiApIHByb3BlcnR5UmVsYXRpb24gO1xuXG5wcm9wZXJ0eVJlbGF0aW9uICAgICAgICAgICAgICAgICAgICAgOjo9ICBwcm9wZXJ0eSBcIm9mXCIgdGVybSA7XG5cbmZyYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Oj0gIFwiW1wiICggKCBkZWNsYXJhdGlvbiB8IG1ldGF2YXJpYWJsZSApICggXCIsXCIgKCBkZWNsYXJhdGlvbiB8IG1ldGF2YXJpYWJsZSApICkqICk/IFwiXVwiIDtcbiBcbmRlY2xhcmF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICA6Oj0gIG1ldGF2YXJpYWJsZSBcIjo6XCIgc3RhdGVtZW50IDtcblxudGVybVN1YnN0aXR1dGlvbiAgICAgICAgICAgICAgICAgICAgIDo6PSAgXCJbXCIgdGVybSBcImZvclwiIHRlcm0gXCJdXCI7XG5cbmZyYW1lU3Vic3RpdHV0aW9uICAgICAgICAgICAgICAgICAgICA6Oj0gIFwiW1wiIGZyYW1lIFwiZm9yXCIgZnJhbWUgXCJdXCI7XG5cbnN0YXRlbWVudFN1YnN0aXR1dGlvbiAgICAgICAgICAgICAgICA6Oj0gIFwiW1wiIHN0YXRlbWVudCBcImZvclwiIHN0YXRlbWVudCBcIl1cIjtcblxucmVmZXJlbmNlU3Vic3RpdHV0aW9uICAgICAgICAgICAgICAgIDo6PSAgXCJbXCIgcmVmZXJlbmNlIFwiZm9yXCIgcmVmZXJlbmNlIFwiXVwiO2A7XG5cbmV4cG9ydCBjb25zdCB0eXBlUGF0dGVybiA9IFwiX1wiO1xuXG5leHBvcnQgY29uc3Qgc3ltYm9sUGF0dGVybiA9IFwiXCI7XG5cbmNvbnN0IG5hbWUgPSBERUZBVUxUX0NVU1RPTV9HUkFNTUFSX05BTUUsXG4gICAgICBqc29uID0ge1xuICAgICAgICBuYW1lLFxuICAgICAgICB0ZXJtQk5GLFxuICAgICAgICBzdGF0ZW1lbnRCTkYsXG4gICAgICAgIHR5cGVQYXR0ZXJuLFxuICAgICAgICBzeW1ib2xQYXR0ZXJuXG4gICAgICB9O1xuXG5jb25zdCBkZWZhdWx0Q3VzdG9tR3JhbW1hciA9IEN1c3RvbUdyYW1tYXIuZnJvbUpTT04oanNvbik7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmF1bHRDdXN0b21HcmFtbWFyO1xuIl0sIm5hbWVzIjpbInN0YXRlbWVudEJORiIsInN5bWJvbFBhdHRlcm4iLCJ0ZXJtQk5GIiwidHlwZVBhdHRlcm4iLCJuYW1lIiwiREVGQVVMVF9DVVNUT01fR1JBTU1BUl9OQU1FIiwianNvbiIsImRlZmF1bHRDdXN0b21HcmFtbWFyIiwiQ3VzdG9tR3JhbW1hciIsImZyb21KU09OIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUErRUE7ZUFBQTs7UUFuRWFBO2VBQUFBOztRQXNEQUM7ZUFBQUE7O1FBNURBQztlQUFBQTs7UUEwREFDO2VBQUFBOzs7b0VBOURhOzRCQUVrQjs7Ozs7O0FBRXJDLElBQU1ELFVBQVc7QUFNakIsSUFBTUYsZUFBZ0I7QUFvRHRCLElBQU1HLGNBQWM7QUFFcEIsSUFBTUYsZ0JBQWdCO0FBRTdCLElBQU1HLE9BQU9DLHlDQUEyQixFQUNsQ0MsT0FBTztJQUNMRixNQUFBQTtJQUNBRixTQUFBQTtJQUNBRixjQUFBQTtJQUNBRyxhQUFBQTtJQUNBRixlQUFBQTtBQUNGO0FBRU4sSUFBTU0sdUJBQXVCQyxzQkFBYSxDQUFDQyxRQUFRLENBQUNIO0lBRXBELFdBQWVDIn0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdXN0b21HcmFtbWFyL2RlZmF1bHQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBDdXN0b21HcmFtbWFyIGZyb20gXCIuLi9jdXN0b21HcmFtbWFyXCI7XG5cbmltcG9ydCB7IERFRkFVTFRfQ1VTVE9NX0dSQU1NQVJfTkFNRSB9IGZyb20gXCIuLi9ncmFtbWFyTmFtZXNcIjtcblxuZXhwb3J0IGNvbnN0IHRlcm1CTkYgPSBgdGVybS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6PSAgXCIoXCIgYXJndW1lbnQgXCIpXCJcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdmFyaWFibGUgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtgO1xuXG5leHBvcnQgY29uc3Qgc3RhdGVtZW50Qk5GID0gYHN0YXRlbWVudC4gICAgICAgICAgICAgICAgICAgICAgICAgICA6Oj0gIFwiKFwiIG1ldGFBcmd1bWVudCBcIilcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBlcXVhbGl0eVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBqdWRnZW1lbnRcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdHlwZUFzc2VydGlvbiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBkZWZpbmVkQXNzZXJ0aW9uICBcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgY29udGFpbmVkQXNzZXJ0aW9uICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgc2F0aXNmaWVzQXNzZXJ0aW9uXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHN1YnByb29mQXNzZXJ0aW9uICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHByb3BlcnR5QXNzZXJ0aW9uICBcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbWV0YXZhcmlhYmxlICggZnJhbWVTdWJzdGl0dXRpb24gfCB0ZXJtU3Vic3RpdHV0aW9uICk/XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuZXF1YWxpdHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6PSAgdGVybSBcIj1cIiB0ZXJtIDtcblxuanVkZ2VtZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6PSAgZnJhbWUgXCJ8LVwiIGRlY2xhcmF0aW9uIDtcblxudHlwZUFzc2VydGlvbiAgICAgICAgICAgICAgICAgICAgICAgIDo6PSAgdGVybSBcIjpcIiB0eXBlIDtcblxuZGVmaW5lZEFzc2VydGlvbiAgICAgICAgICAgICAgICAgICAgIDo6PSAgKCBmcmFtZSB8IHRlcm0gKSBcImlzXCIgKCBcImRlZmluZWRcIiB8IFwidW5kZWZpbmVkXCIgKTtcblxuY29udGFpbmVkQXNzZXJ0aW9uICAgICAgICAgICAgICAgICAgIDo6PSAgKCBmcmFtZSB8IHRlcm0gKSBcImlzXCIgKCBcInByZXNlbnRcIiB8IFwibWlzc2luZ1wiICkgXCJpblwiIHN0YXRlbWVudCA7XG5cbnNhdGlzZmllc0Fzc2VydGlvbiAgICAgICAgICAgICAgICAgICA6Oj0gIHNpZ25hdHVyZSBcInNhdGlzZmllc1wiIG1ldGF2YXJpYWJsZSA7ICBcblxuc3VicHJvb2ZBc3NlcnRpb24gICAgICAgICAgICAgICAgICAgIDo6PSAgXCJbXCIgc3RhdGVtZW50ICggXCIsXCIgc3RhdGVtZW50ICkqIFwiXVwiIFwiLi4uXCIgc3RhdGVtZW50IDtcblxucHJvcGVydHlBc3NlcnRpb24gICAgICAgICAgICAgICAgICAgIDo6PSAgdGVybSBcImlzXCIgKCBcImFcIiB8IFwiYW5cIiApIHByb3BlcnR5UmVsYXRpb24gO1xuXG5wcm9wZXJ0eVJlbGF0aW9uICAgICAgICAgICAgICAgICAgICAgOjo9ICBwcm9wZXJ0eSBcIm9mXCIgdGVybSA7XG5cbmZyYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Oj0gIFwiW1wiICggKCBkZWNsYXJhdGlvbiB8IG1ldGF2YXJpYWJsZSApICggXCIsXCIgKCBkZWNsYXJhdGlvbiB8IG1ldGF2YXJpYWJsZSApICkqICk/IFwiXVwiIDtcbiBcbmRlY2xhcmF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICA6Oj0gIG1ldGF2YXJpYWJsZSBcIjo6XCIgc3RhdGVtZW50IDtcblxudGVybVN1YnN0aXR1dGlvbiAgICAgICAgICAgICAgICAgICAgIDo6PSAgXCJbXCIgdGVybSBcImZvclwiIHRlcm0gXCJdXCI7XG5cbmZyYW1lU3Vic3RpdHV0aW9uICAgICAgICAgICAgICAgICAgICA6Oj0gIFwiW1wiIGZyYW1lIFwiZm9yXCIgZnJhbWUgXCJdXCI7XG5cbnN0YXRlbWVudFN1YnN0aXR1dGlvbiAgICAgICAgICAgICAgICA6Oj0gIFwiW1wiIHN0YXRlbWVudCBcImZvclwiIHN0YXRlbWVudCBcIl1cIjtcblxucmVmZXJlbmNlU3Vic3RpdHV0aW9uICAgICAgICAgICAgICAgIDo6PSAgXCJbXCIgcmVmZXJlbmNlIFwiZm9yXCIgcmVmZXJlbmNlIFwiXVwiO2A7XG5cbmV4cG9ydCBjb25zdCB0eXBlVm9jYWJ1bGFyeSA9IGBfXG5gO1xuXG5leHBvcnQgY29uc3Qgc3ltYm9sVm9jYWJ1bGFyeSA9IFwiXCI7XG5cbmNvbnN0IG5hbWUgPSBERUZBVUxUX0NVU1RPTV9HUkFNTUFSX05BTUUsXG4gICAgICBqc29uID0ge1xuICAgICAgICBuYW1lLFxuICAgICAgICB0ZXJtQk5GLFxuICAgICAgICBzdGF0ZW1lbnRCTkYsXG4gICAgICAgIHR5cGVWb2NhYnVsYXJ5LFxuICAgICAgICBzeW1ib2xWb2NhYnVsYXJ5XG4gICAgICB9O1xuXG5jb25zdCBkZWZhdWx0Q3VzdG9tR3JhbW1hciA9IEN1c3RvbUdyYW1tYXIuZnJvbUpTT04oanNvbik7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmF1bHRDdXN0b21HcmFtbWFyO1xuIl0sIm5hbWVzIjpbInN0YXRlbWVudEJORiIsInN5bWJvbFZvY2FidWxhcnkiLCJ0ZXJtQk5GIiwidHlwZVZvY2FidWxhcnkiLCJuYW1lIiwiREVGQVVMVF9DVVNUT01fR1JBTU1BUl9OQU1FIiwianNvbiIsImRlZmF1bHRDdXN0b21HcmFtbWFyIiwiQ3VzdG9tR3JhbW1hciIsImZyb21KU09OIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFnRkE7ZUFBQTs7UUFwRWFBO2VBQUFBOztRQXVEQUM7ZUFBQUE7O1FBN0RBQztlQUFBQTs7UUEwREFDO2VBQUFBOzs7b0VBOURhOzRCQUVrQjs7Ozs7O0FBRXJDLElBQU1ELFVBQVc7QUFNakIsSUFBTUYsZUFBZ0I7QUFvRHRCLElBQU1HLGlCQUFrQjtBQUd4QixJQUFNRixtQkFBbUI7QUFFaEMsSUFBTUcsT0FBT0MseUNBQTJCLEVBQ2xDQyxPQUFPO0lBQ0xGLE1BQUFBO0lBQ0FGLFNBQUFBO0lBQ0FGLGNBQUFBO0lBQ0FHLGdCQUFBQTtJQUNBRixrQkFBQUE7QUFDRjtBQUVOLElBQU1NLHVCQUF1QkMsc0JBQWEsQ0FBQ0MsUUFBUSxDQUFDSDtJQUVwRCxXQUFlQyJ9
@@ -9,8 +9,9 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _constants = require("./constants");
12
+ var _grammarNames = require("./grammarNames");
12
13
  var _ruleNames = require("./ruleNames");
13
- var _patternNames = require("./patternNames");
14
+ var _vocabularyNames = require("./vocabularyNames");
14
15
  function _class_call_check(instance, Constructor) {
15
16
  if (!(instance instanceof Constructor)) {
16
17
  throw new TypeError("Cannot call a class as a function");
@@ -31,13 +32,13 @@ function _create_class(Constructor, protoProps, staticProps) {
31
32
  return Constructor;
32
33
  }
33
34
  var CustomGrammar = /*#__PURE__*/ function() {
34
- function CustomGrammar(name, termBNF, statementBNF, typePattern, symbolPattern) {
35
+ function CustomGrammar(name, termBNF, statementBNF, typeVocabulary, symbolVocabulary) {
35
36
  _class_call_check(this, CustomGrammar);
36
37
  this.name = name;
37
38
  this.termBNF = termBNF;
38
39
  this.statementBNF = statementBNF;
39
- this.typePattern = typePattern;
40
- this.symbolPattern = symbolPattern;
40
+ this.typeVocabulary = typeVocabulary;
41
+ this.symbolVocabulary = symbolVocabulary;
41
42
  }
42
43
  _create_class(CustomGrammar, [
43
44
  {
@@ -59,15 +60,15 @@ var CustomGrammar = /*#__PURE__*/ function() {
59
60
  }
60
61
  },
61
62
  {
62
- key: "getTypePattern",
63
- value: function getTypePattern() {
64
- return this.typePattern;
63
+ key: "getTypeVocabulary",
64
+ value: function getTypeVocabulary() {
65
+ return this.typeVocabulary;
65
66
  }
66
67
  },
67
68
  {
68
- key: "getSymbolPattern",
69
- value: function getSymbolPattern() {
70
- return this.symbolPattern;
69
+ key: "getSymbolVocabulary",
70
+ value: function getSymbolVocabulary() {
71
+ return this.symbolVocabulary;
71
72
  }
72
73
  },
73
74
  {
@@ -103,28 +104,35 @@ var CustomGrammar = /*#__PURE__*/ function() {
103
104
  }
104
105
  },
105
106
  {
106
- key: "getPattern",
107
- value: function getPattern(patternName) {
108
- var pattern;
109
- switch(patternName){
110
- case _patternNames.TYPE_PATTERN_NAME:
111
- pattern = this.typePattern;
107
+ key: "getVocabulary",
108
+ value: function getVocabulary(vocabularyName) {
109
+ var vocabulary;
110
+ switch(vocabularyName){
111
+ case _vocabularyNames.TYPE_VOCABULARY_NAME:
112
+ vocabulary = this.typeVocabulary;
112
113
  break;
113
- case _patternNames.SYMBOL_PATTERN_NAME:
114
- pattern = this.symbolPattern;
114
+ case _vocabularyNames.SYMBOL_VOCABULARY_NAME:
115
+ vocabulary = this.symbolVocabulary;
115
116
  break;
116
117
  }
117
- return pattern;
118
+ return vocabulary;
118
119
  }
119
120
  },
120
121
  {
121
- key: "getPatterns",
122
- value: function getPatterns() {
123
- var patterns = [
124
- this.typePattern,
125
- this.symbolPattern
122
+ key: "getVocabularies",
123
+ value: function getVocabularies() {
124
+ var vocabularies = [
125
+ this.typeVocabulary,
126
+ this.symbolVocabulary
126
127
  ];
127
- return patterns;
128
+ return vocabularies;
129
+ }
130
+ },
131
+ {
132
+ key: "isDefaultCustomGrammar",
133
+ value: function isDefaultCustomGrammar() {
134
+ var defaultCustomGrammar = this.name === _grammarNames.DEFAULT_CUSTOM_GRAMMAR_NAME;
135
+ return defaultCustomGrammar;
128
136
  }
129
137
  },
130
138
  {
@@ -147,14 +155,14 @@ var CustomGrammar = /*#__PURE__*/ function() {
147
155
  }
148
156
  },
149
157
  {
150
- key: "setPattern",
151
- value: function setPattern(patternName, pattern) {
152
- switch(patternName){
153
- case _patternNames.TYPE_PATTERN_NAME:
154
- this.typePattern = pattern;
158
+ key: "setVocabulary",
159
+ value: function setVocabulary(vocabularyName, vocabulary) {
160
+ switch(vocabularyName){
161
+ case _vocabularyNames.TYPE_VOCABULARY_NAME:
162
+ this.typeVocabulary = vocabulary;
155
163
  break;
156
- case _patternNames.SYMBOL_PATTERN_NAME:
157
- this.symbolPattern = pattern;
164
+ case _vocabularyNames.SYMBOL_VOCABULARY_NAME:
165
+ this.symbolVocabulary = vocabulary;
158
166
  break;
159
167
  }
160
168
  }
@@ -167,28 +175,28 @@ var CustomGrammar = /*#__PURE__*/ function() {
167
175
  }
168
176
  },
169
177
  {
170
- key: "resetPattern",
171
- value: function resetPattern(patternName) {
172
- var pattern = _constants.EMPTY_STRING;
173
- this.setPattern(patternName, pattern);
178
+ key: "resetVocabulary",
179
+ value: function resetVocabulary(vocabularyName) {
180
+ var vocabulary = _constants.EMPTY_STRING;
181
+ this.setVocabulary(vocabularyName, vocabulary);
174
182
  }
175
183
  },
176
184
  {
177
185
  key: "update",
178
- value: function update(ruleName, bnf, patternName, pattern) {
186
+ value: function update(ruleName, bnf, vocabularyName, vocabulary) {
179
187
  this.setBNF(ruleName, bnf);
180
- this.setPattern(patternName, pattern);
188
+ this.setVocabulary(vocabularyName, vocabulary);
181
189
  }
182
190
  },
183
191
  {
184
192
  key: "toJSON",
185
193
  value: function toJSON() {
186
- var name = this.name, termBNF = this.termBNF, statementBNF = this.statementBNF, typePattern = this.typePattern, symbolPattern = this.symbolPattern, json = {
194
+ var name = this.name, termBNF = this.termBNF, statementBNF = this.statementBNF, typeVocabulary = this.typeVocabulary, symbolVocabulary = this.symbolVocabulary, json = {
187
195
  name: name,
188
196
  termBNF: termBNF,
189
197
  statementBNF: statementBNF,
190
- typePattern: typePattern,
191
- symbolPattern: symbolPattern
198
+ typeVocabulary: typeVocabulary,
199
+ symbolVocabulary: symbolVocabulary
192
200
  };
193
201
  return json;
194
202
  }
@@ -197,21 +205,21 @@ var CustomGrammar = /*#__PURE__*/ function() {
197
205
  {
198
206
  key: "fromJSON",
199
207
  value: function fromJSON(json) {
200
- var name = json.name, termBNF = json.termBNF, statementBNF = json.statementBNF, typePattern = json.typePattern, symbolPattern = json.symbolPattern, customGrammar = new CustomGrammar(name, termBNF, statementBNF, typePattern, symbolPattern);
208
+ var name = json.name, termBNF = json.termBNF, statementBNF = json.statementBNF, typeVocabulary = json.typeVocabulary, symbolVocabulary = json.symbolVocabulary, customGrammar = new CustomGrammar(name, termBNF, statementBNF, typeVocabulary, symbolVocabulary);
201
209
  return customGrammar;
202
210
  }
203
211
  },
204
212
  {
205
213
  key: "fromName",
206
214
  value: function fromName(name) {
207
- var termBNF = _constants.EMPTY_STRING, statementBNF = _constants.EMPTY_STRING, typePattern = _constants.EMPTY_STRING, symbolPattern = _constants.EMPTY_STRING, customGrammar = new CustomGrammar(name, termBNF, statementBNF, typePattern, symbolPattern);
215
+ var termBNF = _constants.EMPTY_STRING, statementBNF = _constants.EMPTY_STRING, typeVocabulary = _constants.EMPTY_STRING, symbolVocabulary = _constants.EMPTY_STRING, customGrammar = new CustomGrammar(name, termBNF, statementBNF, typeVocabulary, symbolVocabulary);
208
216
  return customGrammar;
209
217
  }
210
218
  },
211
219
  {
212
- key: "fromNameTermBNFStatementBNFTypePatternAndSymbolPattern",
213
- value: function fromNameTermBNFStatementBNFTypePatternAndSymbolPattern(name, termBNF, statementBNF, typePattern, symbolPattern) {
214
- var customGrammar = new CustomGrammar(name, termBNF, statementBNF, typePattern, symbolPattern);
220
+ key: "fromNameTermBNFStatementBNFTypeVocabularyAndSymbolVocabulary",
221
+ value: function fromNameTermBNFStatementBNFTypeVocabularyAndSymbolVocabulary(name, termBNF, statementBNF, typeVocabulary, symbolVocabulary) {
222
+ var customGrammar = new CustomGrammar(name, termBNF, statementBNF, typeVocabulary, symbolVocabulary);
215
223
  return customGrammar;
216
224
  }
217
225
  }
@@ -219,4 +227,4 @@ var CustomGrammar = /*#__PURE__*/ function() {
219
227
  return CustomGrammar;
220
228
  }();
221
229
 
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jdXN0b21HcmFtbWFyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FLCBTVEFURU1FTlRfUlVMRV9OQU1FIH0gZnJvbSBcIi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBUWVBFX1BBVFRFUk5fTkFNRSwgU1lNQk9MX1BBVFRFUk5fTkFNRSB9IGZyb20gXCIuL3BhdHRlcm5OYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDdXN0b21HcmFtbWFyIHtcbiAgY29uc3RydWN0b3IobmFtZSwgdGVybUJORiwgc3RhdGVtZW50Qk5GLCB0eXBlUGF0dGVybiwgc3ltYm9sUGF0dGVybikge1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy50ZXJtQk5GID0gdGVybUJORjtcbiAgICB0aGlzLnN0YXRlbWVudEJORiA9IHN0YXRlbWVudEJORjtcbiAgICB0aGlzLnR5cGVQYXR0ZXJuID0gdHlwZVBhdHRlcm47XG4gICAgdGhpcy5zeW1ib2xQYXR0ZXJuID0gc3ltYm9sUGF0dGVybjtcbiAgfVxuICBcbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0VGVybUJORigpIHtcbiAgICByZXR1cm4gdGhpcy50ZXJtQk5GO1xuICB9XG5cbiAgZ2V0U3RhdGVtZW50Qk5GKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXRlbWVudEJORjtcbiAgfVxuXG4gIGdldFR5cGVQYXR0ZXJuKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGVQYXR0ZXJuO1xuICB9XG5cbiAgZ2V0U3ltYm9sUGF0dGVybigpIHtcbiAgICByZXR1cm4gdGhpcy5zeW1ib2xQYXR0ZXJuO1xuICB9XG5cbiAgZ2V0Qk5GKHJ1bGVOYW1lID0gbnVsbCkge1xuICAgIGxldCBibmY7XG5cbiAgICBzd2l0Y2ggKHJ1bGVOYW1lKSB7XG4gICAgICBjYXNlIFRFUk1fUlVMRV9OQU1FOiBibmYgPSB0aGlzLnRlcm1CTkY7IGJyZWFrO1xuICAgICAgY2FzZSBTVEFURU1FTlRfUlVMRV9OQU1FOiBibmYgPSB0aGlzLnN0YXRlbWVudEJORjsgYnJlYWs7XG5cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgY29uc3QgcnVsZU5hbWVzID0gW1xuICAgICAgICAgICAgICAgIFRFUk1fUlVMRV9OQU1FLFxuICAgICAgICAgICAgICAgIFNUQVRFTUVOVF9SVUxFX05BTUVcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgY29tYmluZWRCTkYgPSBydWxlTmFtZXMucmVkdWNlKChjb21iaW5lZEJORiwgcnVsZU5hbWUpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBibmYgPSB0aGlzLmdldEJORihydWxlTmFtZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoYm5mICE9PSBFTVBUWV9TVFJJTkcpIHtcbiAgICAgICAgICAgICAgICAgIGNvbWJpbmVkQk5GID0gYCR7Y29tYmluZWRCTkZ9XG4gICAgICAgICAgICBcbiR7Ym5mfWA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbWJpbmVkQk5GO1xuICAgICAgICAgICAgICB9LCBFTVBUWV9TVFJJTkcpO1xuXG4gICAgICAgIGJuZiA9IGNvbWJpbmVkQk5GOyAgLy8vXG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGJuZjtcbiAgfVxuXG4gIGdldFBhdHRlcm4ocGF0dGVybk5hbWUpIHtcbiAgICBsZXQgcGF0dGVybjtcblxuICAgIHN3aXRjaCAocGF0dGVybk5hbWUpIHtcbiAgICAgIGNhc2UgVFlQRV9QQVRURVJOX05BTUU6IHBhdHRlcm4gPSB0aGlzLnR5cGVQYXR0ZXJuOyBicmVhaztcbiAgICAgIGNhc2UgU1lNQk9MX1BBVFRFUk5fTkFNRTogcGF0dGVybiA9IHRoaXMuc3ltYm9sUGF0dGVybjsgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdHRlcm47XG4gIH1cblxuICBnZXRQYXR0ZXJucygpIHtcbiAgICBjb25zdCBwYXR0ZXJucyA9IFtcbiAgICAgIHRoaXMudHlwZVBhdHRlcm4sXG4gICAgICB0aGlzLnN5bWJvbFBhdHRlcm5cbiAgICBdO1xuXG4gICAgcmV0dXJuIHBhdHRlcm5zO1xuICB9XG5cbiAgc2V0TmFtZShuYW1lKSB7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgfVxuXG4gIHNldEJORihydWxlTmFtZSwgYm5mKSB7XG4gICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgY2FzZSBURVJNX1JVTEVfTkFNRTpcbiAgICAgICAgdGhpcy50ZXJtQk5GID0gYm5mO1xuXG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNUQVRFTUVOVF9SVUxFX05BTUU6XG4gICAgICAgIHRoaXMuc3RhdGVtZW50Qk5GID0gYm5mO1xuXG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHNldFBhdHRlcm4ocGF0dGVybk5hbWUsIHBhdHRlcm4pIHtcbiAgICBzd2l0Y2ggKHBhdHRlcm5OYW1lKSB7XG4gICAgICBjYXNlIFRZUEVfUEFUVEVSTl9OQU1FOlxuICAgICAgICB0aGlzLnR5cGVQYXR0ZXJuID0gcGF0dGVybjtcblxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTWU1CT0xfUEFUVEVSTl9OQU1FOlxuICAgICAgICB0aGlzLnN5bWJvbFBhdHRlcm4gPSBwYXR0ZXJuO1xuXG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHJlc2V0Qk5GKHJ1bGVOYW1lKSB7XG4gICAgY29uc3QgYm5mID0gRU1QVFlfU1RSSU5HO1xuXG4gICAgdGhpcy5zZXRCTkYocnVsZU5hbWUsIGJuZik7XG4gIH1cblxuICByZXNldFBhdHRlcm4ocGF0dGVybk5hbWUpIHtcbiAgICBjb25zdCBwYXR0ZXJuID0gRU1QVFlfU1RSSU5HO1xuXG4gICAgdGhpcy5zZXRQYXR0ZXJuKHBhdHRlcm5OYW1lLCBwYXR0ZXJuKTtcbiAgfVxuXG4gIHVwZGF0ZShydWxlTmFtZSwgYm5mLCBwYXR0ZXJuTmFtZSwgcGF0dGVybikge1xuICAgIHRoaXMuc2V0Qk5GKHJ1bGVOYW1lLCBibmYpO1xuXG4gICAgdGhpcy5zZXRQYXR0ZXJuKHBhdHRlcm5OYW1lLCBwYXR0ZXJuKTtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBuYW1lID0gdGhpcy5uYW1lLFxuICAgICAgICAgIHRlcm1CTkYgPSB0aGlzLnRlcm1CTkYsXG4gICAgICAgICAgc3RhdGVtZW50Qk5GID0gdGhpcy5zdGF0ZW1lbnRCTkYsXG4gICAgICAgICAgdHlwZVBhdHRlcm4gPSB0aGlzLnR5cGVQYXR0ZXJuLFxuICAgICAgICAgIHN5bWJvbFBhdHRlcm4gPSB0aGlzLnN5bWJvbFBhdHRlcm4sXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICB0ZXJtQk5GLFxuICAgICAgICAgICAgc3RhdGVtZW50Qk5GLFxuICAgICAgICAgICAgdHlwZVBhdHRlcm4sXG4gICAgICAgICAgICBzeW1ib2xQYXR0ZXJuXG4gICAgICAgICAgfTtcbiAgICBcbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uKSB7XG4gICAgY29uc3QgeyBuYW1lLCB0ZXJtQk5GLCBzdGF0ZW1lbnRCTkYsIHR5cGVQYXR0ZXJuLCBzeW1ib2xQYXR0ZXJuIH0gPSBqc29uLFxuICAgICAgICAgIGN1c3RvbUdyYW1tYXIgPSBuZXcgQ3VzdG9tR3JhbW1hcihuYW1lLCB0ZXJtQk5GLCBzdGF0ZW1lbnRCTkYsIHR5cGVQYXR0ZXJuLCBzeW1ib2xQYXR0ZXJuKTtcblxuICAgIHJldHVybiBjdXN0b21HcmFtbWFyO1xuICB9XG5cbiAgc3RhdGljIGZyb21OYW1lKG5hbWUpIHtcbiAgICBjb25zdCB0ZXJtQk5GID0gRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIHN0YXRlbWVudEJORiA9IEVNUFRZX1NUUklORyxcbiAgICAgICAgICB0eXBlUGF0dGVybiA9IEVNUFRZX1NUUklORyxcbiAgICAgICAgICBzeW1ib2xQYXR0ZXJuID0gRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIGN1c3RvbUdyYW1tYXIgPSBuZXcgQ3VzdG9tR3JhbW1hcihuYW1lLCB0ZXJtQk5GLCBzdGF0ZW1lbnRCTkYsIHR5cGVQYXR0ZXJuLCBzeW1ib2xQYXR0ZXJuKTtcblxuICAgIHJldHVybiBjdXN0b21HcmFtbWFyO1xuICB9XG5cbiAgc3RhdGljIGZyb21OYW1lVGVybUJORlN0YXRlbWVudEJORlR5cGVQYXR0ZXJuQW5kU3ltYm9sUGF0dGVybihuYW1lLCB0ZXJtQk5GLCBzdGF0ZW1lbnRCTkYsIHR5cGVQYXR0ZXJuLCBzeW1ib2xQYXR0ZXJuKSB7XG4gICAgY29uc3QgY3VzdG9tR3JhbW1hciA9IG5ldyBDdXN0b21HcmFtbWFyKG5hbWUsIHRlcm1CTkYsIHN0YXRlbWVudEJORiwgdHlwZVBhdHRlcm4sIHN5bWJvbFBhdHRlcm4pO1xuXG4gICAgcmV0dXJuIGN1c3RvbUdyYW1tYXI7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJDdXN0b21HcmFtbWFyIiwibmFtZSIsInRlcm1CTkYiLCJzdGF0ZW1lbnRCTkYiLCJ0eXBlUGF0dGVybiIsInN5bWJvbFBhdHRlcm4iLCJnZXROYW1lIiwiZ2V0VGVybUJORiIsImdldFN0YXRlbWVudEJORiIsImdldFR5cGVQYXR0ZXJuIiwiZ2V0U3ltYm9sUGF0dGVybiIsImdldEJORiIsInJ1bGVOYW1lIiwiYm5mIiwiVEVSTV9SVUxFX05BTUUiLCJTVEFURU1FTlRfUlVMRV9OQU1FIiwicnVsZU5hbWVzIiwiY29tYmluZWRCTkYiLCJyZWR1Y2UiLCJFTVBUWV9TVFJJTkciLCJnZXRQYXR0ZXJuIiwicGF0dGVybk5hbWUiLCJwYXR0ZXJuIiwiVFlQRV9QQVRURVJOX05BTUUiLCJTWU1CT0xfUEFUVEVSTl9OQU1FIiwiZ2V0UGF0dGVybnMiLCJwYXR0ZXJucyIsInNldE5hbWUiLCJzZXRCTkYiLCJzZXRQYXR0ZXJuIiwicmVzZXRCTkYiLCJyZXNldFBhdHRlcm4iLCJ1cGRhdGUiLCJ0b0pTT04iLCJqc29uIiwiZnJvbUpTT04iLCJjdXN0b21HcmFtbWFyIiwiZnJvbU5hbWUiLCJmcm9tTmFtZVRlcm1CTkZTdGF0ZW1lbnRCTkZUeXBlUGF0dGVybkFuZFN5bWJvbFBhdHRlcm4iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O3lCQUpRO3lCQUN1Qjs0QkFDRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFeEMsSUFBQSxBQUFNQSw4QkFBTjthQUFNQSxjQUNQQyxJQUFJLEVBQUVDLE9BQU8sRUFBRUMsWUFBWSxFQUFFQyxXQUFXLEVBQUVDLGFBQWE7Z0NBRGhETDtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLFlBQVksR0FBR0E7UUFDcEIsSUFBSSxDQUFDQyxXQUFXLEdBQUdBO1FBQ25CLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTs7a0JBTkpMOztZQVNuQk0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxJQUFJO1lBQ2xCOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxPQUFPO1lBQ3JCOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxZQUFZO1lBQzFCOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxXQUFXO1lBQ3pCOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxhQUFhO1lBQzNCOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBOztvQkFBT0MsV0FBQUEsaUVBQVc7Z0JBQ2hCLElBQUlDO2dCQUVKLE9BQVFEO29CQUNOLEtBQUtFLHlCQUFjO3dCQUFFRCxNQUFNLElBQUksQ0FBQ1gsT0FB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
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jdXN0b21HcmFtbWFyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IERFRkFVTFRfQ1VTVE9NX0dSQU1NQVJfTkFNRSB9IGZyb20gXCIuL2dyYW1tYXJOYW1lc1wiO1xuaW1wb3J0IHsgVEVSTV9SVUxFX05BTUUsIFNUQVRFTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi9ydWxlTmFtZXNcIjtcbmltcG9ydCB7IFRZUEVfVk9DQUJVTEFSWV9OQU1FLCBTWU1CT0xfVk9DQUJVTEFSWV9OQU1FIH0gZnJvbSBcIi4vdm9jYWJ1bGFyeU5hbWVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEN1c3RvbUdyYW1tYXIge1xuICBjb25zdHJ1Y3RvcihuYW1lLCB0ZXJtQk5GLCBzdGF0ZW1lbnRCTkYsIHR5cGVWb2NhYnVsYXJ5LCBzeW1ib2xWb2NhYnVsYXJ5KSB7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLnRlcm1CTkYgPSB0ZXJtQk5GO1xuICAgIHRoaXMuc3RhdGVtZW50Qk5GID0gc3RhdGVtZW50Qk5GO1xuICAgIHRoaXMudHlwZVZvY2FidWxhcnkgPSB0eXBlVm9jYWJ1bGFyeTtcbiAgICB0aGlzLnN5bWJvbFZvY2FidWxhcnkgPSBzeW1ib2xWb2NhYnVsYXJ5O1xuICB9XG4gIFxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRUZXJtQk5GKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm1CTkY7XG4gIH1cblxuICBnZXRTdGF0ZW1lbnRCTkYoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50Qk5GO1xuICB9XG5cbiAgZ2V0VHlwZVZvY2FidWxhcnkoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZVZvY2FidWxhcnk7XG4gIH1cblxuICBnZXRTeW1ib2xWb2NhYnVsYXJ5KCkge1xuICAgIHJldHVybiB0aGlzLnN5bWJvbFZvY2FidWxhcnk7XG4gIH1cblxuICBnZXRCTkYocnVsZU5hbWUgPSBudWxsKSB7XG4gICAgbGV0IGJuZjtcblxuICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgIGNhc2UgVEVSTV9SVUxFX05BTUU6IGJuZiA9IHRoaXMudGVybUJORjsgYnJlYWs7XG4gICAgICBjYXNlIFNUQVRFTUVOVF9SVUxFX05BTUU6IGJuZiA9IHRoaXMuc3RhdGVtZW50Qk5GOyBicmVhaztcblxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICBjb25zdCBydWxlTmFtZXMgPSBbXG4gICAgICAgICAgICAgICAgVEVSTV9SVUxFX05BTUUsXG4gICAgICAgICAgICAgICAgU1RBVEVNRU5UX1JVTEVfTkFNRVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBjb21iaW5lZEJORiA9IHJ1bGVOYW1lcy5yZWR1Y2UoKGNvbWJpbmVkQk5GLCBydWxlTmFtZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJuZiA9IHRoaXMuZ2V0Qk5GKHJ1bGVOYW1lKTtcblxuICAgICAgICAgICAgICAgIGlmIChibmYgIT09IEVNUFRZX1NUUklORykge1xuICAgICAgICAgICAgICAgICAgY29tYmluZWRCTkYgPSBgJHtjb21iaW5lZEJORn1cbiAgICAgICAgICAgIFxuJHtibmZ9YDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gY29tYmluZWRCTkY7XG4gICAgICAgICAgICAgIH0sIEVNUFRZX1NUUklORyk7XG5cbiAgICAgICAgYm5mID0gY29tYmluZWRCTkY7ICAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gYm5mO1xuICB9XG5cbiAgZ2V0Vm9jYWJ1bGFyeSh2b2NhYnVsYXJ5TmFtZSkge1xuICAgIGxldCB2b2NhYnVsYXJ5O1xuXG4gICAgc3dpdGNoICh2b2NhYnVsYXJ5TmFtZSkge1xuICAgICAgY2FzZSBUWVBFX1ZPQ0FCVUxBUllfTkFNRTogdm9jYWJ1bGFyeSA9IHRoaXMudHlwZVZvY2FidWxhcnk7IGJyZWFrO1xuICAgICAgY2FzZSBTWU1CT0xfVk9DQUJVTEFSWV9OQU1FOiB2b2NhYnVsYXJ5ID0gdGhpcy5zeW1ib2xWb2NhYnVsYXJ5OyBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gdm9jYWJ1bGFyeTtcbiAgfVxuXG4gIGdldFZvY2FidWxhcmllcygpIHtcbiAgICBjb25zdCB2b2NhYnVsYXJpZXMgPSBbXG4gICAgICB0aGlzLnR5cGVWb2NhYnVsYXJ5LFxuICAgICAgdGhpcy5zeW1ib2xWb2NhYnVsYXJ5XG4gICAgXTtcblxuICAgIHJldHVybiB2b2NhYnVsYXJpZXM7XG4gIH1cblxuICBpc0RlZmF1bHRDdXN0b21HcmFtbWFyKCkge1xuICAgIGNvbnN0IGRlZmF1bHRDdXN0b21HcmFtbWFyID0gKHRoaXMubmFtZSA9PT0gREVGQVVMVF9DVVNUT01fR1JBTU1BUl9OQU1FKTtcblxuICAgIHJldHVybiBkZWZhdWx0Q3VzdG9tR3JhbW1hcjtcbiAgfVxuXG4gIHNldE5hbWUobmFtZSkge1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gIH1cblxuICBzZXRCTkYocnVsZU5hbWUsIGJuZikge1xuICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgIGNhc2UgVEVSTV9SVUxFX05BTUU6XG4gICAgICAgIHRoaXMudGVybUJORiA9IGJuZjtcblxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTVEFURU1FTlRfUlVMRV9OQU1FOlxuICAgICAgICB0aGlzLnN0YXRlbWVudEJORiA9IGJuZjtcblxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBzZXRWb2NhYnVsYXJ5KHZvY2FidWxhcnlOYW1lLCB2b2NhYnVsYXJ5KSB7XG4gICAgc3dpdGNoICh2b2NhYnVsYXJ5TmFtZSkge1xuICAgICAgY2FzZSBUWVBFX1ZPQ0FCVUxBUllfTkFNRTpcbiAgICAgICAgdGhpcy50eXBlVm9jYWJ1bGFyeSA9IHZvY2FidWxhcnk7XG5cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU1lNQk9MX1ZPQ0FCVUxBUllfTkFNRTpcbiAgICAgICAgdGhpcy5zeW1ib2xWb2NhYnVsYXJ5ID0gdm9jYWJ1bGFyeTtcblxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXNldEJORihydWxlTmFtZSkge1xuICAgIGNvbnN0IGJuZiA9IEVNUFRZX1NUUklORztcblxuICAgIHRoaXMuc2V0Qk5GKHJ1bGVOYW1lLCBibmYpO1xuICB9XG5cbiAgcmVzZXRWb2NhYnVsYXJ5KHZvY2FidWxhcnlOYW1lKSB7XG4gICAgY29uc3Qgdm9jYWJ1bGFyeSA9IEVNUFRZX1NUUklORztcblxuICAgIHRoaXMuc2V0Vm9jYWJ1bGFyeSh2b2NhYnVsYXJ5TmFtZSwgdm9jYWJ1bGFyeSk7XG4gIH1cblxuICB1cGRhdGUocnVsZU5hbWUsIGJuZiwgdm9jYWJ1bGFyeU5hbWUsIHZvY2FidWxhcnkpIHtcbiAgICB0aGlzLnNldEJORihydWxlTmFtZSwgYm5mKTtcblxuICAgIHRoaXMuc2V0Vm9jYWJ1bGFyeSh2b2NhYnVsYXJ5TmFtZSwgdm9jYWJ1bGFyeSk7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgbmFtZSA9IHRoaXMubmFtZSxcbiAgICAgICAgICB0ZXJtQk5GID0gdGhpcy50ZXJtQk5GLFxuICAgICAgICAgIHN0YXRlbWVudEJORiA9IHRoaXMuc3RhdGVtZW50Qk5GLFxuICAgICAgICAgIHR5cGVWb2NhYnVsYXJ5ID0gdGhpcy50eXBlVm9jYWJ1bGFyeSxcbiAgICAgICAgICBzeW1ib2xWb2NhYnVsYXJ5ID0gdGhpcy5zeW1ib2xWb2NhYnVsYXJ5LFxuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgdGVybUJORixcbiAgICAgICAgICAgIHN0YXRlbWVudEJORixcbiAgICAgICAgICAgIHR5cGVWb2NhYnVsYXJ5LFxuICAgICAgICAgICAgc3ltYm9sVm9jYWJ1bGFyeVxuICAgICAgICAgIH07XG4gICAgXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbikge1xuICAgIGNvbnN0IHsgbmFtZSwgdGVybUJORiwgc3RhdGVtZW50Qk5GLCB0eXBlVm9jYWJ1bGFyeSwgc3ltYm9sVm9jYWJ1bGFyeSB9ID0ganNvbixcbiAgICAgICAgICBjdXN0b21HcmFtbWFyID0gbmV3IEN1c3RvbUdyYW1tYXIobmFtZSwgdGVybUJORiwgc3RhdGVtZW50Qk5GLCB0eXBlVm9jYWJ1bGFyeSwgc3ltYm9sVm9jYWJ1bGFyeSk7XG5cbiAgICByZXR1cm4gY3VzdG9tR3JhbW1hcjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTmFtZShuYW1lKSB7XG4gICAgY29uc3QgdGVybUJORiA9IEVNUFRZX1NUUklORyxcbiAgICAgICAgICBzdGF0ZW1lbnRCTkYgPSBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgdHlwZVZvY2FidWxhcnkgPSBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgc3ltYm9sVm9jYWJ1bGFyeSA9IEVNUFRZX1NUUklORyxcbiAgICAgICAgICBjdXN0b21HcmFtbWFyID0gbmV3IEN1c3RvbUdyYW1tYXIobmFtZSwgdGVybUJORiwgc3RhdGVtZW50Qk5GLCB0eXBlVm9jYWJ1bGFyeSwgc3ltYm9sVm9jYWJ1bGFyeSk7XG5cbiAgICByZXR1cm4gY3VzdG9tR3JhbW1hcjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTmFtZVRlcm1CTkZTdGF0ZW1lbnRCTkZUeXBlVm9jYWJ1bGFyeUFuZFN5bWJvbFZvY2FidWxhcnkobmFtZSwgdGVybUJORiwgc3RhdGVtZW50Qk5GLCB0eXBlVm9jYWJ1bGFyeSwgc3ltYm9sVm9jYWJ1bGFyeSkge1xuICAgIGNvbnN0IGN1c3RvbUdyYW1tYXIgPSBuZXcgQ3VzdG9tR3JhbW1hcihuYW1lLCB0ZXJtQk5GLCBzdGF0ZW1lbnRCTkYsIHR5cGVWb2NhYnVsYXJ5LCBzeW1ib2xWb2NhYnVsYXJ5KTtcblxuICAgIHJldHVybiBjdXN0b21HcmFtbWFyO1xuICB9XG59XG4iXSwibmFtZXMiOlsiQ3VzdG9tR3JhbW1hciIsIm5hbWUiLCJ0ZXJtQk5GIiwic3RhdGVtZW50Qk5GIiwidHlwZVZvY2FidWxhcnkiLCJzeW1ib2xWb2NhYnVsYXJ5IiwiZ2V0TmFtZSIsImdldFRlcm1CTkYiLCJnZXRTdGF0ZW1lbnRCTkYiLCJnZXRUeXBlVm9jYWJ1bGFyeSIsImdldFN5bWJvbFZvY2FidWxhcnkiLCJnZXRCTkYiLCJydWxlTmFtZSIsImJuZiIsIlRFUk1fUlVMRV9OQU1FIiwiU1RBVEVNRU5UX1JVTEVfTkFNRSIsInJ1bGVOYW1lcyIsImNvbWJpbmVkQk5GIiwicmVkdWNlIiwiRU1QVFlfU1RSSU5HIiwiZ2V0Vm9jYWJ1bGFyeSIsInZvY2FidWxhcnlOYW1lIiwidm9jYWJ1bGFyeSIsIlRZUEVfVk9DQUJVTEFSWV9OQU1FIiwiU1lNQk9MX1ZPQ0FCVUxBUllfTkFNRSIsImdldFZvY2FidWxhcmllcyIsInZvY2FidWxhcmllcyIsImlzRGVmYXVsdEN1c3RvbUdyYW1tYXIiLCJkZWZhdWx0Q3VzdG9tR3JhbW1hciIsIkRFRkFVTFRfQ1VTVE9NX0dSQU1NQVJfTkFNRSIsInNldE5hbWUiLCJzZXRCTkYiLCJzZXRWb2NhYnVsYXJ5IiwicmVzZXRCTkYiLCJyZXNldFZvY2FidWxhcnkiLCJ1cGRhdGUiLCJ0b0pTT04iLCJqc29uIiwiZnJvbUpTT04iLCJjdXN0b21HcmFtbWFyIiwiZnJvbU5hbWUiLCJmcm9tTmFtZVRlcm1CTkZTdGF0ZW1lbnRCTkZUeXBlVm9jYWJ1bGFyeUFuZFN5bWJvbFZvY2FidWxhcnkiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBT3FCQTs7O3lCQUxROzRCQUNlO3lCQUNROytCQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU5QyxJQUFBLEFBQU1BLDhCQUFOO2FBQU1BLGNBQ1BDLElBQUksRUFBRUMsT0FBTyxFQUFFQyxZQUFZLEVBQUVDLGNBQWMsRUFBRUMsZ0JBQWdCO2dDQUR0REw7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
@@ -10,13 +10,13 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  var _index = require("../../index");
12
12
  var _grammarNames = require("../grammarNames");
13
- var name = _grammarNames.USER_DEFINED_CUSTOM_GRAMMAR_NAME_1, termBNF = "", statementBNF = "", typePattern = "Group", symbolPattern = "", json = {
13
+ var name = _grammarNames.USER_DEFINED_CUSTOM_GRAMMAR_NAME_1, termBNF = "", statementBNF = "", typeVocabulary = "", symbolVocabulary = "", json = {
14
14
  name: name,
15
15
  termBNF: termBNF,
16
16
  statementBNF: statementBNF,
17
- typePattern: typePattern,
18
- symbolPattern: symbolPattern
17
+ typeVocabulary: typeVocabulary,
18
+ symbolVocabulary: symbolVocabulary
19
19
  }, userDefinedCustomGrammar1 = _index.CustomGrammar.fromJSON(json);
20
20
  var _default = userDefinedCustomGrammar1;
21
21
 
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2N1c3RvbUdyYW1tYXIvdXNlckRlZmluZWQxLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBDdXN0b21HcmFtbWFyIH0gZnJvbSBcIi4uLy4uL2luZGV4XCI7IC8vL1xuXG5pbXBvcnQgeyBVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8xIH0gZnJvbSBcIi4uL2dyYW1tYXJOYW1lc1wiO1xuXG5jb25zdCBuYW1lID0gVVNFUl9ERUZJTkVEX0NVU1RPTV9HUkFNTUFSX05BTUVfMSxcbiAgICAgIHRlcm1CTkYgPSBgYCxcbiAgICAgIHN0YXRlbWVudEJORiA9IGBgLFxuICAgICAgdHlwZVBhdHRlcm4gPSBcIkdyb3VwXCIsXG4gICAgICBzeW1ib2xQYXR0ZXJuID0gXCJcIixcbiAgICAgIGpzb24gPSB7XG4gICAgICAgIG5hbWUsXG4gICAgICAgIHRlcm1CTkYsXG4gICAgICAgIHN0YXRlbWVudEJORixcbiAgICAgICAgdHlwZVBhdHRlcm4sXG4gICAgICAgIHN5bWJvbFBhdHRlcm5cbiAgICAgIH0sXG4gICAgICB1c2VyRGVmaW5lZEN1c3RvbUdyYW1tYXIxID0gQ3VzdG9tR3JhbW1hci5mcm9tSlNPTihqc29uKTtcblxuZXhwb3J0IGRlZmF1bHQgdXNlckRlZmluZWRDdXN0b21HcmFtbWFyMTtcbiJdLCJuYW1lcyI6WyJuYW1lIiwiVVNFUl9ERUZJTkVEX0NVU1RPTV9HUkFNTUFSX05BTUVfMSIsInRlcm1CTkYiLCJzdGF0ZW1lbnRCTkYiLCJ0eXBlUGF0dGVybiIsInN5bWJvbFBhdHRlcm4iLCJqc29uIiwidXNlckRlZmluZWRDdXN0b21HcmFtbWFyMSIsIkN1c3RvbUdyYW1tYXIiLCJmcm9tSlNPTiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBb0JBOzs7ZUFBQTs7O3FCQWxCOEI7NEJBRXFCO0FBRW5ELElBQU1BLE9BQU9DLGdEQUFrQyxFQUN6Q0MsVUFBVyxJQUNYQyxlQUFnQixJQUNoQkMsY0FBYyxTQUNkQyxnQkFBZ0IsSUFDaEJDLE9BQU87SUFDTE4sTUFBQUE7SUFDQUUsU0FBQUE7SUFDQUMsY0FBQUE7SUFDQUMsYUFBQUE7SUFDQUMsZUFBQUE7QUFDRixHQUNBRSw0QkFBNEJDLG9CQUFhLENBQUNDLFFBQVEsQ0FBQ0g7SUFFekQsV0FBZUMifQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2N1c3RvbUdyYW1tYXIvdXNlckRlZmluZWQxLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBDdXN0b21HcmFtbWFyIH0gZnJvbSBcIi4uLy4uL2luZGV4XCI7IC8vL1xuXG5pbXBvcnQgeyBVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8xIH0gZnJvbSBcIi4uL2dyYW1tYXJOYW1lc1wiO1xuXG5jb25zdCBuYW1lID0gVVNFUl9ERUZJTkVEX0NVU1RPTV9HUkFNTUFSX05BTUVfMSxcbiAgICAgIHRlcm1CTkYgPSBcIlwiLFxuICAgICAgc3RhdGVtZW50Qk5GID0gXCJcIixcbiAgICAgIHR5cGVWb2NhYnVsYXJ5ID0gXCJcIixcbiAgICAgIHN5bWJvbFZvY2FidWxhcnkgPSBcIlwiLFxuICAgICAganNvbiA9IHtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgdGVybUJORixcbiAgICAgICAgc3RhdGVtZW50Qk5GLFxuICAgICAgICB0eXBlVm9jYWJ1bGFyeSxcbiAgICAgICAgc3ltYm9sVm9jYWJ1bGFyeVxuICAgICAgfSxcbiAgICAgIHVzZXJEZWZpbmVkQ3VzdG9tR3JhbW1hcjEgPSBDdXN0b21HcmFtbWFyLmZyb21KU09OKGpzb24pO1xuXG5leHBvcnQgZGVmYXVsdCB1c2VyRGVmaW5lZEN1c3RvbUdyYW1tYXIxO1xuIl0sIm5hbWVzIjpbIm5hbWUiLCJVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8xIiwidGVybUJORiIsInN0YXRlbWVudEJORiIsInR5cGVWb2NhYnVsYXJ5Iiwic3ltYm9sVm9jYWJ1bGFyeSIsImpzb24iLCJ1c2VyRGVmaW5lZEN1c3RvbUdyYW1tYXIxIiwiQ3VzdG9tR3JhbW1hciIsImZyb21KU09OIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFvQkE7OztlQUFBOzs7cUJBbEI4Qjs0QkFFcUI7QUFFbkQsSUFBTUEsT0FBT0MsZ0RBQWtDLEVBQ3pDQyxVQUFVLElBQ1ZDLGVBQWUsSUFDZkMsaUJBQWlCLElBQ2pCQyxtQkFBbUIsSUFDbkJDLE9BQU87SUFDTE4sTUFBQUE7SUFDQUUsU0FBQUE7SUFDQUMsY0FBQUE7SUFDQUMsZ0JBQUFBO0lBQ0FDLGtCQUFBQTtBQUNGLEdBQ0FFLDRCQUE0QkMsb0JBQWEsQ0FBQ0MsUUFBUSxDQUFDSDtJQUV6RCxXQUFlQyJ9
@@ -10,13 +10,13 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  var _index = require("../../index");
12
12
  var _grammarNames = require("../grammarNames");
13
- var name = _grammarNames.USER_DEFINED_CUSTOM_GRAMMAR_NAME_2, termBNF = "", statementBNF = "", typePattern = "", symbolPattern = "", json = {
13
+ var name = _grammarNames.USER_DEFINED_CUSTOM_GRAMMAR_NAME_2, termBNF = "", statementBNF = "", typeVocabulary = "", symbolVocabulary = "", json = {
14
14
  name: name,
15
15
  termBNF: termBNF,
16
16
  statementBNF: statementBNF,
17
- typePattern: typePattern,
18
- symbolPattern: symbolPattern
17
+ typeVocabulary: typeVocabulary,
18
+ symbolVocabulary: symbolVocabulary
19
19
  }, userDefinedCustomGrammar2 = _index.CustomGrammar.fromJSON(json);
20
20
  var _default = userDefinedCustomGrammar2;
21
21
 
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2N1c3RvbUdyYW1tYXIvdXNlckRlZmluZWQyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBDdXN0b21HcmFtbWFyIH0gZnJvbSBcIi4uLy4uL2luZGV4XCI7IC8vL1xuXG5pbXBvcnQgeyBVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8yIH0gZnJvbSBcIi4uL2dyYW1tYXJOYW1lc1wiO1xuXG5jb25zdCBuYW1lID0gVVNFUl9ERUZJTkVEX0NVU1RPTV9HUkFNTUFSX05BTUVfMixcbiAgICAgIHRlcm1CTkYgPSBgYCxcbiAgICAgIHN0YXRlbWVudEJORiA9IGBgLFxuICAgICAgdHlwZVBhdHRlcm4gPSBcIlwiLFxuICAgICAgc3ltYm9sUGF0dGVybiA9IFwiXCIsXG4gICAgICBqc29uID0ge1xuICAgICAgICBuYW1lLFxuICAgICAgICB0ZXJtQk5GLFxuICAgICAgICBzdGF0ZW1lbnRCTkYsXG4gICAgICAgIHR5cGVQYXR0ZXJuLFxuICAgICAgICBzeW1ib2xQYXR0ZXJuXG4gICAgICB9LFxuICAgICAgdXNlckRlZmluZWRDdXN0b21HcmFtbWFyMiA9IEN1c3RvbUdyYW1tYXIuZnJvbUpTT04oanNvbik7XG5cbmV4cG9ydCBkZWZhdWx0IHVzZXJEZWZpbmVkQ3VzdG9tR3JhbW1hcjI7XG4iXSwibmFtZXMiOlsibmFtZSIsIlVTRVJfREVGSU5FRF9DVVNUT01fR1JBTU1BUl9OQU1FXzIiLCJ0ZXJtQk5GIiwic3RhdGVtZW50Qk5GIiwidHlwZVBhdHRlcm4iLCJzeW1ib2xQYXR0ZXJuIiwianNvbiIsInVzZXJEZWZpbmVkQ3VzdG9tR3JhbW1hcjIiLCJDdXN0b21HcmFtbWFyIiwiZnJvbUpTT04iXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQW9CQTs7O2VBQUE7OztxQkFsQjhCOzRCQUVxQjtBQUVuRCxJQUFNQSxPQUFPQyxnREFBa0MsRUFDekNDLFVBQVcsSUFDWEMsZUFBZ0IsSUFDaEJDLGNBQWMsSUFDZEMsZ0JBQWdCLElBQ2hCQyxPQUFPO0lBQ0xOLE1BQUFBO0lBQ0FFLFNBQUFBO0lBQ0FDLGNBQUFBO0lBQ0FDLGFBQUFBO0lBQ0FDLGVBQUFBO0FBQ0YsR0FDQUUsNEJBQTRCQyxvQkFBYSxDQUFDQyxRQUFRLENBQUNIO0lBRXpELFdBQWVDIn0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2N1c3RvbUdyYW1tYXIvdXNlckRlZmluZWQyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBDdXN0b21HcmFtbWFyIH0gZnJvbSBcIi4uLy4uL2luZGV4XCI7IC8vL1xuXG5pbXBvcnQgeyBVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8yIH0gZnJvbSBcIi4uL2dyYW1tYXJOYW1lc1wiO1xuXG5jb25zdCBuYW1lID0gVVNFUl9ERUZJTkVEX0NVU1RPTV9HUkFNTUFSX05BTUVfMixcbiAgICAgIHRlcm1CTkYgPSBcIlwiLFxuICAgICAgc3RhdGVtZW50Qk5GID0gXCJcIixcbiAgICAgIHR5cGVWb2NhYnVsYXJ5ID0gXCJcIixcbiAgICAgIHN5bWJvbFZvY2FidWxhcnkgPSBcIlwiLFxuICAgICAganNvbiA9IHtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgdGVybUJORixcbiAgICAgICAgc3RhdGVtZW50Qk5GLFxuICAgICAgICB0eXBlVm9jYWJ1bGFyeSxcbiAgICAgICAgc3ltYm9sVm9jYWJ1bGFyeVxuICAgICAgfSxcbiAgICAgIHVzZXJEZWZpbmVkQ3VzdG9tR3JhbW1hcjIgPSBDdXN0b21HcmFtbWFyLmZyb21KU09OKGpzb24pO1xuXG5leHBvcnQgZGVmYXVsdCB1c2VyRGVmaW5lZEN1c3RvbUdyYW1tYXIyO1xuIl0sIm5hbWVzIjpbIm5hbWUiLCJVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8yIiwidGVybUJORiIsInN0YXRlbWVudEJORiIsInR5cGVWb2NhYnVsYXJ5Iiwic3ltYm9sVm9jYWJ1bGFyeSIsImpzb24iLCJ1c2VyRGVmaW5lZEN1c3RvbUdyYW1tYXIyIiwiQ3VzdG9tR3JhbW1hciIsImZyb21KU09OIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFvQkE7OztlQUFBOzs7cUJBbEI4Qjs0QkFFcUI7QUFFbkQsSUFBTUEsT0FBT0MsZ0RBQWtDLEVBQ3pDQyxVQUFVLElBQ1ZDLGVBQWUsSUFDZkMsaUJBQWlCLElBQ2pCQyxtQkFBbUIsSUFDbkJDLE9BQU87SUFDTE4sTUFBQUE7SUFDQUUsU0FBQUE7SUFDQUMsY0FBQUE7SUFDQUMsZ0JBQUFBO0lBQ0FDLGtCQUFBQTtBQUNGLEdBQ0FFLDRCQUE0QkMsb0JBQWEsQ0FBQ0MsUUFBUSxDQUFDSDtJQUV6RCxXQUFlQyJ9
@@ -10,7 +10,7 @@ function _export(target, all) {
10
10
  }
11
11
  _export(exports, {
12
12
  get DEFAULT_CUSTOM_GRAMMAR_NAME () {
13
- return _grammarNames.DEFAULT_CUSTOM_GRAMMAR_NAME;
13
+ return _index.DEFAULT_CUSTOM_GRAMMAR_NAME;
14
14
  },
15
15
  get USER_DEFINED_CUSTOM_GRAMMAR_NAME_1 () {
16
16
  return USER_DEFINED_CUSTOM_GRAMMAR_NAME_1;
@@ -19,8 +19,8 @@ _export(exports, {
19
19
  return USER_DEFINED_CUSTOM_GRAMMAR_NAME_2;
20
20
  }
21
21
  });
22
- var _grammarNames = require("../grammarNames");
22
+ var _index = require("../index");
23
23
  var USER_DEFINED_CUSTOM_GRAMMAR_NAME_1 = "User defined 1";
24
24
  var USER_DEFINED_CUSTOM_GRAMMAR_NAME_2 = "User defined 2";
25
25
 
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL2dyYW1tYXJOYW1lcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgREVGQVVMVF9DVVNUT01fR1JBTU1BUl9OQU1FIH0gZnJvbSBcIi4uL2dyYW1tYXJOYW1lc1wiO1xuXG5leHBvcnQgY29uc3QgVVNFUl9ERUZJTkVEX0NVU1RPTV9HUkFNTUFSX05BTUVfMSA9IFwiVXNlciBkZWZpbmVkIDFcIjtcbmV4cG9ydCBjb25zdCBVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8yID0gXCJVc2VyIGRlZmluZWQgMlwiO1xuIl0sIm5hbWVzIjpbIkRFRkFVTFRfQ1VTVE9NX0dSQU1NQVJfTkFNRSIsIlVTRVJfREVGSU5FRF9DVVNUT01fR1JBTU1BUl9OQU1FXzEiLCJVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8yIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFFU0E7ZUFBQUEseUNBQTJCOztRQUV2QkM7ZUFBQUE7O1FBQ0FDO2VBQUFBOzs7NEJBSCtCO0FBRXJDLElBQU1ELHFDQUFxQztBQUMzQyxJQUFNQyxxQ0FBcUMifQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL2dyYW1tYXJOYW1lcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgREVGQVVMVF9DVVNUT01fR1JBTU1BUl9OQU1FIH0gZnJvbSBcIi4uL2luZGV4XCI7IC8vL1xuXG5leHBvcnQgY29uc3QgVVNFUl9ERUZJTkVEX0NVU1RPTV9HUkFNTUFSX05BTUVfMSA9IFwiVXNlciBkZWZpbmVkIDFcIjtcbmV4cG9ydCBjb25zdCBVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8yID0gXCJVc2VyIGRlZmluZWQgMlwiO1xuIl0sIm5hbWVzIjpbIkRFRkFVTFRfQ1VTVE9NX0dSQU1NQVJfTkFNRSIsIlVTRVJfREVGSU5FRF9DVVNUT01fR1JBTU1BUl9OQU1FXzEiLCJVU0VSX0RFRklORURfQ1VTVE9NX0dSQU1NQVJfTkFNRV8yIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFFU0E7ZUFBQUEsa0NBQTJCOztRQUV2QkM7ZUFBQUE7O1FBQ0FDO2VBQUFBOzs7cUJBSCtCO0FBRXJDLElBQU1ELHFDQUFxQztBQUMzQyxJQUFNQyxxQ0FBcUMifQ==
@@ -5,11 +5,11 @@ Object.defineProperty(exports, "__esModule", {
5
5
  Object.defineProperty(exports, "default", {
6
6
  enumerable: true,
7
7
  get: function() {
8
- return PatternNameSelect;
8
+ return VocabularyNameSelect;
9
9
  }
10
10
  });
11
11
  var _select = /*#__PURE__*/ _interop_require_default(require("../select"));
12
- var _patternNames = require("../../patternNames");
12
+ var _vocabularyNames = require("../../vocabularyNames");
13
13
  function _array_like_to_array(arr, len) {
14
14
  if (len == null || len > arr.length) len = arr.length;
15
15
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
@@ -126,32 +126,32 @@ function _is_native_reflect_construct() {
126
126
  return !!result;
127
127
  })();
128
128
  }
129
- var PatternNameSelect = /*#__PURE__*/ function(Select) {
130
- _inherits(PatternNameSelect, Select);
131
- function PatternNameSelect() {
132
- _class_call_check(this, PatternNameSelect);
133
- return _call_super(this, PatternNameSelect, arguments);
129
+ var VocabularyNameSelect = /*#__PURE__*/ function(Select) {
130
+ _inherits(VocabularyNameSelect, Select);
131
+ function VocabularyNameSelect() {
132
+ _class_call_check(this, VocabularyNameSelect);
133
+ return _call_super(this, VocabularyNameSelect, arguments);
134
134
  }
135
- _create_class(PatternNameSelect, [
135
+ _create_class(VocabularyNameSelect, [
136
136
  {
137
- key: "getPatternName",
138
- value: function getPatternName() {
139
- var value = this.getValue(), patternName = value; ///
140
- return patternName;
137
+ key: "getVocabularyName",
138
+ value: function getVocabularyName() {
139
+ var value = this.getValue(), vocabularyName = value; ///
140
+ return vocabularyName;
141
141
  }
142
142
  },
143
143
  {
144
144
  key: "childElements",
145
145
  value: function childElements() {
146
- var patternNames = [
147
- _patternNames.TYPE_PATTERN_NAME,
148
- _patternNames.SYMBOL_PATTERN_NAME
149
- ], options = patternNames.map(function(patternName, index) {
150
- var value = patternName, selected = index === 0;
146
+ var vocabularyNames = [
147
+ _vocabularyNames.TYPE_VOCABULARY_NAME,
148
+ _vocabularyNames.SYMBOL_VOCABULARY_NAME
149
+ ], options = vocabularyNames.map(function(vocabularyName, index) {
150
+ var value = vocabularyName, selected = index === 0;
151
151
  return /*#__PURE__*/ React.createElement("option", {
152
152
  value: value,
153
153
  selected: selected
154
- }, patternName);
154
+ }, vocabularyName);
155
155
  }), childElements = _to_consumable_array(options);
156
156
  return childElements;
157
157
  }
@@ -159,18 +159,18 @@ var PatternNameSelect = /*#__PURE__*/ function(Select) {
159
159
  {
160
160
  key: "parentContext",
161
161
  value: function parentContext() {
162
- var getPatternName = this.getPatternName.bind(this); ///
162
+ var getVocabularyName = this.getVocabularyName.bind(this); ///
163
163
  return {
164
- getPatternName: getPatternName
164
+ getVocabularyName: getVocabularyName
165
165
  };
166
166
  }
167
167
  }
168
168
  ]);
169
- return PatternNameSelect;
169
+ return VocabularyNameSelect;
170
170
  }(_select.default);
171
- _define_property(PatternNameSelect, "defaultProperties", {
171
+ _define_property(VocabularyNameSelect, "defaultProperties", {
172
172
  className: "rule-name",
173
173
  spellCheck: "false"
174
174
  });
175
175
 
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL3NlbGVjdC9wYXR0ZXJuTmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFNlbGVjdCBmcm9tIFwiLi4vc2VsZWN0XCI7XG5cbmltcG9ydCB7IFRZUEVfUEFUVEVSTl9OQU1FLCBTWU1CT0xfUEFUVEVSTl9OQU1FIH0gIGZyb20gXCIuLi8uLi9wYXR0ZXJuTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGF0dGVybk5hbWVTZWxlY3QgZXh0ZW5kcyBTZWxlY3Qge1xuICBnZXRQYXR0ZXJuTmFtZSgpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKSxcbiAgICAgICAgICBwYXR0ZXJuTmFtZSA9IHZhbHVlOyAvLy9cblxuICAgIHJldHVybiBwYXR0ZXJuTmFtZTtcbiAgfVxuXG4gIGNoaWxkRWxlbWVudHMoKSB7XG4gICAgY29uc3QgcGF0dGVybk5hbWVzID0gW1xuICAgICAgICAgICAgVFlQRV9QQVRURVJOX05BTUUsXG4gICAgICAgICAgICBTWU1CT0xfUEFUVEVSTl9OQU1FXG4gICAgICAgICAgXSxcbiAgICAgICAgICBvcHRpb25zICA9IHBhdHRlcm5OYW1lcy5tYXAoKHBhdHRlcm5OYW1lLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwYXR0ZXJuTmFtZSxcbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkID0gKGluZGV4ID09PSAwKTtcblxuICAgICAgICAgICAgcmV0dXJuIChcblxuICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPXt2YWx1ZX0gc2VsZWN0ZWQ9e3NlbGVjdGVkfSA+XG4gICAgICAgICAgICAgICAge3BhdHRlcm5OYW1lfVxuICAgICAgICAgICAgICA8L29wdGlvbj5cblxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBjaGlsZEVsZW1lbnRzID0gW1xuICAgICAgICAgICAgLi4ub3B0aW9uc1xuICAgICAgICAgIF07XG5cblxuICAgIHJldHVybiBjaGlsZEVsZW1lbnRzO1xuICB9XG5cbiAgcGFyZW50Q29udGV4dCgpIHtcbiAgICBjb25zdCBnZXRQYXR0ZXJuTmFtZSA9IHRoaXMuZ2V0UGF0dGVybk5hbWUuYmluZCh0aGlzKTsgLy8vXG5cbiAgICByZXR1cm4gKHtcbiAgICAgIGdldFBhdHRlcm5OYW1lXG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcInJ1bGUtbmFtZVwiLFxuICAgIHNwZWxsQ2hlY2s6IFwiZmFsc2VcIlxuICB9XG59XG4iXSwibmFtZXMiOlsiUGF0dGVybk5hbWVTZWxlY3QiLCJnZXRQYXR0ZXJuTmFtZSIsInZhbHVlIiwiZ2V0VmFsdWUiLCJwYXR0ZXJuTmFtZSIsImNoaWxkRWxlbWVudHMiLCJwYXR0ZXJuTmFtZXMiLCJUWVBFX1BBVFRFUk5fTkFNRSIsIlNZTUJPTF9QQVRURVJOX05BTUUiLCJvcHRpb25zIiwibWFwIiwiaW5kZXgiLCJzZWxlY3RlZCIsIm9wdGlvbiIsInBhcmVudENvbnRleHQiLCJiaW5kIiwiU2VsZWN0IiwiZGVmYXVsdFByb3BlcnRpZXMiLCJjbGFzc05hbWUiLCJzcGVsbENoZWNrIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7Ozs2REFKRjs0QkFFcUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV6QyxJQUFBLEFBQU1BLGtDQUFOO2NBQU1BO2FBQUFBO2dDQUFBQTtRQUFOLE9BQUEsa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsUUFBUSxJQUFJLENBQUNDLFFBQVEsSUFDckJDLGNBQWNGLE9BQU8sR0FBRztnQkFFOUIsT0FBT0U7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxlQUFlO29CQUNiQywrQkFBaUI7b0JBQ2pCQyxpQ0FBbUI7aUJBQ3BCLEVBQ0RDLFVBQVdILGFBQWFJLEdBQUcsQ0FBQyxTQUFDTixhQUFhTztvQkFDeEMsSUFBTVQsUUFBUUUsYUFDUlEsV0FBWUQsVUFBVTtvQkFFNUIscUJBRUUsb0JBQUNFO3dCQUFPWCxPQUFPQTt3QkFBT1UsVUFBVUE7dUJBQzdCUjtnQkFJUCxJQUNBQyxnQkFDRSxxQkFBR0k7Z0JBSVgsT0FBT0o7WUFDVDs7O1lBRUFTLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNYixpQkFBaUIsSUFBSSxDQUFDQSxjQUFjLENBQUNjLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRztnQkFFMUQsT0FBUTtvQkFDTmQsZ0JBQUFBO2dCQUNGO1lBQ0Y7OztXQXZDbUJEO0VBQTBCZ0IsZUFBTTtBQXlDbkQsaUJBekNtQmhCLG1CQXlDWmlCLHFCQUFvQjtJQUN6QkMsV0FBVztJQUNYQyxZQUFZO0FBQ2QifQ==
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL3NlbGVjdC92b2NhYnVsYXJ5TmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFNlbGVjdCBmcm9tIFwiLi4vc2VsZWN0XCI7XG5cbmltcG9ydCB7IFRZUEVfVk9DQUJVTEFSWV9OQU1FLCBTWU1CT0xfVk9DQUJVTEFSWV9OQU1FIH0gIGZyb20gXCIuLi8uLi92b2NhYnVsYXJ5TmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVm9jYWJ1bGFyeU5hbWVTZWxlY3QgZXh0ZW5kcyBTZWxlY3Qge1xuICBnZXRWb2NhYnVsYXJ5TmFtZSgpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKSxcbiAgICAgICAgICB2b2NhYnVsYXJ5TmFtZSA9IHZhbHVlOyAvLy9cblxuICAgIHJldHVybiB2b2NhYnVsYXJ5TmFtZTtcbiAgfVxuXG4gIGNoaWxkRWxlbWVudHMoKSB7XG4gICAgY29uc3Qgdm9jYWJ1bGFyeU5hbWVzID0gW1xuICAgICAgICAgICAgVFlQRV9WT0NBQlVMQVJZX05BTUUsXG4gICAgICAgICAgICBTWU1CT0xfVk9DQUJVTEFSWV9OQU1FXG4gICAgICAgICAgXSxcbiAgICAgICAgICBvcHRpb25zICA9IHZvY2FidWxhcnlOYW1lcy5tYXAoKHZvY2FidWxhcnlOYW1lLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB2b2NhYnVsYXJ5TmFtZSxcbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkID0gKGluZGV4ID09PSAwKTtcblxuICAgICAgICAgICAgcmV0dXJuIChcblxuICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPXt2YWx1ZX0gc2VsZWN0ZWQ9e3NlbGVjdGVkfSA+XG4gICAgICAgICAgICAgICAge3ZvY2FidWxhcnlOYW1lfVxuICAgICAgICAgICAgICA8L29wdGlvbj5cblxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBjaGlsZEVsZW1lbnRzID0gW1xuICAgICAgICAgICAgLi4ub3B0aW9uc1xuICAgICAgICAgIF07XG5cblxuICAgIHJldHVybiBjaGlsZEVsZW1lbnRzO1xuICB9XG5cbiAgcGFyZW50Q29udGV4dCgpIHtcbiAgICBjb25zdCBnZXRWb2NhYnVsYXJ5TmFtZSA9IHRoaXMuZ2V0Vm9jYWJ1bGFyeU5hbWUuYmluZCh0aGlzKTsgLy8vXG5cbiAgICByZXR1cm4gKHtcbiAgICAgIGdldFZvY2FidWxhcnlOYW1lXG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcInJ1bGUtbmFtZVwiLFxuICAgIHNwZWxsQ2hlY2s6IFwiZmFsc2VcIlxuICB9XG59XG4iXSwibmFtZXMiOlsiVm9jYWJ1bGFyeU5hbWVTZWxlY3QiLCJnZXRWb2NhYnVsYXJ5TmFtZSIsInZhbHVlIiwiZ2V0VmFsdWUiLCJ2b2NhYnVsYXJ5TmFtZSIsImNoaWxkRWxlbWVudHMiLCJ2b2NhYnVsYXJ5TmFtZXMiLCJUWVBFX1ZPQ0FCVUxBUllfTkFNRSIsIlNZTUJPTF9WT0NBQlVMQVJZX05BTUUiLCJvcHRpb25zIiwibWFwIiwiaW5kZXgiLCJzZWxlY3RlZCIsIm9wdGlvbiIsInBhcmVudENvbnRleHQiLCJiaW5kIiwiU2VsZWN0IiwiZGVmYXVsdFByb3BlcnRpZXMiLCJjbGFzc05hbWUiLCJzcGVsbENoZWNrIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7Ozs2REFKRjsrQkFFMkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUvQyxJQUFBLEFBQU1BLHFDQUFOO2NBQU1BO2FBQUFBO2dDQUFBQTtRQUFOLE9BQUEsa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsUUFBUSxJQUFJLENBQUNDLFFBQVEsSUFDckJDLGlCQUFpQkYsT0FBTyxHQUFHO2dCQUVqQyxPQUFPRTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLGtCQUFrQjtvQkFDaEJDLHFDQUFvQjtvQkFDcEJDLHVDQUFzQjtpQkFDdkIsRUFDREMsVUFBV0gsZ0JBQWdCSSxHQUFHLENBQUMsU0FBQ04sZ0JBQWdCTztvQkFDOUMsSUFBTVQsUUFBUUUsZ0JBQ1JRLFdBQVlELFVBQVU7b0JBRTVCLHFCQUVFLG9CQUFDRTt3QkFBT1gsT0FBT0E7d0JBQU9VLFVBQVVBO3VCQUM3QlI7Z0JBSVAsSUFDQUMsZ0JBQ0UscUJBQUdJO2dCQUlYLE9BQU9KO1lBQ1Q7OztZQUVBUyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTWIsb0JBQW9CLElBQUksQ0FBQ0EsaUJBQWlCLENBQUNjLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRztnQkFFaEUsT0FBUTtvQkFDTmQsbUJBQUFBO2dCQUNGO1lBQ0Y7OztXQXZDbUJEO0VBQTZCZ0IsZUFBTTtBQXlDdEQsaUJBekNtQmhCLHNCQXlDWmlCLHFCQUFvQjtJQUN6QkMsV0FBVztJQUNYQyxZQUFZO0FBQ2QifQ==