parseman 0.61.4 → 0.61.6

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 (46) hide show
  1. package/dist/analysis/diagnostics.js +844 -522
  2. package/dist/analysis/diagnostics.js.map +3 -3
  3. package/dist/cli/index.js +846 -522
  4. package/dist/cli/index.js.map +3 -3
  5. package/dist/cst/capture-buffer.d.ts +3 -2
  6. package/dist/cst/capture-buffer.d.ts.map +1 -1
  7. package/dist/index.js +890 -523
  8. package/dist/index.js.map +3 -3
  9. package/dist/plugin/entry-supercompiler.d.ts +15 -0
  10. package/dist/plugin/entry-supercompiler.d.ts.map +1 -1
  11. package/dist/plugin/index.js +959 -503
  12. package/dist/plugin/index.js.map +3 -3
  13. package/dist/table/assemble.d.ts.map +1 -1
  14. package/dist/table/child-slots.d.ts.map +1 -1
  15. package/dist/table/emit-assembly.d.ts +1 -1
  16. package/dist/table/emit-assembly.d.ts.map +1 -1
  17. package/dist/table/encode.d.ts.map +1 -1
  18. package/dist/table/exec.d.ts.map +1 -1
  19. package/dist/table/fail-clean.d.ts.map +1 -1
  20. package/dist/table/hold-gap.d.ts.map +1 -1
  21. package/dist/table/index.js +421 -54
  22. package/dist/table/index.js.map +3 -3
  23. package/dist/table/late-frame.d.ts +18 -0
  24. package/dist/table/late-frame.d.ts.map +1 -0
  25. package/dist/table/ops.d.ts +17 -0
  26. package/dist/table/ops.d.ts.map +1 -1
  27. package/dist/table/select-hot.d.ts +9 -0
  28. package/dist/table/select-hot.d.ts.map +1 -1
  29. package/dist/table/site-labels.d.ts +5 -1
  30. package/dist/table/site-labels.d.ts.map +1 -1
  31. package/dist/version.d.ts +1 -1
  32. package/package.json +1 -1
  33. package/src/cst/capture-buffer.ts +20 -11
  34. package/src/plugin/entry-supercompiler.ts +110 -1
  35. package/src/table/assemble.ts +124 -4
  36. package/src/table/child-slots.ts +9 -1
  37. package/src/table/emit-assembly.ts +101 -14
  38. package/src/table/encode.ts +69 -6
  39. package/src/table/exec.ts +7 -1
  40. package/src/table/fail-clean.ts +8 -1
  41. package/src/table/hold-gap.ts +5 -1
  42. package/src/table/late-frame.ts +54 -0
  43. package/src/table/ops.ts +19 -0
  44. package/src/table/select-hot.ts +96 -18
  45. package/src/table/site-labels.ts +38 -14
  46. package/src/version.ts +1 -1
@@ -36,6 +36,21 @@ export type EntrySupercompileResult = EmitResult & {
36
36
  * externally-addressable scan roots passed to the canonical emitter.
37
37
  */
38
38
  export declare function supercompileEntryAssembly(prog: TableProgram, cfg: EntrySupercompileCfg, extraIps?: readonly number[]): EntrySupercompileResult;
39
+ /**
40
+ * Functions that read the same are one function: `optional(x)` written in 25 places
41
+ * is 25 rows and one body, and a trivia skip can be pooled under two labels that
42
+ * lower alike. This runs after the join, so a site with one caller has
43
+ * already gone into it, the selection is untouched and every call a parse makes is
44
+ * still made. Each pass can make the callers of a merged function read alike, so it
45
+ * repeats until nothing merges.
46
+ *
47
+ * Only identifiers are compared or renamed: a grammar's own text reaches this source
48
+ * as strings and regexes, and they count as written. A temporary is local by the
49
+ * emitter's contract and is numbered per assembly, so one this function binds is
50
+ * compared in order of use. A site name that's also bound somewhere, or abbreviated
51
+ * in `{_pf1}`, can't be renamed by name, so that source stays as it is.
52
+ */
53
+ export declare function mergeSameBodies(source: string): string;
39
54
  /**
40
55
  * Plugin-only final splice for an ordinary macro replacement. The table
41
56
  * compiler emits its canonical callback-free public artifact first; this pass
@@ -1 +1 @@
1
- {"version":3,"file":"entry-supercompiler.d.ts","sourceRoot":"","sources":["../../src/plugin/entry-supercompiler.ts"],"names":[],"mappings":"AAYA,OAAO,EAAsB,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAE/E,OAAO,EAAkC,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAKvF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAA;IACpE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAA;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACvF,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACpD,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,UAAU,GAAG;IAAE,QAAQ,CAAC,YAAY,EAAE,sBAAsB,CAAA;CAAE,CAAA;AAyKpG;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,oBAAoB,EACzB,QAAQ,GAAE,SAAS,MAAM,EAAO,GAC/B,uBAAuB,CAGzB;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,YAAY,EAClB,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAC3B,MAAM,CA0CR;AAED,8EAA8E;AAC9E,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,OAAO,EAAE,UAAU,GAClB,uBAAuB,CAwRzB"}
1
+ {"version":3,"file":"entry-supercompiler.d.ts","sourceRoot":"","sources":["../../src/plugin/entry-supercompiler.ts"],"names":[],"mappings":"AAYA,OAAO,EAAsB,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAE/E,OAAO,EAAkC,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAKvF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAA;IACpE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAA;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACvF,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACpD,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,UAAU,GAAG;IAAE,QAAQ,CAAC,YAAY,EAAE,sBAAsB,CAAA;CAAE,CAAA;AA2KpG;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,oBAAoB,EACzB,QAAQ,GAAE,SAAS,MAAM,EAAO,GAC/B,uBAAuB,CAGzB;AAgCD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CA6DtD;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,YAAY,EAClB,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAC3B,MAAM,CA0CR;AAED,8EAA8E;AAC9E,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,OAAO,EAAE,UAAU,GAClB,uBAAuB,CAwRzB"}