grammar-composer 0.7.1 → 0.7.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Builder.d.ts","sourceRoot":"","sources":["../../src/parser/Builder.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAe,WAAW,EAAkD,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAKnI,wBAAgB,YAAY,CAAC,CAAC,SAAS,iBAAiB,EACvD,gBAAgB,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EACnC,mBAAmB,EAAE,MAAM,CAAC,EAC5B,OAAO,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAsF/C;AAqID,wBAAgB,uBAAuB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,WAAW,CAYzF;AAKD,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACvC,wBAAwB,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAA;CACrD;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA;AAEpD,MAAM,MAAM,iBAAiB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAA"}
1
+ {"version":3,"file":"Builder.d.ts","sourceRoot":"","sources":["../../src/parser/Builder.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAe,WAAW,EAAkD,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAKnI,wBAAgB,YAAY,CAAC,CAAC,SAAS,iBAAiB,EACvD,gBAAgB,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EACnC,mBAAmB,EAAE,MAAM,CAAC,EAC5B,OAAO,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAsF/C;AA8JD,wBAAgB,uBAAuB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,WAAW,CAYzF;AAKD,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACvC,wBAAwB,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAA;CACrD;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA;AAEpD,MAAM,MAAM,iBAAiB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAA"}
@@ -15,7 +15,7 @@ export function buildGrammar(definitionObject, startProductionName, options) {
15
15
  const nameLookup = new Map();
16
16
  const nonterminalLookup = new Map();
17
17
  const optionalNonterminalLookup = new Map();
18
- for (const key of Object.keys(definitionObject)) {
18
+ for (const key of getProductionNames(definitionObject)) {
19
19
  const objectProperty = definitionObject[key];
20
20
  nameLookup.set(objectProperty, key);
21
21
  if (!isFunction(objectProperty)) {
@@ -62,6 +62,25 @@ export function buildGrammar(definitionObject, startProductionName, options) {
62
62
  }
63
63
  return new Grammar(nonterminals, startProductionName, cacheIdCounter);
64
64
  }
65
+ function getProductionNames(definitionObject) {
66
+ const keys = [];
67
+ const seen = new Set();
68
+ // Walk the prototype chain (stopping before Object.prototype) so that
69
+ // productions declared as prototype methods -- including inherited ones --
70
+ // are picked up in addition to instance fields.
71
+ let current = definitionObject;
72
+ while (current !== null && current !== Object.prototype) {
73
+ for (const key of Object.getOwnPropertyNames(current)) {
74
+ if (key === 'constructor' || seen.has(key)) {
75
+ continue;
76
+ }
77
+ seen.add(key);
78
+ keys.push(key);
79
+ }
80
+ current = Object.getPrototypeOf(current);
81
+ }
82
+ return keys;
83
+ }
65
84
  function prepareGrammarNode(rootNode, nonterminalLookup, optionalNonterminalLookup, getNewCacheId) {
66
85
  function prepare(node) {
67
86
  const setCacheIdIfNeeded = (node) => {
@@ -1 +1 @@
1
- {"version":3,"file":"Builder.js","sourceRoot":"","sources":["../../src/parser/Builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Builder.js","sourceRoot":"","sources":["../../src/parser/Builder.ts"],"names":[],"mappings":"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"}
@@ -195,7 +195,7 @@ function buildErrorMessage(details, line, column, maxDisplayedLineLength) {
195
195
  const contextMessage = details.contextProductionName !== undefined
196
196
  ? `While parsing '${details.contextProductionName}', expected one of the following:\n\n${expectedMessage}`
197
197
  : `Expected one of the following:\n\n${expectedMessage}`;
198
- return `Failed parsing the input text ${context}\n\n${contextMessage}`;
198
+ return `Failed parsing the input text ${context}\n\n${contextMessage}\n`;
199
199
  }
200
200
  // Formats the expected terminals grouped by production, with a blank line between
201
201
  // the groups so the message stays readable.
@@ -1 +1 @@
1
- {"version":3,"file":"ParseError.js","sourceRoot":"","sources":["../../src/parser/ParseError.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ParseError.js","sourceRoot":"","sources":["../../src/parser/ParseError.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "grammar-composer",
3
- "version": "0.7.1",
3
+ "version": "0.7.3",
4
4
  "description": "Creates and generates parsers from composable grammar definitions. Includes advanced features like lexer-free parsing, selective packrat memoization and static analysis.",
5
5
  "author": "Rotem Dan",
6
6
  "license": "MIT",
@@ -37,6 +37,6 @@
37
37
  },
38
38
  "devDependencies": {
39
39
  "@types/node": "~26.4.1",
40
- "vitest": "~4.1.11"
40
+ "vitest": "~5.0.0"
41
41
  }
42
42
  }
@@ -24,7 +24,7 @@ export function buildGrammar<T extends GrammarDefinition>(
24
24
  const nonterminalLookup = new Map<Function, Nonterminal>()
25
25
  const optionalNonterminalLookup = new Map<Function, Nonterminal>()
26
26
 
27
- for (const key of Object.keys(definitionObject)) {
27
+ for (const key of getProductionNames(definitionObject)) {
28
28
  const objectProperty = definitionObject[key]
29
29
 
30
30
  nameLookup.set(objectProperty, key)
@@ -97,6 +97,31 @@ export function buildGrammar<T extends GrammarDefinition>(
97
97
  )
98
98
  }
99
99
 
100
+ function getProductionNames(definitionObject: GrammarDefinition): string[] {
101
+ const keys: string[] = []
102
+ const seen = new Set<any>()
103
+
104
+ // Walk the prototype chain (stopping before Object.prototype) so that
105
+ // productions declared as prototype methods -- including inherited ones --
106
+ // are picked up in addition to instance fields.
107
+ let current: object | null = definitionObject
108
+
109
+ while (current !== null && current !== Object.prototype) {
110
+ for (const key of Object.getOwnPropertyNames(current)) {
111
+ if (key === 'constructor' || seen.has(key)) {
112
+ continue
113
+ }
114
+
115
+ seen.add(key)
116
+ keys.push(key)
117
+ }
118
+
119
+ current = Object.getPrototypeOf(current)
120
+ }
121
+
122
+ return keys
123
+ }
124
+
100
125
  function prepareGrammarNode(
101
126
  rootNode: GrammarNode,
102
127
  nonterminalLookup: Map<Function, Nonterminal>,
@@ -259,7 +259,7 @@ function buildErrorMessage(details: ParseErrorDetails, line: number, column: num
259
259
  ? `While parsing '${details.contextProductionName}', expected one of the following:\n\n${expectedMessage}`
260
260
  : `Expected one of the following:\n\n${expectedMessage}`
261
261
 
262
- return `Failed parsing the input text ${context}\n\n${contextMessage}`
262
+ return `Failed parsing the input text ${context}\n\n${contextMessage}\n`
263
263
  }
264
264
 
265
265
  // Formats the expected terminals grouped by production, with a blank line between