pareto 0.80.74 → 0.80.76

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 (79) hide show
  1. package/dist/modules/pareto_new/schemas/module/shorthands/target.d.ts +10 -0
  2. package/dist/modules/pareto_new/schemas/module/shorthands/target.js +11 -1
  3. package/dist/modules/pareto_new/schemas/refiner/schema.d.ts +406 -37
  4. package/dist/modules/pareto_new/schemas/refiner/schema.js +3 -4
  5. package/dist/modules/pareto_new/schemas/refiner/shorthands/target.d.ts +77 -5
  6. package/dist/modules/pareto_new/schemas/refiner/shorthands/target.js +205 -8
  7. package/dist/modules/pareto_new/schemas/refiner/transformers/typescript_light.d.ts +6 -0
  8. package/dist/modules/pareto_new/schemas/refiner/transformers/typescript_light.js +363 -18
  9. package/dist/modules/pareto_new/schemas/schema/schema.d.ts +123 -56
  10. package/dist/modules/pareto_new/schemas/schema/schema.js +3 -3
  11. package/dist/modules/pareto_new/schemas/schema/shorthands/target.d.ts +12 -11
  12. package/dist/modules/pareto_new/schemas/schema/shorthands/target.js +9 -6
  13. package/dist/modules/pareto_new/schemas/schema/transformers/typescript_light.js +6 -6
  14. package/dist/modules/pareto_new/schemas/schema_reference/schema.d.ts +48 -11
  15. package/dist/modules/pareto_new/schemas/schema_reference/schema.js +2 -1
  16. package/dist/modules/pareto_new/schemas/schema_reference/shorthands/target.d.ts +11 -2
  17. package/dist/modules/pareto_new/schemas/schema_reference/shorthands/target.js +29 -6
  18. package/dist/modules/pareto_new/schemas/schema_reference/transformers/typescript_light.d.ts +8 -0
  19. package/dist/modules/pareto_new/schemas/schema_reference/transformers/typescript_light.js +24 -4
  20. package/dist/modules/pareto_new/schemas/transformer/schema.d.ts +388 -33
  21. package/dist/modules/pareto_new/schemas/transformer/schema.js +3 -4
  22. package/dist/modules/pareto_new/schemas/transformer/shorthands/target.d.ts +75 -3
  23. package/dist/modules/pareto_new/schemas/transformer/shorthands/target.js +196 -47
  24. package/dist/modules/pareto_new/schemas/transformer/transformers/typescript_light.d.ts +7 -1
  25. package/dist/modules/pareto_new/schemas/transformer/transformers/typescript_light.js +313 -30
  26. package/dist/modules/typescript_light/schemas/typescript_light/schema.d.ts +293 -259
  27. package/dist/modules/typescript_light/schemas/typescript_light/schema.js +3 -3
  28. package/dist/modules/typescript_light/schemas/{primitives → typescript_light}/serializers.d.ts +7 -8
  29. package/dist/modules/typescript_light/schemas/typescript_light/serializers.js +487 -0
  30. package/dist/modules/typescript_light/schemas/typescript_light/shorthands/target.d.ts +16 -14
  31. package/dist/modules/typescript_light/schemas/typescript_light/shorthands/target.js +39 -37
  32. package/dist/modules/typescript_light/schemas/typescript_light/transformers/paragraph.d.ts +8 -1
  33. package/dist/modules/typescript_light/schemas/typescript_light/transformers/paragraph.js +206 -222
  34. package/package.json +1 -1
  35. package/dist/modules/file_name/schemas/file_name/schema.d.ts +0 -1
  36. package/dist/modules/file_name/schemas/file_name/schema.js +0 -2
  37. package/dist/modules/file_name/schemas/file_name/serializers.d.ts +0 -6
  38. package/dist/modules/file_name/schemas/file_name/serializers.js +0 -23
  39. package/dist/modules/implementation_old/schemas/resolved/schema.d.ts +0 -748
  40. package/dist/modules/implementation_old/schemas/resolved/schema.js +0 -4
  41. package/dist/modules/implementation_old/schemas/resolved/shorthands/target.d.ts +0 -134
  42. package/dist/modules/implementation_old/schemas/resolved/shorthands/target.js +0 -460
  43. package/dist/modules/implementation_old/schemas/resolved/transformers/typescript_project.d.ts +0 -5
  44. package/dist/modules/implementation_old/schemas/resolved/transformers/typescript_project.js +0 -9
  45. package/dist/modules/implementation_old/schemas/resolved/transformers/typescript_source_file.d.ts +0 -9
  46. package/dist/modules/implementation_old/schemas/resolved/transformers/typescript_source_file.js +0 -647
  47. package/dist/modules/implementation_old/schemas/unresolved/schema.d.ts +0 -1288
  48. package/dist/modules/implementation_old/schemas/unresolved/schema.js +0 -4
  49. package/dist/modules/interface_old/schemas/resolved/schema.d.ts +0 -160
  50. package/dist/modules/interface_old/schemas/resolved/schema.js +0 -3
  51. package/dist/modules/interface_old/schemas/resolved/shorthands/target.d.ts +0 -47
  52. package/dist/modules/interface_old/schemas/resolved/shorthands/target.js +0 -185
  53. package/dist/modules/interface_old/schemas/resolved/transformers/to_be_written_directory_content.d.ts +0 -5
  54. package/dist/modules/interface_old/schemas/resolved/transformers/to_be_written_directory_content.js +0 -9
  55. package/dist/modules/interface_old/schemas/resolved/transformers/typescript.d.ts +0 -10
  56. package/dist/modules/interface_old/schemas/resolved/transformers/typescript.js +0 -270
  57. package/dist/modules/interface_old/schemas/unresolved/schema.d.ts +0 -371
  58. package/dist/modules/interface_old/schemas/unresolved/schema.js +0 -4
  59. package/dist/modules/pareto_new/schemas/type_reference/schema.d.ts +0 -18
  60. package/dist/modules/pareto_new/schemas/type_reference/schema.js +0 -2
  61. package/dist/modules/pareto_new/schemas/type_reference/shorthands/target.d.ts +0 -3
  62. package/dist/modules/pareto_new/schemas/type_reference/shorthands/target.js +0 -8
  63. package/dist/modules/pareto_new/schemas/value_reference/schema.d.ts +0 -18
  64. package/dist/modules/pareto_new/schemas/value_reference/schema.js +0 -3
  65. package/dist/modules/pareto_new/schemas/value_reference/shorthands/target.d.ts +0 -10
  66. package/dist/modules/pareto_new/schemas/value_reference/shorthands/target.js +0 -18
  67. package/dist/modules/pareto_old/schemas/library/schema.d.ts +0 -1
  68. package/dist/modules/pareto_old/schemas/library/schema.js +0 -2
  69. package/dist/modules/pareto_old/schemas/library/transformers/typescript_light.d.ts +0 -12
  70. package/dist/modules/pareto_old/schemas/library/transformers/typescript_light.js +0 -13
  71. package/dist/modules/typescript_light/schemas/identifier/schema.d.ts +0 -1
  72. package/dist/modules/typescript_light/schemas/identifier/schema.js +0 -2
  73. package/dist/modules/typescript_light/schemas/identifier/serializers.d.ts +0 -2
  74. package/dist/modules/typescript_light/schemas/identifier/serializers.js +0 -230
  75. package/dist/modules/typescript_light/schemas/primitives/schema.d.ts +0 -2
  76. package/dist/modules/typescript_light/schemas/primitives/schema.js +0 -2
  77. package/dist/modules/typescript_light/schemas/primitives/serializers.js +0 -255
  78. package/dist/temp/single_entry_dictionary.d.ts +0 -2
  79. package/dist/temp/single_entry_dictionary.js +0 -8
