occam-nominal 0.0.6 → 1.0.0

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 (76) hide show
  1. package/.swcrc +0 -6
  2. package/lib/index.js +1 -29
  3. package/lib/utilities/lexers.js +6 -43
  4. package/lib/utilities/parsers.js +9 -20
  5. package/package.json +3 -10
  6. package/src/index.js +0 -10
  7. package/src/utilities/lexers.js +8 -26
  8. package/src/utilities/parsers.js +19 -30
  9. package/lib/constants.js +0 -42
  10. package/lib/customGrammar/combined.js +0 -219
  11. package/lib/customGrammar/default.js +0 -49
  12. package/lib/customGrammar.js +0 -213
  13. package/lib/example/customGrammar/userDefined.js +0 -22
  14. package/lib/example/div/sizeable.js +0 -39
  15. package/lib/example/grammarNames.js +0 -22
  16. package/lib/example/input/startRuleName.js +0 -142
  17. package/lib/example/input.js +0 -39
  18. package/lib/example/select/name.js +0 -176
  19. package/lib/example/select/ruleName.js +0 -176
  20. package/lib/example/select/vocabularyName.js +0 -176
  21. package/lib/example/select.js +0 -39
  22. package/lib/example/subHeading.js +0 -39
  23. package/lib/example/textarea/bnf.js +0 -142
  24. package/lib/example/textarea/content.js +0 -163
  25. package/lib/example/textarea/nominalBNF.js +0 -172
  26. package/lib/example/textarea/parseTree.js +0 -149
  27. package/lib/example/textarea/vocabulary.js +0 -142
  28. package/lib/example/textarea.js +0 -39
  29. package/lib/example/utilities/rules.js +0 -25
  30. package/lib/example/view.js +0 -281
  31. package/lib/example.js +0 -19
  32. package/lib/grammarNames.js +0 -13
  33. package/lib/ruleNames.js +0 -29
  34. package/lib/typesMap.js +0 -45
  35. package/lib/utilities/customGrammar.js +0 -70
  36. package/lib/utilities/grammar.js +0 -31
  37. package/lib/utilities/nominal.js +0 -25
  38. package/lib/utilities/part.js +0 -23
  39. package/lib/utilities/query.js +0 -36
  40. package/lib/utilities/validate.js +0 -114
  41. package/lib/utilities/vocabulary.js +0 -35
  42. package/lib/vocabularyNames.js +0 -29
  43. package/src/constants.js +0 -11
  44. package/src/customGrammar/combined.js +0 -196
  45. package/src/customGrammar/default.js +0 -80
  46. package/src/customGrammar.js +0 -163
  47. package/src/example/customGrammar/userDefined.js +0 -21
  48. package/src/example/div/sizeable.js +0 -12
  49. package/src/example/grammarNames.js +0 -5
  50. package/src/example/input/startRuleName.js +0 -33
  51. package/src/example/input.js +0 -14
  52. package/src/example/select/name.js +0 -51
  53. package/src/example/select/ruleName.js +0 -51
  54. package/src/example/select/vocabularyName.js +0 -52
  55. package/src/example/select.js +0 -19
  56. package/src/example/subHeading.js +0 -16
  57. package/src/example/textarea/bnf.js +0 -33
  58. package/src/example/textarea/content.js +0 -41
  59. package/src/example/textarea/nominalBNF.js +0 -51
  60. package/src/example/textarea/parseTree.js +0 -42
  61. package/src/example/textarea/vocabulary.js +0 -33
  62. package/src/example/textarea.js +0 -18
  63. package/src/example/utilities/rules.js +0 -25
  64. package/src/example/view.js +0 -195
  65. package/src/example.js +0 -21
  66. package/src/grammarNames.js +0 -3
  67. package/src/ruleNames.js +0 -9
  68. package/src/typesMap.js +0 -50
  69. package/src/utilities/customGrammar.js +0 -62
  70. package/src/utilities/grammar.js +0 -12
  71. package/src/utilities/nominal.js +0 -9
  72. package/src/utilities/part.js +0 -22
  73. package/src/utilities/query.js +0 -25
  74. package/src/utilities/validate.js +0 -155
  75. package/src/utilities/vocabulary.js +0 -43
  76. package/src/vocabularyNames.js +0 -9
package/.swcrc CHANGED
@@ -1,10 +1,4 @@
1
1
  {
2
- "jsc": {
3
- "parser": {
4
- "syntax": "ecmascript",
5
- "jsx": true
6
- }
7
- },
8
2
  "module": {
9
3
  "type": "commonjs"
10
4
  }
package/lib/index.js CHANGED
@@ -9,47 +9,19 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- get CombinedCustomGrammar () {
13
- return _combined.default;
14
- },
15
- get CustomGrammar () {
16
- return _customGrammar.default;
17
- },
18
- get DEFAULT_CUSTOM_GRAMMAR_NAME () {
19
- return _grammarNames.DEFAULT_CUSTOM_GRAMMAR_NAME;
20
- },
21
- get customGrammarUtilities () {
22
- return _customGrammar1.default;
23
- },
24
- get defaultCustomGrammar () {
25
- return _default.default;
26
- },
27
12
  get lexersUtilities () {
28
13
  return _lexers.default;
29
14
  },
30
15
  get parsersUtilities () {
31
16
  return _parsers.default;
32
- },
33
- get ruleNames () {
34
- return _ruleNames.default;
35
- },
36
- get vocabularyNames () {
37
- return _vocabularyNames.default;
38
17
  }
39
18
  });
40
- var _grammarNames = require("./grammarNames");
41
- var _ruleNames = /*#__PURE__*/ _interop_require_default(require("./ruleNames"));
42
- var _vocabularyNames = /*#__PURE__*/ _interop_require_default(require("./vocabularyNames"));
43
- var _customGrammar = /*#__PURE__*/ _interop_require_default(require("./customGrammar"));
44
- var _default = /*#__PURE__*/ _interop_require_default(require("./customGrammar/default"));
45
- var _combined = /*#__PURE__*/ _interop_require_default(require("./customGrammar/combined"));
46
19
  var _lexers = /*#__PURE__*/ _interop_require_default(require("./utilities/lexers"));
47
20
  var _parsers = /*#__PURE__*/ _interop_require_default(require("./utilities/parsers"));
48
- var _customGrammar1 = /*#__PURE__*/ _interop_require_default(require("./utilities/customGrammar"));
49
21
  function _interop_require_default(obj) {
50
22
  return obj && obj.__esModule ? obj : {
51
23
  default: obj
52
24
  };
53
25
  }
54
26
 
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgREVGQVVMVF9DVVNUT01fR1JBTU1BUl9OQU1FIH0gZnJvbSBcIi4vZ3JhbW1hck5hbWVzXCI7XG5cbmV4cG9ydCB7IGRlZmF1bHQgYXMgcnVsZU5hbWVzIH0gZnJvbSBcIi4vcnVsZU5hbWVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHZvY2FidWxhcnlOYW1lcyB9IGZyb20gXCIuL3ZvY2FidWxhcnlOYW1lc1wiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIEN1c3RvbUdyYW1tYXIgfSBmcm9tIFwiLi9jdXN0b21HcmFtbWFyXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGRlZmF1bHRDdXN0b21HcmFtbWFyIH0gZnJvbSBcIi4vY3VzdG9tR3JhbW1hci9kZWZhdWx0XCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIENvbWJpbmVkQ3VzdG9tR3JhbW1hciB9IGZyb20gXCIuL2N1c3RvbUdyYW1tYXIvY29tYmluZWRcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBsZXhlcnNVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvbGV4ZXJzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHBhcnNlcnNVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvcGFyc2Vyc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjdXN0b21HcmFtbWFyVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2N1c3RvbUdyYW1tYXJcIjtcbiJdLCJuYW1lcyI6WyJDb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJDdXN0b21HcmFtbWFyIiwiREVGQVVMVF9DVVNUT01fR1JBTU1BUl9OQU1FIiwiY3VzdG9tR3JhbW1hclV0aWxpdGllcyIsImRlZmF1bHRDdXN0b21HcmFtbWFyIiwibGV4ZXJzVXRpbGl0aWVzIiwicGFyc2Vyc1V0aWxpdGllcyIsInJ1bGVOYW1lcyIsInZvY2FidWxhcnlOYW1lcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBU29CQTtlQUFBQSxpQkFBcUI7O1FBRnJCQztlQUFBQSxzQkFBYTs7UUFMeEJDO2VBQUFBLHlDQUEyQjs7UUFXaEJDO2VBQUFBLHVCQUFzQjs7UUFMdEJDO2VBQUFBLGdCQUFvQjs7UUFHcEJDO2VBQUFBLGVBQWU7O1FBQ2ZDO2VBQUFBLGdCQUFnQjs7UUFSaEJDO2VBQUFBLGtCQUFTOztRQUNUQztlQUFBQSx3QkFBZTs7OzRCQUhTO2dFQUVQO3NFQUNNO29FQUVGOzhEQUNPOytEQUNDOzZEQUVOOzhEQUNDO3FFQUNNIn0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBsZXhlcnNVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvbGV4ZXJzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHBhcnNlcnNVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvcGFyc2Vyc1wiO1xuIl0sIm5hbWVzIjpbImxleGVyc1V0aWxpdGllcyIsInBhcnNlcnNVdGlsaXRpZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQUVvQkE7ZUFBQUEsZUFBZTs7UUFDZkM7ZUFBQUEsZ0JBQWdCOzs7NkRBRE87OERBQ0MifQ==
@@ -23,44 +23,13 @@ _export(exports, {
23
23
  }
24
24
  });
