occam-parsers 23.0.155 → 23.0.157

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/example.js +183 -183
  2. package/lib/node/bnf/choiceOfParts.js +4 -4
  3. package/lib/node/bnf/definition.js +4 -4
  4. package/lib/node/bnf/definitions.js +4 -4
  5. package/lib/node/bnf/document.js +4 -4
  6. package/lib/node/bnf/endOfLine.js +4 -4
  7. package/lib/node/bnf/epsilon.js +4 -4
  8. package/lib/node/bnf/error.js +4 -4
  9. package/lib/node/bnf/name.js +4 -4
  10. package/lib/node/bnf/noWhitespacePart.js +4 -4
  11. package/lib/node/bnf/nonTerminalPart.js +4 -4
  12. package/lib/node/bnf/oneOneOrMoreQuantifier.js +4 -4
  13. package/lib/node/bnf/opacityModifier.js +4 -4
  14. package/lib/node/bnf/optionalQuantifier.js +4 -4
  15. package/lib/node/bnf/part.js +4 -4
  16. package/lib/node/bnf/partChoice.js +4 -4
  17. package/lib/node/bnf/precedence.js +4 -4
  18. package/lib/node/bnf/quantifier.js +4 -4
  19. package/lib/node/bnf/regularExpression.js +4 -4
  20. package/lib/node/bnf/rule.js +4 -4
  21. package/lib/node/bnf/ruleName.js +4 -4
  22. package/lib/node/bnf/sequenceOfParts.js +4 -4
  23. package/lib/node/bnf/significantTokenType.js +4 -4
  24. package/lib/node/bnf/startOfContentPart.js +4 -4
  25. package/lib/node/bnf/terminalPart.js +4 -4
  26. package/lib/node/bnf/terminalSymbol.js +4 -4
  27. package/lib/node/bnf/wildcard.js +4 -4
  28. package/lib/node/bnf/zeroOneOrMoreQuantifier.js +4 -4
  29. package/lib/node/nonTerminal.js +6 -6
  30. package/lib/rule.js +2 -2
  31. package/package.json +1 -1
  32. package/src/node/bnf/choiceOfParts.js +1 -1
  33. package/src/node/bnf/definition.js +1 -1
  34. package/src/node/bnf/definitions.js +1 -1
  35. package/src/node/bnf/document.js +1 -1
  36. package/src/node/bnf/endOfLine.js +1 -1
  37. package/src/node/bnf/epsilon.js +1 -1
  38. package/src/node/bnf/error.js +1 -1
  39. package/src/node/bnf/name.js +1 -1
  40. package/src/node/bnf/noWhitespacePart.js +1 -1
  41. package/src/node/bnf/nonTerminalPart.js +1 -1
  42. package/src/node/bnf/oneOneOrMoreQuantifier.js +1 -1
  43. package/src/node/bnf/opacityModifier.js +1 -1
  44. package/src/node/bnf/optionalQuantifier.js +1 -1
  45. package/src/node/bnf/part.js +1 -1
  46. package/src/node/bnf/partChoice.js +1 -1
  47. package/src/node/bnf/precedence.js +1 -1
  48. package/src/node/bnf/quantifier.js +1 -1
  49. package/src/node/bnf/regularExpression.js +1 -1
  50. package/src/node/bnf/rule.js +1 -1
  51. package/src/node/bnf/ruleName.js +1 -1
  52. package/src/node/bnf/sequenceOfParts.js +1 -1
  53. package/src/node/bnf/significantTokenType.js +1 -1
  54. package/src/node/bnf/startOfContentPart.js +1 -1
  55. package/src/node/bnf/terminalPart.js +1 -1
  56. package/src/node/bnf/terminalSymbol.js +1 -1
  57. package/src/node/bnf/wildcard.js +1 -1
  58. package/src/node/bnf/zeroOneOrMoreQuantifier.js +1 -1
  59. package/src/node/nonTerminal.js +1 -2
  60. package/src/rule.js +2 -1
@@ -30,6 +30,6 @@ export default class RegularExpressionBNFNode extends NonTerminalNode {
30
30
  return regularExpression;
31
31
  }
32
32
 
33
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(RegularExpressionBNFNode, ruleName, childNodes, opacity); }
33
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(RegularExpressionBNFNode, ruleName, childNodes, opacity, precedence); }
34
34
  }
35
35
 
@@ -51,5 +51,5 @@ export default class RuleBNFNode extends NonTerminalNode {
51
51
  return definitions;
52
52
  }
53
53
 
54
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(RuleBNFNode, ruleName, childNodes, opacity); }
54
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(RuleBNFNode, ruleName, childNodes, opacity, precedence); }
55
55
  }