@@ -0,0 +1,487 @@
1
+ import * as p_ from 'pareto-core/serializer';
2
+ import p_list_from_text from 'pareto-core/refiner/specials/list_from_text';
3
+ import p_list_build_deprecated from 'pareto-core/refiner/specials/list_build_deprecated';
4
+ import p_unreachable_code_path from 'pareto-core/transformer/specials/unreachable_code_path';
5
+ import p_implement_me from 'pareto-core-dev/implement_me';
6
+ export const Escaped_Text = ($) => p_.ph.list_of_characters(p_.from.list(p_list_from_text($, ($) => $)).flatten(($) => {
7
+ switch ($) {
8
+ // case 0x2F: // slash (\/)
9
+ // return p_.literal.list([
10
+ // 0x5c, // \
11
+ // 0x2f, // /
12
+ // ])
13
+ case 0x22: // " (\")
14
+ return p_.literal.list([
15
+ 0x5C, // \
16
+ 0x22, // "
17
+ ]);
18
+ case 0x5C: // \ (\\)
19
+ return p_.literal.list([
20
+ 0x5C, // \
21
+ 0x5C, // \
22
+ ]);
23
+ case 0x08: // backspace (\b)
24
+ return p_.literal.list([
25
+ 0x5C, // \
26
+ 0x62, // b
27
+ ]);
28
+ case 0x0C: // form feed (\f)
29
+ return p_.literal.list([
30
+ 0x5C, // \
31
+ 0x66, // f
32
+ ]);
33
+ case 0x0A: // line feed (\n)
34
+ return p_.literal.list([
35
+ 0x5C, // \
36
+ 0x6E, // n
37
+ ]);
38
+ case 0x0D: // carriage return (\r)
39
+ return p_.literal.list([
40
+ 0x5C, // \
41
+ 0x72, // r
42
+ ]);
43
+ case 0x09: // horizontal tab (\t)
44
+ return p_.literal.list([
45
+ 0x5C, // \
46
+ 0x74, // t
47
+ ]);
48
+ case 0x0B: // vertical tab (\v)
49
+ return p_.literal.list([
50
+ 0x5C, // \
51
+ 0x76, // v
52
+ ]);
53
+ default: return p_.literal.list([
54
+ $,
55
+ ]);
56
+ }
57
+ }));
58
+ export const Apostrophed_Text = ($) => p_.ph.composed([
59
+ p_.ph.literal("'"),
60
+ Escaped_Text($),
61
+ p_.ph.literal("'"),
62
+ ]);
63
+ export const Backticked_Text = ($) => p_.ph.composed([
64
+ p_.ph.literal("`"),
65
+ Escaped_Text($),
66
+ p_.ph.literal("`"),
67
+ ]);
68
+ export const Quoted_Text = ($) => p_.ph.composed([
69
+ p_.ph.literal("\""),
70
+ Escaped_Text($),
71
+ p_.ph.literal("\""),
72
+ ]);
73
+ export const Decimal = ($) => p_.ph.list_of_characters(p_list_build_deprecated(($i) => {
74
+ if ($ < 0) {
75
+ $i['add item'](45); // '-'
76
+ $ = -$;
77
+ }
78
+ const digits = p_list_build_deprecated(($i) => {
79
+ do {
80
+ const digit = $ % 10;
81
+ $i['add item'](digit);
82
+ $ = p_.from.number($).divide(10, ['towards zero', null], {
83
+ divided_by_zero: () => p_unreachable_code_path("the divisor is hardcoded to 10"),
84
+ });
85
+ } while ($ > 0);
86
+ });
87
+ for (let j = p_.from.list(digits).amount_of_items() - 1; j >= 0; j--) {
88
+ $i['add item'](48 + p_.from.optional(digits.__deprecated_get_possible_item_at(j)).decide(($) => $, () => p_unreachable_code_path("index cannot be out of bounds")));
89
+ }
90
+ }));
91
+ export const Float = ($) => p_.ph.list_of_characters(p_list_build_deprecated(($i) => {
92
+ // Handle special case for zero
93
+ if ($ === 0) {
94
+ $i['add item'](48); // '0'
95
+ return;
96
+ }
97
+ // Handle negative numbers
98
+ if ($ < 0) {
99
+ $i['add item'](45); // '-'
100
+ $ = -$;
101
+ }
102
+ // Calculate exponent (power of 10)
103
+ let exponent = 0;
104
+ let mantissa = $;
105
+ // Normalize to range [1, 10)
106
+ if (mantissa >= 10) {
107
+ while (mantissa >= 10) {
108
+ mantissa = mantissa / 10;
109
+ exponent++;
110
+ }
111
+ }
112
+ else if (mantissa < 1) {
113
+ while (mantissa < 1) {
114
+ mantissa = mantissa * 10;
115
+ exponent--;
116
+ }
117
+ }
118
+ // Use exponential notation only if exponent < -6 or >= 21
119
+ const use_exponential = exponent < -6 || exponent >= 21;
120
+ const fixme_digits = 16;
121
+ // Create scale factor
122
+ let scale_factor = 1;
123
+ for (let i = 0; i < fixme_digits - 1; i++) {
124
+ scale_factor = scale_factor * 10;
125
+ }
126
+ const mantissa_scaled = p_.from.number(mantissa * scale_factor + 0.5).divide(1, ['towards zero', null], {
127
+ divided_by_zero: () => p_unreachable_code_path("the divisor is hardcoded to 1"),
128
+ });
129
+ // Extract all digits
130
+ const digits = p_list_build_deprecated(($i) => {
131
+ let $v_t = mantissa_scaled;
132
+ do {
133
+ const digit = $v_t % 10;
134
+ $i['add item'](digit);
135
+ $v_t = p_.from.number($v_t).divide(10, ['towards zero', null], {
136
+ divided_by_zero: () => p_unreachable_code_path("the divisor is hardcoded to 10"),
137
+ });
138
+ } while ($v_t > 0);
139
+ });
140
+ if (use_exponential) {
141
+ // OUTPUT IN EXPONENTIAL NOTATION
142
+ const first_digit = p_.from.optional(digits.__deprecated_get_possible_item_at(p_.from.list(digits).amount_of_items() - 1)).decide(($) => $, () => p_unreachable_code_path("index cannot be out of bounds"));
143
+ $i['add item'](48 + first_digit);
144
+ // Find first non-zero digit in fractional part
145
+ let first_nonzero_index = -1;
146
+ if (p_.from.list(digits).amount_of_items() > 1) {
147
+ for (let j = 0; j < p_.from.list(digits).amount_of_items() - 1; j++) {
148
+ const digit = p_.from.optional(digits.__deprecated_get_possible_item_at(j)).decide(($) => $, () => p_unreachable_code_path("index cannot be out of bounds"));
149
+ if (digit !== 0) {
150
+ if (first_nonzero_index === -1) {
151
+ first_nonzero_index = j;
152
+ }
153
+ }
154
+ }
155
+ }
156
+ if (first_nonzero_index >= 0) {
157
+ $i['add item'](46); // '.'
158
+ for (let j = p_.from.list(digits).amount_of_items() - 2; j >= first_nonzero_index; j--) {
159
+ const digit = p_.from.optional(digits.__deprecated_get_possible_item_at(j)).decide(($) => $, () => p_unreachable_code_path("index cannot be out of bounds"));
160
+ $i['add item'](48 + digit);
161
+ }
162
+ }
163
+ // Add exponent
164
+ $i['add item'](101); // 'e'
165
+ let exp = exponent;
166
+ if (exp < 0) {
167
+ $i['add item'](45); // '-'
168
+ exp = -exp;
169
+ }
170
+ else {
171
+ $i['add item'](43); // '+'
172
+ }
173
+ const exp_digits = p_list_build_deprecated(($i) => {
174
+ if (exp === 0) {
175
+ $i['add item'](0);
176
+ }
177
+ else {
178
+ do {
179
+ const digit = exp % 10;
180
+ $i['add item'](digit);
181
+ exp = p_.from.number(exp).divide(10, ['towards zero', null], {
182
+ divided_by_zero: () => p_unreachable_code_path("hardcoded 10"),
183
+ });
184
+ } while (exp > 0);
185
+ }
186
+ });
187
+ for (let j = p_.from.list(exp_digits).amount_of_items() - 1; j >= 0; j--) {
188
+ const digit = p_.from.optional(exp_digits.__deprecated_get_possible_item_at(j)).decide(($) => $, () => p_unreachable_code_path("index cannot be out of bounds"));
189
+ $i['add item'](48 + digit);
190
+ }
191
+ }
192
+ else {
193
+ // OUTPUT IN FIXED-POINT NOTATION
194
+ let digit_count = p_.from.list(digits).amount_of_items();
195
+ // Find first (lowest index) nonzero digit to know when to stop
196
+ let first_nonzero = digit_count; // Initialize beyond range
197
+ for (let j = 0; j < digit_count; j++) {
198
+ const d = p_.from.optional(digits.__deprecated_get_possible_item_at(j)).decide(($) => $, () => p_unreachable_code_path("index cannot be out of bounds"));
199
+ if (d !== 0) {
200
+ first_nonzero = j;
201
+ break;
202
+ }
203
+ }
204
+ const decimal_pos = exponent + 1; // Number of digits to the left of decimal
205
+ if (first_nonzero === digit_count) {
206
+ // All zeros
207
+ $i['add item'](48); // '0'
208
+ }
209
+ else if (decimal_pos <= 0) {
210
+ // Like 0.00123 - need leading zeros
211
+ $i['add item'](48); // '0'
212
+ $i['add item'](46); // '.'
213
+ for (let z = 0; z < -decimal_pos; z++) {
214
+ $i['add item'](48);
215
+ }
216
+ // Output digits from highest to first_nonzero
217
+ for (let i = digit_count - 1; i >= first_nonzero; i--) {
218
+ const d = p_.from.optional(digits.__deprecated_get_possible_item_at(i)).decide(($) => $, () => p_unreachable_code_path("index cannot be out of bounds"));
219
+ $i['add item'](48 + d);
220
+ }
221
+ }
222
+ else {
223
+ // Like 123 or 123.45
224
+ let digits_output = 0;
225
+ // Output all digits from highest, but ensure we output at least decimal_pos digits before decimal
226
+ // let min_digits_needed = decimal_pos
227
+ for (let i = digit_count - 1; i >= 0; i--) {
228
+ // Stop after we've output all significant fractional digits
229
+ if (i < first_nonzero && digits_output >= decimal_pos) {
230
+ break;
231
+ }
232
+ const d = p_.from.optional(digits.__deprecated_get_possible_item_at(i)).decide(($) => $, () => p_unreachable_code_path("index cannot be out of bounds"));
233
+ // Check if we need to insert decimal before this digit
234
+ if (digits_output === decimal_pos && digits_output > 0) {
235
+ $i['add item'](46); // '.'
236
+ }
237
+ $i['add item'](48 + d);
238
+ digits_output++;
239
+ }
240
+ }
241
+ }
242
+ }));
243
+ export const Identifier = ($) => {
244
+ return p_.from.state($).decide(($) => {
245
+ switch ($[0]) {
246
+ case 'raw': return p_.option($, ($) => $);
247
+ case 'escaped': return p_.option($, ($) => {
248
+ const temp_literal_to_text = ($) => p_list_from_text($, ($) => $);
249
+ const the_string = $;
250
+ if (the_string === "") {
251
+ return "_empty";
252
+ }
253
+ const $v_reserved_keywords = p_.literal.dictionary({
254
+ //Reserved Words
255
+ "arguments": null,
256
+ "break": null,
257
+ "case": null,
258
+ "catch": null,
259
+ "class": null,
260
+ "const": null,
261
+ "continue": null,
262
+ "debugger": null,
263
+ "default": null,
264
+ "delete": null,
265
+ "do": null,
266
+ "else": null,
267
+ "enum": null,
268
+ "export": null,
269
+ "extends": null,
270
+ "false": null,
271
+ "finally": null,
272
+ "for": null,
273
+ "function": null,
274
+ "if": null,
275
+ "import": null,
276
+ "in": null,
277
+ "instanceof": null,
278
+ "new": null,
279
+ "null": null,
280
+ "return": null,
281
+ "super": null,
282
+ "switch": null,
283
+ "this": null,
284
+ "throw": null,
285
+ "true": null,
286
+ "try": null,
287
+ "typeof": null,
288
+ "undefined": null,
289
+ "var": null,
290
+ "void": null,
291
+ "while": null,
292
+ "with": null,
293
+ //Strict Mode Reserved Words
294
+ "as": null,
295
+ "implements": null,
296
+ "interface": null,
297
+ "let": null,
298
+ "package": null,
299
+ "private": null,
300
+ "protected": null,
301
+ "public": null,
302
+ "static": null,
303
+ "yield": null,
304
+ //Contextual Keywords
305
+ "any": null,
306
+ "boolean": null,
307
+ "constructor": null,
308
+ "declare": null,
309
+ "get": null,
310
+ "module": null,
311
+ "require": null,
312
+ "number": null,
313
+ "set": null,
314
+ "string": null,
315
+ "symbol": null,
316
+ "type": null,
317
+ "from": null,
318
+ "of": null,
319
+ //???
320
+ "unknown": null,
321
+ "object": null,
322
+ "never": null,
323
+ });
324
+ return p_.from.dictionary($v_reserved_keywords).get_possible_entry(the_string, ($) => p_.ph.list_of_characters(p_list_build_deprecated(($i) => {
325
+ $i['add list'](temp_literal_to_text(the_string));
326
+ $i['add item'](95); //_
327
+ })), () => p_.ph.list_of_characters(p_list_build_deprecated(($i) => {
328
+ const $v_characters = p_list_from_text(the_string, ($) => $);
329
+ const length = p_.from.list($v_characters).amount_of_items();
330
+ let position = 0;
331
+ const discard_character = () => {
332
+ position += 1;
333
+ };
334
+ while (true) {
335
+ const get_current_character = () => {
336
+ if (position === length) {
337
+ return null;
338
+ }
339
+ return p_.from.optional($v_characters.__deprecated_get_possible_item_at(position)).decide(($) => $, () => null);
340
+ };
341
+ const current_character = get_current_character();
342
+ if (current_character === null) {
343
+ return;
344
+ }
345
+ if (position === 0) {
346
+ //first character
347
+ if (current_character >= 48 && current_character <= 57) {
348
+ //begins with 0-9
349
+ $i['add item'](95); //_
350
+ $i['add item'](current_character);
351
+ }
352
+ }
353
+ if (false
354
+ || (current_character >= 48 && current_character <= 57) //0-9
355
+ || (current_character >= 65 && current_character <= 90) //A-Z
356
+ || (current_character >= 97 && current_character <= 122) //a-z
357
+ ) {
358
+ //normal character
359
+ $i['add item'](current_character);
360
+ discard_character();
361
+ }
362
+ else {
363
+ const consume_and_add = ($) => {
364
+ discard_character();
365
+ $i['add list'](temp_literal_to_text($));
366
+ };
367
+ switch (current_character) {
368
+ case 32:
369
+ consume_and_add("_");
370
+ break; // Space
371
+ case 33:
372
+ consume_and_add("$ex_");
373
+ break; // Exclamation (!)
374
+ case 34:
375
+ consume_and_add("$qo_");
376
+ break; // Double Quote (")
377
+ case 35:
378
+ consume_and_add("$ha_");
379
+ break; // Hash (#)
380
+ case 36:
381
+ consume_and_add("$$_");
382
+ break; // Dollar ($)
383
+ case 37:
384
+ consume_and_add("$pt_");
385
+ break; // Percent (%)
386
+ case 38:
387
+ consume_and_add("$am_");
388
+ break; // Ampersand (&)
389
+ case 39:
390
+ consume_and_add("$ap_");
391
+ break; // Apostrophe (')
392
+ case 40:
393
+ consume_and_add("$po_");
394
+ break; // Open Parenthesis (()
395
+ case 41:
396
+ consume_and_add("$pc_");
397
+ break; // Close Parenthesis ())
398
+ case 42:
399
+ consume_and_add("$sr_");
400
+ break; // Asterisk (*)
401
+ case 43:
402
+ consume_and_add("$pl_");
403
+ break; // Plus (+)
404
+ case 44:
405
+ consume_and_add("$cm_");
406
+ break; // Comma (,)
407
+ case 45:
408
+ consume_and_add("$mi_");
409
+ break; // Minus (-)
410
+ case 46:
411
+ consume_and_add("$pe_");
412
+ break; // Period (.)
413
+ case 47:
414
+ consume_and_add("$sl_");
415
+ break; // Slash (/)
416
+ case 58:
417
+ consume_and_add("$cl_");
418
+ break; // Colon (:)
419
+ case 59:
420
+ consume_and_add("$sc_");
421
+ break; // Semicolon (;)
422
+ case 60:
423
+ consume_and_add("$st_");
424
+ break; // Less Than (<)
425
+ case 61:
426
+ consume_and_add("$eq_");
427
+ break; // Equals (=)
428
+ case 62:
429
+ consume_and_add("$gt_");
430
+ break; // Greater Than (>)
431
+ case 63:
432
+ consume_and_add("$qu_");
433
+ break; // Question Mark (?)
434
+ case 64:
435
+ consume_and_add("$at_");
436
+ break; // At (@)
437
+ case 91:
438
+ consume_and_add("$bo_");
439
+ break; // Open Bracket ([)
440
+ case 92:
441
+ consume_and_add("$bs_");
442
+ break; // Backslash (\)
443
+ case 93:
444
+ consume_and_add("$bc_");
445
+ break; // Close Bracket (])
446
+ case 94:
447
+ consume_and_add("$ca_");
448
+ break; // Caret (^)
449
+ case 95:
450
+ consume_and_add("$_");
451
+ break; // Underscore (_)
452
+ case 96:
453
+ consume_and_add("$bt_");
454
+ break; // Backtick (`)
455
+ case 123:
456
+ consume_and_add("$co_");
457
+ break; // Open Curly Brace ({)
458
+ case 124:
459
+ consume_and_add("$vb_");
460
+ break; // Vertical Bar (|)
461
+ case 125:
462
+ consume_and_add("$cc_");
463
+ break; // Close Curly Brace (})
464
+ case 126:
465
+ consume_and_add("$ti_");
466
+ break; // Tilde (~)
467
+ default: p_implement_me(`unhandled character: \"${current_character}\"`);
468
+ }
469
+ }
470
+ }
471
+ })));
472
+ });
473
+ default: return p_.exhaustive($[0]);
474
+ }
475
+ });
476
+ };
477
+ // export const String_Literal_pseudo: declarations.String_Literal_pseudo = ($, $p) => {
478
+ // return sh.ph.serialize($p.delimiter === "quote"
479
+ // ? quoted_text($)
480
+ // : apostrophed_text($))
481
+ // }
482
+ // export const String_Literal: declarations.String_Literal = ($) => {
483
+ // return sh.ph.serialize($.delimiter[0] === "quote"
484
+ // ? quoted_text($.value)
485
+ // : apostrophed_text($.value))
486
+ // }
487
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy90eXBlc2NyaXB0X2xpZ2h0L3NjaGVtYXMvdHlwZXNjcmlwdF9saWdodC9zZXJpYWxpemVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBRTVDLE9BQU8sZ0JBQWdCLE1BQU0sNkNBQTZDLENBQUE7QUFDMUUsT0FBTyx1QkFBdUIsTUFBTSxvREFBb0QsQ0FBQTtBQUN4RixPQUFPLHVCQUF1QixNQUFNLHdEQUF3RCxDQUFBO0FBRTVGLE9BQU8sY0FBYyxNQUFNLDhCQUE4QixDQUFBO0FBdUN6RCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQThCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUNsRixFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDUixnQkFBZ0IsQ0FDWixDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDWCxDQUNKLENBQUMsT0FBTyxDQUNMLENBQUMsQ0FBQyxFQUFxQixFQUFFO0lBQ3JCLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDUiwyQkFBMkI7UUFDM0IsK0JBQStCO1FBQy9CLHFCQUFxQjtRQUNyQixxQkFBcUI7UUFDckIsU0FBUztRQUNULEtBQUssSUFBSSxFQUFFLFNBQVM7WUFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDbkIsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsSUFBSSxFQUFFLElBQUk7YUFDYixDQUFDLENBQUE7UUFDTixLQUFLLElBQUksRUFBRSxTQUFTO1lBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ25CLElBQUksRUFBRSxJQUFJO2dCQUNWLElBQUksRUFBRSxJQUFJO2FBQ2IsQ0FBQyxD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
@@ -14,31 +14,33 @@ export declare const source_file: (statements: p_.Normal_List<s_target.Statement
14
14
  export declare const identifier_raw: (name: string) => s_target.Identifier;
15
15
  export declare const identifier_escaped: (name: string) => s_target.Identifier;
16
16
  export declare const string_literal: (value: string, delimiter: "quote" | "apostrophe") => s_target.String_Literal;
17
- export declare const specifier: (type_only: boolean, name: s_target.Identifier, as: null | s_target.Identifier) => s_target.Statements.L.export_.type_.named_exports.specifiers.L;
17
+ export declare const specifier: (type_only: boolean, name: s_target.Identifier, as: null | s_target.Identifier) => s_target.Statement.export_.type_.named_exports.specifiers.L;
18
18
  export declare namespace sw {
19
- const case_: (expression: s_target.Expression, statements: p_.Normal_List<s_target.Statements.L>) => s_target.Statements.L.switch_.clauses.L;
20
- const default_: (statements: p_.Normal_List<s_target.Statements.L>) => s_target.Statements.L.switch_.clauses.L;
19
+ const case_: (expression: s_target.Expression, statement: s_target.Statements.L) => s_target.Statement.switch_.clauses.L;
20
+ const default_: (statement: s_target.Statements.L) => s_target.Statement.switch_.clauses.L;
21
+ const case_statements: (expression: s_target.Expression, statements: p_.Normal_List<s_target.Statements.L>) => s_target.Statement.switch_.clauses.L;
22
+ const default_statements: (statements: p_.Normal_List<s_target.Statements.L>) => s_target.Statement.switch_.clauses.L;
21
23
  }
22
24
  export declare namespace s {
23
25
  const block: (statements: p_.Normal_List<s_target.Statements.L>) => s_target.Statements.L;
24
26
  const empty_line: () => s_target.Statements.L;
25
- const export_: (specifiers: p_.Normal_List<s_target.Statements.L.export_.type_.named_exports.specifiers.L>, from: null | s_target.String_Literal) => s_target.Statements.L;
27
+ const export_: (specifiers: p_.Normal_List<s_target.Statement.export_.type_.named_exports.specifiers.L>, from: null | s_target.String_Literal) => s_target.Statements.L;
26
28
  const expression: (expression: s_target.Expression) => s_target.Statements.L;
27
- const import_named: (specifiers: p_.Normal_List<s_target.Statements.L.import_.type_.named.specifiers.L>, from: s_target.String_Literal) => s_target.Statements.L;
29
+ const import_named: (specifiers: p_.Normal_List<s_target.Statement.import_.type_.named.specifiers.L>, from: s_target.String_Literal) => s_target.Statements.L;
28
30
  const import_namespace: (name: s_target.Identifier, from: s_target.String_Literal) => s_target.Statements.L;
29
31
  const import_default: (name: s_target.Identifier, from: s_target.String_Literal) => s_target.Statements.L;
30
32
  const line_comment: (comment: string) => s_target.Statements.L;
31
- const namespace: (export_: boolean, name: s_target.Identifier, block: p_.Normal_List<s_target.Statements.L>) => s_target.Statements.L;
33
+ const namespace: (export_: boolean, name: s_target.Identifier, block: p_.Normal_List<s_target.Statement>) => s_target.Statements.L;
32
34
  const return_: (expression: null | s_target.Expression) => s_target.Statements.L;
33
- const switch_: (expression: s_target.Expression, clauses: p_.Normal_List<s_target.Statements.L.switch_.clauses.L>) => s_target.Statements.L;
35
+ const switch_: (expression: s_target.Expression, clauses: p_.Normal_List<s_target.Statement.switch_.clauses.L>) => s_target.Statements.L;
34
36
  const type_alias: (export_: boolean, name: s_target.Identifier, parameters: p_.Normal_List<s_target.Identifier>, type: s_target.Type) => s_target.Statements.L;
35
37
  const variable: (export_: boolean, const_: boolean, name: s_target.Identifier, type: null | s_target.Type, expression: null | s_target.Expression) => s_target.Statements.L;
36
38
  }
37
- export declare const parameter: (name: s_target.Identifier, type: s_target.Type | null) => s_target.Function_Parameters.L;
38
- export declare const tl_propery: (key: string, key_type: "identifier" | "quoted string literal" | "apostrophized string literal", readonly: boolean, type: s_target.Type) => s_target.Type.type_literal.properties.L;
39
+ export declare const parameter: (name: s_target.Identifier, type: s_target.Type | null) => s_target.Function_Declaration.parameters.L;
40
+ export declare const tl_propery: (key: string, key_type: "identifier" | "string literal with quotes" | "string literal with apostrophes", readonly: boolean, type: s_target.Type) => s_target.Type.type_literal.properties.L;
39
41
  export declare namespace t {
40
42
  const boolean: () => s_target.Type;
41
- const function_: (type_parameters: p_.Normal_List<s_target.Type>, parameters: p_.Normal_List<s_target.Function_Parameters.L>, return_: s_target.Type) => s_target.Type;
43
+ const function_: (type_parameters: p_.Normal_List<s_target.Type>, parameters: p_.Normal_List<s_target.Function_Declaration.parameters.L>, return_: s_target.Type) => s_target.Type;
42
44
  const literal_type: (string_literal: s_target.String_Literal) => s_target.Type;
43
45
  const never: () => s_target.Type;
44
46
  const null_: () => s_target.Type;
@@ -52,11 +54,11 @@ export declare namespace t {
52
54
  }
53
55
  export declare namespace e {
54
56
  const array_literal: (elements: p_.Normal_List<s_target.Expression>) => s_target.Expression;
55
- const arrow_function_with_expression: (parameters: p_.Normal_List<s_target.Function_Parameters.L>, return_type: null | s_target.Type, expression: s_target.Expression) => s_target.Expression;
56
- const arrow_function_with_block: (parameters: p_.Normal_List<s_target.Function_Parameters.L>, return_type: null | s_target.Type, block: p_.Normal_List<s_target.Statements.L>) => s_target.Expression;
57
+ const arrow_function_with_expression: (parameters: p_.Normal_List<s_target.Function_Declaration.parameters.L>, return_type: null | s_target.Type, expression: s_target.Expression) => s_target.Expression;
58
+ const arrow_function_with_block: (parameters: p_.Normal_List<s_target.Function_Declaration.parameters.L>, return_type: null | s_target.Type, block: p_.Normal_List<s_target.Statements.L>) => s_target.Expression;
57
59
  const assignment: (left: s_target.Expression, right: s_target.Expression) => s_target.Expression;
58
- const call: (function_selection: s_target.Expression, arguments_: p_.Normal_List<s_target.Expression>) => s_target.Expression;
59
- const compare: (left: s_target.Expression, operator: "loosely equal" | "strictly equal" | "loosely not equal" | "strictly not equal" | "smaller than" | "smaller than or equal" | "greater than" | "greater than or equal", right: s_target.Expression) => s_target.Expression;
60
+ const call: (function_selection: s_target.Expression, arguments_on_own_line: boolean, arguments_: p_.Normal_List<s_target.Expression>) => s_target.Expression;
61
+ const compare: (left: s_target.Expression, operator: "strictly equal" | "strictly not equal" | "smaller than" | "smaller than or equal" | "greater than" | "greater than or equal", right: s_target.Expression) => s_target.Expression;
60
62
  const conditional: (condition: s_target.Expression, if_true: s_target.Expression, if_false: s_target.Expression) => s_target.Expression;
61
63
  const element_access: (collection: s_target.Expression, index: s_target.Expression) => s_target.Expression;
62
64
  const false_: () => s_target.Expression;