25
25
  var _occamgrammars = require("occam-grammars");
26
- var _occamlexers = require("occam-lexers");
27
- var _combined = /*#__PURE__*/ _interop_require_default(require("../customGrammar/combined"));
28
- function _array_like_to_array(arr, len) {
29
- if (len == null || len > arr.length) len = arr.length;
30
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
31
- return arr2;
32
- }
33
- function _array_without_holes(arr) {
34
- if (Array.isArray(arr)) return _array_like_to_array(arr);
35
- }
36
- function _interop_require_default(obj) {
37
- return obj && obj.__esModule ? obj : {
38
- default: obj
39
- };
40
- }
41
- function _iterable_to_array(iter) {
42
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
43
- }
44
- function _non_iterable_spread() {
45
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
46
- }
47
- function _to_consumable_array(arr) {
48
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
49
- }
50
- function _unsupported_iterable_to_array(o, minLen) {
51
- if (!o) return;
52
- if (typeof o === "string") return _array_like_to_array(o, minLen);
53
- var n = Object.prototype.toString.call(o).slice(8, -1);
54
- if (n === "Object" && o.constructor) n = o.constructor.name;
55
- if (n === "Map" || n === "Set") return Array.from(n);
56
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
57
- }
58
- var lexerFromRules = _occamlexers.lexerUtilities.lexerFromRules, rulesFromEntries = _occamlexers.lexerUtilities.rulesFromEntries;
26
+ var _occamcustomgrammars = require("occam-custom-grammars");
27
+ var lexerFromNothing = _occamcustomgrammars.lexersUtilities.lexerFromNothing, lexerFromCombinedCustomGrammar = _occamcustomgrammars.lexersUtilities.lexerFromCombinedCustomGrammar, lexerFromEntriesAndCombinedCustomGrammar = _occamcustomgrammars.lexersUtilities.lexerFromEntriesAndCombinedCustomGrammar;
59
28
  function nominalLexerFromNothing(Class) {
60
29
  if (Class === undefined) {
61
30
  Class = _occamgrammars.NominalLexer; ///
62
31
  }
63
- var entries = Class.entries, combinedCustomGrammar = _combined.default.fromNothing(), rules = rulesFromEntriesAndCombinedCustomGrammar(entries, combinedCustomGrammar), nominalLexer = lexerFromRules(Class, rules);
32
+ var lexer = lexerFromNothing(Class), nominalLexer = lexer; ///
64
33
  return nominalLexer;
65
34
  }
66
35
  function nominalLexerFromCombinedCustomGrammar(Class, combinedCustomGrammar) {
@@ -68,7 +37,7 @@ function nominalLexerFromCombinedCustomGrammar(Class, combinedCustomGrammar) {
68
37
  combinedCustomGrammar = Class; ///
69
38
  Class = _occamgrammars.NominalLexer; ///
70
39
  }
71
- var entries = Class.entries, rules = rulesFromEntriesAndCombinedCustomGrammar(entries, combinedCustomGrammar), nominalLexer = lexerFromRules(Class, rules);
40
+ var lexer = lexerFromCombinedCustomGrammar(Class, combinedCustomGrammar), nominalLexer = lexer; ///
72
41
  return nominalLexer;
73
42
  }
74
43
  function nominalLexerFromEntriesAndCombinedCustomGrammar(Class, entries, combinedCustomGrammar) {
@@ -77,7 +46,7 @@ function nominalLexerFromEntriesAndCombinedCustomGrammar(Class, entries, combine
77
46
  entries = Class; ///
78
47
  Class = _occamgrammars.NominalLexer; ///
79
48
  }
80
- var rules = rulesFromEntriesAndCombinedCustomGrammar(entries, combinedCustomGrammar), nominalLexer = lexerFromRules(Class, rules);
49
+ var lexer = lexerFromEntriesAndCombinedCustomGrammar(Class, entries, combinedCustomGrammar), nominalLexer = lexer; ///
81
50
  return nominalLexer;
82
51
  }
