astn 0.110.19 → 0.110.21

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 (114) hide show
  1. package/dist/bin/convert_to_json.js +10 -20
  2. package/dist/bin/validate_astn.js +9 -19
  3. package/dist/generated/{generic → implementation/generic}/resolve.d.ts +17 -26
  4. package/dist/generated/implementation/generic/resolve.js +251 -0
  5. package/dist/generated/implementation/generic/unmarshall.d.ts +37 -0
  6. package/dist/generated/implementation/generic/unmarshall.js +168 -0
  7. package/dist/generated/implementation/schemas/ast/marshall.d.ts +7 -0
  8. package/dist/generated/implementation/schemas/ast/marshall.js +227 -0
  9. package/dist/generated/implementation/schemas/ast/unmarshall.d.ts +7 -0
  10. package/dist/generated/implementation/schemas/ast/unmarshall.js +239 -0
  11. package/dist/generated/implementation/schemas/ide/marshall.d.ts +4 -0
  12. package/dist/generated/implementation/schemas/ide/marshall.js +81 -0
  13. package/dist/generated/implementation/schemas/ide/{migration_boilerplate.d.ts → unmarshall.d.ts} +2 -1
  14. package/dist/generated/implementation/schemas/ide/unmarshall.js +79 -0
  15. package/dist/generated/implementation/schemas/parse_result/marshall.d.ts +3 -0
  16. package/dist/generated/implementation/schemas/parse_result/marshall.js +184 -0
  17. package/dist/generated/implementation/schemas/parse_result/unmarshall.d.ts +3 -0
  18. package/dist/generated/implementation/schemas/parse_result/unmarshall.js +103 -0
  19. package/dist/generated/implementation/schemas/target/marshall.d.ts +3 -0
  20. package/dist/generated/implementation/schemas/target/marshall.js +122 -0
  21. package/dist/generated/implementation/schemas/target/{migration_boilerplate.d.ts → unmarshall.d.ts} +1 -1
  22. package/dist/generated/implementation/schemas/target/unmarshall.js +81 -0
  23. package/dist/generated/implementation/schemas/token/marshall.d.ts +11 -0
  24. package/dist/generated/implementation/schemas/token/marshall.js +230 -0
  25. package/dist/generated/implementation/schemas/token/unmarshall.d.ts +11 -0
  26. package/dist/generated/implementation/schemas/token/unmarshall.js +180 -0
  27. package/dist/generated/interface/core/astn_source.d.ts +116 -0
  28. package/dist/generated/interface/core/astn_source.js +3 -0
  29. package/dist/generated/interface/core/astn_target.d.ts +186 -0
  30. package/dist/generated/interface/core/astn_target.js +3 -0
  31. package/dist/generated/interface/core/resolve.d.ts +11 -0
  32. package/dist/generated/interface/core/resolve.js +3 -0
  33. package/dist/generated/interface/core/unconstrained.d.ts +19 -0
  34. package/dist/generated/interface/core/unconstrained.js +3 -0
  35. package/dist/generated/interface/core/unresolved.d.ts +162 -13
  36. package/dist/generated/interface/schemas/ast/marshall.d.ts +226 -0
  37. package/dist/generated/interface/schemas/ast/marshall.js +3 -0
  38. package/dist/generated/interface/schemas/ast/migrate_boilerplate.d.ts +134 -0
  39. package/dist/generated/interface/schemas/ast/migrate_boilerplate.js +3 -0
  40. package/dist/generated/interface/schemas/ast/unconstrained.d.ts +20 -210
  41. package/dist/generated/interface/schemas/ast/unmarshall.d.ts +134 -0
  42. package/dist/generated/interface/schemas/ast/unmarshall.js +3 -0
  43. package/dist/generated/interface/schemas/ide/marshall.d.ts +136 -0
  44. package/dist/generated/interface/schemas/ide/marshall.js +3 -0
  45. package/dist/generated/interface/schemas/ide/{migration_boilerplate.d.ts → migrate_boilerplate.d.ts} +22 -0
  46. package/dist/generated/interface/schemas/ide/migrate_boilerplate.js +3 -0
  47. package/dist/generated/interface/schemas/ide/unconstrained.d.ts +50 -29
  48. package/dist/generated/interface/schemas/ide/unmarshall.d.ts +68 -0
  49. package/dist/generated/interface/schemas/ide/unmarshall.js +3 -0
  50. package/dist/generated/interface/schemas/parse_result/marshall.d.ts +106 -0
  51. package/dist/generated/interface/schemas/parse_result/marshall.js +3 -0
  52. package/dist/generated/interface/schemas/parse_result/migrate_boilerplate.d.ts +46 -0
  53. package/dist/generated/interface/schemas/parse_result/migrate_boilerplate.js +3 -0
  54. package/dist/generated/interface/schemas/parse_result/unconstrained.d.ts +20 -168
  55. package/dist/generated/interface/schemas/parse_result/unmarshall.d.ts +46 -0
  56. package/dist/generated/interface/schemas/parse_result/unmarshall.js +3 -0
  57. package/dist/generated/interface/schemas/target/marshall.d.ts +126 -0
  58. package/dist/generated/interface/schemas/target/marshall.js +3 -0
  59. package/dist/generated/interface/schemas/target/migrate_boilerplate.js +3 -0
  60. package/dist/generated/interface/schemas/target/unconstrained.d.ts +1 -1
  61. package/dist/generated/interface/schemas/{target_json/migration_boilerplate.d.ts → target/unmarshall.d.ts} +4 -4
  62. package/dist/generated/interface/schemas/target/unmarshall.js +3 -0
  63. package/dist/generated/interface/schemas/token/marshall.d.ts +346 -0
  64. package/dist/generated/interface/schemas/token/marshall.js +3 -0
  65. package/dist/generated/interface/schemas/{ast/migration_boilerplate.d.ts → token/migrate_boilerplate.d.ts} +38 -104
  66. package/dist/generated/interface/schemas/token/migrate_boilerplate.js +3 -0
  67. package/dist/generated/interface/schemas/token/unconstrained.d.ts +326 -0
  68. package/dist/generated/interface/schemas/{target_json → token}/unconstrained.js +1 -1
  69. package/dist/generated/interface/schemas/token/unmarshall.d.ts +222 -0
  70. package/dist/generated/interface/schemas/token/unmarshall.js +3 -0
  71. package/dist/parse/ast.d.ts +10 -0
  72. package/dist/parse/ast.js +227 -0
  73. package/dist/parse/astn_parse_generic.d.ts +8 -0
  74. package/dist/parse/astn_parse_generic.js +65 -0
  75. package/dist/parse/parse.d.ts +3 -10
  76. package/dist/parse/parse.js +19 -226
  77. package/dist/parse/string_iterator.d.ts +47 -0
  78. package/dist/parse/string_iterator.js +139 -0
  79. package/dist/parse/token.d.ts +9 -0
  80. package/dist/parse/token.js +506 -0
  81. package/dist/serializers/parse_result.js +8 -18
  82. package/dist/transformations/ast/ide.d.ts +3 -2
  83. package/dist/transformations/ast/ide.js +8 -18
  84. package/dist/transformations/ast/json_target.d.ts +1 -1
  85. package/dist/transformations/ast/json_target.js +8 -18
  86. package/dist/transformations/target/fountain_pen_block.js +10 -20
  87. package/package.json +5 -7
  88. package/dist/generated/generic/resolve.js +0 -259
  89. package/dist/generated/implementation/schemas/ast/migration_boilerplate.d.ts +0 -14
  90. package/dist/generated/implementation/schemas/ast/migration_boilerplate.js +0 -179
  91. package/dist/generated/implementation/schemas/ide/migration_boilerplate.js +0 -58
  92. package/dist/generated/implementation/schemas/parse_result/migration_boilerplate.d.ts +0 -6
  93. package/dist/generated/implementation/schemas/parse_result/migration_boilerplate.js +0 -136
  94. package/dist/generated/implementation/schemas/target/migration_boilerplate.js +0 -73
  95. package/dist/generated/implementation/schemas/target_json/migration_boilerplate.d.ts +0 -3
  96. package/dist/generated/implementation/schemas/target_json/migration_boilerplate.js +0 -67
  97. package/dist/generated/interface/core/poormans_parser.d.ts +0 -184
  98. package/dist/generated/interface/core/poormans_parser.js +0 -3
  99. package/dist/generated/interface/schemas/ast/migration_boilerplate.js +0 -3
  100. package/dist/generated/interface/schemas/ide/migration_boilerplate.js +0 -3
  101. package/dist/generated/interface/schemas/parse_result/migration_boilerplate.d.ts +0 -112
  102. package/dist/generated/interface/schemas/parse_result/migration_boilerplate.js +0 -3
  103. package/dist/generated/interface/schemas/target/migration_boilerplate.js +0 -3
  104. package/dist/generated/interface/schemas/target_json/migration_boilerplate.js +0 -3
  105. package/dist/generated/interface/schemas/target_json/unconstrained.d.ts +0 -169
  106. package/dist/index.d.ts +0 -6
  107. package/dist/index.js +0 -43
  108. package/dist/parse/parse_generic.d.ts +0 -43
  109. package/dist/parse/parse_generic.js +0 -656
  110. package/dist/serializers/json.d.ts +0 -5
  111. package/dist/serializers/json.js +0 -46
  112. package/dist/transformations/target_json/fountain_pen_block.d.ts +0 -4
  113. package/dist/transformations/target_json/fountain_pen_block.js +0 -101
  114. /package/dist/generated/interface/schemas/target/{migration_boilerplate.d.ts → migrate_boilerplate.d.ts} +0 -0
