@plumile/ui 0.1.113 → 0.1.114
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/lib/esm/_virtual/_rolldown/runtime.js +5 -5
- package/lib/esm/atomic/molecules/markdown/components/MarkdownLink.css.js +1 -0
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTableCell.css.js +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-7EHR7CIX.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-4EGX6M5U.js +37 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-4EGX6M5U.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-5DO6E6H7.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-5DO6E6H7.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-LIHQZDEY.js → chunk-BR22UD5L.js} +18 -21
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-BR22UD5L.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FHYWG6QK.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FHYWG6QK.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MPE355IW.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MPE355IW.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MZUSXYTE.js +32 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MZUSXYTE.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-N66VUXT2.js +56 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-N66VUXT2.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-NNHCCRGN.js +20648 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-NNHCCRGN.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-PUPMXCY4.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-PUPMXCY4.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-UIBZB4QT.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-UIBZB4QT.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WCWK7LTN.js +33 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WCWK7LTN.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/eventmodeling-FCH6USID.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-WXDBUCRP.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-J43DQDTF.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-YPE3B663.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-LRSECV5Y.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-GUYGQ44K.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treeView-BLDUP644.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-LRROVOQU.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-L42UT6IY.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +24 -19
- package/lib/esm/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js.map +1 -1
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/greedy-fas.js +8 -8
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/layout.js +105 -105
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/nesting-graph.js +12 -12
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/cross-count.js +8 -8
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/index.js +12 -12
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/init-order.js +6 -6
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js +7 -7
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js +9 -9
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/sort.js +7 -7
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/position/bk.js +53 -53
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/position/index.js +5 -5
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js +26 -26
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/rank/util.js +9 -9
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/util.js +54 -54
- package/lib/esm/node_modules/dagre-d3-es/src/graphlib/graph.js +45 -45
- package/lib/esm/node_modules/dagre-d3-es/src/graphlib/json.js +18 -18
- package/lib/esm/node_modules/lodash-es/_arrayLikeKeys.js +8 -8
- package/lib/esm/node_modules/lodash-es/_baseAssign.js +3 -3
- package/lib/esm/node_modules/lodash-es/_baseClone.js +24 -24
- package/lib/esm/node_modules/lodash-es/_baseForOwn.js +3 -3
- package/lib/esm/node_modules/lodash-es/_baseGetAllKeys.js +3 -3
- package/lib/esm/node_modules/lodash-es/_baseIsEqualDeep.js +12 -12
- package/lib/esm/node_modules/lodash-es/_baseIteratee.js +4 -4
- package/lib/esm/node_modules/lodash-es/_baseMatchesProperty.js +9 -9
- package/lib/esm/node_modules/lodash-es/_baseMerge.js +6 -6
- package/lib/esm/node_modules/lodash-es/_baseMergeDeep.js +15 -15
- package/lib/esm/node_modules/lodash-es/_baseOrderBy.js +14 -14
- package/lib/esm/node_modules/lodash-es/_baseSet.js +8 -8
- package/lib/esm/node_modules/lodash-es/_baseSetToString.js +5 -5
- package/lib/esm/node_modules/lodash-es/_baseToString.js +11 -11
- package/lib/esm/node_modules/lodash-es/_baseUniq.js +7 -7
- package/lib/esm/node_modules/lodash-es/_copySymbols.js +3 -3
- package/lib/esm/node_modules/lodash-es/_createSet.js +6 -6
- package/lib/esm/node_modules/lodash-es/_equalByTag.js +18 -18
- package/lib/esm/node_modules/lodash-es/_flatRest.js +4 -4
- package/lib/esm/node_modules/lodash-es/_getAllKeys.js +3 -3
- package/lib/esm/node_modules/lodash-es/_getAllKeysIn.js +4 -4
- package/lib/esm/node_modules/lodash-es/_getSymbolsIn.js +3 -3
- package/lib/esm/node_modules/lodash-es/_hasPath.js +5 -5
- package/lib/esm/node_modules/lodash-es/_initCloneObject.js +4 -4
- package/lib/esm/node_modules/lodash-es/_isFlattenable.js +3 -3
- package/lib/esm/node_modules/lodash-es/_isIterateeCall.js +6 -6
- package/lib/esm/node_modules/lodash-es/_mapCacheClear.js +6 -6
- package/lib/esm/node_modules/lodash-es/findIndex.js +4 -4
- package/lib/esm/node_modules/lodash-es/forEach.js +3 -3
- package/lib/esm/node_modules/lodash-es/forIn.js +3 -3
- package/lib/esm/node_modules/lodash-es/isEmpty.js +8 -8
- package/lib/esm/node_modules/lodash-es/isPlainObject.js +4 -4
- package/lib/esm/node_modules/lodash-es/isString.js +3 -3
- package/lib/esm/node_modules/lodash-es/keys.js +4 -4
- package/lib/esm/node_modules/lodash-es/keysIn.js +3 -3
- package/lib/esm/node_modules/lodash-es/map.js +3 -3
- package/lib/esm/node_modules/lodash-es/mapValues.js +5 -5
- package/lib/esm/node_modules/lodash-es/max.js +3 -3
- package/lib/esm/node_modules/lodash-es/min.js +3 -3
- package/lib/esm/node_modules/lodash-es/minBy.js +3 -3
- package/lib/esm/node_modules/lodash-es/reduce.js +5 -5
- package/lib/esm/node_modules/lodash-es/size.js +4 -4
- package/lib/esm/node_modules/lodash-es/sortBy.js +6 -6
- package/lib/esm/node_modules/lodash-es/union.js +6 -6
- package/lib/esm/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5PVQY5BW.js +146 -146
- package/lib/esm/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5PVQY5BW.js.map +1 -1
- package/lib/esm/node_modules/mermaid/dist/mermaid.core.js +374 -374
- package/lib/esm/node_modules/mermaid/dist/mermaid.core.js.map +1 -1
- package/package.json +2 -2
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/helpers.js +0 -27
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/helpers.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/model.js +0 -155
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/model.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/visitor.js +0 -45
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/visitor.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/api.js +0 -2
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js +0 -89
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js +0 -39
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js +0 -600
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js +0 -29
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/print.js +0 -13
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/print.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/timer.js +0 -12
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/timer.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/to-fast-properties.js +0 -14
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/to-fast-properties.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-YZFGNWBL.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2KRD3SAO.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2KRD3SAO.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-67CJDMHE.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-67CJDMHE.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-7N4EOEYR.js +0 -40
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-7N4EOEYR.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-AA7GKIK3.js +0 -35
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-AA7GKIK3.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FOC6F5B3.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FOC6F5B3.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js +0 -1210
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KGLVRYIC.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KGLVRYIC.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LIHQZDEY.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js +0 -36
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-7Q5UKJZL.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-OMHHGYJF.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-4T2RLAQJ.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-ZZUOXDRM.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-PYXPWWZC.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treeView-SZITEDCU.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-W4RFUUIX.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-RL74JXVD.js +0 -3
- package/lib/esm/node_modules/chevrotain/lib/src/api.js +0 -10
- package/lib/esm/node_modules/chevrotain/lib/src/lang/lang_extensions.js +0 -14
- package/lib/esm/node_modules/chevrotain/lib/src/lang/lang_extensions.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/constants.js +0 -6
- package/lib/esm/node_modules/chevrotain/lib/src/parse/constants.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst.js +0 -17
- package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js +0 -53
- package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/errors_public.js +0 -81
- package/lib/esm/node_modules/chevrotain/lib/src/parse/errors_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/exceptions_public.js +0 -37
- package/lib/esm/node_modules/chevrotain/lib/src/parse/exceptions_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/checks.js +0 -279
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/checks.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/first.js +0 -27
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/first.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/follow.js +0 -32
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/follow.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js +0 -18
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js +0 -269
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/keys.js +0 -8
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/keys.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js +0 -45
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js +0 -245
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/resolver.js +0 -34
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/resolver.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/rest.js +0 -60
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/rest.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/parser.js +0 -118
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/parser.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js +0 -50
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js +0 -170
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js +0 -47
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js +0 -111
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js +0 -25
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js +0 -316
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js +0 -291
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js +0 -147
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js +0 -96
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js +0 -15
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer.js +0 -439
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_errors_public.js +0 -13
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_errors_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_public.js +0 -257
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp.js +0 -157
- package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp_parser.js +0 -19
- package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp_parser.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens.js +0 -68
- package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens_public.js +0 -43
- package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain-allstar/lib/all-star-lookahead.js +0 -365
- package/lib/esm/node_modules/chevrotain-allstar/lib/all-star-lookahead.js.map +0 -1
- package/lib/esm/node_modules/chevrotain-allstar/lib/atn.js +0 -197
- package/lib/esm/node_modules/chevrotain-allstar/lib/atn.js.map +0 -1
- package/lib/esm/node_modules/chevrotain-allstar/lib/dfa.js +0 -35
- package/lib/esm/node_modules/chevrotain-allstar/lib/dfa.js.map +0 -1
- package/lib/esm/node_modules/chevrotain-allstar/lib/index.js +0 -1
- package/lib/esm/node_modules/langium/lib/default-module.js +0 -89
- package/lib/esm/node_modules/langium/lib/default-module.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/dependency-injection.js +0 -62
- package/lib/esm/node_modules/langium/lib/dependency-injection.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/documentation/comment-provider.js +0 -15
- package/lib/esm/node_modules/langium/lib/documentation/comment-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/documentation/documentation-provider.js +0 -40
- package/lib/esm/node_modules/langium/lib/documentation/documentation-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/documentation/jsdoc.js +0 -307
- package/lib/esm/node_modules/langium/lib/documentation/jsdoc.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/languages/generated/ast.js +0 -900
- package/lib/esm/node_modules/langium/lib/languages/generated/ast.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/languages/grammar-config.js +0 -17
- package/lib/esm/node_modules/langium/lib/languages/grammar-config.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/async-parser.js +0 -13
- package/lib/esm/node_modules/langium/lib/parser/async-parser.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/completion-parser-builder.js +0 -11
- package/lib/esm/node_modules/langium/lib/parser/completion-parser-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/cst-node-builder.js +0 -164
- package/lib/esm/node_modules/langium/lib/parser/cst-node-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/langium-parser-builder.js +0 -15
- package/lib/esm/node_modules/langium/lib/parser/langium-parser-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/langium-parser.js +0 -397
- package/lib/esm/node_modules/langium/lib/parser/langium-parser.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/lexer.js +0 -54
- package/lib/esm/node_modules/langium/lib/parser/lexer.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/parser-builder-base.js +0 -278
- package/lib/esm/node_modules/langium/lib/parser/parser-builder-base.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/token-builder.js +0 -65
- package/lib/esm/node_modules/langium/lib/parser/token-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/value-converter.js +0 -82
- package/lib/esm/node_modules/langium/lib/parser/value-converter.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/linker.js +0 -195
- package/lib/esm/node_modules/langium/lib/references/linker.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/name-provider.js +0 -17
- package/lib/esm/node_modules/langium/lib/references/name-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/references.js +0 -80
- package/lib/esm/node_modules/langium/lib/references/references.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/scope-computation.js +0 -39
- package/lib/esm/node_modules/langium/lib/references/scope-computation.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/scope-provider.js +0 -38
- package/lib/esm/node_modules/langium/lib/references/scope-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/scope.js +0 -46
- package/lib/esm/node_modules/langium/lib/references/scope.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/serializer/hydrator.js +0 -129
- package/lib/esm/node_modules/langium/lib/serializer/hydrator.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/serializer/json-serializer.js +0 -149
- package/lib/esm/node_modules/langium/lib/serializer/json-serializer.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/service-registry.js +0 -41
- package/lib/esm/node_modules/langium/lib/service-registry.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/syntax-tree.js +0 -74
- package/lib/esm/node_modules/langium/lib/syntax-tree.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/ast-utils.js +0 -124
- package/lib/esm/node_modules/langium/lib/utils/ast-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/caching.js +0 -84
- package/lib/esm/node_modules/langium/lib/utils/caching.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/cancellation.js +0 -9
- package/lib/esm/node_modules/langium/lib/utils/cancellation.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/collections.js +0 -89
- package/lib/esm/node_modules/langium/lib/utils/collections.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/cst-utils.js +0 -77
- package/lib/esm/node_modules/langium/lib/utils/cst-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/disposable.js +0 -12
- package/lib/esm/node_modules/langium/lib/utils/disposable.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/errors.js +0 -13
- package/lib/esm/node_modules/langium/lib/utils/errors.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/event.js +0 -9
- package/lib/esm/node_modules/langium/lib/utils/event.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/grammar-loader.js +0 -26
- package/lib/esm/node_modules/langium/lib/utils/grammar-loader.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/grammar-utils.js +0 -221
- package/lib/esm/node_modules/langium/lib/utils/grammar-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/promise-utils.js +0 -31
- package/lib/esm/node_modules/langium/lib/utils/promise-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/regexp-utils.js +0 -146
- package/lib/esm/node_modules/langium/lib/utils/regexp-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/stream.js +0 -331
- package/lib/esm/node_modules/langium/lib/utils/stream.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/uri-utils.js +0 -111
- package/lib/esm/node_modules/langium/lib/utils/uri-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/validation/document-validator.js +0 -213
- package/lib/esm/node_modules/langium/lib/validation/document-validator.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/validation/validation-registry.js +0 -90
- package/lib/esm/node_modules/langium/lib/validation/validation-registry.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/ast-descriptions.js +0 -61
- package/lib/esm/node_modules/langium/lib/workspace/ast-descriptions.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/ast-node-locator.js +0 -32
- package/lib/esm/node_modules/langium/lib/workspace/ast-node-locator.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/configuration.js +0 -55
- package/lib/esm/node_modules/langium/lib/workspace/configuration.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/document-builder.js +0 -200
- package/lib/esm/node_modules/langium/lib/workspace/document-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/documents.js +0 -146
- package/lib/esm/node_modules/langium/lib/workspace/documents.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/file-system-provider.js +0 -37
- package/lib/esm/node_modules/langium/lib/workspace/file-system-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/index-manager.js +0 -53
- package/lib/esm/node_modules/langium/lib/workspace/index-manager.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/workspace-lock.js +0 -46
- package/lib/esm/node_modules/langium/lib/workspace/workspace-lock.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/workspace-manager.js +0 -70
- package/lib/esm/node_modules/langium/lib/workspace/workspace-manager.js.map +0 -1
- package/lib/esm/node_modules/lodash-es/flatMap.js +0 -10
- package/lib/esm/node_modules/lodash-es/flatMap.js.map +0 -1
- package/lib/esm/node_modules/lodash-es/uniqBy.js +0 -10
- package/lib/esm/node_modules/lodash-es/uniqBy.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/cancellation.js +0 -61
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/cancellation.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/events.js +0 -68
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/events.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/is.js +0 -38
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/is.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/ral.js +0 -22
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/ral.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/browser/main.js +0 -32
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/browser/main.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/api.js +0 -40
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/api.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/connection.js +0 -16
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/connection.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/messages.js +0 -35
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/messages.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +0 -23
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +0 -19
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +0 -37
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +0 -39
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +0 -19
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +0 -23
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +0 -19
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +0 -678
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +0 -23
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +0 -130
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +0 -28
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +0 -35
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +0 -23
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +0 -19
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +0 -46
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.js +0 -11
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.js +0 -56
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.js +0 -124
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.js +0 -341
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.js +0 -61
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js +0 -651
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.js +0 -17
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.js +0 -68
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.js +0 -38
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +0 -239
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +0 -97
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.js +0 -133
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +0 -89
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.js +0 -165
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.js +0 -22
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.js +0 -48
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +0 -62
- package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-textdocument/lib/esm/main.js +0 -142
- package/lib/esm/node_modules/vscode-languageserver-textdocument/lib/esm/main.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-types/lib/esm/main.js +0 -1088
- package/lib/esm/node_modules/vscode-languageserver-types/lib/esm/main.js.map +0 -1
- package/lib/esm/node_modules/vscode-uri/lib/esm/index.js +0 -377
- package/lib/esm/node_modules/vscode-uri/lib/esm/index.js.map +0 -1
|
@@ -1,279 +0,0 @@
|
|
|
1
|
-
import { Alternation as e, Alternative as t, NonTerminal as n, Option as r, Repetition as i, RepetitionMandatory as a, RepetitionMandatoryWithSeparator as o, RepetitionWithSeparator as s, Terminal as c } from "../../../../../@chevrotain/gast/lib/src/model.js";
|
|
2
|
-
import { GAstVisitor as l } from "../../../../../@chevrotain/gast/lib/src/visitor.js";
|
|
3
|
-
import { getProductionDslName as u, isOptionalProd as d } from "../../../../../@chevrotain/gast/lib/src/helpers.js";
|
|
4
|
-
import { tokenStructuredMatcher as f } from "../../scan/tokens.js";
|
|
5
|
-
import { nextPossibleTokensAfter as p } from "./interpreter.js";
|
|
6
|
-
import { containsPath as m, getLookaheadPathsForOptionalProd as h, getLookaheadPathsForOr as g, getProdType as _, isStrictPrefixOfPath as v } from "./lookahead.js";
|
|
7
|
-
import { ParserDefinitionErrorType as y } from "../parser/parser.js";
|
|
8
|
-
//#region ../../node_modules/chevrotain/lib/src/parse/grammar/checks.js
|
|
9
|
-
function b(e) {
|
|
10
|
-
return e.lookaheadStrategy.validate({
|
|
11
|
-
rules: e.rules,
|
|
12
|
-
tokenTypes: e.tokenTypes,
|
|
13
|
-
grammarName: e.grammarName
|
|
14
|
-
}).map((e) => Object.assign({ type: y.CUSTOM_LOOKAHEAD_VALIDATION }, e));
|
|
15
|
-
}
|
|
16
|
-
function x(e, t, n, r) {
|
|
17
|
-
let i = e.flatMap((e) => S(e, n)), a = R(e, t, n), o = e.flatMap((e) => P(e, n)), s = e.flatMap((t) => E(t, e, r, n));
|
|
18
|
-
return i.concat(a, o, s);
|
|
19
|
-
}
|
|
20
|
-
function S(e, t) {
|
|
21
|
-
let n = new T();
|
|
22
|
-
e.accept(n);
|
|
23
|
-
let r = n.allProductions, i = Object.groupBy(r, C), a = Object.fromEntries(Object.entries(i).filter(([e, t]) => t.length > 1));
|
|
24
|
-
return Object.values(a).map((n) => {
|
|
25
|
-
let r = n[0], i = t.buildDuplicateFoundError(e, n), a = u(r), o = {
|
|
26
|
-
message: i,
|
|
27
|
-
type: y.DUPLICATE_PRODUCTIONS,
|
|
28
|
-
ruleName: e.name,
|
|
29
|
-
dslName: a,
|
|
30
|
-
occurrence: r.idx
|
|
31
|
-
}, s = w(r);
|
|
32
|
-
return s && (o.parameter = s), o;
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
function C(e) {
|
|
36
|
-
return `${u(e)}_#_${e.idx}_#_${w(e)}`;
|
|
37
|
-
}
|
|
38
|
-
function w(e) {
|
|
39
|
-
return e instanceof c ? e.terminalType.name : e instanceof n ? e.nonTerminalName : "";
|
|
40
|
-
}
|
|
41
|
-
var T = class extends l {
|
|
42
|
-
constructor() {
|
|
43
|
-
super(...arguments), this.allProductions = [];
|
|
44
|
-
}
|
|
45
|
-
visitNonTerminal(e) {
|
|
46
|
-
this.allProductions.push(e);
|
|
47
|
-
}
|
|
48
|
-
visitOption(e) {
|
|
49
|
-
this.allProductions.push(e);
|
|
50
|
-
}
|
|
51
|
-
visitRepetitionWithSeparator(e) {
|
|
52
|
-
this.allProductions.push(e);
|
|
53
|
-
}
|
|
54
|
-
visitRepetitionMandatory(e) {
|
|
55
|
-
this.allProductions.push(e);
|
|
56
|
-
}
|
|
57
|
-
visitRepetitionMandatoryWithSeparator(e) {
|
|
58
|
-
this.allProductions.push(e);
|
|
59
|
-
}
|
|
60
|
-
visitRepetition(e) {
|
|
61
|
-
this.allProductions.push(e);
|
|
62
|
-
}
|
|
63
|
-
visitAlternation(e) {
|
|
64
|
-
this.allProductions.push(e);
|
|
65
|
-
}
|
|
66
|
-
visitTerminal(e) {
|
|
67
|
-
this.allProductions.push(e);
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
function E(e, t, n, r) {
|
|
71
|
-
let i = [];
|
|
72
|
-
if (t.reduce((t, n) => n.name === e.name ? t + 1 : t, 0) > 1) {
|
|
73
|
-
let t = r.buildDuplicateRuleNameError({
|
|
74
|
-
topLevelRule: e,
|
|
75
|
-
grammarName: n
|
|
76
|
-
});
|
|
77
|
-
i.push({
|
|
78
|
-
message: t,
|
|
79
|
-
type: y.DUPLICATE_RULE_NAME,
|
|
80
|
-
ruleName: e.name
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
return i;
|
|
84
|
-
}
|
|
85
|
-
function D(e, t, n) {
|
|
86
|
-
let r = [], i;
|
|
87
|
-
return t.includes(e) || (i = `Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${n}<-as it is not defined in any of the super grammars `, r.push({
|
|
88
|
-
message: i,
|
|
89
|
-
type: y.INVALID_RULE_OVERRIDE,
|
|
90
|
-
ruleName: e
|
|
91
|
-
})), r;
|
|
92
|
-
}
|
|
93
|
-
function O(e, t, n, r = []) {
|
|
94
|
-
let i = [], a = k(t.definition);
|
|
95
|
-
if (a.length === 0) return [];
|
|
96
|
-
{
|
|
97
|
-
let t = e.name;
|
|
98
|
-
a.includes(e) && i.push({
|
|
99
|
-
message: n.buildLeftRecursionError({
|
|
100
|
-
topLevelRule: e,
|
|
101
|
-
leftRecursionPath: r
|
|
102
|
-
}),
|
|
103
|
-
type: y.LEFT_RECURSION,
|
|
104
|
-
ruleName: t
|
|
105
|
-
});
|
|
106
|
-
let o = r.concat([e]), s = a.filter((e) => !o.includes(e)).flatMap((t) => {
|
|
107
|
-
let i = [...r];
|
|
108
|
-
return i.push(t), O(e, t, n, i);
|
|
109
|
-
});
|
|
110
|
-
return i.concat(s);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
function k(l) {
|
|
114
|
-
let u = [];
|
|
115
|
-
if (l.length === 0) return u;
|
|
116
|
-
let f = l[0];
|
|
117
|
-
/* istanbul ignore else */
|
|
118
|
-
if (f instanceof n) u.push(f.referencedRule);
|
|
119
|
-
else if (f instanceof t || f instanceof r || f instanceof a || f instanceof o || f instanceof s || f instanceof i) u = u.concat(k(f.definition));
|
|
120
|
-
else if (f instanceof e) u = f.definition.map((e) => k(e.definition)).flat();
|
|
121
|
-
else if (!(f instanceof c)) throw Error("non exhaustive match");
|
|
122
|
-
let p = d(f), m = l.length > 1;
|
|
123
|
-
if (p && m) {
|
|
124
|
-
let e = l.slice(1);
|
|
125
|
-
return u.concat(k(e));
|
|
126
|
-
} else return u;
|
|
127
|
-
}
|
|
128
|
-
var A = class extends l {
|
|
129
|
-
constructor() {
|
|
130
|
-
super(...arguments), this.alternations = [];
|
|
131
|
-
}
|
|
132
|
-
visitAlternation(e) {
|
|
133
|
-
this.alternations.push(e);
|
|
134
|
-
}
|
|
135
|
-
};
|
|
136
|
-
function j(e, t) {
|
|
137
|
-
let n = new A();
|
|
138
|
-
return e.accept(n), n.alternations.flatMap((n) => n.definition.slice(0, -1).flatMap((r, i) => p([r], [], f, 1).length === 0 ? [{
|
|
139
|
-
message: t.buildEmptyAlternationError({
|
|
140
|
-
topLevelRule: e,
|
|
141
|
-
alternation: n,
|
|
142
|
-
emptyChoiceIdx: i
|
|
143
|
-
}),
|
|
144
|
-
type: y.NONE_LAST_EMPTY_ALT,
|
|
145
|
-
ruleName: e.name,
|
|
146
|
-
occurrence: n.idx,
|
|
147
|
-
alternative: i + 1
|
|
148
|
-
}] : []));
|
|
149
|
-
}
|
|
150
|
-
function M(e, t, n) {
|
|
151
|
-
let r = new A();
|
|
152
|
-
e.accept(r);
|
|
153
|
-
let i = r.alternations;
|
|
154
|
-
return i = i.filter((e) => e.ignoreAmbiguities !== !0), i.flatMap((r) => {
|
|
155
|
-
let i = r.idx, a = g(i, e, r.maxLookahead || t, r), o = I(a, r, e, n), s = L(a, r, e, n);
|
|
156
|
-
return o.concat(s);
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
var N = class extends l {
|
|
160
|
-
constructor() {
|
|
161
|
-
super(...arguments), this.allProductions = [];
|
|
162
|
-
}
|
|
163
|
-
visitRepetitionWithSeparator(e) {
|
|
164
|
-
this.allProductions.push(e);
|
|
165
|
-
}
|
|
166
|
-
visitRepetitionMandatory(e) {
|
|
167
|
-
this.allProductions.push(e);
|
|
168
|
-
}
|
|
169
|
-
visitRepetitionMandatoryWithSeparator(e) {
|
|
170
|
-
this.allProductions.push(e);
|
|
171
|
-
}
|
|
172
|
-
visitRepetition(e) {
|
|
173
|
-
this.allProductions.push(e);
|
|
174
|
-
}
|
|
175
|
-
};
|
|
176
|
-
function P(e, t) {
|
|
177
|
-
let n = new A();
|
|
178
|
-
return e.accept(n), n.alternations.flatMap((n) => n.definition.length > 255 ? [{
|
|
179
|
-
message: t.buildTooManyAlternativesError({
|
|
180
|
-
topLevelRule: e,
|
|
181
|
-
alternation: n
|
|
182
|
-
}),
|
|
183
|
-
type: y.TOO_MANY_ALTS,
|
|
184
|
-
ruleName: e.name,
|
|
185
|
-
occurrence: n.idx
|
|
186
|
-
}] : []);
|
|
187
|
-
}
|
|
188
|
-
function F(e, t, n) {
|
|
189
|
-
let r = [];
|
|
190
|
-
return e.forEach((e) => {
|
|
191
|
-
let i = new N();
|
|
192
|
-
e.accept(i), i.allProductions.forEach((i) => {
|
|
193
|
-
let a = _(i), o = i.maxLookahead || t, s = i.idx;
|
|
194
|
-
if (h(s, e, a, o)[0].flat().length === 0) {
|
|
195
|
-
let t = n.buildEmptyRepetitionError({
|
|
196
|
-
topLevelRule: e,
|
|
197
|
-
repetition: i
|
|
198
|
-
});
|
|
199
|
-
r.push({
|
|
200
|
-
message: t,
|
|
201
|
-
type: y.NO_NON_EMPTY_LOOKAHEAD,
|
|
202
|
-
ruleName: e.name
|
|
203
|
-
});
|
|
204
|
-
}
|
|
205
|
-
});
|
|
206
|
-
}), r;
|
|
207
|
-
}
|
|
208
|
-
function I(e, t, n, r) {
|
|
209
|
-
let i = [];
|
|
210
|
-
return e.reduce((n, r, a) => (t.definition[a].ignoreAmbiguities === !0 || r.forEach((r) => {
|
|
211
|
-
let o = [a];
|
|
212
|
-
e.forEach((e, n) => {
|
|
213
|
-
a !== n && m(e, r) && t.definition[n].ignoreAmbiguities !== !0 && o.push(n);
|
|
214
|
-
}), o.length > 1 && !m(i, r) && (i.push(r), n.push({
|
|
215
|
-
alts: o,
|
|
216
|
-
path: r
|
|
217
|
-
}));
|
|
218
|
-
}), n), []).map((e) => {
|
|
219
|
-
let i = e.alts.map((e) => e + 1);
|
|
220
|
-
return {
|
|
221
|
-
message: r.buildAlternationAmbiguityError({
|
|
222
|
-
topLevelRule: n,
|
|
223
|
-
alternation: t,
|
|
224
|
-
ambiguityIndices: i,
|
|
225
|
-
prefixPath: e.path
|
|
226
|
-
}),
|
|
227
|
-
type: y.AMBIGUOUS_ALTS,
|
|
228
|
-
ruleName: n.name,
|
|
229
|
-
occurrence: t.idx,
|
|
230
|
-
alternatives: e.alts
|
|
231
|
-
};
|
|
232
|
-
});
|
|
233
|
-
}
|
|
234
|
-
function L(e, t, n, r) {
|
|
235
|
-
let i = e.reduce((e, t, n) => {
|
|
236
|
-
let r = t.map((e) => ({
|
|
237
|
-
idx: n,
|
|
238
|
-
path: e
|
|
239
|
-
}));
|
|
240
|
-
return e.concat(r);
|
|
241
|
-
}, []);
|
|
242
|
-
return i.flatMap((e) => {
|
|
243
|
-
if (t.definition[e.idx].ignoreAmbiguities === !0) return [];
|
|
244
|
-
let a = e.idx, o = e.path;
|
|
245
|
-
return i.filter((e) => t.definition[e.idx].ignoreAmbiguities !== !0 && e.idx < a && v(e.path, o)).map((e) => {
|
|
246
|
-
let i = [e.idx + 1, a + 1], o = t.idx === 0 ? "" : t.idx;
|
|
247
|
-
return {
|
|
248
|
-
message: r.buildAlternationPrefixAmbiguityError({
|
|
249
|
-
topLevelRule: n,
|
|
250
|
-
alternation: t,
|
|
251
|
-
ambiguityIndices: i,
|
|
252
|
-
prefixPath: e.path
|
|
253
|
-
}),
|
|
254
|
-
type: y.AMBIGUOUS_PREFIX_ALTS,
|
|
255
|
-
ruleName: n.name,
|
|
256
|
-
occurrence: o,
|
|
257
|
-
alternatives: i
|
|
258
|
-
};
|
|
259
|
-
});
|
|
260
|
-
});
|
|
261
|
-
}
|
|
262
|
-
function R(e, t, n) {
|
|
263
|
-
let r = [], i = t.map((e) => e.name);
|
|
264
|
-
return e.forEach((e) => {
|
|
265
|
-
let t = e.name;
|
|
266
|
-
if (i.includes(t)) {
|
|
267
|
-
let i = n.buildNamespaceConflictError(e);
|
|
268
|
-
r.push({
|
|
269
|
-
message: i,
|
|
270
|
-
type: y.CONFLICT_TOKENS_RULES_NAMESPACE,
|
|
271
|
-
ruleName: t
|
|
272
|
-
});
|
|
273
|
-
}
|
|
274
|
-
}), r;
|
|
275
|
-
}
|
|
276
|
-
//#endregion
|
|
277
|
-
export { M as validateAmbiguousAlternationAlternatives, j as validateEmptyOrAlternative, x as validateGrammar, b as validateLookahead, O as validateNoLeftRecursion, D as validateRuleIsOverridden, F as validateSomeNonEmptyLookaheadPath };
|
|
278
|
-
|
|
279
|
-
//# sourceMappingURL=checks.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checks.js","names":["AlternativeGAST"],"sources":["../../../../../../../../../../node_modules/chevrotain/lib/src/parse/grammar/checks.js"],"sourcesContent":["import { ParserDefinitionErrorType, } from \"../parser/parser.js\";\nimport { Alternation, Alternative as AlternativeGAST, GAstVisitor, getProductionDslName, isOptionalProd, NonTerminal, Option, Repetition, RepetitionMandatory, RepetitionMandatoryWithSeparator, RepetitionWithSeparator, Terminal, } from \"@chevrotain/gast\";\nimport { containsPath, getLookaheadPathsForOptionalProd, getLookaheadPathsForOr, getProdType, isStrictPrefixOfPath, } from \"./lookahead.js\";\nimport { nextPossibleTokensAfter } from \"./interpreter.js\";\nimport { tokenStructuredMatcher } from \"../../scan/tokens.js\";\nexport function validateLookahead(options) {\n const lookaheadValidationErrorMessages = options.lookaheadStrategy.validate({\n rules: options.rules,\n tokenTypes: options.tokenTypes,\n grammarName: options.grammarName,\n });\n return lookaheadValidationErrorMessages.map((errorMessage) => (Object.assign({ type: ParserDefinitionErrorType.CUSTOM_LOOKAHEAD_VALIDATION }, errorMessage)));\n}\nexport function validateGrammar(topLevels, tokenTypes, errMsgProvider, grammarName) {\n const duplicateErrors = topLevels.flatMap((currTopLevel) => validateDuplicateProductions(currTopLevel, errMsgProvider));\n const termsNamespaceConflictErrors = checkTerminalAndNoneTerminalsNameSpace(topLevels, tokenTypes, errMsgProvider);\n const tooManyAltsErrors = topLevels.flatMap((curRule) => validateTooManyAlts(curRule, errMsgProvider));\n const duplicateRulesError = topLevels.flatMap((curRule) => validateRuleDoesNotAlreadyExist(curRule, topLevels, grammarName, errMsgProvider));\n return duplicateErrors.concat(termsNamespaceConflictErrors, tooManyAltsErrors, duplicateRulesError);\n}\nfunction validateDuplicateProductions(topLevelRule, errMsgProvider) {\n const collectorVisitor = new OccurrenceValidationCollector();\n topLevelRule.accept(collectorVisitor);\n const allRuleProductions = collectorVisitor.allProductions;\n const productionGroups = Object.groupBy(allRuleProductions, identifyProductionForDuplicates);\n const duplicates = Object.fromEntries(Object.entries(productionGroups).filter(([_k, currGroup]) => currGroup.length > 1));\n const errors = Object.values(duplicates).map((currDuplicates) => {\n const firstProd = currDuplicates[0];\n const msg = errMsgProvider.buildDuplicateFoundError(topLevelRule, currDuplicates);\n const dslName = getProductionDslName(firstProd);\n const defError = {\n message: msg,\n type: ParserDefinitionErrorType.DUPLICATE_PRODUCTIONS,\n ruleName: topLevelRule.name,\n dslName: dslName,\n occurrence: firstProd.idx,\n };\n const param = getExtraProductionArgument(firstProd);\n if (param) {\n defError.parameter = param;\n }\n return defError;\n });\n return errors;\n}\nexport function identifyProductionForDuplicates(prod) {\n return `${getProductionDslName(prod)}_#_${prod.idx}_#_${getExtraProductionArgument(prod)}`;\n}\nfunction getExtraProductionArgument(prod) {\n if (prod instanceof Terminal) {\n return prod.terminalType.name;\n }\n else if (prod instanceof NonTerminal) {\n return prod.nonTerminalName;\n }\n else {\n return \"\";\n }\n}\nexport class OccurrenceValidationCollector extends GAstVisitor {\n constructor() {\n super(...arguments);\n this.allProductions = [];\n }\n visitNonTerminal(subrule) {\n this.allProductions.push(subrule);\n }\n visitOption(option) {\n this.allProductions.push(option);\n }\n visitRepetitionWithSeparator(manySep) {\n this.allProductions.push(manySep);\n }\n visitRepetitionMandatory(atLeastOne) {\n this.allProductions.push(atLeastOne);\n }\n visitRepetitionMandatoryWithSeparator(atLeastOneSep) {\n this.allProductions.push(atLeastOneSep);\n }\n visitRepetition(many) {\n this.allProductions.push(many);\n }\n visitAlternation(or) {\n this.allProductions.push(or);\n }\n visitTerminal(terminal) {\n this.allProductions.push(terminal);\n }\n}\nexport function validateRuleDoesNotAlreadyExist(rule, allRules, className, errMsgProvider) {\n const errors = [];\n const occurrences = allRules.reduce((result, curRule) => {\n if (curRule.name === rule.name) {\n return result + 1;\n }\n return result;\n }, 0);\n if (occurrences > 1) {\n const errMsg = errMsgProvider.buildDuplicateRuleNameError({\n topLevelRule: rule,\n grammarName: className,\n });\n errors.push({\n message: errMsg,\n type: ParserDefinitionErrorType.DUPLICATE_RULE_NAME,\n ruleName: rule.name,\n });\n }\n return errors;\n}\n// TODO: is there anyway to get only the rule names of rules inherited from the super grammars?\n// This is not part of the IGrammarErrorProvider because the validation cannot be performed on\n// The grammar structure, only at runtime.\nexport function validateRuleIsOverridden(ruleName, definedRulesNames, className) {\n const errors = [];\n let errMsg;\n if (!definedRulesNames.includes(ruleName)) {\n errMsg =\n `Invalid rule override, rule: ->${ruleName}<- cannot be overridden in the grammar: ->${className}<-` +\n `as it is not defined in any of the super grammars `;\n errors.push({\n message: errMsg,\n type: ParserDefinitionErrorType.INVALID_RULE_OVERRIDE,\n ruleName: ruleName,\n });\n }\n return errors;\n}\nexport function validateNoLeftRecursion(topRule, currRule, errMsgProvider, path = []) {\n const errors = [];\n const nextNonTerminals = getFirstNoneTerminal(currRule.definition);\n if (nextNonTerminals.length === 0) {\n return [];\n }\n else {\n const ruleName = topRule.name;\n const foundLeftRecursion = nextNonTerminals.includes(topRule);\n if (foundLeftRecursion) {\n errors.push({\n message: errMsgProvider.buildLeftRecursionError({\n topLevelRule: topRule,\n leftRecursionPath: path,\n }),\n type: ParserDefinitionErrorType.LEFT_RECURSION,\n ruleName: ruleName,\n });\n }\n // we are only looking for cyclic paths leading back to the specific topRule\n // other cyclic paths are ignored, we still need this difference to avoid infinite loops...\n const excluded = path.concat([topRule]);\n const validNextSteps = nextNonTerminals.filter((x) => !excluded.includes(x));\n const errorsFromNextSteps = validNextSteps.flatMap((currRefRule) => {\n const newPath = [...path];\n newPath.push(currRefRule);\n return validateNoLeftRecursion(topRule, currRefRule, errMsgProvider, newPath);\n });\n return errors.concat(errorsFromNextSteps);\n }\n}\nexport function getFirstNoneTerminal(definition) {\n let result = [];\n if (definition.length === 0) {\n return result;\n }\n const firstProd = definition[0];\n /* istanbul ignore else */\n if (firstProd instanceof NonTerminal) {\n result.push(firstProd.referencedRule);\n }\n else if (firstProd instanceof AlternativeGAST ||\n firstProd instanceof Option ||\n firstProd instanceof RepetitionMandatory ||\n firstProd instanceof RepetitionMandatoryWithSeparator ||\n firstProd instanceof RepetitionWithSeparator ||\n firstProd instanceof Repetition) {\n result = result.concat(getFirstNoneTerminal(firstProd.definition));\n }\n else if (firstProd instanceof Alternation) {\n // each sub definition in alternation is a FLAT\n result = firstProd.definition\n .map((currSubDef) => getFirstNoneTerminal(currSubDef.definition))\n .flat();\n }\n else if (firstProd instanceof Terminal) {\n // nothing to see, move along\n }\n else {\n throw Error(\"non exhaustive match\");\n }\n const isFirstOptional = isOptionalProd(firstProd);\n const hasMore = definition.length > 1;\n if (isFirstOptional && hasMore) {\n const rest = definition.slice(1);\n return result.concat(getFirstNoneTerminal(rest));\n }\n else {\n return result;\n }\n}\nclass OrCollector extends GAstVisitor {\n constructor() {\n super(...arguments);\n this.alternations = [];\n }\n visitAlternation(node) {\n this.alternations.push(node);\n }\n}\nexport function validateEmptyOrAlternative(topLevelRule, errMsgProvider) {\n const orCollector = new OrCollector();\n topLevelRule.accept(orCollector);\n const ors = orCollector.alternations;\n const errors = ors.flatMap((currOr) => {\n const exceptLast = currOr.definition.slice(0, -1);\n return exceptLast.flatMap((currAlternative, currAltIdx) => {\n const possibleFirstInAlt = nextPossibleTokensAfter([currAlternative], [], tokenStructuredMatcher, 1);\n if (possibleFirstInAlt.length === 0) {\n return [\n {\n message: errMsgProvider.buildEmptyAlternationError({\n topLevelRule: topLevelRule,\n alternation: currOr,\n emptyChoiceIdx: currAltIdx,\n }),\n type: ParserDefinitionErrorType.NONE_LAST_EMPTY_ALT,\n ruleName: topLevelRule.name,\n occurrence: currOr.idx,\n alternative: currAltIdx + 1,\n },\n ];\n }\n else {\n return [];\n }\n });\n });\n return errors;\n}\nexport function validateAmbiguousAlternationAlternatives(topLevelRule, globalMaxLookahead, errMsgProvider) {\n const orCollector = new OrCollector();\n topLevelRule.accept(orCollector);\n let ors = orCollector.alternations;\n // New Handling of ignoring ambiguities\n // - https://github.com/chevrotain/chevrotain/issues/869\n ors = ors.filter((currOr) => currOr.ignoreAmbiguities !== true);\n const errors = ors.flatMap((currOr) => {\n const currOccurrence = currOr.idx;\n const actualMaxLookahead = currOr.maxLookahead || globalMaxLookahead;\n const alternatives = getLookaheadPathsForOr(currOccurrence, topLevelRule, actualMaxLookahead, currOr);\n const altsAmbiguityErrors = checkAlternativesAmbiguities(alternatives, currOr, topLevelRule, errMsgProvider);\n const altsPrefixAmbiguityErrors = checkPrefixAlternativesAmbiguities(alternatives, currOr, topLevelRule, errMsgProvider);\n return altsAmbiguityErrors.concat(altsPrefixAmbiguityErrors);\n });\n return errors;\n}\nexport class RepetitionCollector extends GAstVisitor {\n constructor() {\n super(...arguments);\n this.allProductions = [];\n }\n visitRepetitionWithSeparator(manySep) {\n this.allProductions.push(manySep);\n }\n visitRepetitionMandatory(atLeastOne) {\n this.allProductions.push(atLeastOne);\n }\n visitRepetitionMandatoryWithSeparator(atLeastOneSep) {\n this.allProductions.push(atLeastOneSep);\n }\n visitRepetition(many) {\n this.allProductions.push(many);\n }\n}\nexport function validateTooManyAlts(topLevelRule, errMsgProvider) {\n const orCollector = new OrCollector();\n topLevelRule.accept(orCollector);\n const ors = orCollector.alternations;\n const errors = ors.flatMap((currOr) => {\n if (currOr.definition.length > 255) {\n return [\n {\n message: errMsgProvider.buildTooManyAlternativesError({\n topLevelRule: topLevelRule,\n alternation: currOr,\n }),\n type: ParserDefinitionErrorType.TOO_MANY_ALTS,\n ruleName: topLevelRule.name,\n occurrence: currOr.idx,\n },\n ];\n }\n else {\n return [];\n }\n });\n return errors;\n}\nexport function validateSomeNonEmptyLookaheadPath(topLevelRules, maxLookahead, errMsgProvider) {\n const errors = [];\n topLevelRules.forEach((currTopRule) => {\n const collectorVisitor = new RepetitionCollector();\n currTopRule.accept(collectorVisitor);\n const allRuleProductions = collectorVisitor.allProductions;\n allRuleProductions.forEach((currProd) => {\n const prodType = getProdType(currProd);\n const actualMaxLookahead = currProd.maxLookahead || maxLookahead;\n const currOccurrence = currProd.idx;\n const paths = getLookaheadPathsForOptionalProd(currOccurrence, currTopRule, prodType, actualMaxLookahead);\n const pathsInsideProduction = paths[0];\n if (pathsInsideProduction.flat().length === 0) {\n const errMsg = errMsgProvider.buildEmptyRepetitionError({\n topLevelRule: currTopRule,\n repetition: currProd,\n });\n errors.push({\n message: errMsg,\n type: ParserDefinitionErrorType.NO_NON_EMPTY_LOOKAHEAD,\n ruleName: currTopRule.name,\n });\n }\n });\n });\n return errors;\n}\nfunction checkAlternativesAmbiguities(alternatives, alternation, rule, errMsgProvider) {\n const foundAmbiguousPaths = [];\n const identicalAmbiguities = alternatives.reduce((result, currAlt, currAltIdx) => {\n // ignore (skip) ambiguities with this alternative\n if (alternation.definition[currAltIdx].ignoreAmbiguities === true) {\n return result;\n }\n currAlt.forEach((currPath) => {\n const altsCurrPathAppearsIn = [currAltIdx];\n alternatives.forEach((currOtherAlt, currOtherAltIdx) => {\n if (currAltIdx !== currOtherAltIdx &&\n containsPath(currOtherAlt, currPath) &&\n // ignore (skip) ambiguities with this \"other\" alternative\n alternation.definition[currOtherAltIdx].ignoreAmbiguities !== true) {\n altsCurrPathAppearsIn.push(currOtherAltIdx);\n }\n });\n if (altsCurrPathAppearsIn.length > 1 &&\n !containsPath(foundAmbiguousPaths, currPath)) {\n foundAmbiguousPaths.push(currPath);\n result.push({\n alts: altsCurrPathAppearsIn,\n path: currPath,\n });\n }\n });\n return result;\n }, []);\n const currErrors = identicalAmbiguities.map((currAmbDescriptor) => {\n const ambgIndices = currAmbDescriptor.alts.map((currAltIdx) => currAltIdx + 1);\n const currMessage = errMsgProvider.buildAlternationAmbiguityError({\n topLevelRule: rule,\n alternation: alternation,\n ambiguityIndices: ambgIndices,\n prefixPath: currAmbDescriptor.path,\n });\n return {\n message: currMessage,\n type: ParserDefinitionErrorType.AMBIGUOUS_ALTS,\n ruleName: rule.name,\n occurrence: alternation.idx,\n alternatives: currAmbDescriptor.alts,\n };\n });\n return currErrors;\n}\nexport function checkPrefixAlternativesAmbiguities(alternatives, alternation, rule, errMsgProvider) {\n // flatten\n const pathsAndIndices = alternatives.reduce((result, currAlt, idx) => {\n const currPathsAndIdx = currAlt.map((currPath) => {\n return { idx: idx, path: currPath };\n });\n return result.concat(currPathsAndIdx);\n }, []);\n const errors = pathsAndIndices.flatMap((currPathAndIdx) => {\n const alternativeGast = alternation.definition[currPathAndIdx.idx];\n // ignore (skip) ambiguities with this alternative\n if (alternativeGast.ignoreAmbiguities === true) {\n return [];\n }\n const targetIdx = currPathAndIdx.idx;\n const targetPath = currPathAndIdx.path;\n const prefixAmbiguitiesPathsAndIndices = pathsAndIndices.filter((searchPathAndIdx) => {\n // prefix ambiguity can only be created from lower idx (higher priority) path\n return (\n // ignore (skip) ambiguities with this \"other\" alternative\n alternation.definition[searchPathAndIdx.idx].ignoreAmbiguities !==\n true &&\n searchPathAndIdx.idx < targetIdx &&\n // checking for strict prefix because identical lookaheads\n // will be be detected using a different validation.\n isStrictPrefixOfPath(searchPathAndIdx.path, targetPath));\n });\n const currPathPrefixErrors = prefixAmbiguitiesPathsAndIndices.map((currAmbPathAndIdx) => {\n const ambgIndices = [currAmbPathAndIdx.idx + 1, targetIdx + 1];\n const occurrence = alternation.idx === 0 ? \"\" : alternation.idx;\n const message = errMsgProvider.buildAlternationPrefixAmbiguityError({\n topLevelRule: rule,\n alternation: alternation,\n ambiguityIndices: ambgIndices,\n prefixPath: currAmbPathAndIdx.path,\n });\n return {\n message: message,\n type: ParserDefinitionErrorType.AMBIGUOUS_PREFIX_ALTS,\n ruleName: rule.name,\n occurrence: occurrence,\n alternatives: ambgIndices,\n };\n });\n return currPathPrefixErrors;\n });\n return errors;\n}\nfunction checkTerminalAndNoneTerminalsNameSpace(topLevels, tokenTypes, errMsgProvider) {\n const errors = [];\n const tokenNames = tokenTypes.map((currToken) => currToken.name);\n topLevels.forEach((currRule) => {\n const currRuleName = currRule.name;\n if (tokenNames.includes(currRuleName)) {\n const errMsg = errMsgProvider.buildNamespaceConflictError(currRule);\n errors.push({\n message: errMsg,\n type: ParserDefinitionErrorType.CONFLICT_TOKENS_RULES_NAMESPACE,\n ruleName: currRuleName,\n });\n }\n });\n return errors;\n}\n//# sourceMappingURL=checks.js.map"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { NonTerminal as e, Terminal as t } from "../../../../../@chevrotain/gast/lib/src/model.js";
|
|
2
|
-
import { isBranchingProd as n, isOptionalProd as r, isSequenceProd as i } from "../../../../../@chevrotain/gast/lib/src/helpers.js";
|
|
3
|
-
//#region ../../node_modules/chevrotain/lib/src/parse/grammar/first.js
|
|
4
|
-
function a(r) {
|
|
5
|
-
/* istanbul ignore else */
|
|
6
|
-
if (r instanceof e) return a(r.referencedRule);
|
|
7
|
-
if (r instanceof t) return c(r);
|
|
8
|
-
if (i(r)) return o(r);
|
|
9
|
-
if (n(r)) return s(r);
|
|
10
|
-
throw Error("non exhaustive match");
|
|
11
|
-
}
|
|
12
|
-
function o(e) {
|
|
13
|
-
let t = [], n = e.definition, i = 0, o = n.length > i, s, c = !0;
|
|
14
|
-
for (; o && c;) s = n[i], c = r(s), t = t.concat(a(s)), i += 1, o = n.length > i;
|
|
15
|
-
return [...new Set(t)];
|
|
16
|
-
}
|
|
17
|
-
function s(e) {
|
|
18
|
-
let t = e.definition.map((e) => a(e));
|
|
19
|
-
return [...new Set(t.flat())];
|
|
20
|
-
}
|
|
21
|
-
function c(e) {
|
|
22
|
-
return [e.terminalType];
|
|
23
|
-
}
|
|
24
|
-
//#endregion
|
|
25
|
-
export { a as first };
|
|
26
|
-
|
|
27
|
-
//# sourceMappingURL=first.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"first.js","names":[],"sources":["../../../../../../../../../../node_modules/chevrotain/lib/src/parse/grammar/first.js"],"sourcesContent":["import { isBranchingProd, isOptionalProd, isSequenceProd, NonTerminal, Terminal, } from \"@chevrotain/gast\";\nexport function first(prod) {\n /* istanbul ignore else */\n if (prod instanceof NonTerminal) {\n // this could in theory cause infinite loops if\n // (1) prod A refs prod B.\n // (2) prod B refs prod A\n // (3) AB can match the empty set\n // in other words a cycle where everything is optional so the first will keep\n // looking ahead for the next optional part and will never exit\n // currently there is no safeguard for this unique edge case because\n // (1) not sure a grammar in which this can happen is useful for anything (productive)\n return first(prod.referencedRule);\n }\n else if (prod instanceof Terminal) {\n return firstForTerminal(prod);\n }\n else if (isSequenceProd(prod)) {\n return firstForSequence(prod);\n }\n else if (isBranchingProd(prod)) {\n return firstForBranching(prod);\n }\n else {\n throw Error(\"non exhaustive match\");\n }\n}\nexport function firstForSequence(prod) {\n let firstSet = [];\n const seq = prod.definition;\n let nextSubProdIdx = 0;\n let hasInnerProdsRemaining = seq.length > nextSubProdIdx;\n let currSubProd;\n // so we enter the loop at least once (if the definition is not empty\n let isLastInnerProdOptional = true;\n // scan a sequence until it's end or until we have found a NONE optional production in it\n while (hasInnerProdsRemaining && isLastInnerProdOptional) {\n currSubProd = seq[nextSubProdIdx];\n isLastInnerProdOptional = isOptionalProd(currSubProd);\n firstSet = firstSet.concat(first(currSubProd));\n nextSubProdIdx = nextSubProdIdx + 1;\n hasInnerProdsRemaining = seq.length > nextSubProdIdx;\n }\n return [...new Set(firstSet)];\n}\nexport function firstForBranching(prod) {\n const allAlternativesFirsts = prod.definition.map((innerProd) => {\n return first(innerProd);\n });\n return [...new Set(allAlternativesFirsts.flat())];\n}\nexport function firstForTerminal(terminal) {\n return [terminal.terminalType];\n}\n//# sourceMappingURL=first.js.map"],"x_google_ignoreList":[0],"mappings":";;;AACA,SAAgB,EAAM,GAAM;;CAExB,IAAI,aAAgB,GAShB,OAAO,EAAM,EAAK,eAAe;CAEhC,IAAI,aAAgB,GACrB,OAAO,EAAiB,EAAK;CAE5B,IAAI,EAAe,EAAK,EACzB,OAAO,EAAiB,EAAK;CAE5B,IAAI,EAAgB,EAAK,EAC1B,OAAO,EAAkB,EAAK;CAG9B,MAAM,MAAM,uBAAuB;;AAG3C,SAAgB,EAAiB,GAAM;CACnC,IAAI,IAAW,EAAE,EACX,IAAM,EAAK,YACb,IAAiB,GACjB,IAAyB,EAAI,SAAS,GACtC,GAEA,IAA0B;CAE9B,OAAO,KAA0B,IAK7B,AAJA,IAAc,EAAI,IAClB,IAA0B,EAAe,EAAY,EACrD,IAAW,EAAS,OAAO,EAAM,EAAY,CAAC,EAC9C,KAAkC,GAClC,IAAyB,EAAI,SAAS;CAE1C,OAAO,CAAC,GAAG,IAAI,IAAI,EAAS,CAAC;;AAEjC,SAAgB,EAAkB,GAAM;CACpC,IAAM,IAAwB,EAAK,WAAW,KAAK,MACxC,EAAM,EAAU,CACzB;CACF,OAAO,CAAC,GAAG,IAAI,IAAI,EAAsB,MAAM,CAAC,CAAC;;AAErD,SAAgB,EAAiB,GAAU;CACvC,OAAO,CAAC,EAAS,aAAa"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Alternative as e } from "../../../../../@chevrotain/gast/lib/src/model.js";
|
|
2
|
-
import { RestWalker as t } from "./rest.js";
|
|
3
|
-
import { first as n } from "./first.js";
|
|
4
|
-
import { IN as r } from "../constants.js";
|
|
5
|
-
//#region ../../node_modules/chevrotain/lib/src/parse/grammar/follow.js
|
|
6
|
-
var i = class extends t {
|
|
7
|
-
constructor(e) {
|
|
8
|
-
super(), this.topProd = e, this.follows = {};
|
|
9
|
-
}
|
|
10
|
-
startWalking() {
|
|
11
|
-
return this.walk(this.topProd), this.follows;
|
|
12
|
-
}
|
|
13
|
-
walkTerminal(e, t, n) {}
|
|
14
|
-
walkProdRef(t, r, i) {
|
|
15
|
-
let a = o(t.referencedRule, t.idx) + this.topProd.name, s = n(new e({ definition: r.concat(i) }));
|
|
16
|
-
this.follows[a] = s;
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
function a(e) {
|
|
20
|
-
let t = {};
|
|
21
|
-
return e.forEach((e) => {
|
|
22
|
-
let n = new i(e).startWalking();
|
|
23
|
-
Object.assign(t, n);
|
|
24
|
-
}), t;
|
|
25
|
-
}
|
|
26
|
-
function o(e, t) {
|
|
27
|
-
return e.name + t + r;
|
|
28
|
-
}
|
|
29
|
-
//#endregion
|
|
30
|
-
export { a as computeAllProdsFollows };
|
|
31
|
-
|
|
32
|
-
//# sourceMappingURL=follow.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"follow.js","names":[],"sources":["../../../../../../../../../../node_modules/chevrotain/lib/src/parse/grammar/follow.js"],"sourcesContent":["import { RestWalker } from \"./rest.js\";\nimport { first } from \"./first.js\";\nimport { IN } from \"../constants.js\";\nimport { Alternative } from \"@chevrotain/gast\";\n// This ResyncFollowsWalker computes all of the follows required for RESYNC\n// (skipping reference production).\nexport class ResyncFollowsWalker extends RestWalker {\n constructor(topProd) {\n super();\n this.topProd = topProd;\n this.follows = {};\n }\n startWalking() {\n this.walk(this.topProd);\n return this.follows;\n }\n walkTerminal(terminal, currRest, prevRest) {\n // do nothing! just like in the public sector after 13:00\n }\n walkProdRef(refProd, currRest, prevRest) {\n const followName = buildBetweenProdsFollowPrefix(refProd.referencedRule, refProd.idx) +\n this.topProd.name;\n const fullRest = currRest.concat(prevRest);\n const restProd = new Alternative({ definition: fullRest });\n const t_in_topProd_follows = first(restProd);\n this.follows[followName] = t_in_topProd_follows;\n }\n}\nexport function computeAllProdsFollows(topProductions) {\n const reSyncFollows = {};\n topProductions.forEach((topProd) => {\n const currRefsFollow = new ResyncFollowsWalker(topProd).startWalking();\n Object.assign(reSyncFollows, currRefsFollow);\n });\n return reSyncFollows;\n}\nexport function buildBetweenProdsFollowPrefix(inner, occurenceInParent) {\n return inner.name + occurenceInParent + IN;\n}\nexport function buildInProdFollowPrefix(terminal) {\n const terminalName = terminal.terminalType.name;\n return terminalName + terminal.idx + IN;\n}\n//# sourceMappingURL=follow.js.map"],"x_google_ignoreList":[0],"mappings":";;;;;AAMA,IAAa,IAAb,cAAyC,EAAW;CAChD,YAAY,GAAS;EAGjB,AAFA,OAAO,EACP,KAAK,UAAU,GACf,KAAK,UAAU,EAAE;;CAErB,eAAe;EAEX,OADA,KAAK,KAAK,KAAK,QAAQ,EAChB,KAAK;;CAEhB,aAAa,GAAU,GAAU,GAAU;CAG3C,YAAY,GAAS,GAAU,GAAU;EACrC,IAAM,IAAa,EAA8B,EAAQ,gBAAgB,EAAQ,IAAI,GACjF,KAAK,QAAQ,MAGX,IAAuB,EAAM,IADd,EAAY,EAAE,YADlB,EAAS,OAAO,EACsB,EAAE,CACd,CAAC;EAC5C,KAAK,QAAQ,KAAc;;;AAGnC,SAAgB,EAAuB,GAAgB;CACnD,IAAM,IAAgB,EAAE;CAKxB,OAJA,EAAe,SAAS,MAAY;EAChC,IAAM,IAAiB,IAAI,EAAoB,EAAQ,CAAC,cAAc;EACtE,OAAO,OAAO,GAAe,EAAe;GAC9C,EACK;;AAEX,SAAgB,EAA8B,GAAO,GAAmB;CACpE,OAAO,EAAM,OAAO,IAAoB"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { defaultGrammarResolverErrorProvider as e, defaultGrammarValidatorErrorProvider as t } from "../../errors_public.js";
|
|
2
|
-
import { resolveGrammar as n } from "../resolver.js";
|
|
3
|
-
import { validateGrammar as r } from "../checks.js";
|
|
4
|
-
//#region ../../node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js
|
|
5
|
-
function i(t) {
|
|
6
|
-
let r = Object.assign({ errMsgProvider: e }, t), i = {};
|
|
7
|
-
return t.rules.forEach((e) => {
|
|
8
|
-
i[e.name] = e;
|
|
9
|
-
}), n(i, r.errMsgProvider);
|
|
10
|
-
}
|
|
11
|
-
function a(e) {
|
|
12
|
-
let n = e.errMsgProvider ?? t;
|
|
13
|
-
return r(e.rules, e.tokenTypes, n, e.grammarName);
|
|
14
|
-
}
|
|
15
|
-
//#endregion
|
|
16
|
-
export { i as resolveGrammar, a as validateGrammar };
|
|
17
|
-
|
|
18
|
-
//# sourceMappingURL=gast_resolver_public.js.map
|
package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gast_resolver_public.js","names":["orgResolveGrammar","orgValidateGrammar"],"sources":["../../../../../../../../../../../node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js"],"sourcesContent":["import { resolveGrammar as orgResolveGrammar } from \"../resolver.js\";\nimport { validateGrammar as orgValidateGrammar } from \"../checks.js\";\nimport { defaultGrammarResolverErrorProvider, defaultGrammarValidatorErrorProvider, } from \"../../errors_public.js\";\nexport function resolveGrammar(options) {\n const actualOptions = Object.assign({ errMsgProvider: defaultGrammarResolverErrorProvider }, options);\n const topRulesTable = {};\n options.rules.forEach((rule) => {\n topRulesTable[rule.name] = rule;\n });\n return orgResolveGrammar(topRulesTable, actualOptions.errMsgProvider);\n}\nexport function validateGrammar(options) {\n var _a;\n const errMsgProvider = (_a = options.errMsgProvider) !== null && _a !== void 0 ? _a : defaultGrammarValidatorErrorProvider;\n return orgValidateGrammar(options.rules, options.tokenTypes, errMsgProvider, options.grammarName);\n}\n//# sourceMappingURL=gast_resolver_public.js.map"],"x_google_ignoreList":[0],"mappings":";;;;AAGA,SAAgB,EAAe,GAAS;CACpC,IAAM,IAAgB,OAAO,OAAO,EAAE,gBAAgB,GAAqC,EAAE,EAAQ,EAC/F,IAAgB,EAAE;CAIxB,OAHA,EAAQ,MAAM,SAAS,MAAS;EAC5B,EAAc,EAAK,QAAQ;GAC7B,EACKA,EAAkB,GAAe,EAAc,eAAe;;AAEzE,SAAgB,EAAgB,GAAS;CAErC,IAAM,IAAuB,EAAQ,kBAAiD;CACtF,OAAOC,EAAmB,EAAQ,OAAO,EAAQ,YAAY,GAAgB,EAAQ,YAAY"}
|