83
52
  var _default = {
@@ -85,11 +54,5 @@ var _default = {
85
54
  nominalLexerFromCombinedCustomGrammar: nominalLexerFromCombinedCustomGrammar,
86
55
  nominalLexerFromEntriesAndCombinedCustomGrammar: nominalLexerFromEntriesAndCombinedCustomGrammar
87
56
  };
88
- function rulesFromEntriesAndCombinedCustomGrammar(entries, combinedCustomGrammar) {
89
- var customGrammarEntries = combinedCustomGrammar.getEntries();
90
- entries = _to_consumable_array(customGrammarEntries).concat(_to_consumable_array(entries));
91
- var rules = rulesFromEntries(entries);
92
- return rules;
93
- }
94
57
 
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbGV4ZXJzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb21pbmFsTGV4ZXIgfSBmcm9tIFwib2NjYW0tZ3JhbW1hcnNcIjtcbmltcG9ydCB7IGxleGVyVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxleGVyc1wiO1xuXG5pbXBvcnQgQ29tYmluZWRDdXN0b21HcmFtbWFyIGZyb20gXCIuLi9jdXN0b21HcmFtbWFyL2NvbWJpbmVkXCI7XG5cbmNvbnN0IHsgbGV4ZXJGcm9tUnVsZXMsIHJ1bGVzRnJvbUVudHJpZXMgfSA9IGxleGVyVXRpbGl0aWVzO1xuXG5leHBvcnQgZnVuY3Rpb24gbm9taW5hbExleGVyRnJvbU5vdGhpbmcoQ2xhc3MpIHtcbiAgaWYgKENsYXNzID09PSB1bmRlZmluZWQpIHtcbiAgICBDbGFzcyA9IE5vbWluYWxMZXhlcjsgLy8vXG4gIH1cblxuICBjb25zdCB7IGVudHJpZXMgfSA9IENsYXNzLFxuICAgICAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBDb21iaW5lZEN1c3RvbUdyYW1tYXIuZnJvbU5vdGhpbmcoKSxcbiAgICAgICAgcnVsZXMgPSBydWxlc0Zyb21FbnRyaWVzQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKGVudHJpZXMsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciksXG4gICAgICAgIG5vbWluYWxMZXhlciA9IGxleGVyRnJvbVJ1bGVzKENsYXNzLCBydWxlcyk7XG5cbiAgcmV0dXJuIG5vbWluYWxMZXhlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vbWluYWxMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcikge1xuICBpZiAoY29tYmluZWRDdXN0b21HcmFtbWFyID09PSB1bmRlZmluZWQpIHtcbiAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBDbGFzczsgIC8vL1xuXG4gICAgQ2xhc3MgPSBOb21pbmFsTGV4ZXI7IC8vL1xuICB9XG5cbiAgY29uc3QgeyBlbnRyaWVzIH0gPSBDbGFzcyxcbiAgICAgICAgcnVsZXMgPSBydWxlc0Zyb21FbnRyaWVzQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKGVudHJpZXMsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciksXG4gICAgICAgIG5vbWluYWxMZXhlciA9IGxleGVyRnJvbVJ1bGVzKENsYXNzLCBydWxlcyk7XG5cbiAgcmV0dXJuIG5vbWluYWxMZXhlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vbWluYWxMZXhlckZyb21FbnRyaWVzQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKENsYXNzLCBlbnRyaWVzLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpIHtcbiAgaWYgKGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29tYmluZWRDdXN0b21HcmFtbWFyID0gZW50cmllczsgIC8vL1xuXG4gICAgZW50cmllcyA9IENsYXNzOyAgLy8vXG5cbiAgICBDbGFzcyA9IE5vbWluYWxMZXhlcjsgLy8vXG4gIH1cblxuICBjb25zdCBydWxlcyA9IHJ1bGVzRnJvbUVudHJpZXNBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoZW50cmllcywgY29tYmluZWRDdXN0b21HcmFtbWFyKSxcbiAgICAgICAgbm9taW5hbExleGVyID0gbGV4ZXJGcm9tUnVsZXMoQ2xhc3MsIHJ1bGVzKTtcblxuICByZXR1cm4gbm9taW5hbExleGVyO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIG5vbWluYWxMZXhlckZyb21Ob3RoaW5nLFxuICBub21pbmFsTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyLFxuICBub21pbmFsTGV4ZXJGcm9tRW50cmllc0FuZENvbWJpbmVkQ3VzdG9tR3JhbW1hclxufTtcblxuZnVuY3Rpb24gcnVsZXNGcm9tRW50cmllc0FuZENvbWJpbmVkQ3VzdG9tR3JhbW1hcihlbnRyaWVzLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpIHtcbiAgY29uc3QgY3VzdG9tR3JhbW1hckVudHJpZXMgPSBjb21iaW5lZEN1c3RvbUdyYW1tYXIuZ2V0RW50cmllcygpO1xuXG4gIGVudHJpZXMgPSBbIC8vL1xuICAgIC4uLmN1c3RvbUdyYW1tYXJFbnRyaWVzLFxuICAgIC4uLmVudHJpZXNcbiAgXTtcblxuICBjb25zdCBydWxlcyA9IHJ1bGVzRnJvbUVudHJpZXMoZW50cmllcyk7XG5cbiAgcmV0dXJuIHJ1bGVzO1xufVxuIl0sIm5hbWVzIjpbIm5vbWluYWxMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIiLCJub21pbmFsTGV4ZXJGcm9tRW50cmllc0FuZENvbWJpbmVkQ3VzdG9tR3JhbW1hciIsIm5vbWluYWxMZXhlckZyb21Ob3RoaW5nIiwibGV4ZXJGcm9tUnVsZXMiLCJsZXhlclV0aWxpdGllcyIsInJ1bGVzRnJvbUVudHJpZXMiLCJDbGFzcyIsInVuZGVmaW5lZCIsIk5vbWluYWxMZXhlciIsImVudHJpZXMiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJDb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJmcm9tTm90aGluZyIsInJ1bGVzIiwicnVsZXNGcm9tRW50cmllc0FuZENvbWJpbmVkQ3VzdG9tR3JhbW1hciIsIm5vbWluYWxMZXhlciIsImN1c3RvbUdyYW1tYXJFbnRyaWVzIiwiZ2V0RW50cmllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBbURBO2VBQUE7O1FBN0JnQkE7ZUFBQUE7O1FBY0FDO2VBQUFBOztRQTNCQUM7ZUFBQUE7Ozs2QkFQYTsyQkFDRTsrREFFRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsQyxJQUFRQyxpQkFBcUNDLDJCQUFjLENBQW5ERCxnQkFBZ0JFLG1CQUFxQkQsMkJBQWMsQ0FBbkNDO0FBRWpCLFNBQVNILHdCQUF3QkksS0FBSztJQUMzQyxJQUFJQSxVQUFVQyxXQUFXO1FBQ3ZCRCxRQUFRRSwyQkFBWSxFQUFFLEdBQUc7SUFDM0I7SUFFQSxJQUFNLEFBQUVDLFVBQVlILE1BQVpHLFNBQ0ZDLHdCQUF3QkMsaUJBQXFCLENBQUNDLFdBQVcsSUFDekRDLFFBQVFDLHlDQUF5Q0wsU0FBU0Msd0JBQzFESyxlQUFlWixlQUFlRyxPQUFPTztJQUUzQyxPQUFPRTtBQUNUO0FBRU8sU0FBU2Ysc0NBQXNDTSxLQUFLLEVBQUVJLHFCQUFxQjtJQUNoRixJQUFJQSwwQkFBMEJILFdBQVc7UUFDdkNHLHdCQUF3QkosT0FBUSxHQUFHO1FBRW5DQSxRQUFRRSwyQkFBWSxFQUFFLEdBQUc7SUFDM0I7SUFFQSxJQUFNLEFBQUVDLFVBQVlILE1BQVpHLFNBQ0ZJLFFBQVFDLHlDQUF5Q0wsU0FBU0Msd0JBQzFESyxlQUFlWixlQUFlRyxPQUFPTztJQUUzQyxPQUFPRTtBQUNUO0FBRU8sU0FBU2QsZ0RBQWdESyxLQUFLLEVBQUVHLE9BQU8sRUFBRUMscUJBQXFCO0lBQ25HLElBQUlBLDBCQUEwQkgsV0FBVztRQUN2Q0csd0JBQXdCRCxTQUFVLEdBQUc7UUFFckNBLFVBQVVILE9BQVEsR0FBRztRQUVyQkEsUUFBUUUsMkJBQVksRUFBRSxHQUFHO0lBQzNCO0lBRUEsSUFBTUssUUFBUUMseUNBQXlDTCxTQUFTQyx3QkFDMURLLGVBQWVaLGVBQWVHLE9BQU9PO0lBRTNDLE9BQU9FO0FBQ1Q7SUFFQSxXQUFlO0lBQ2JiLHlCQUFBQTtJQUNBRix1Q0FBQUE7SUFDQUMsaURBQUFBO0FBQ0Y7QUFFQSxTQUFTYSx5Q0FBeUNMLE9BQU8sRUFBRUMscUJBQXFCO0lBQzlFLElBQU1NLHVCQUF1Qk4sc0JBQXNCTyxVQUFVO0lBRTdEUixVQUFVLEFBQ1IscUJBQUdPLDZCQUNILHFCQUFHUDtJQUdMLElBQU1JLFFBQVFSLGlCQUFpQkk7SUFFL0IsT0FBT0k7QUFDVCJ9
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbGV4ZXJzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb21pbmFsTGV4ZXIgfSBmcm9tIFwib2NjYW0tZ3JhbW1hcnNcIjtcbmltcG9ydCB7IGxleGVyc1V0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1jdXN0b20tZ3JhbW1hcnNcIjtcblxuY29uc3QgeyBsZXhlckZyb21Ob3RoaW5nLCBsZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIsIGxleGVyRnJvbUVudHJpZXNBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIgfSA9IGxleGVyc1V0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIG5vbWluYWxMZXhlckZyb21Ob3RoaW5nKENsYXNzKSB7XG4gIGlmIChDbGFzcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgQ2xhc3MgPSBOb21pbmFsTGV4ZXI7IC8vL1xuICB9XG5cbiAgY29uc3QgbGV4ZXIgPSBsZXhlckZyb21Ob3RoaW5nKENsYXNzKSxcbiAgICAgICAgbm9taW5hbExleGVyID0gbGV4ZXI7IC8vL1xuXG4gIHJldHVybiBub21pbmFsTGV4ZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub21pbmFsTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyKENsYXNzLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpIHtcbiAgaWYgKGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29tYmluZWRDdXN0b21HcmFtbWFyID0gQ2xhc3M7ICAvLy9cblxuICAgIENsYXNzID0gTm9taW5hbExleGVyOyAvLy9cbiAgfVxuXG4gIGNvbnN0IGxleGVyID0gbGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyKENsYXNzLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpLFxuICAgICAgICBub21pbmFsTGV4ZXIgPSBsZXhlcjsgLy8vXG5cbiAgcmV0dXJuIG5vbWluYWxMZXhlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vbWluYWxMZXhlckZyb21FbnRyaWVzQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKENsYXNzLCBlbnRyaWVzLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpIHtcbiAgaWYgKGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29tYmluZWRDdXN0b21HcmFtbWFyID0gZW50cmllczsgIC8vL1xuXG4gICAgZW50cmllcyA9IENsYXNzOyAgLy8vXG5cbiAgICBDbGFzcyA9IE5vbWluYWxMZXhlcjsgLy8vXG4gIH1cblxuICBjb25zdCBsZXhlciA9IGxleGVyRnJvbUVudHJpZXNBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIGVudHJpZXMsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciksXG4gICAgICAgIG5vbWluYWxMZXhlciA9IGxleGVyOyAvLy9cblxuICByZXR1cm4gbm9taW5hbExleGVyO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIG5vbWluYWxMZXhlckZyb21Ob3RoaW5nLFxuICBub21pbmFsTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyLFxuICBub21pbmFsTGV4ZXJGcm9tRW50cmllc0FuZENvbWJpbmVkQ3VzdG9tR3JhbW1hclxufTtcbiJdLCJuYW1lcyI6WyJub21pbmFsTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwibm9taW5hbExleGVyRnJvbUVudHJpZXNBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJub21pbmFsTGV4ZXJGcm9tTm90aGluZyIsImxleGVyRnJvbU5vdGhpbmciLCJsZXhlcnNVdGlsaXRpZXMiLCJsZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIiLCJsZXhlckZyb21FbnRyaWVzQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyIiwiQ2xhc3MiLCJ1bmRlZmluZWQiLCJOb21pbmFsTGV4ZXIiLCJsZXhlciIsIm5vbWluYWxMZXhlciIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsImVudHJpZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQThDQTtlQUFBOztRQTVCZ0JBO2VBQUFBOztRQWFBQztlQUFBQTs7UUF4QkFDO2VBQUFBOzs7NkJBTGE7bUNBQ0c7QUFFaEMsSUFBUUMsbUJBQStGQyxvQ0FBZSxDQUE5R0Qsa0JBQWtCRSxpQ0FBNkVELG9DQUFlLENBQTVGQyxnQ0FBZ0NDLDJDQUE2Q0Ysb0NBQWUsQ0FBNURFO0FBRW5ELFNBQVNKLHdCQUF3QkssS0FBSztJQUMzQyxJQUFJQSxVQUFVQyxXQUFXO1FBQ3ZCRCxRQUFRRSwyQkFBWSxFQUFFLEdBQUc7SUFDM0I7SUFFQSxJQUFNQyxRQUFRUCxpQkFBaUJJLFFBQ3pCSSxlQUFlRCxPQUFPLEdBQUc7SUFFL0IsT0FBT0M7QUFDVDtBQUVPLFNBQVNYLHNDQUFzQ08sS0FBSyxFQUFFSyxxQkFBcUI7SUFDaEYsSUFBSUEsMEJBQTBCSixXQUFXO1FBQ3ZDSSx3QkFBd0JMLE9BQVEsR0FBRztRQUVuQ0EsUUFBUUUsMkJBQVksRUFBRSxHQUFHO0lBQzNCO0lBRUEsSUFBTUMsUUFBUUwsK0JBQStCRSxPQUFPSyx3QkFDOUNELGVBQWVELE9BQU8sR0FBRztJQUUvQixPQUFPQztBQUNUO0FBRU8sU0FBU1YsZ0RBQWdETSxLQUFLLEVBQUVNLE9BQU8sRUFBRUQscUJBQXFCO0lBQ25HLElBQUlBLDBCQUEwQkosV0FBVztRQUN2Q0ksd0JBQXdCQyxTQUFVLEdBQUc7UUFFckNBLFVBQVVOLE9BQVEsR0FBRztRQUVyQkEsUUFBUUUsMkJBQVksRUFBRSxHQUFHO0lBQzNCO0lBRUEsSUFBTUMsUUFBUUoseUNBQXlDQyxPQUFPTSxTQUFTRCx3QkFDakVELGVBQWVELE9BQU8sR0FBRztJQUUvQixPQUFPQztBQUNUO0lBRUEsV0FBZTtJQUNiVCx5QkFBQUE7SUFDQUYsdUNBQUFBO0lBQ0FDLGlEQUFBQTtBQUNGIn0=
@@ -32,19 +32,13 @@ _export(exports, {
32
32
  }
33
33
  });