@@ -19,5 +19,5 @@ export default class RuleNameBNFNode extends NonTerminalNode {
19
19
  return ruleNamePart;
20
20
  }
21
21
 
22
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(RuleNameBNFNode, ruleName, childNodes, opacity); }
22
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(RuleNameBNFNode, ruleName, childNodes, opacity, precedence); }
23
23
  }
@@ -25,5 +25,5 @@ export default class SequenceOfPartsBNFNode extends NonTerminalNode {
25
25
  return part;
26
26
  }
27
27
 
28
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(SequenceOfPartsBNFNode, ruleName, childNodes, opacity); }
28
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(SequenceOfPartsBNFNode, ruleName, childNodes, opacity, precedence); }
29
29
  }
@@ -29,7 +29,7 @@ export default class SignificantTokenTypeBNFNode extends NonTerminalNode {
29
29
  return significantTokenType;
30
30
  }
31
31
 
32
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(SignificantTokenTypeBNFNode, ruleName, childNodes, opacity); }
32
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(SignificantTokenTypeBNFNode, ruleName, childNodes, opacity, precedence); }
33
33
  }
34
34
 
35
35
  module.exports = SignificantTokenTypeBNFNode;
@@ -10,5 +10,5 @@ export default class StartOfContentPartBNFNode extends NonTerminalNode {
10
10
  return startOfContentPart;
11
11
  }
12
12
 
13
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(StartOfContentPartBNFNode, ruleName, childNodes, opacity); }
13
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(StartOfContentPartBNFNode, ruleName, childNodes, opacity, precedence); }
14
14
  }
@@ -16,5 +16,5 @@ export default class TerminalPartBNFNode extends NonTerminalNode {
16
16
  return part;
17
17
  }
18
18
 
19
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(TerminalPartBNFNode, ruleName, childNodes, opacity); }
19
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(TerminalPartBNFNode, ruleName, childNodes, opacity, precedence); }
20
20
  }
@@ -35,7 +35,7 @@ export default class TerminalSymbolBNFNode extends NonTerminalNode {
35
35
  return content;
36
36
  }
37
37
 
38
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(TerminalSymbolBNFNode, ruleName, childNodes, opacity); }
38
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(TerminalSymbolBNFNode, ruleName, childNodes, opacity, precedence); }
39
39
  }
40
40
 
41
41
  function sanitiseContent(content) {
@@ -10,5 +10,5 @@ export default class WildcardBNFNode extends NonTerminalNode {
10
10
  return wildcardPart;
11
11
  }
12
12
 
13
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(WildcardBNFNode, ruleName, childNodes, opacity); }
13
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(WildcardBNFNode, ruleName, childNodes, opacity, precedence); }
14
14
  }
@@ -3,5 +3,5 @@
3
3
  import NonTerminalNode from "../../node/nonTerminal";
4
4
 
5
5
  export default class ZerorOrMoreQuantifierBNFNode extends NonTerminalNode {
6
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return NonTerminalNode.fromRuleNameChildNodesAndOpacity(ZerorOrMoreQuantifierBNFNode, ruleName, childNodes, opacity); }
6
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(ZerorOrMoreQuantifierBNFNode, ruleName, childNodes, opacity, precedence); }
7
7
  }
@@ -268,7 +268,7 @@ export default class NonTerminalNode {
268
268
  return nonTerminalNode;
269
269
  }
270
270
 
271
- static fromRuleNameChildNodesAndOpacity(Class, ruleName, childNodes, opacity, ...remainingArguments) {
271
+ static fromRuleNameChildNodesOpacityAndPrecedence(Class, ruleName, childNodes, opacity, precedence, ...remainingArguments) {
272
272
  if (opacity === undefined) {
273
273
  opacity = childNodes; ///
274
274
 
@@ -280,7 +280,6 @@ export default class NonTerminalNode {
280
280
  }
281
281
 
282
282
  const parentNode = null,
283
- precedence = null,
284
283
  nonTerminalNode = new Class(ruleName, parentNode, childNodes, opacity, precedence, ...remainingArguments);
285
284
 
286
285
  nonTerminalNode.setChildNodesParentNode();
package/src/rule.js CHANGED
@@ -63,9 +63,10 @@ export default class Rule {
63
63
 
64
64
  const opacity = this.opacity,
65
65
  ruleName = this.name, ///
66
+ precedence = null,
66
67
  childNodes = [],
67
68
  NonTerminalNode = this.NonTerminalNodeFromRuleName(ruleName, state),
68
- nonTerminalNode = NonTerminalNode.fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity),
69
+ nonTerminalNode = NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence),
69
70
  savedPrecedence = state.getSavedPrecedence();
70
71
 
71
72
  let node = nonTerminalNode; ///