@bablr/language-en-spamex 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/grammar.js CHANGED
@@ -1,15 +1,15 @@
1
1
  /* @macrome
2
2
  * @generatedby @bablr/macrome-generator-bablr
3
- * @generatedfrom ./grammar.macro.js#fba5948385285e93eab4ec54f33e3401a5ef7a12
3
+ * @generatedfrom ./grammar.macro.js#9ab9bbc4fe3575128046794948beb9a3e1ef7178
4
4
  * This file is autogenerated. Please do not edit it directly.
5
5
  * When editing run `npx macrome watch` then change the file this is generated from.
6
6
  */
7
7
  import _applyDecs from "@babel/runtime/helpers/applyDecs2305";
8
8
  let _initProto, _MatcherDecs, _GapNodeMatcherDecs, _ArrayNodeMatcherDecs, _NullNodeMatcherDecs, _PropertyMatcherDecs, _BasicNodeMatcherDecs, _CloseNodeMatcherDecs, _StringMatcherDecs, _StringDecs, _RegexDecs, _ListDecs, _PunctuatorDecs, _AnyDecs;
9
9
  import { re, spam as m } from '@bablr/boot';
10
- import { Node, CoveredBy, InjectFrom, UnboundAttributes } from '@bablr/helpers/decorators';
10
+ import { Node, CoveredBy, InjectFrom, Literal } from '@bablr/helpers/decorators';
11
11
  import * as productions from '@bablr/helpers/productions';
12
- import { o, eat, eatMatch, match, bindAttribute, fail } from '@bablr/helpers/grammar';
12
+ import { eat, eatMatch, match, fail } from '@bablr/helpers/grammar';
13
13
  import * as Regex from '@bablr/language-en-regex-vm-pattern';
14
14
  import * as CSTML from '@bablr/language-en-cstml';
15
15
  import * as JSON from '@bablr/language-en-cstml-json';