34
34
  var _occamgrammars = require("occam-grammars");
35
- var _occamparsers = require("occam-parsers");
36
- var _combined = /*#__PURE__*/ _interop_require_default(require("../customGrammar/combined"));
37
- function _interop_require_default(obj) {
38
- return obj && obj.__esModule ? obj : {
39
- default: obj
40
- };
41
- }
42
- var rulesFromBNF = _occamparsers.parserUtilities.rulesFromBNF, parserFromRules = _occamparsers.parserUtilities.parserFromRules, parserFromRulesAndStartRuleName = _occamparsers.parserUtilities.parserFromRulesAndStartRuleName;
35
+ var _occamcustomgrammars = require("occam-custom-grammars");
36
+ var parserFromNothing = _occamcustomgrammars.parsersUtilities.parserFromNothing, parserFromStartRuleName = _occamcustomgrammars.parsersUtilities.parserFromStartRuleName, parserFromCombinedCustomGrammar = _occamcustomgrammars.parsersUtilities.parserFromCombinedCustomGrammar, parserFromBNFAndCombinedCustomGrammar = _occamcustomgrammars.parsersUtilities.parserFromBNFAndCombinedCustomGrammar, parserFromStartRuleNameAndCombinedCustomGrammar = _occamcustomgrammars.parsersUtilities.parserFromStartRuleNameAndCombinedCustomGrammar, parserFromBNFStartRuleNameAndCombinedCustomGrammar = _occamcustomgrammars.parsersUtilities.parserFromBNFStartRuleNameAndCombinedCustomGrammar;
43
37
  function nominalParserFromNothing(Class) {
44
38
  if (Class === undefined) {
45
39
  Class = _occamgrammars.NominalParser; ///
46
40
  }
47
- var bnf = Class.bnf, combinedCustomGrammar = _combined.default.fromNothing(), rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar), nominalParser = parserFromRules(Class, rules);
41
+ var parser = parserFromNothing(Class), nominalParser = parser; ///
48
42
  return nominalParser;
49
43
  }
50
44
  function nominalParserFromStartRuleName(Class, startRuleName) {
@@ -52,7 +46,7 @@ function nominalParserFromStartRuleName(Class, startRuleName) {
52
46
  startRuleName = Class; ///
53
47
  Class = _occamgrammars.NominalParser; ///
54
48
  }
55
- var bnf = Class.bnf, combinedCustomGrammar = _combined.default.fromNothing(), rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar), nominalParser = parserFromRulesAndStartRuleName(Class, rules, startRuleName);
49
+ var parser = parserFromStartRuleName(Class, startRuleName), nominalParser = parser; ///
56
50
  return nominalParser;
57
51
  }
58
52
  function nominalParserFromCombinedCustomGrammar(Class, combinedCustomGrammar) {
@@ -60,7 +54,7 @@ function nominalParserFromCombinedCustomGrammar(Class, combinedCustomGrammar) {
60
54
  combinedCustomGrammar = Class; ///
61
55
  Class = _occamgrammars.NominalParser; ///
62
56
  }
63
- var bnf = Class.bnf, rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar), nominalParser = parserFromRules(Class, rules);
57
+ var parser = parserFromCombinedCustomGrammar(Class, combinedCustomGrammar), nominalParser = parser; ///
64
58
  return nominalParser;
65
59
  }
66
60
  function nominalParserFromBNFAndCombinedCustomGrammar(Class, bnf, combinedCustomGrammar) {
@@ -69,7 +63,7 @@ function nominalParserFromBNFAndCombinedCustomGrammar(Class, bnf, combinedCustom
69
63
  bnf = Class; ///
70
64
  Class = _occamgrammars.NominalParser; ///
71
65
  }
72
- var rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar), nominalParser = parserFromRules(Class, rules);
66
+ var parser = parserFromBNFAndCombinedCustomGrammar(Class, bnf, combinedCustomGrammar), nominalParser = parser; ///
73
67
  return nominalParser;
74
68
  }
75
69
  function nominalParserFromStartRuleNameAndCombinedCustomGrammar(Class, startRuleName, combinedCustomGrammar) {
@@ -78,7 +72,7 @@ function nominalParserFromStartRuleNameAndCombinedCustomGrammar(Class, startRule
78
72
  startRuleName = Class; ///
79
73
  Class = _occamgrammars.NominalParser; ///
80
74
  }
81
- var bnf = Class.bnf, rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar), nominalParser = parserFromRulesAndStartRuleName(Class, rules, startRuleName);
75
+ var parser = parserFromStartRuleNameAndCombinedCustomGrammar(Class, startRuleName, combinedCustomGrammar), nominalParser = parser; ///
82
76
  return nominalParser;
83
77
  }
84
78
  function nominalParserFromBNFStartRuleNameAndCombinedCustomGrammar(Class, bnf, startRuleName, combinedCustomGrammar) {
@@ -88,7 +82,7 @@ function nominalParserFromBNFStartRuleNameAndCombinedCustomGrammar(Class, bnf, s
88
82
  bnf = Class; ///
89
83
  Class = _occamgrammars.NominalParser; ///
90
84
  }
91
- var rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar), nominalParser = parserFromRulesAndStartRuleName(Class, rules, startRuleName);
85
+ var parser = parserFromBNFStartRuleNameAndCombinedCustomGrammar(Class, bnf, startRuleName, combinedCustomGrammar), nominalParser = parser; ///
92
86
  return nominalParser;
93
87
  }
