occam-grammars 1.3.309 → 1.3.310
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.
- package/example.js +78 -16
- package/lib/customGrammarBNF/bnf.js +14 -0
- package/lib/customGrammarBNF/entries.js +30 -0
- package/lib/customGrammarBNF/lexer.js +9 -4
- package/lib/customGrammarBNF/parser.js +8 -3
- package/package.json +1 -1
- package/src/customGrammarBNF/bnf.js +75 -0
- package/src/customGrammarBNF/entries.js +21 -0
- package/src/customGrammarBNF/lexer.js +3 -3
- package/src/customGrammarBNF/parser.js +2 -2
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var bnf = '\n\n document ::= ( rule | error )+ ;\n\n rule ::= name "::=" definitions ";" ;\n\n name ::= [name] ;\n\n definitions ::= definition ( "|" definition )* ;\n\n definition ::= part+ precedence? ;\n \n part ::= nonTerminalPart quantifier*\n\n | terminalPart quantifier*\n\n ;\n\n nonTerminalPart ::= choiceOfParts\n\n | sequenceOfParts\n\n | ruleName \n\n ;\n\n terminalPart ::= significantTokenType\n \n | stringLiteral\n \n | endOfLine\n \n | noWhitespace\n \n ;\n \n sequenceOfParts ::= "(" part part+ ")" ;\n\n choiceOfParts ::= "(" partChoice ( "|" partChoice )+ ")" ;\n\n partChoice ::= part precedence? ;\n\n ruleName ::= [name] ;\n\n significantTokenType ::= [type] ;\n\n stringLiteral ::= [string-literal] ;\n\n precedence ::= "(" [number]? ")" ;\n \n endOfLine ::= "<END_OF_LINE>" ;\n \n noWhitespace ::= "<NO_WHITESPACE>" ; \n\n quantifier ::= optionalQuantifier\n \n | oneOrMoreQuantifier\n \n | zeroOrMoreQuantifier\n \n ;\n\n optionalQuantifier ::= <NO_WHITESPACE>"?" ;\n\n oneOrMoreQuantifier ::= <NO_WHITESPACE>"+" ;\n\n zeroOrMoreQuantifier ::= <NO_WHITESPACE>"*" ;\n\n error. ::= . ;\n\n';
|
|
12
|
+
var _default = bnf;
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdXN0b21HcmFtbWFyQk5GL2JuZi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgYm5mID0gYFxuXG4gICAgICBkb2N1bWVudCAgICAgICAgICAgICAgICAgOjo9ICAoIHJ1bGUgfCBlcnJvciApKyA7XG5cbiAgICAgIHJ1bGUgICAgICAgICAgICAgICAgICAgICA6Oj0gIG5hbWUgXCI6Oj1cIiBkZWZpbml0aW9ucyBcIjtcIiA7XG5cbiAgICAgIG5hbWUgICAgICAgICAgICAgICAgICAgICA6Oj0gIFtuYW1lXSA7XG5cbiAgICAgIGRlZmluaXRpb25zICAgICAgICAgICAgICA6Oj0gIGRlZmluaXRpb24gKCBcInxcIiBkZWZpbml0aW9uICkqIDtcblxuICAgICAgZGVmaW5pdGlvbiAgICAgICAgICAgICAgIDo6PSAgcGFydCsgcHJlY2VkZW5jZT8gO1xuIFxuICAgICAgcGFydCAgICAgICAgICAgICAgICAgICAgIDo6PSAgbm9uVGVybWluYWxQYXJ0IHF1YW50aWZpZXIqXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHRlcm1pbmFsUGFydCBxdWFudGlmaWVyKlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cbiAgICAgIG5vblRlcm1pbmFsUGFydCAgICAgICAgICA6Oj0gIGNob2ljZU9mUGFydHNcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgc2VxdWVuY2VPZlBhcnRzXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHJ1bGVOYW1lIFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cbiAgICAgIHRlcm1pbmFsUGFydCAgICAgICAgICAgICA6Oj0gIHNpZ25pZmljYW50VG9rZW5UeXBlXG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgc3RyaW5nTGl0ZXJhbFxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGVuZE9mTGluZVxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIG5vV2hpdGVzcGFjZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgIHNlcXVlbmNlT2ZQYXJ0cyAgICAgICAgICA6Oj0gIFwiKFwiIHBhcnQgcGFydCsgXCIpXCIgO1xuXG4gICAgICBjaG9pY2VPZlBhcnRzICAgICAgICAgICAgOjo9ICBcIihcIiBwYXJ0Q2hvaWNlICggXCJ8XCIgcGFydENob2ljZSApKyBcIilcIiA7XG5cbiAgICAgIHBhcnRDaG9pY2UgICAgICAgICAgICAgICA6Oj0gIHBhcnQgcHJlY2VkZW5jZT8gO1xuXG4gICAgICBydWxlTmFtZSAgICAgICAgICAgICAgICAgOjo9ICBbbmFtZV0gO1xuXG4gICAgICBzaWduaWZpY2FudFRva2VuVHlwZSAgICAgOjo9ICBbdHlwZV0gO1xuXG4gICAgICBzdHJpbmdMaXRlcmFsICAgICAgICAgICAgOjo9ICBbc3RyaW5nLWxpdGVyYWxdIDtcblxuICAgICAgcHJlY2VkZW5jZSAgICAgICAgICAgICAgIDo6PSAgXCIoXCIgW251bWJlcl0/IFwiKVwiIDtcbiAgICAgIFxuICAgICAgZW5kT2ZMaW5lICAgICAgICAgICAgICAgIDo6PSAgXCI8RU5EX09GX0xJTkU+XCIgO1xuICAgICAgXG4gICAgICBub1doaXRlc3BhY2UgICAgICAgICAgICAgOjo9ICBcIjxOT19XSElURVNQQUNFPlwiIDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblxuICAgICAgcXVhbnRpZmllciAgICAgICAgICAgICAgIDo6PSAgb3B0aW9uYWxRdWFudGlmaWVyXG4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBvbmVPck1vcmVRdWFudGlmaWVyXG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgemVyb09yTW9yZVF1YW50aWZpZXJcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cbiAgICAgIG9wdGlvbmFsUXVhbnRpZmllciAgICAgICA6Oj0gIDxOT19XSElURVNQQUNFPlwiP1wiIDtcblxuICAgICAgb25lT3JNb3JlUXVhbnRpZmllciAgICAgIDo6PSAgPE5PX1dISVRFU1BBQ0U+XCIrXCIgO1xuXG4gICAgICB6ZXJvT3JNb3JlUXVhbnRpZmllciAgICAgOjo9ICA8Tk9fV0hJVEVTUEFDRT5cIipcIiA7XG5cbiAgICAgIGVycm9yLiAgICAgICAgICAgICAgICAgICA6Oj0gIC4gO1xuXG5gO1xuXG5leHBvcnQgZGVmYXVsdCBibmY7XG4iXSwibmFtZXMiOlsiYm5mIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkEwRUE7OztlQUFBOzs7QUF4RUEsSUFBTUEsTUFBTztJQXdFYixXQUFlQSJ9
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var entries = [
|
|
12
|
+
{
|
|
13
|
+
"special": "^(?:\\||\\(|\\)|\\?|\\*|\\+|::=|;|<NO_WHITESPACE>|<END_OF_LINE>)"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"number": "^(?:0|[1-9][0-9]*)"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "^[\\w~]+"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"type": "^\\[[^\\]]+\\]"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"unassigned": "^[^\\s]+"
|
|
26
|
+
}
|
|
27
|
+
];
|
|
28
|
+
var _default = entries;
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdXN0b21HcmFtbWFyQk5GL2VudHJpZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XHJcblxyXG5jb25zdCBlbnRyaWVzID0gW1xyXG4gIHtcclxuICAgIFwic3BlY2lhbFwiOiBcIl4oPzpcXFxcfHxcXFxcKHxcXFxcKXxcXFxcP3xcXFxcKnxcXFxcK3w6Oj18O3w8Tk9fV0hJVEVTUEFDRT58PEVORF9PRl9MSU5FPilcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJudW1iZXJcIjogXCJeKD86MHxbMS05XVswLTldKilcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJuYW1lXCI6IFwiXltcXFxcd35dK1wiXHJcbiAgfSxcclxuICB7XHJcbiAgICBcInR5cGVcIjogXCJeXFxcXFtbXlxcXFxdXStcXFxcXVwiXHJcbiAgfSxcclxuICB7XHJcbiAgICBcInVuYXNzaWduZWRcIjogXCJeW15cXFxcc10rXCJcclxuICB9XHJcbl07XHJcblxyXG5leHBvcnQgZGVmYXVsdCBlbnRyaWVzO1xyXG4iXSwibmFtZXMiOlsiZW50cmllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBb0JBOzs7ZUFBQTs7O0FBbEJBLElBQU1BLFVBQVU7SUFDZDtRQUNFLFdBQVc7SUFDYjtJQUNBO1FBQ0UsVUFBVTtJQUNaO0lBQ0E7UUFDRSxRQUFRO0lBQ1Y7SUFDQTtRQUNFLFFBQVE7SUFDVjtJQUNBO1FBQ0UsY0FBYztJQUNoQjtDQUNEO0lBRUQsV0FBZUEifQ==
|
|
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _occamlexers = require("occam-lexers");
|
|
12
|
+
var _entries = /*#__PURE__*/ _interop_require_default(require("./entries"));
|
|
12
13
|
function _assert_this_initialized(self) {
|
|
13
14
|
if (self === void 0) {
|
|
14
15
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
@@ -70,6 +71,11 @@ function _inherits(subClass, superClass) {
|
|
|
70
71
|
});
|
|
71
72
|
if (superClass) _set_prototype_of(subClass, superClass);
|
|
72
73
|
}
|
|
74
|
+
function _interop_require_default(obj) {
|
|
75
|
+
return obj && obj.__esModule ? obj : {
|
|
76
|
+
default: obj
|
|
77
|
+
};
|
|
78
|
+
}
|
|
73
79
|
function _possible_constructor_return(self, call) {
|
|
74
80
|
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
75
81
|
return call;
|
|
@@ -95,7 +101,6 @@ function _is_native_reflect_construct() {
|
|
|
95
101
|
return !!result;
|
|
96
102
|
})();
|
|
97
103
|
}
|
|
98
|
-
var entries = _occamlexers.BNFLexer.entries;
|
|
99
104
|
var CustomGrammarBNFnLexer = /*#__PURE__*/ function(CommonLexer) {
|
|
100
105
|
_inherits(CustomGrammarBNFnLexer, CommonLexer);
|
|
101
106
|
function CustomGrammarBNFnLexer() {
|
|
@@ -124,11 +129,11 @@ var CustomGrammarBNFnLexer = /*#__PURE__*/ function(CommonLexer) {
|
|
|
124
129
|
]);
|
|
125
130
|
return CustomGrammarBNFnLexer;
|
|
126
131
|
}(_occamlexers.CommonLexer);
|
|
127
|
-
_define_property(CustomGrammarBNFnLexer, "entries",
|
|
132
|
+
_define_property(CustomGrammarBNFnLexer, "entries", _entries.default);
|
|
128
133
|
_define_property(CustomGrammarBNFnLexer, "EndOfLineToken", _occamlexers.EndOfLineNonSignificantToken); ///
|
|
129
134
|
_define_property(CustomGrammarBNFnLexer, "WhitespaceToken", _occamlexers.WhitespaceToken);
|
|
130
135
|
_define_property(CustomGrammarBNFnLexer, "EndOfLineCommentToken", null);
|
|
131
|
-
_define_property(CustomGrammarBNFnLexer, "RegularExpressionToken",
|
|
136
|
+
_define_property(CustomGrammarBNFnLexer, "RegularExpressionToken", null);
|
|
132
137
|
_define_property(CustomGrammarBNFnLexer, "SingleLineCommentToken", null);
|
|
133
138
|
_define_property(CustomGrammarBNFnLexer, "EndOfMultiLineCommentToken", null);
|
|
134
139
|
_define_property(CustomGrammarBNFnLexer, "StartOfMultiLineCommentToken", null);
|
|
@@ -136,4 +141,4 @@ _define_property(CustomGrammarBNFnLexer, "MiddleOfMultiLineCommentToken", null);
|
|
|
136
141
|
_define_property(CustomGrammarBNFnLexer, "SinglyQuotedStringLiteralToken", null);
|
|
137
142
|
_define_property(CustomGrammarBNFnLexer, "DoublyQuotedStringLiteralToken", _occamlexers.DoublyQuotedStringLiteralToken);
|
|
138
143
|
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdXN0b21HcmFtbWFyQk5GL2xleGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBDb21tb25MZXhlciwgV2hpdGVzcGFjZVRva2VuLCBFbmRPZkxpbmVOb25TaWduaWZpY2FudFRva2VuLCBEb3VibHlRdW90ZWRTdHJpbmdMaXRlcmFsVG9rZW4gfSBmcm9tIFwib2NjYW0tbGV4ZXJzXCI7XG5cbmltcG9ydCBlbnRyaWVzIGZyb20gXCIuL2VudHJpZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ3VzdG9tR3JhbW1hckJORm5MZXhlciBleHRlbmRzIENvbW1vbkxleGVyIHtcbiAgc3RhdGljIGVudHJpZXMgPSBlbnRyaWVzO1xuXG4gIHN0YXRpYyBFbmRPZkxpbmVUb2tlbiA9IEVuZE9mTGluZU5vblNpZ25pZmljYW50VG9rZW47IC8vL1xuXG4gIHN0YXRpYyBXaGl0ZXNwYWNlVG9rZW4gPSBXaGl0ZXNwYWNlVG9rZW47XG5cbiAgc3RhdGljIEVuZE9mTGluZUNvbW1lbnRUb2tlbiA9IG51bGw7XG5cbiAgc3RhdGljIFJlZ3VsYXJFeHByZXNzaW9uVG9rZW4gPSBudWxsO1xuXG4gIHN0YXRpYyBTaW5nbGVMaW5lQ29tbWVudFRva2VuID0gbnVsbDtcblxuICBzdGF0aWMgRW5kT2ZNdWx0aUxpbmVDb21tZW50VG9rZW4gPSBudWxsO1xuXG4gIHN0YXRpYyBTdGFydE9mTXVsdGlMaW5lQ29tbWVudFRva2VuID0gbnVsbDtcblxuICBzdGF0aWMgTWlkZGxlT2ZNdWx0aUxpbmVDb21tZW50VG9rZW4gPSBudWxsO1xuXG4gIHN0YXRpYyBTaW5nbHlRdW90ZWRTdHJpbmdMaXRlcmFsVG9rZW4gPSBudWxsO1xuXG4gIHN0YXRpYyBEb3VibHlRdW90ZWRTdHJpbmdMaXRlcmFsVG9rZW4gPSBEb3VibHlRdW90ZWRTdHJpbmdMaXRlcmFsVG9rZW47XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkgeyByZXR1cm4gQ29tbW9uTGV4ZXIuZnJvbU5vdGhpbmcoQ3VzdG9tR3JhbW1hckJORm5MZXhlcik7IH1cblxuICBzdGF0aWMgZnJvbVJ1bGVzKHJ1bGVzKSB7IHJldHVybiBDb21tb25MZXhlci5mcm9tUnVsZXMoQ3VzdG9tR3JhbW1hckJORm5MZXhlciwgcnVsZXMpOyB9XG5cbiAgc3RhdGljIGZyb21FbnRyaWVzKGVudHJpZXMpIHsgcmV0dXJuIENvbW1vbkxleGVyLmZyb21FbnRyaWVzKEN1c3RvbUdyYW1tYXJCTkZuTGV4ZXIsIGVudHJpZXMpOyB9XG59XG4iXSwibmFtZXMiOlsiQ3VzdG9tR3JhbW1hckJORm5MZXhlciIsImZyb21Ob3RoaW5nIiwiQ29tbW9uTGV4ZXIiLCJmcm9tUnVsZXMiLCJydWxlcyIsImZyb21FbnRyaWVzIiwiZW50cmllcyIsIkVuZE9mTGluZVRva2VuIiwiRW5kT2ZMaW5lTm9uU2lnbmlmaWNhbnRUb2tlbiIsIldoaXRlc3BhY2VUb2tlbiIsIkVuZE9mTGluZUNvbW1lbnRUb2tlbiIsIlJlZ3VsYXJFeHByZXNzaW9uVG9rZW4iLCJTaW5nbGVMaW5lQ29tbWVudFRva2VuIiwiRW5kT2ZNdWx0aUxpbmVDb21tZW50VG9rZW4iLCJTdGFydE9mTXVsdGlMaW5lQ29tbWVudFRva2VuIiwiTWlkZGxlT2ZNdWx0aUxpbmVDb21tZW50VG9rZW4iLCJTaW5nbHlRdW90ZWRTdHJpbmdMaXRlcmFsVG9rZW4iLCJEb3VibHlRdW90ZWRTdHJpbmdMaXRlcmFsVG9rZW4iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7OzJCQUpzRjs4REFFdkY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUwsSUFBQSxBQUFNQSx1Q0FBTjtjQUFNQTthQUFBQTtnQ0FBQUE7UUFBTixPQUFBLGtCQUFNQTs7a0JBQUFBOztZQXVCWkMsS0FBQUE7bUJBQVAsU0FBT0E7Z0JBQWdCLE9BQU9DLHdCQUFXLENBQUNELFdBQVcsQ0F2QmxDRDtZQXVCNEQ7OztZQUV4RUcsS0FBQUE7bUJBQVAsU0FBT0EsVUFBVUMsS0FBSztnQkFBSSxPQUFPRix3QkFBVyxDQUFDQyxTQUFTLENBekJuQ0gsd0JBeUI0REk7WUFBUTs7O1lBRWhGQyxLQUFBQTttQkFBUCxTQUFPQSxZQUFZQyxPQUFPO2dCQUFJLE9BQU9KLHdCQUFXLENBQUNHLFdBQVcsQ0EzQnpDTCx3QkEyQmtFTTtZQUFVOzs7V0EzQjVFTjtFQUErQkUsd0JBQVc7QUFDN0QsaUJBRG1CRix3QkFDWk0sV0FBVUEsZ0JBQU87QUFFeEIsaUJBSG1CTix3QkFHWk8sa0JBQWlCQyx5Q0FBNEIsR0FBRSxHQUFHO0FBRXpELGlCQUxtQlIsd0JBS1pTLG1CQUFrQkEsNEJBQWU7QUFFeEMsaUJBUG1CVCx3QkFPWlUseUJBQXdCO0FBRS9CLGlCQVRtQlYsd0JBU1pXLDBCQUF5QjtBQUVoQyxpQkFYbUJYLHdCQVdaWSwwQkFBeUI7QUFFaEMsaUJBYm1CWix3QkFhWmEsOEJBQTZCO0FBRXBDLGlCQWZtQmIsd0JBZVpjLGdDQUErQjtBQUV0QyxpQkFqQm1CZCx3QkFpQlplLGlDQUFnQztBQUV2QyxpQkFuQm1CZix3QkFtQlpnQixrQ0FBaUM7QUFFeEMsaUJBckJtQmhCLHdCQXFCWmlCLGtDQUFpQ0EsMkNBQThCIn0=
|
|
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _occamparsers = require("occam-parsers");
|
|
12
|
+
var _bnf = /*#__PURE__*/ _interop_require_default(require("./bnf"));
|
|
12
13
|
function _assert_this_initialized(self) {
|
|
13
14
|
if (self === void 0) {
|
|
14
15
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
@@ -70,6 +71,11 @@ function _inherits(subClass, superClass) {
|
|
|
70
71
|
});
|
|
71
72
|
if (superClass) _set_prototype_of(subClass, superClass);
|
|
72
73
|
}
|
|
74
|
+
function _interop_require_default(obj) {
|
|
75
|
+
return obj && obj.__esModule ? obj : {
|
|
76
|
+
default: obj
|
|
77
|
+
};
|
|
78
|
+
}
|
|
73
79
|
function _possible_constructor_return(self, call) {
|
|
74
80
|
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
75
81
|
return call;
|
|
@@ -95,7 +101,6 @@ function _is_native_reflect_construct() {
|
|
|
95
101
|
return !!result;
|
|
96
102
|
})();
|
|
97
103
|
}
|
|
98
|
-
var bnf = _occamparsers.BNFParser.bnf;
|
|
99
104
|
var CustomGrammarBNFParser = /*#__PURE__*/ function(CommonParser) {
|
|
100
105
|
_inherits(CustomGrammarBNFParser, CommonParser);
|
|
101
106
|
function CustomGrammarBNFParser() {
|
|
@@ -124,6 +129,6 @@ var CustomGrammarBNFParser = /*#__PURE__*/ function(CommonParser) {
|
|
|
124
129
|
]);
|
|
125
130
|
return CustomGrammarBNFParser;
|
|
126
131
|
}(_occamparsers.CommonParser);
|
|
127
|
-
_define_property(CustomGrammarBNFParser, "bnf",
|
|
132
|
+
_define_property(CustomGrammarBNFParser, "bnf", _bnf.default);
|
|
128
133
|
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdXN0b21HcmFtbWFyQk5GL3BhcnNlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgQ29tbW9uUGFyc2VyIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcblxuaW1wb3J0IGJuZiBmcm9tIFwiLi9ibmZcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ3VzdG9tR3JhbW1hckJORlBhcnNlciBleHRlbmRzIENvbW1vblBhcnNlciB7XG4gIHN0YXRpYyBibmYgPSBibmY7XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkgeyByZXR1cm4gQ29tbW9uUGFyc2VyLmZyb21Ob3RoaW5nKEN1c3RvbUdyYW1tYXJCTkZQYXJzZXIpOyB9XG5cbiAgc3RhdGljIGZyb21CTkYoYm5mKSB7IHJldHVybiBDb21tb25QYXJzZXIuZnJvbUJORihDdXN0b21HcmFtbWFyQk5GUGFyc2VyLCBibmYpOyB9XG5cbiAgc3RhdGljIGZyb21SdWxlcyhydWxlcykgeyByZXR1cm4gQ29tbW9uUGFyc2VyLmZyb21SdWxlcyhDdXN0b21HcmFtbWFyQk5GUGFyc2VyLCBydWxlcyk7IH1cbn1cbiJdLCJuYW1lcyI6WyJDdXN0b21HcmFtbWFyQk5GUGFyc2VyIiwiZnJvbU5vdGhpbmciLCJDb21tb25QYXJzZXIiLCJmcm9tQk5GIiwiYm5mIiwiZnJvbVJ1bGVzIiwicnVsZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7OzRCQUpROzBEQUViOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVELElBQUEsQUFBTUEsdUNBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO1FBQU4sT0FBQSxrQkFBTUE7O2tCQUFBQTs7WUFHWkMsS0FBQUE7bUJBQVAsU0FBT0E7Z0JBQWdCLE9BQU9DLDBCQUFZLENBQUNELFdBQVcsQ0FIbkNEO1lBRzZEOzs7WUFFekVHLEtBQUFBO21CQUFQLFNBQU9BLFFBQVFDLEdBQUc7Z0JBQUksT0FBT0YsMEJBQVksQ0FBQ0MsT0FBTyxDQUw5Qkgsd0JBS3VESTtZQUFNOzs7WUFFekVDLEtBQUFBO21CQUFQLFNBQU9BLFVBQVVDLEtBQUs7Z0JBQUksT0FBT0osMEJBQVksQ0FBQ0csU0FBUyxDQVBwQ0wsd0JBTzZETTtZQUFROzs7V0FQckVOO0VBQStCRSwwQkFBWTtBQUM5RCxpQkFEbUJGLHdCQUNaSSxPQUFNQSxZQUFHIn0=
|
package/package.json
CHANGED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const bnf = `
|
|
4
|
+
|
|
5
|
+
document ::= ( rule | error )+ ;
|
|
6
|
+
|
|
7
|
+
rule ::= name "::=" definitions ";" ;
|
|
8
|
+
|
|
9
|
+
name ::= [name] ;
|
|
10
|
+
|
|
11
|
+
definitions ::= definition ( "|" definition )* ;
|
|
12
|
+
|
|
13
|
+
definition ::= part+ precedence? ;
|
|
14
|
+
|
|
15
|
+
part ::= nonTerminalPart quantifier*
|
|
16
|
+
|
|
17
|
+
| terminalPart quantifier*
|
|
18
|
+
|
|
19
|
+
;
|
|
20
|
+
|
|
21
|
+
nonTerminalPart ::= choiceOfParts
|
|
22
|
+
|
|
23
|
+
| sequenceOfParts
|
|
24
|
+
|
|
25
|
+
| ruleName
|
|
26
|
+
|
|
27
|
+
;
|
|
28
|
+
|
|
29
|
+
terminalPart ::= significantTokenType
|
|
30
|
+
|
|
31
|
+
| stringLiteral
|
|
32
|
+
|
|
33
|
+
| endOfLine
|
|
34
|
+
|
|
35
|
+
| noWhitespace
|
|
36
|
+
|
|
37
|
+
;
|
|
38
|
+
|
|
39
|
+
sequenceOfParts ::= "(" part part+ ")" ;
|
|
40
|
+
|
|
41
|
+
choiceOfParts ::= "(" partChoice ( "|" partChoice )+ ")" ;
|
|
42
|
+
|
|
43
|
+
partChoice ::= part precedence? ;
|
|
44
|
+
|
|
45
|
+
ruleName ::= [name] ;
|
|
46
|
+
|
|
47
|
+
significantTokenType ::= [type] ;
|
|
48
|
+
|
|
49
|
+
stringLiteral ::= [string-literal] ;
|
|
50
|
+
|
|
51
|
+
precedence ::= "(" [number]? ")" ;
|
|
52
|
+
|
|
53
|
+
endOfLine ::= "<END_OF_LINE>" ;
|
|
54
|
+
|
|
55
|
+
noWhitespace ::= "<NO_WHITESPACE>" ;
|
|
56
|
+
|
|
57
|
+
quantifier ::= optionalQuantifier
|
|
58
|
+
|
|
59
|
+
| oneOrMoreQuantifier
|
|
60
|
+
|
|
61
|
+
| zeroOrMoreQuantifier
|
|
62
|
+
|
|
63
|
+
;
|
|
64
|
+
|
|
65
|
+
optionalQuantifier ::= <NO_WHITESPACE>"?" ;
|
|
66
|
+
|
|
67
|
+
oneOrMoreQuantifier ::= <NO_WHITESPACE>"+" ;
|
|
68
|
+
|
|
69
|
+
zeroOrMoreQuantifier ::= <NO_WHITESPACE>"*" ;
|
|
70
|
+
|
|
71
|
+
error. ::= . ;
|
|
72
|
+
|
|
73
|
+
`;
|
|
74
|
+
|
|
75
|
+
export default bnf;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const entries = [
|
|
4
|
+
{
|
|
5
|
+
"special": "^(?:\\||\\(|\\)|\\?|\\*|\\+|::=|;|<NO_WHITESPACE>|<END_OF_LINE>)"
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
"number": "^(?:0|[1-9][0-9]*)"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "^[\\w~]+"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"type": "^\\[[^\\]]+\\]"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"unassigned": "^[^\\s]+"
|
|
18
|
+
}
|
|
19
|
+
];
|
|
20
|
+
|
|
21
|
+
export default entries;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { CommonLexer, WhitespaceToken, EndOfLineNonSignificantToken, DoublyQuotedStringLiteralToken } from "occam-lexers";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
import entries from "./entries";
|
|
6
6
|
|
|
7
7
|
export default class CustomGrammarBNFnLexer extends CommonLexer {
|
|
8
8
|
static entries = entries;
|
|
@@ -13,7 +13,7 @@ export default class CustomGrammarBNFnLexer extends CommonLexer {
|
|
|
13
13
|
|
|
14
14
|
static EndOfLineCommentToken = null;
|
|
15
15
|
|
|
16
|
-
static RegularExpressionToken =
|
|
16
|
+
static RegularExpressionToken = null;
|
|
17
17
|
|
|
18
18
|
static SingleLineCommentToken = null;
|
|
19
19
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { CommonParser } from "occam-parsers";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
import bnf from "./bnf";
|
|
6
6
|
|
|
7
7
|
export default class CustomGrammarBNFParser extends CommonParser {
|
|
8
8
|
static bnf = bnf;
|