@@ -32,11 +32,11 @@ export const grammar = class SpamexGrammar {
32
32
  constructor() {
33
33
  _initProto(this);
34
34
  }
35
- *[(_MatcherDecs = CoveredBy('Expression'), _GapNodeMatcherDecs = [Node, CoveredBy('NodeMatcher')], _ArrayNodeMatcherDecs = [Node, CoveredBy('NodeMatcher')], _NullNodeMatcherDecs = [Node, CoveredBy('NodeMatcher')], _PropertyMatcherDecs = [Node, CoveredBy('Matcher')], _BasicNodeMatcherDecs = [Node, CoveredBy('NodeMatcher')], _CloseNodeMatcherDecs = [Node, CoveredBy('Matcher')], _StringMatcherDecs = [CoveredBy('Matcher'), CoveredBy('Expression')], _StringDecs = [CoveredBy('StringMatcher'), CoveredBy('Matcher'), CoveredBy('Expression'), Node], _RegexDecs = [CoveredBy('StringMatcher'), CoveredBy('Matcher'), CoveredBy('Expression'), Node], _ListDecs = InjectFrom(productions), _PunctuatorDecs = [Node, InjectFrom(productions)], _AnyDecs = InjectFrom(productions), "Matcher")]() {
36
- yield eat(m`<Any />`, [m`<PropertyMatcher /[a-zA-Z.@#<]/ />`, m`<StringMatcher /[/'"]/ />`]);
35
+ *[(_MatcherDecs = CoveredBy('Expression'), _GapNodeMatcherDecs = [Node, CoveredBy('NodeMatcher')], _ArrayNodeMatcherDecs = [Node, CoveredBy('NodeMatcher')], _NullNodeMatcherDecs = [Node, CoveredBy('NodeMatcher')], _PropertyMatcherDecs = [Node, CoveredBy('Matcher')], _BasicNodeMatcherDecs = [Node, CoveredBy('NodeMatcher')], _CloseNodeMatcherDecs = [Node, CoveredBy('Matcher')], _StringMatcherDecs = [CoveredBy('Matcher'), CoveredBy('Expression')], _StringDecs = [CoveredBy('StringMatcher'), CoveredBy('Matcher'), CoveredBy('Expression'), Node], _RegexDecs = [CoveredBy('StringMatcher'), CoveredBy('Matcher'), CoveredBy('Expression'), Node], _ListDecs = InjectFrom(productions), _PunctuatorDecs = [Literal, Node, InjectFrom(productions)], _AnyDecs = InjectFrom(productions), "Matcher")]() {
36
+ yield eat(m`<_Any />`, [m`<PropertyMatcher /[a-zA-Z.@#<]/ />`, m`<__StringMatcher /[/'"]/ />`]);
37
37
  }
38
38
  *NodeMatcher() {
39
- yield eat(m`<Any />`, [m`<GapNodeMatcher '<//>' />`, m`<BasicNodeMatcher '<' />`, m`<ArrayNodeMatcher '[' />`, m`<NullNodeMatcher 'null' />`]);
39
+ yield eat(m`<_Any />`, [m`<GapNodeMatcher '<//>' />`, m`<BasicNodeMatcher '<' />`, m`<ArrayNodeMatcher '[' />`, m`<NullNodeMatcher 'null' />`]);
40
40
  }
41
41
  *GapNodeMatcher() {
42
42
  yield eat(m`sigilToken: <*Punctuator '<//>' />`);
@@ -50,14 +50,14 @@ export const grammar = class SpamexGrammar {
50
50
  *PropertyMatcher() {
51
51
  yield eatMatch(m`refMatcher: <ReferenceMatcher />`);
52
52
  yield* eatMatchTrivia();
53
- yield eat(m`nodeMatcher: <NodeMatcher />`);
53
+ yield eat(m`nodeMatcher: <__NodeMatcher />`);
54
54
  }
55
55
  *ReferenceMatcher() {
56
56
  let name;
57
57
  if (yield match(re`/[.#@]/`)) {
58
58
  name = yield eatMatch(m`name$: <*Punctuator /[.#@]/ />`);
59
59
  } else {
60
- name = yield eatMatch(m`name$: <*CSTML:Identifier />`);
60
+ name = yield eatMatch(m`name$: <CSTML:Identifier />`);
61
61
  }
62
62
  if (name && (yield eatMatch(m`openIndexToken: <*Punctuator '[' { balanced: ']' } />`))) {
63
63
  yield* eatMatchTrivia();
@@ -85,7 +85,7 @@ export const grammar = class SpamexGrammar {
85
85
  *OpenNodeMatcher() {
86
86
  yield eat(m`open: <*Punctuator '<' { balancedSpan: 'Tag', balanced: '>' } />`);
87
87
  yield eat(m`flags: <CSTML:NodeFlags />`);
88
- if (yield eatMatch(m`<CSTML:TagType /[a-zA-Z'"\g]/ />`)) {
88
+ if (yield eatMatch(m`<_CSTML:TagType /[a-zA-Z'"\g]/ />`)) {
89
89
  // continue
90
90
  } else if (yield eatMatch(m`type$: <*Punctuator /[ \t]+|?/ />`)) {
91
91
  // continue
@@ -93,7 +93,7 @@ export const grammar = class SpamexGrammar {
93
93
  yield fail();
94
94
  }
95
95
  let sp = yield* eatMatchTrivia();
96
- if (sp && !(yield match(re`/\/$/`)) && (yield eatMatch(m`intrinsicValue$: <StringMatcher />`))) {
96
+ if (sp && !(yield match(re`/\/$/`)) && (yield eatMatch(m`intrinsicValue$: <__StringMatcher />`))) {
97
97
  sp = yield* eatMatchTrivia();
98
98
  }
99
99
  while (sp && (yield match('{'))) {
@@ -115,14 +115,10 @@ export const grammar = class SpamexGrammar {
115
115
  }
116
116
  }
117
117
  *String() {
118
- yield eat(m`<JSON:String />`, null, o({
119
- suppressNode: true
120
- }));
118
+ yield eat(m`<_JSON:String />`);
121
119
  }
122
120
  *Regex() {
123
- yield eat(m`<Regex:Pattern />`, null, o({
124
- suppressNode: true
125
- }));
121
+ yield eat(m`<_Regex:Pattern />`);
126
122
  }
127
123
  List() {}
128
124
  Punctuator() {}
@@ -1,7 +1,7 @@
1
1
  import { re, spam as m } from '@bablr/boot';
2
- import { Node, CoveredBy, InjectFrom, UnboundAttributes } from '@bablr/helpers/decorators';
2
+ import { Node, CoveredBy, InjectFrom, Literal } from '@bablr/helpers/decorators';
3
3
  import * as productions from '@bablr/helpers/productions';
4
- import { o, eat, eatMatch, match, bindAttribute, fail } from '@bablr/helpers/grammar';
4
+ import { eat, eatMatch, match, fail } from '@bablr/helpers/grammar';
5
5
  import * as Regex from '@bablr/language-en-regex-vm-pattern';
6
6
  import * as CSTML from '@bablr/language-en-cstml';
7
7
  import * as JSON from '@bablr/language-en-cstml-json';
@@ -17,11 +17,11 @@ const { eatMatchTrivia } = CSTML;
17
17
  export const grammar = class SpamexGrammar {
18
18
  @CoveredBy('Expression')
19
19
  *Matcher() {
20
- yield eat(m`<Any />`, [m`<PropertyMatcher /[a-zA-Z.@#<]/ />`, m`<StringMatcher /[/'"]/ />`]);
20
+ yield eat(m`<_Any />`, [m`<PropertyMatcher /[a-zA-Z.@#<]/ />`, m`<__StringMatcher /[/'"]/ />`]);
21
21
  }
22
22
 
23
23
  *NodeMatcher() {
24
- yield eat(m`<Any />`, [
24
+ yield eat(m`<_Any />`, [
25
25
  m`<GapNodeMatcher '<//>' />`,
26
26
  m`<BasicNodeMatcher '<' />`,
27
27
  m`<ArrayNodeMatcher '[' />`,
@@ -52,7 +52,7 @@ export const grammar = class SpamexGrammar {
52
52
  *PropertyMatcher() {
53
53
  yield eatMatch(m`refMatcher: <ReferenceMatcher />`);
54
54
  yield* eatMatchTrivia();
55
- yield eat(m`nodeMatcher: <NodeMatcher />`);
55
+ yield eat(m`nodeMatcher: <__NodeMatcher />`);
56
56
  }
57
57
 
58
58
  @Node
@@ -61,7 +61,7 @@ export const grammar = class SpamexGrammar {
61
61
  if (yield match(re`/[.#@]/`)) {
62
62
  name = yield eatMatch(m`name$: <*Punctuator /[.#@]/ />`);
63
63
  } else {
64
- name = yield eatMatch(m`name$: <*CSTML:Identifier />`);
64
+ name = yield eatMatch(m`name$: <CSTML:Identifier />`);
65
65
  }
66
66
 
67
67
  if (name && (yield eatMatch(m`openIndexToken: <*Punctuator '[' { balanced: ']' } />`))) {
@@ -100,7 +100,7 @@ export const grammar = class SpamexGrammar {
100
100
  yield eat(m`open: <*Punctuator '<' { balancedSpan: 'Tag', balanced: '>' } />`);
101
101
  yield eat(m`flags: <CSTML:NodeFlags />`);
102
102
 
103
- if (yield eatMatch(m`<CSTML:TagType /[a-zA-Z'"\g]/ />`)) {
103
+ if (yield eatMatch(m`<_CSTML:TagType /[a-zA-Z'"\g]/ />`)) {
104
104
  // continue
105
105
  } else if (yield eatMatch(m`type$: <*Punctuator /[ \t]+|?/ />`)) {
106
106
  // continue
@@ -113,7 +113,7 @@ export const grammar = class SpamexGrammar {
113
113
  if (
114
114
  sp &&
115
115
  !(yield match(re`/\/$/`)) &&
116
- (yield eatMatch(m`intrinsicValue$: <StringMatcher />`))
116
+ (yield eatMatch(m`intrinsicValue$: <__StringMatcher />`))
117
117
  ) {
118
118
  sp = yield* eatMatchTrivia();
119
119
  }
@@ -149,7 +149,7 @@ export const grammar = class SpamexGrammar {
149
149
  @CoveredBy('Expression')
150
150
  @Node
151
151
  *String() {
152
- yield eat(m`<JSON:String />`, null, o({ suppressNode: true }));
152
+ yield eat(m`<_JSON:String />`);
153
153
  }
154
154
 
155
155
  @CoveredBy('StringMatcher')
@@ -157,12 +157,13 @@ export const grammar = class SpamexGrammar {
157
157
  @CoveredBy('Expression')
158
158
  @Node
159
159
  *Regex() {
160
- yield eat(m`<Regex:Pattern />`, null, o({ suppressNode: true }));
160
+ yield eat(m`<_Regex:Pattern />`);
161
161
  }
162
162
 
163
163
  @InjectFrom(productions)
164
164
  List() {}
165
165
 
166
+ @Literal
166
167
  @Node
167
168
  @InjectFrom(productions)
168
169
  Punctuator() {}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bablr/language-en-spamex",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "A BABLR language for SPAM Expressions",
5
5
  "engines": {
6
6
  "node": ">=12.0.0"
@@ -22,16 +22,16 @@
22
22
  },
23
23
  "dependencies": {
24
24
  "@babel/runtime": "^7.23.2",
25
- "@bablr/agast-helpers": "0.6.0",
26
- "@bablr/agast-vm-helpers": "0.6.0",
27
- "@bablr/helpers": "0.21.1",
28
- "@bablr/language-en-blank-space": "0.6.0",
29
- "@bablr/language-en-cstml": "0.8.0",
30
- "@bablr/language-en-cstml-json": "0.1.0",
31
- "@bablr/language-en-regex-vm-pattern": "0.8.0"
25
+ "@bablr/agast-helpers": "0.7.1",
26
+ "@bablr/agast-vm-helpers": "0.7.1",
27
+ "@bablr/boot": "0.8.1",
28
+ "@bablr/helpers": "0.22.1",
29
+ "@bablr/language-en-blank-space": "0.7.0",
30
+ "@bablr/language-en-cstml": "0.9.0",
31
+ "@bablr/language-en-cstml-json": "0.2.0",
32
+ "@bablr/language-en-regex-vm-pattern": "0.9.0"
32
33
  },
33
34
  "devDependencies": {
34
- "@bablr/boot": "^0.7.0",
35
35
  "@bablr/eslint-config-base": "github:bablr-lang/eslint-config-base#49f5952efed27f94ee9b94340eb1563c440bf64e",
36
36
  "@bablr/macrome": "^0.1.3",
37
37
  "@bablr/macrome-generator-bablr": "^0.3.2",