94
88
  var _default = {
@@ -99,10 +93,5 @@ var _default = {
99
93
  nominalParserFromStartRuleNameAndCombinedCustomGrammar: nominalParserFromStartRuleNameAndCombinedCustomGrammar,
100
94
  nominalParserFromBNFStartRuleNameAndCombinedCustomGrammar: nominalParserFromBNFStartRuleNameAndCombinedCustomGrammar
101
95
  };
102
- function rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar) {
103
- var rules = rulesFromBNF(bnf);
104
- rules = combinedCustomGrammar.postProcess(rules);
105
- return rules;
106
- }
107
96
 
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcGFyc2Vycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTm9taW5hbFBhcnNlciB9IGZyb20gXCJvY2NhbS1ncmFtbWFyc1wiO1xuaW1wb3J0IHsgcGFyc2VyVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcblxuaW1wb3J0IENvbWJpbmVkQ3VzdG9tR3JhbW1hciBmcm9tIFwiLi4vY3VzdG9tR3JhbW1hci9jb21iaW5lZFwiO1xuXG5jb25zdCB7IHJ1bGVzRnJvbUJORiwgcGFyc2VyRnJvbVJ1bGVzLCBwYXJzZXJGcm9tUnVsZXNBbmRTdGFydFJ1bGVOYW1lIH0gPSBwYXJzZXJVdGlsaXRpZXM7XG5cbmV4cG9ydCBmdW5jdGlvbiBub21pbmFsUGFyc2VyRnJvbU5vdGhpbmcoQ2xhc3MpIHtcbiAgaWYgKENsYXNzID09PSB1bmRlZmluZWQpIHtcbiAgICBDbGFzcyA9IE5vbWluYWxQYXJzZXI7ICAvLy9cbiAgfVxuXG4gIGNvbnN0IHsgYm5mIH0gPSBDbGFzcyxcbiAgICAgICAgY29tYmluZWRDdXN0b21HcmFtbWFyID0gQ29tYmluZWRDdXN0b21HcmFtbWFyLmZyb21Ob3RoaW5nKCksXG4gICAgICAgIHJ1bGVzID0gcnVsZXNGcm9tQk5GQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKGJuZiwgY29tYmluZWRDdXN0b21HcmFtbWFyKSxcbiAgICAgICAgbm9taW5hbFBhcnNlciA9IHBhcnNlckZyb21SdWxlcyhDbGFzcywgcnVsZXMpO1xuXG4gIHJldHVybiBub21pbmFsUGFyc2VyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9taW5hbFBhcnNlckZyb21TdGFydFJ1bGVOYW1lKENsYXNzLCBzdGFydFJ1bGVOYW1lKSB7XG4gIGlmIChzdGFydFJ1bGVOYW1lID09PSB1bmRlZmluZWQpIHtcbiAgICBzdGFydFJ1bGVOYW1lID0gQ2xhc3M7ICAvLy9cblxuICAgIENsYXNzID0gTm9taW5hbFBhcnNlcjsgIC8vL1xuICB9XG5cbiAgY29uc3QgeyBibmYgfSA9IENsYXNzLFxuICAgICAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBDb21iaW5lZEN1c3RvbUdyYW1tYXIuZnJvbU5vdGhpbmcoKSxcbiAgICAgICAgcnVsZXMgPSBydWxlc0Zyb21CTkZBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoYm5mLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpLFxuICAgICAgICBub21pbmFsUGFyc2VyID0gcGFyc2VyRnJvbVJ1bGVzQW5kU3RhcnRSdWxlTmFtZShDbGFzcywgcnVsZXMsIHN0YXJ0UnVsZU5hbWUpO1xuXG4gIHJldHVybiBub21pbmFsUGFyc2VyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9taW5hbFBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcikge1xuICBpZiAoY29tYmluZWRDdXN0b21HcmFtbWFyID09PSB1bmRlZmluZWQpIHtcbiAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBDbGFzczsgIC8vL1xuXG4gICAgQ2xhc3MgPSBOb21pbmFsUGFyc2VyOyAgLy8vXG4gIH1cblxuICBjb25zdCB7IGJuZiB9ID0gQ2xhc3MsXG4gICAgICAgIHJ1bGVzID0gcnVsZXNGcm9tQk5GQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKGJuZiwgY29tYmluZWRDdXN0b21HcmFtbWFyKSxcbiAgICAgICAgbm9taW5hbFBhcnNlciA9IHBhcnNlckZyb21SdWxlcyhDbGFzcywgcnVsZXMpO1xuXG4gIHJldHVybiBub21pbmFsUGFyc2VyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9taW5hbFBhcnNlckZyb21CTkZBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIGJuZiwgY29tYmluZWRDdXN0b21HcmFtbWFyKSB7XG4gIGlmIChjb21iaW5lZEN1c3RvbUdyYW1tYXIgPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9IGJuZjsgIC8vL1xuXG4gICAgYm5mID0gQ2xhc3M7ICAvLy9cblxuICAgIENsYXNzID0gTm9taW5hbFBhcnNlcjsgIC8vL1xuICB9XG5cbiAgY29uc3QgcnVsZXMgPSBydWxlc0Zyb21CTkZBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoYm5mLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpLFxuICAgICAgICBub21pbmFsUGFyc2VyID0gcGFyc2VyRnJvbVJ1bGVzKENsYXNzLCBydWxlcyk7XG5cbiAgcmV0dXJuIG5vbWluYWxQYXJzZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub21pbmFsUGFyc2VyRnJvbVN0YXJ0UnVsZU5hbWVBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIHN0YXJ0UnVsZU5hbWUsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcikge1xuICBpZiAoY29tYmluZWRDdXN0b21HcmFtbWFyID09PSB1bmRlZmluZWQpIHtcbiAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBzdGFydFJ1bGVOYW1lOyAgLy8vXG5cbiAgICBzdGFydFJ1bGVOYW1lID0gQ2xhc3M7ICAvLy9cblxuICAgIENsYXNzID0gTm9taW5hbFBhcnNlcjsgIC8vL1xuICB9XG5cbiAgY29uc3QgeyBibmYgfSA9IENsYXNzLFxuICAgICAgICBydWxlcyA9IHJ1bGVzRnJvbUJORkFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hcihibmYsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciksXG4gICAgICAgIG5vbWluYWxQYXJzZXIgPSBwYXJzZXJGcm9tUnVsZXNBbmRTdGFydFJ1bGVOYW1lKENsYXNzLCBydWxlcywgc3RhcnRSdWxlTmFtZSk7XG5cbiAgcmV0dXJuIG5vbWluYWxQYXJzZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub21pbmFsUGFyc2VyRnJvbUJORlN0YXJ0UnVsZU5hbWVBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIGJuZiwgc3RhcnRSdWxlTmFtZSwgY29tYmluZWRDdXN0b21HcmFtbWFyKSB7XG4gIGlmIChjb21iaW5lZEN1c3RvbUdyYW1tYXIgPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9IHN0YXJ0UnVsZU5hbWU7ICAvLy9cblxuICAgIHN0YXJ0UnVsZU5hbWUgPSBibmY7ICAvLy9cblxuICAgIGJuZiA9IENsYXNzOyAgLy8vXG5cbiAgICBDbGFzcyA9IE5vbWluYWxQYXJzZXI7ICAvLy9cbiAgfVxuXG4gIGNvbnN0IHJ1bGVzID0gcnVsZXNGcm9tQk5GQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKGJuZiwgY29tYmluZWRDdXN0b21HcmFtbWFyKSxcbiAgICAgICAgbm9taW5hbFBhcnNlciA9IHBhcnNlckZyb21SdWxlc0FuZFN0YXJ0UnVsZU5hbWUoQ2xhc3MsIHJ1bGVzLCBzdGFydFJ1bGVOYW1lKTtcblxuICByZXR1cm4gbm9taW5hbFBhcnNlcjtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBub21pbmFsUGFyc2VyRnJvbU5vdGhpbmcsXG4gIG5vbWluYWxQYXJzZXJGcm9tU3RhcnRSdWxlTmFtZSxcbiAgbm9taW5hbFBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIsXG4gIG5vbWluYWxQYXJzZXJGcm9tQk5GQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyLFxuICBub21pbmFsUGFyc2VyRnJvbVN0YXJ0UnVsZU5hbWVBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIsXG4gIG5vbWluYWxQYXJzZXJGcm9tQk5GU3RhcnRSdWxlTmFtZUFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hclxufTtcblxuZnVuY3Rpb24gcnVsZXNGcm9tQk5GQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKGJuZiwgY29tYmluZWRDdXN0b21HcmFtbWFyKSB7XG4gIGxldCBydWxlcyA9IHJ1bGVzRnJvbUJORihibmYpO1xuXG4gIHJ1bGVzID0gY29tYmluZWRDdXN0b21HcmFtbWFyLnBvc3RQcm9jZXNzKHJ1bGVzKTtcblxuICByZXR1cm4gcnVsZXM7XG59XG4iXSwibmFtZXMiOlsibm9taW5hbFBhcnNlckZyb21CTkZBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJub21pbmFsUGFyc2VyRnJvbUJORlN0YXJ0UnVsZU5hbWVBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJub21pbmFsUGFyc2VyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsIm5vbWluYWxQYXJzZXJGcm9tTm90aGluZyIsIm5vbWluYWxQYXJzZXJGcm9tU3RhcnRSdWxlTmFtZSIsIm5vbWluYWxQYXJzZXJGcm9tU3RhcnRSdWxlTmFtZUFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hciIsInJ1bGVzRnJvbUJORiIsInBhcnNlclV0aWxpdGllcyIsInBhcnNlckZyb21SdWxlcyIsInBhcnNlckZyb21SdWxlc0FuZFN0YXJ0UnVsZU5hbWUiLCJDbGFzcyIsInVuZGVmaW5lZCIsIk5vbWluYWxQYXJzZXIiLCJibmYiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJDb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJmcm9tTm90aGluZyIsInJ1bGVzIiwicnVsZXNGcm9tQk5GQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyIiwibm9taW5hbFBhcnNlciIsInN0YXJ0UnVsZU5hbWUiLCJwb3N0UHJvY2VzcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBbUdBO2VBQUE7O1FBaERnQkE7ZUFBQUE7O1FBK0JBQztlQUFBQTs7UUE3Q0FDO2VBQUFBOztRQTVCQUM7ZUFBQUE7O1FBYUFDO2VBQUFBOztRQTRDQUM7ZUFBQUE7Ozs2QkFoRWM7NEJBQ0U7K0RBRUU7Ozs7OztBQUVsQyxJQUFRQyxlQUFtRUMsNkJBQWUsQ0FBbEZELGNBQWNFLGtCQUFxREQsNkJBQWUsQ0FBcEVDLGlCQUFpQkMsa0NBQW9DRiw2QkFBZSxDQUFuREU7QUFFaEMsU0FBU04seUJBQXlCTyxLQUFLO0lBQzVDLElBQUlBLFVBQVVDLFdBQVc7UUFDdkJELFFBQVFFLDRCQUFhLEVBQUcsR0FBRztJQUM3QjtJQUVBLElBQU0sQUFBRUMsTUFB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
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcGFyc2Vycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTm9taW5hbFBhcnNlciB9IGZyb20gXCJvY2NhbS1ncmFtbWFyc1wiO1xuaW1wb3J0IHsgcGFyc2Vyc1V0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1jdXN0b20tZ3JhbW1hcnNcIjtcblxuY29uc3QgeyBwYXJzZXJGcm9tTm90aGluZyxcbiAgICAgICAgcGFyc2VyRnJvbVN0YXJ0UnVsZU5hbWUsXG4gICAgICAgIHBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIsXG4gICAgICAgIHBhcnNlckZyb21CTkZBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIsXG4gICAgICAgIHBhcnNlckZyb21TdGFydFJ1bGVOYW1lQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyLFxuICAgICAgICBwYXJzZXJGcm9tQk5GU3RhcnRSdWxlTmFtZUFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hciB9ID0gcGFyc2Vyc1V0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIG5vbWluYWxQYXJzZXJGcm9tTm90aGluZyhDbGFzcykge1xuICBpZiAoQ2xhc3MgPT09IHVuZGVmaW5lZCkge1xuICAgIENsYXNzID0gTm9taW5hbFBhcnNlcjsgIC8vL1xuICB9XG5cbiAgY29uc3QgcGFyc2VyID0gcGFyc2VyRnJvbU5vdGhpbmcoQ2xhc3MpLFxuICAgICAgICBub21pbmFsUGFyc2VyID0gcGFyc2VyOyAvLy9cblxuICByZXR1cm4gbm9taW5hbFBhcnNlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vbWluYWxQYXJzZXJGcm9tU3RhcnRSdWxlTmFtZShDbGFzcywgc3RhcnRSdWxlTmFtZSkge1xuICBpZiAoc3RhcnRSdWxlTmFtZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgc3RhcnRSdWxlTmFtZSA9IENsYXNzOyAgLy8vXG5cbiAgICBDbGFzcyA9IE5vbWluYWxQYXJzZXI7ICAvLy9cbiAgfVxuXG4gIGNvbnN0IHBhcnNlciA9ICBwYXJzZXJGcm9tU3RhcnRSdWxlTmFtZShDbGFzcywgc3RhcnRSdWxlTmFtZSksXG4gICAgICAgIG5vbWluYWxQYXJzZXIgPSBwYXJzZXI7IC8vL1xuXG4gIHJldHVybiBub21pbmFsUGFyc2VyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9taW5hbFBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcikge1xuICBpZiAoY29tYmluZWRDdXN0b21HcmFtbWFyID09PSB1bmRlZmluZWQpIHtcbiAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBDbGFzczsgIC8vL1xuXG4gICAgQ2xhc3MgPSBOb21pbmFsUGFyc2VyOyAgLy8vXG4gIH1cblxuICBjb25zdCBwYXJzZXIgPSBwYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyKENsYXNzLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpLFxuICAgICAgICBub21pbmFsUGFyc2VyID0gcGFyc2VyOyAvLy9cblxuICByZXR1cm4gbm9taW5hbFBhcnNlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vbWluYWxQYXJzZXJGcm9tQk5GQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKENsYXNzLCBibmYsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcikge1xuICBpZiAoY29tYmluZWRDdXN0b21HcmFtbWFyID09PSB1bmRlZmluZWQpIHtcbiAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBibmY7ICAvLy9cblxuICAgIGJuZiA9IENsYXNzOyAgLy8vXG5cbiAgICBDbGFzcyA9IE5vbWluYWxQYXJzZXI7ICAvLy9cbiAgfVxuXG4gIGNvbnN0IHBhcnNlciA9IHBhcnNlckZyb21CTkZBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIGJuZiwgY29tYmluZWRDdXN0b21HcmFtbWFyKSxcbiAgICAgICAgbm9taW5hbFBhcnNlciA9IHBhcnNlcjsgLy8vXG5cbiAgcmV0dXJuIG5vbWluYWxQYXJzZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub21pbmFsUGFyc2VyRnJvbVN0YXJ0UnVsZU5hbWVBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIHN0YXJ0UnVsZU5hbWUsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcikge1xuICBpZiAoY29tYmluZWRDdXN0b21HcmFtbWFyID09PSB1bmRlZmluZWQpIHtcbiAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBzdGFydFJ1bGVOYW1lOyAgLy8vXG5cbiAgICBzdGFydFJ1bGVOYW1lID0gQ2xhc3M7ICAvLy9cblxuICAgIENsYXNzID0gTm9taW5hbFBhcnNlcjsgIC8vL1xuICB9XG5cbiAgY29uc3QgcGFyc2VyID0gcGFyc2VyRnJvbVN0YXJ0UnVsZU5hbWVBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIoQ2xhc3MsIHN0YXJ0UnVsZU5hbWUsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hciksXG4gICAgICAgIG5vbWluYWxQYXJzZXIgPSBwYXJzZXI7IC8vL1xuXG4gIHJldHVybiBub21pbmFsUGFyc2VyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9taW5hbFBhcnNlckZyb21CTkZTdGFydFJ1bGVOYW1lQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyKENsYXNzLCBibmYsIHN0YXJ0UnVsZU5hbWUsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hcikge1xuICBpZiAoY29tYmluZWRDdXN0b21HcmFtbWFyID09PSB1bmRlZmluZWQpIHtcbiAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBzdGFydFJ1bGVOYW1lOyAgLy8vXG5cbiAgICBzdGFydFJ1bGVOYW1lID0gYm5mOyAgLy8vXG5cbiAgICBibmYgPSBDbGFzczsgIC8vL1xuXG4gICAgQ2xhc3MgPSBOb21pbmFsUGFyc2VyOyAgLy8vXG4gIH1cblxuICBjb25zdCBwYXJzZXIgPSBwYXJzZXJGcm9tQk5GU3RhcnRSdWxlTmFtZUFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hcihDbGFzcywgYm5mLCBzdGFydFJ1bGVOYW1lLCBjb21iaW5lZEN1c3RvbUdyYW1tYXIpLFxuICAgICAgICBub21pbmFsUGFyc2VyID0gcGFyc2VyOyAvLy9cblxuICByZXR1cm4gbm9taW5hbFBhcnNlcjtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBub21pbmFsUGFyc2VyRnJvbU5vdGhpbmcsXG4gIG5vbWluYWxQYXJzZXJGcm9tU3RhcnRSdWxlTmFtZSxcbiAgbm9taW5hbFBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIsXG4gIG5vbWluYWxQYXJzZXJGcm9tQk5GQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyLFxuICBub21pbmFsUGFyc2VyRnJvbVN0YXJ0UnVsZU5hbWVBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIsXG4gIG5vbWluYWxQYXJzZXJGcm9tQk5GU3RhcnRSdWxlTmFtZUFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hclxufTtcbiJdLCJuYW1lcyI6WyJub21pbmFsUGFyc2VyRnJvbUJORkFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hciIsIm5vbWluYWxQYXJzZXJGcm9tQk5GU3RhcnRSdWxlTmFtZUFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hciIsIm5vbWluYWxQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwibm9taW5hbFBhcnNlckZyb21Ob3RoaW5nIiwibm9taW5hbFBhcnNlckZyb21TdGFydFJ1bGVOYW1lIiwibm9taW5hbFBhcnNlckZyb21TdGFydFJ1bGVOYW1lQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyIiwicGFyc2VyRnJvbU5vdGhpbmciLCJwYXJzZXJzVXRpbGl0aWVzIiwicGFyc2VyRnJvbVN0YXJ0UnVsZU5hbWUiLCJwYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwicGFyc2VyRnJvbUJORkFuZENvbWJpbmVkQ3VzdG9tR3JhbW1hciIsInBhcnNlckZyb21TdGFydFJ1bGVOYW1lQW5kQ29tYmluZWRDdXN0b21HcmFtbWFyIiwicGFyc2VyRnJvbUJORlN0YXJ0UnVsZU5hbWVBbmRDb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJDbGFzcyIsInVuZGVmaW5lZCIsIk5vbWluYWxQYXJzZXIiLCJwYXJzZXIiLCJub21pbmFsUGFyc2VyIiwic3RhcnRSdWxlTmFtZSIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsImJuZiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBZ0dBO2VBQUE7O1FBL0NnQkE7ZUFBQUE7O1FBOEJBQztlQUFBQTs7UUEzQ0FDO2VBQUFBOztRQXhCQUM7ZUFBQUE7O1FBV0FDO2VBQUFBOztRQXlDQUM7ZUFBQUE7Ozs2QkE5RGM7bUNBQ0c7QUFFakMsSUFBUUMsb0JBS3VEQyxxQ0FBZ0IsQ0FMdkVELG1CQUNBRSwwQkFJdURELHFDQUFnQixDQUp2RUMseUJBQ0FDLGtDQUd1REYscUNBQWdCLENBSHZFRSxpQ0FDQUMsd0NBRXVESCxxQ0FBZ0IsQ0FGdkVHLHVDQUNBQyxrREFDdURKLHFDQUFnQixDQUR2RUksaURBQ0FDLHFEQUF1REwscUNBQWdCLENBQXZFSztBQUVELFNBQVNULHlCQUF5QlUsS0FBSztJQUM1QyxJQUFJQSxVQUFVQyxXQUFXO1FBQ3ZCRCxRQUFRRSw0QkFBYSxFQUFHLEdBQUc7SUFDN0I7SUFFQSxJQUFNQyxTQUFTVixrQkFBa0JPLFFBQzNCSSxnQkFBZ0JELFFBQVEsR0FBRztJQUVqQyxPQUFPQztBQUNUO0FBRU8sU0FBU2IsK0JBQStCUyxLQUFLLEVBQUVLLGFBQWE7SUFDakUsSUFBSUEsa0JBQWtCSixXQUFXO1FBQy9CSSxnQkFBZ0JMLE9BQVEsR0FBRztRQUUzQkEsUUFBUUUsNEJBQWEsRUFBRyxHQUFHO0lBQzdCO0lBRUEsSUFBTUMsU0FBVVIsd0JBQXdCSyxPQUFPSyxnQkFDekNELGdCQUFnQkQsUUFBUSxHQUFHO0lBRWpDLE9BQU9DO0FBQ1Q7QUFFTyxTQUFTZix1Q0FBdUNXLEtBQUssRUFBRU0scUJBQXFCO0lBQ2pGLElBQUlBLDBCQUEwQkwsV0FBVztRQUN2Q0ssd0JBQXdCTixPQUFRLEdBQUc7UUFFbkNBLFFBQVFFLDRCQUFhLEVBQUcsR0FBRztJQUM3QjtJQUVBLElBQU1DLFNBQVNQLGdDQUFnQ0ksT0FBT00sd0JBQ2hERixnQkFBZ0JELFFBQVEsR0FBRztJQUVqQyxPQUFPQztBQUNUO0FBRU8sU0FBU2pCLDZDQUE2Q2EsS0FBSyxFQUFFTyxHQUFHLEVBQUVELHFCQUFxQjtJQUM1RixJQUFJQSwwQkFBMEJMLFdBQVc7UUFDdkNLLHdCQUF3QkMsS0FBTSxHQUFHO1FBRWpDQSxNQUFNUCxPQUFRLEdBQUc7UUFFakJBLFFBQVFFLDRCQUFhLEVBQUcsR0FBRztJQUM3QjtJQUVBLElBQU1DLFNBQVNOLHNDQUFzQ0csT0FBT08sS0FBS0Qsd0JBQzNERixnQkFBZ0JELFFBQVEsR0FBRztJQUVqQyxPQUFPQztBQUNUO0FBRU8sU0FBU1osdURBQXVEUSxLQUFLLEVBQUVLLGFBQWEsRUFBRUMscUJBQXFCO0lBQ2hILElBQUlBLDBCQUEwQkwsV0FBVztRQUN2Q0ssd0JBQXdCRCxlQUFnQixHQUFHO1FBRTNDQSxnQkFBZ0JMLE9BQVEsR0FBRztRQUUzQkEsUUFBUUUsNEJBQWEsRUFBRyxHQUFHO0lBQzdCO0lBRUEsSUFBTUMsU0FBU0wsZ0RBQWdERSxPQUFPSyxlQUFlQyx3QkFDL0VGLGdCQUFnQkQsUUFBUSxHQUFHO0lBRWpDLE9BQU9DO0FBQ1Q7QUFFTyxTQUFTaEIsMERBQTBEWSxLQUFLLEVBQUVPLEdBQUcsRUFBRUYsYUFBYSxFQUFFQyxxQkFBcUI7SUFDeEgsSUFBSUEsMEJBQTBCTCxXQUFXO1FBQ3ZDSyx3QkFBd0JELGVBQWdCLEdBQUc7UUFFM0NBLGdCQUFnQkUsS0FBTSxHQUFHO1FBRXpCQSxNQUFNUCxPQUFRLEdBQUc7UUFFakJBLFFBQVFFLDRCQUFhLEVBQUcsR0FBRztJQUM3QjtJQUVBLElBQU1DLFNBQVNKLG1EQUFtREMsT0FBT08sS0FBS0YsZUFBZUMsd0JBQ3ZGRixnQkFBZ0JELFFBQVEsR0FBRztJQUVqQyxPQUFPQztBQUNUO0lBRUEsV0FBZTtJQUNiZCwwQkFBQUE7SUFDQUMsZ0NBQUFBO0lBQ0FGLHdDQUFBQTtJQUNBRiw4Q0FBQUE7SUFDQUssd0RBQUFBO0lBQ0FKLDJEQUFBQTtBQUNGIn0=
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-nominal",
3
3
  "author": "James Smith",