@@ -1,5 +0,0 @@
1
- import * as s_in from "../generated/interface/schemas/target_json/unconstrained";
2
- export declare const Document: ($: s_in.Document, $p: {
3
- "indentation": string;
4
- "newline": string;
5
- }) => string;
@@ -1,46 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.Document = void 0;
37
- const t_fountain_pen = __importStar(require("../transformations/target_json/fountain_pen_block"));
38
- const s_fp = __importStar(require("pareto-fountain-pen/dist/serialize/block"));
39
- const Document = ($, $p) => {
40
- return s_fp.Block(t_fountain_pen.Document($), {
41
- 'indentation': $p.indentation,
42
- 'newline': $p['newline'],
43
- });
44
- };
45
- exports.Document = Document;
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJpYWxpemVycy9qc29uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUtBLGtHQUFtRjtBQUVuRiwrRUFBZ0U7QUFFekQsTUFBTSxRQUFRLEdBQUcsQ0FDcEIsQ0FBZ0IsRUFDaEIsRUFHQyxFQUNLLEVBQUU7SUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQ2IsY0FBYyxDQUFDLFFBQVEsQ0FDbkIsQ0FBQyxDQUNKLEVBQ0Q7UUFDSSxhQUFhLEVBQUUsRUFBRSxDQUFDLFdBQVc7UUFDN0IsU0FBUyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUM7S0FDM0IsQ0FDSixDQUFBO0FBRUwsQ0FBQyxDQUFBO0FBakJZLFFBQUEsUUFBUSxZQWlCcEIifQ==
@@ -1,4 +0,0 @@
1
- import * as s_in from "../../generated/interface/schemas/target_json/unconstrained";
2
- import * as s_out from "pareto-fountain-pen/dist/generated/interface/schemas/block/unconstrained";
3
- export declare const Value: ($: s_in.Value) => s_out.Line_Part;
4
- export declare const Document: ($: s_in.Document) => s_out.Block;
@@ -1,101 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.Document = exports.Value = void 0;
37
- const _ea = __importStar(require("exupery-core-alg"));
38
- const block_1 = require("pareto-fountain-pen/dist/shorthands/block");
39
- const pareto_standard_operations_1 = require("pareto-standard-operations");
40
- const op = {
41
- 'enrich list elements with position information': pareto_standard_operations_1.impure.list['enrich with position information'],
42
- 'serialize with quote delimiter': pareto_standard_operations_1.impure.text['serialize with quote delimiter'],
43
- 'dictionary to list': pareto_standard_operations_1.impure.dictionary['to list, sorted by code point']
44
- };
45
- const String = ($ //FIX should have been a schema type
46
- ) => block_1.l.snippet(op['serialize with quote delimiter']($));
47
- const Value = ($) => {
48
- return _ea.cc($, ($) => {
49
- switch ($[0]) {
50
- case 'object': return _ea.ss($, ($) => block_1.l.sub([
51
- block_1.l.snippet("{"),
52
- block_1.l.indent([
53
- _ea.cc($, ($) => {
54
- switch ($[0]) {
55
- case 'dictionary': return _ea.ss($, ($) => block_1.b.sub_decorated(op['enrich list elements with position information'](op['dictionary to list']($)).map(($) => block_1.b.nested_line([
56
- String($.value.key),
57
- block_1.l.snippet(": "),
58
- (0, exports.Value)($.value.value),
59
- $['is last'] ? block_1.l.nothing() : block_1.l.snippet(","),
60
- ]))));
61
- case 'key value array': return _ea.ss($, ($) => block_1.b.sub_decorated(op['enrich list elements with position information']($).map(($) => block_1.b.nested_line([
62
- String($.value.key),
63
- block_1.l.snippet(": "),
64
- (0, exports.Value)($.value.value),
65
- $['is last'] ? block_1.l.nothing() : block_1.l.snippet(", "),
66
- ]))));
67
- default: return _ea.au($[0]);
68
- }
69
- }),
70
- ]),
71
- block_1.l.snippet("}"),
72
- ]));
73
- case 'array': return _ea.ss($, ($) => _ea.cc($, ($) => block_1.l.sub([
74
- block_1.l.snippet("["),
75
- block_1.l.sub_decorated(op['enrich list elements with position information']($).map(($) => block_1.l.sub([
76
- (0, exports.Value)($.value),
77
- $['is last'] ? block_1.l.nothing() : block_1.l.snippet(", "),
78
- ]))),
79
- block_1.l.snippet("]"),
80
- ])));
81
- case 'null': return _ea.ss($, ($) => block_1.l.snippet("null"));
82
- case 'boolean': return _ea.ss($, ($) => block_1.l.snippet($ ? "true" : "false"));
83
- case 'null': return _ea.ss($, ($) => block_1.l.snippet("null"));
84
- case 'number': return _ea.ss($, ($) => _ea.cc($, ($) => {
85
- switch ($[0]) {
86
- case 'integer': return _ea.ss($, ($) => block_1.l.snippet("FIXME INTEGER"));
87
- case 'float': return _ea.ss($, ($) => block_1.l.snippet("FIXME FLOAT"));
88
- default: return _ea.au($[0]);
89
- }
90
- }));
91
- case 'string': return _ea.ss($, ($) => String($));
92
- default: return _ea.au($[0]);
93
- }
94
- });
95
- };
96
- exports.Value = Value;
97
- const Document = ($) => (0, block_1.block)([block_1.b.nested_line([
98
- (0, exports.Value)($),
99
- ])]);
100
- exports.Document = Document;
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm91bnRhaW5fcGVuX2Jsb2NrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWF0aW9ucy90YXJnZXRfanNvbi9mb3VudGFpbl9wZW5fYmxvY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0RBQXVDO0FBS3ZDLHFFQUVrRDtBQUdsRCwyRUFBbUQ7QUFFbkQsTUFBTSxFQUFFLEdBQUc7SUFDUCxnREFBZ0QsRUFBRSxtQ0FBTSxDQUFDLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQztJQUNqRyxnQ0FBZ0MsRUFBRSxtQ0FBTSxDQUFDLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQztJQUMvRSxvQkFBb0IsRUFBRSxtQ0FBTSxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsQ0FBQztDQUMzRSxDQUFBO0FBR0QsTUFBTSxNQUFNLEdBQUcsQ0FDWCxDQUFTLENBQUMsb0NBQW9DO0VBQy9CLEVBQUUsQ0FBQyxTQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFHakUsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFhLEVBQW1CLEVBQUU7SUFDcEQsT0FBTyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ25CLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDWCxLQUFLLFFBQVEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFNBQUMsQ0FBQyxHQUFHLENBQUM7Z0JBQ3pDLFNBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO2dCQUNkLFNBQUMsQ0FBQyxNQUFNLENBQUM7b0JBQ0wsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFD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