4
- "version": "0.0.6",
4
+ "version": "1.0.0",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-nominal",
7
7
  "description": "Occam's Nominal language.",
@@ -11,6 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "necessary": "^17.0.9",
14
+ "occam-custom-grammars": "^6.0.0",
14
15
  "occam-grammar-utilities": "^8.0.394",
15
16
  "occam-grammars": "^1.3.510",
16
17
  "occam-lexers": "^23.1.34",
@@ -19,19 +20,11 @@
19
20
  },
20
21
  "devDependencies": {
21
22
  "@swc/core": "1.13.20",
22
- "esbuild": "0.11.14",
23
- "easy": "^24.1.1",
24
- "easy-layout": "^6.0.287",
25
- "easy-with-style": "^3.0.537",
26
- "express": "^4.17.1",
27
- "juxtapose": "^4.0.130",
28
- "lively-cli": "^2.0.77",
29
23
  "watchful-cli": "^1.7.67"
30
24
  },
31
25
  "scripts": {
32
- "start": "node ./bin/main.js",
33
26
  "clean": "rm -rf ./lib",
34
- "watchful": "watchful -m --transpiler=swc --bundler=esbuild --source-directory=./src --lib-directory=./lib --entry-file=example.js --bundle-file=./example.js --wait=100",
27
+ "watchful": "watchful -m --transpiler=swc --source-directory=./src --lib-directory=./lib --pause=100",
35
28
  "batch": "npm run watchful batch --",
36
29
  "batch-debug": "npm run watchful batch -- --debug",
37
30
  "incremental": "npm run watchful incremental --",
package/src/index.js CHANGED
@@ -1,14 +1,4 @@
1
1
  "use strict";
2
2
 
3
- export { DEFAULT_CUSTOM_GRAMMAR_NAME } from "./grammarNames";
4
-
5
- export { default as ruleNames } from "./ruleNames";
6
- export { default as vocabularyNames } from "./vocabularyNames";
7
-
8
- export { default as CustomGrammar } from "./customGrammar";
9
- export { default as defaultCustomGrammar } from "./customGrammar/default";
10
- export { default as CombinedCustomGrammar } from "./customGrammar/combined";
11
-
12
3
  export { default as lexersUtilities } from "./utilities/lexers";
13
4
  export { default as parsersUtilities } from "./utilities/parsers";
14
- export { default as customGrammarUtilities } from "./utilities/customGrammar";
@@ -1,21 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  import { NominalLexer } from "occam-grammars";
4
- import { lexerUtilities } from "occam-lexers";
4
+ import { lexersUtilities } from "occam-custom-grammars";
5
5
 
6
- import CombinedCustomGrammar from "../customGrammar/combined";
7
-
8
- const { lexerFromRules, rulesFromEntries } = lexerUtilities;
6
+ const { lexerFromNothing, lexerFromCombinedCustomGrammar, lexerFromEntriesAndCombinedCustomGrammar } = lexersUtilities;
9
7
 
10
8
  export function nominalLexerFromNothing(Class) {
11
9
  if (Class === undefined) {
12
10
  Class = NominalLexer; ///
13
11
  }
14
12
 
15
- const { entries } = Class,
16
- combinedCustomGrammar = CombinedCustomGrammar.fromNothing(),
17
- rules = rulesFromEntriesAndCombinedCustomGrammar(entries, combinedCustomGrammar),
18
- nominalLexer = lexerFromRules(Class, rules);
13
+ const lexer = lexerFromNothing(Class),
14
+ nominalLexer = lexer; ///
19
15
 
20
16
  return nominalLexer;
21
17
  }
@@ -27,9 +23,8 @@ export function nominalLexerFromCombinedCustomGrammar(Class, combinedCustomGramm
27
23
  Class = NominalLexer; ///
28
24
  }
29
25
 
30
- const { entries } = Class,
31
- rules = rulesFromEntriesAndCombinedCustomGrammar(entries, combinedCustomGrammar),
32
- nominalLexer = lexerFromRules(Class, rules);
26
+ const lexer = lexerFromCombinedCustomGrammar(Class, combinedCustomGrammar),
27
+ nominalLexer = lexer; ///
33
28
 
34
29
  return nominalLexer;
35
30
  }
@@ -43,8 +38,8 @@ export function nominalLexerFromEntriesAndCombinedCustomGrammar(Class, entries,
43
38
  Class = NominalLexer; ///
44
39
  }
45
40
 
46
- const rules = rulesFromEntriesAndCombinedCustomGrammar(entries, combinedCustomGrammar),
47
- nominalLexer = lexerFromRules(Class, rules);
41
+ const lexer = lexerFromEntriesAndCombinedCustomGrammar(Class, entries, combinedCustomGrammar),
42
+ nominalLexer = lexer; ///
48
43
 
49
44
  return nominalLexer;
50
45
  }
@@ -54,16 +49,3 @@ export default {
54
49
  nominalLexerFromCombinedCustomGrammar,
55
50
  nominalLexerFromEntriesAndCombinedCustomGrammar
56
51
  };
57
-
58
- function rulesFromEntriesAndCombinedCustomGrammar(entries, combinedCustomGrammar) {
59
- const customGrammarEntries = combinedCustomGrammar.getEntries();
60
-
61
- entries = [ ///
62
- ...customGrammarEntries,
63
- ...entries
64
- ];
65
-
66
- const rules = rulesFromEntries(entries);
67
-
68
- return rules;
69
- }
@@ -1,21 +1,22 @@
1
1
  "use strict";
2
2
 
3
3
  import { NominalParser } from "occam-grammars";
4
- import { parserUtilities } from "occam-parsers";
4
+ import { parsersUtilities } from "occam-custom-grammars";
5
5
 
6
- import CombinedCustomGrammar from "../customGrammar/combined";
7
-
8
- const { rulesFromBNF, parserFromRules, parserFromRulesAndStartRuleName } = parserUtilities;
6
+ const { parserFromNothing,
7
+ parserFromStartRuleName,
8
+ parserFromCombinedCustomGrammar,
9
+ parserFromBNFAndCombinedCustomGrammar,
10
+ parserFromStartRuleNameAndCombinedCustomGrammar,
11
+ parserFromBNFStartRuleNameAndCombinedCustomGrammar } = parsersUtilities;
9
12
 
10
13
  export function nominalParserFromNothing(Class) {
11
14
  if (Class === undefined) {
12
15
  Class = NominalParser; ///
13
16
  }
14
17
 
15
- const { bnf } = Class,
16
- combinedCustomGrammar = CombinedCustomGrammar.fromNothing(),
17
- rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar),
18
- nominalParser = parserFromRules(Class, rules);
18
+ const parser = parserFromNothing(Class),
19
+ nominalParser = parser; ///
19
20
 
20
21
  return nominalParser;
21
22
  }
@@ -27,10 +28,8 @@ export function nominalParserFromStartRuleName(Class, startRuleName) {
27
28
  Class = NominalParser; ///
28
29
  }
29
30
 
30
- const { bnf } = Class,
31
- combinedCustomGrammar = CombinedCustomGrammar.fromNothing(),
32
- rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar),
33
- nominalParser = parserFromRulesAndStartRuleName(Class, rules, startRuleName);
31
+ const parser = parserFromStartRuleName(Class, startRuleName),
32
+ nominalParser = parser; ///
34
33
 
35
34
  return nominalParser;
36
35
  }
@@ -42,9 +41,8 @@ export function nominalParserFromCombinedCustomGrammar(Class, combinedCustomGram
42
41
  Class = NominalParser; ///
43
42
  }
44
43
 
45
- const { bnf } = Class,
46
- rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar),
47
- nominalParser = parserFromRules(Class, rules);
44
+ const parser = parserFromCombinedCustomGrammar(Class, combinedCustomGrammar),
45
+ nominalParser = parser; ///
48
46
 
49
47
  return nominalParser;
50
48
  }
@@ -58,8 +56,8 @@ export function nominalParserFromBNFAndCombinedCustomGrammar(Class, bnf, combine
58
56
  Class = NominalParser; ///
59
57
  }
60
58
 
61
- const rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar),
62
- nominalParser = parserFromRules(Class, rules);
59
+ const parser = parserFromBNFAndCombinedCustomGrammar(Class, bnf, combinedCustomGrammar),
60
+ nominalParser = parser; ///
63
61
 
64
62
  return nominalParser;
65
63
  }
@@ -73,9 +71,8 @@ export function nominalParserFromStartRuleNameAndCombinedCustomGrammar(Class, st
73
71
  Class = NominalParser; ///
74
72
  }
75
73
 
76
- const { bnf } = Class,
77
- rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar),
78
- nominalParser = parserFromRulesAndStartRuleName(Class, rules, startRuleName);
74
+ const parser = parserFromStartRuleNameAndCombinedCustomGrammar(Class, startRuleName, combinedCustomGrammar),
75
+ nominalParser = parser; ///
79
76
 
80
77
  return nominalParser;
81
78
  }
@@ -91,8 +88,8 @@ export function nominalParserFromBNFStartRuleNameAndCombinedCustomGrammar(Class,
91
88
  Class = NominalParser; ///
92
89
  }
93
90
 
94
- const rules = rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar),
95
- nominalParser = parserFromRulesAndStartRuleName(Class, rules, startRuleName);
91
+ const parser = parserFromBNFStartRuleNameAndCombinedCustomGrammar(Class, bnf, startRuleName, combinedCustomGrammar),
92
+ nominalParser = parser; ///
96
93
 
97
94
  return nominalParser;
98
95
  }
@@ -105,11 +102,3 @@ export default {
105
102
  nominalParserFromStartRuleNameAndCombinedCustomGrammar,
106
103
  nominalParserFromBNFStartRuleNameAndCombinedCustomGrammar
107
104
  };
108
-
109
- function rulesFromBNFAndCombinedCustomGrammar(bnf, combinedCustomGrammar) {
110
- let rules = rulesFromBNF(bnf);
111
-
112
- rules = combinedCustomGrammar.postProcess(rules);
113
-
114
- return rules;
115
- }
package/lib/constants.js DELETED
@@ -1,42 +0,0 @@
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 BASE_TYPE_SYMBOL () {
13
- return BASE_TYPE_SYMBOL;
14
- },
15
- get EMPTY_STRING () {
16
- return EMPTY_STRING;
17
- },
18
- get NONSENSE_RULE_NAME () {
19
- return NONSENSE_RULE_NAME;
20
- },
21
- get STUFF_RULE_NAME () {
22
- return STUFF_RULE_NAME;
23
- },
24
- get UNASSIGNED_TYPE () {
25
- return UNASSIGNED_TYPE;
26
- },
27
- get VERTICAL_BAR () {
28
- return VERTICAL_BAR;
29
- },
30
- get VERTICAL_SPACE () {
31
- return VERTICAL_SPACE;
32
- }
33
- });
34
- var EMPTY_STRING = "";
35
- var VERTICAL_BAR = "|";
36
- var VERTICAL_SPACE = "\n\n";
37
- var UNASSIGNED_TYPE = "unassigned";
38
- var STUFF_RULE_NAME = "stuff";
39
- var BASE_TYPE_SYMBOL = "<>";
40
- var NONSENSE_RULE_NAME = "nonsense";
41
-
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBFTVBUWV9TVFJJTkcgPSBcIlwiO1xuZXhwb3J0IGNvbnN0IFZFUlRJQ0FMX0JBUiA9IFwifFwiO1xuZXhwb3J0IGNvbnN0IFZFUlRJQ0FMX1NQQUNFID0gYFxuXG5gXG5leHBvcnQgY29uc3QgVU5BU1NJR05FRF9UWVBFID0gXCJ1bmFzc2lnbmVkXCI7XG5leHBvcnQgY29uc3QgU1RVRkZfUlVMRV9OQU1FID0gXCJzdHVmZlwiO1xuZXhwb3J0IGNvbnN0IEJBU0VfVFlQRV9TWU1CT0wgPSBcIjw+XCI7XG5leHBvcnQgY29uc3QgTk9OU0VOU0VfUlVMRV9OQU1FID0gXCJub25zZW5zZVwiO1xuIl0sIm5hbWVzIjpbIkJBU0VfVFlQRV9TWU1CT0wiLCJFTVBUWV9TVFJJTkciLCJOT05TRU5TRV9SVUxFX05BTUUiLCJTVFVGRl9SVUxFX05BTUUiLCJVTkFTU0lHTkVEX1RZUEUiLCJWRVJUSUNBTF9CQVIiLCJWRVJUSUNBTF9TUEFDRSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBU2FBO2VBQUFBOztRQVBBQztlQUFBQTs7UUFRQUM7ZUFBQUE7O1FBRkFDO2VBQUFBOztRQURBQztlQUFBQTs7UUFKQUM7ZUFBQUE7O1FBQ0FDO2VBQUFBOzs7QUFGTixJQUFNTCxlQUFlO0FBQ3JCLElBQU1JLGVBQWU7QUFDckIsSUFBTUMsaUJBQWlCO0FBR3ZCLElBQU1GLGtCQUFrQjtBQUN4QixJQUFNRCxrQkFBa0I7QUFDeEIsSUFBTUgsbUJBQW1CO0FBQ3pCLElBQU1FLHFCQUFxQiJ9