pareto-fountain-pen 0.2.0 → 0.3.1

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 (67) hide show
  1. package/dist/implementation/algorithms/procedures/guaranteed/console_error.d.ts +2 -1
  2. package/dist/implementation/algorithms/procedures/guaranteed/console_error.js +2 -2
  3. package/dist/implementation/algorithms/procedures/guaranteed/console_log.d.ts +2 -1
  4. package/dist/implementation/algorithms/procedures/guaranteed/console_log.js +2 -2
  5. package/dist/implementation/algorithms/procedures/unguaranteed/write_to_directory.d.ts +1 -1
  6. package/dist/implementation/algorithms/procedures/unguaranteed/write_to_directory.js +4 -4
  7. package/dist/implementation/algorithms/procedures/unguaranteed/write_to_file.d.ts +1 -1
  8. package/dist/implementation/algorithms/procedures/unguaranteed/write_to_file.js +3 -3
  9. package/dist/implementation/algorithms/procedures/unguaranteed/write_to_node.d.ts +1 -1
  10. package/dist/implementation/algorithms/procedures/unguaranteed/write_to_node.js +3 -3
  11. package/dist/implementation/algorithms/transformations/block/lines.js +1 -1
  12. package/dist/implementation/generated/pareto/generic/parse/ast.d.ts +10 -0
  13. package/dist/implementation/generated/pareto/generic/parse/ast.js +245 -0
  14. package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.d.ts +13 -0
  15. package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.js +50 -0
  16. package/dist/implementation/generated/pareto/generic/parse/parse.d.ts +6 -0
  17. package/dist/implementation/generated/pareto/generic/parse/parse.js +65 -0
  18. package/dist/implementation/generated/pareto/generic/parse/string_iterator.d.ts +40 -0
  19. package/dist/implementation/generated/pareto/generic/parse/string_iterator.js +109 -0
  20. package/dist/implementation/generated/pareto/generic/parse/token.d.ts +9 -0
  21. package/dist/implementation/generated/pareto/generic/parse/token.js +519 -0
  22. package/dist/implementation/generated/pareto/generic/resolve.js +3 -3
  23. package/dist/implementation/generated/pareto/generic/serialize.d.ts +4 -0
  24. package/dist/implementation/generated/pareto/generic/serialize.js +93 -0
  25. package/dist/implementation/generated/pareto/generic/unmarshall.d.ts +26 -26
  26. package/dist/implementation/generated/pareto/generic/unmarshall.js +19 -10
  27. package/dist/implementation/generated/pareto/schemas/block/deserialize.d.ts +7 -0
  28. package/dist/implementation/generated/pareto/schemas/block/deserialize.js +40 -0
  29. package/dist/implementation/generated/pareto/schemas/block/serialize.d.ts +7 -0
  30. package/dist/implementation/generated/pareto/schemas/block/serialize.js +53 -0
  31. package/dist/implementation/generated/pareto/schemas/lines/deserialize.d.ts +3 -0
  32. package/dist/implementation/generated/pareto/schemas/lines/deserialize.js +32 -0
  33. package/dist/implementation/generated/pareto/schemas/lines/serialize.d.ts +3 -0
  34. package/dist/implementation/generated/pareto/schemas/lines/serialize.js +37 -0
  35. package/dist/implementation/generated/pareto/schemas/semi_lines/deserialize.d.ts +3 -0
  36. package/dist/implementation/generated/pareto/schemas/semi_lines/deserialize.js +32 -0
  37. package/dist/implementation/generated/pareto/schemas/semi_lines/serialize.d.ts +3 -0
  38. package/dist/implementation/generated/pareto/schemas/semi_lines/serialize.js +37 -0
  39. package/dist/implementation/generated/pareto/schemas/text/deserialize.d.ts +3 -0
  40. package/dist/implementation/generated/pareto/schemas/text/deserialize.js +32 -0
  41. package/dist/implementation/generated/pareto/schemas/text/serialize.d.ts +3 -0
  42. package/dist/implementation/generated/pareto/schemas/text/serialize.js +37 -0
  43. package/dist/interface/generated/pareto/core/astn_source.d.ts +15 -0
  44. package/dist/interface/generated/pareto/core/parse_result.d.ts +25 -0
  45. package/dist/interface/generated/pareto/core/parse_result.js +3 -0
  46. package/dist/interface/generated/pareto/core/resolve.d.ts +1 -1
  47. package/dist/interface/generated/pareto/core/resolved.d.ts +3 -3
  48. package/dist/interface/generated/pareto/core/token.d.ts +49 -0
  49. package/dist/interface/generated/pareto/core/token.js +3 -0
  50. package/dist/interface/generated/pareto/schemas/block/deserialize.d.ts +158 -0
  51. package/dist/interface/generated/pareto/schemas/block/deserialize.js +3 -0
  52. package/dist/interface/generated/pareto/schemas/block/serialize.d.ts +158 -0
  53. package/dist/interface/generated/pareto/schemas/block/serialize.js +3 -0
  54. package/dist/interface/generated/pareto/schemas/lines/deserialize.d.ts +54 -0
  55. package/dist/interface/generated/pareto/schemas/lines/deserialize.js +3 -0
  56. package/dist/interface/generated/pareto/schemas/lines/serialize.d.ts +54 -0
  57. package/dist/interface/generated/pareto/schemas/lines/serialize.js +3 -0
  58. package/dist/interface/generated/pareto/schemas/semi_lines/deserialize.d.ts +54 -0
  59. package/dist/interface/generated/pareto/schemas/semi_lines/deserialize.js +3 -0
  60. package/dist/interface/generated/pareto/schemas/semi_lines/serialize.d.ts +54 -0
  61. package/dist/interface/generated/pareto/schemas/semi_lines/serialize.js +3 -0
  62. package/dist/interface/generated/pareto/schemas/text/deserialize.d.ts +54 -0
  63. package/dist/interface/generated/pareto/schemas/text/deserialize.js +3 -0
  64. package/dist/interface/generated/pareto/schemas/text/serialize.d.ts +54 -0
  65. package/dist/interface/generated/pareto/schemas/text/serialize.js +3 -0
  66. package/dist/temp/temp_types.d.ts +2 -2
  67. package/package.json +7 -14
@@ -4,4 +4,5 @@ export type Parameters = {
4
4
  'group': _in.Group;
5
5
  'indentation': string;
6
6
  };
7
- export declare const $$: _easync.Guaranteed_Procedure_Initializer<Parameters>;
7
+ export type Resources = null;
8
+ export declare const $$: _easync.Guaranteed_Procedure_Initializer<Parameters, Resources>;
@@ -31,7 +31,7 @@ const $$ = ($p) => {
31
31
  'lines': t_block_to_lines.Group($p.group, {
32
32
  'indentation': $p.indentation
33
33
  })
34
- });
34
+ }, null);
35
35
  };
36
36
  exports.$$ = $$;
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29sZV9lcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9hbGdvcml0aG1zL3Byb2NlZHVyZXMvZ3VhcmFudGVlZC9jb25zb2xlX2Vycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBSUEsb0ZBQXFFO0FBRXJFLGdIQUFnSDtBQVN6RyxNQUFNLEVBQUUsR0FBeUQsQ0FDcEUsRUFBRSxFQUNKLEVBQUU7SUFDQSxPQUFPLElBQUEsY0FBTyxFQUFDO1FBQ1gsT0FBTyxFQUFFLGdCQUFnQixDQUFDLEtBQUssQ0FDM0IsRUFBRSxDQUFDLEtBQUssRUFDUjtZQUNJLGFBQWEsRUFBRSxFQUFFLENBQUMsV0FBVztTQUNoQyxDQUNKO0tBQ0osQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFBO0FBWFksUUFBQSxFQUFFLE1BV2QifQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29sZV9lcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9hbGdvcml0aG1zL3Byb2NlZHVyZXMvZ3VhcmFudGVlZC9jb25zb2xlX2Vycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBSUEsb0ZBQXFFO0FBRXJFLGdIQUFnSDtBQVd6RyxNQUFNLEVBQUUsR0FBb0UsQ0FDL0UsRUFBRSxFQUNKLEVBQUU7SUFDQSxPQUFPLElBQUEsY0FBTyxFQUNWO1FBQ0ksT0FBTyxFQUFFLGdCQUFnQixDQUFDLEtBQUssQ0FDM0IsRUFBRSxDQUFDLEtBQUssRUFDUjtZQUNJLGFBQWEsRUFBRSxFQUFFLENBQUMsV0FBVztTQUNoQyxDQUNKO0tBQ0osRUFDRCxJQUFJLENBQ1AsQ0FBQTtBQUNMLENBQUMsQ0FBQTtBQWRZLFFBQUEsRUFBRSxNQWNkIn0=
@@ -4,4 +4,5 @@ export type Parameters = {
4
4
  'group': _in.Group;
5
5
  'indentation': string;
6
6
  };
7
- export declare const $$: _easync.Guaranteed_Procedure_Initializer<Parameters>;
7
+ export type Resources = null;
8
+ export declare const $$: _easync.Guaranteed_Procedure_Initializer<Parameters, Resources>;
@@ -31,7 +31,7 @@ const $$ = ($p) => {
31
31
  'lines': t_block_to_lines.Group($p.group, {
32
32
  'indentation': $p.indentation
33
33
  })
34
- });
34
+ }, null);
35
35
  };
36
36
  exports.$$ = $$;
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29sZV9sb2cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vYWxnb3JpdGhtcy9wcm9jZWR1cmVzL2d1YXJhbnRlZWQvY29uc29sZV9sb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSxvRkFBcUU7QUFFckUsb0dBQXdHO0FBU2pHLE1BQU0sRUFBRSxHQUF5RCxDQUNwRSxFQUFFLEVBQ0osRUFBRTtJQUNBLE9BQU8sSUFBQSxRQUFLLEVBQUM7UUFDVCxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsS0FBSyxDQUMzQixFQUFFLENBQUMsS0FBSyxFQUNSO1lBQ0ksYUFBYSxFQUFFLEVBQUUsQ0FBQyxXQUFXO1NBQ2hDLENBQ0o7S0FDSixDQUFDLENBQUE7QUFDTixDQUFDLENBQUE7QUFYWSxRQUFBLEVBQUUsTUFXZCJ9
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29sZV9sb2cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vYWxnb3JpdGhtcy9wcm9jZWR1cmVzL2d1YXJhbnRlZWQvY29uc29sZV9sb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSxvRkFBcUU7QUFFckUsb0dBQXdHO0FBV2pHLE1BQU0sRUFBRSxHQUFvRSxDQUMvRSxFQUFFLEVBQ0osRUFBRTtJQUNBLE9BQU8sSUFBQSxRQUFLLEVBQ1I7UUFDSSxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsS0FBSyxDQUMzQixFQUFFLENBQUMsS0FBSyxFQUNSO1lBQ0ksYUFBYSxFQUFFLEVBQUUsQ0FBQyxXQUFXO1NBQ2hDLENBQ0o7S0FDSixFQUNELElBQUksQ0FDUCxDQUFBO0FBQ0wsQ0FBQyxDQUFBO0FBZFksUUFBQSxFQUFFLE1BY2QifQ==
@@ -1,3 +1,3 @@
1
1
  import * as _easync from 'exupery-core-async';
2
2
  import * as D from "../../../../temp/temp_types";
3
- export declare const $$: _easync.Unguaranteed_Procedure_Initializer<D.Directory_Parameters, D.Directory_Error>;
3
+ export declare const $$: _easync.Unguaranteed_Procedure_Initializer<D.Directory_Parameters, D.Directory_Error, null>;
@@ -38,8 +38,8 @@ const $$ = ($p) => {
38
38
  'escape spaces in path': true,
39
39
  },
40
40
  'error if not exists': false
41
- })
42
- : _easync.upi.u(do_nothing_1.$$, ($) => _ea.deprecated_panic("not reachable"))(null),
41
+ }, null)
42
+ : _easync.upi.u(do_nothing_1.$$, ($) => _ea.deprecated_panic("not reachable"))(null, null),
43
43
  _easync.up.dictionary($p.directory.map(($, key) => (0, write_to_node_1.$$)({
44
44
  'node': $,
45
45
  'path': $p.path,
@@ -47,8 +47,8 @@ const $$ = ($p) => {
47
47
  'indentation': $p.indentation,
48
48
  'newline': $p.newline,
49
49
  'remove before creating': false,
50
- })), ($) => ['nodes', $])
50
+ }, null)), ($) => ['nodes', $])
51
51
  ]);
52
52
  };
53
53
  exports.$$ = $$;
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGVfdG9fZGlyZWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL2FsZ29yaXRobXMvcHJvY2VkdXJlcy91bmd1YXJhbnRlZWQvd3JpdGVfdG9fZGlyZWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0Esc0RBQXVDO0FBR3ZDLDREQUE2QztBQUU3Qyw0R0FBZ0g7QUFDaEgsa0hBQXNIO0FBSXRILG1EQUF1RDtBQUloRCxNQUFNLEVBQUUsR0FBMEYsQ0FDckcsRUFBRSxFQUNKLEVBQUU7SUFDQSxPQUFPLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFvQjtRQUUxQyxFQUFFLENBQUMsd0JBQXdCLENBQUM7WUFDeEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNYLFdBQVEsRUFDUixDQUFDLENBQUMsRUFBcUIsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUMxQyxDQUFDO2dCQUNFLE1BQU0sRUFBRTtvQkFDSixNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUk7b0JBQ2YsdUJBQXVCLEVBQUUsSUFBSTtpQkFDaEM7Z0JBQ0QscUJBQXFCLEVBQUUsS0FBSzthQUMvQixDQUFDO1lBQ0YsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNYLGVBQVksRUFDWixDQUFDLENBQUMsRUFBcUIsRUFBRSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsQ0FDbEUsQ0FBQyxJQUFJLENBQUM7UUFFWCxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FDakIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFBLGtCQUFlLEVBQUM7WUFDekMsTUFBTSxFQUFFLENBQUM7WUFDVCxNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUk7WUFDZixLQUFLLEVBQUUsR0FBRztZQUNWLGFBQWEsRUFBRSxFQUFFLENBQUMsV0FBVztZQUM3QixTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU87WUFDckIsd0JBQXdCLEVBQUUsS0FBSztTQUNsQyxDQUFDLENBQUMsRUFDSCxDQUFDLENBQUMsRUFBcUIsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUN6QztLQUNKLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQTtBQWpDWSxRQUFBLEVBQUUsTUFpQ2QifQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGVfdG9fZGlyZWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL2FsZ29yaXRobXMvcHJvY2VkdXJlcy91bmd1YXJhbnRlZWQvd3JpdGVfdG9fZGlyZWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0Esc0RBQXVDO0FBR3ZDLDREQUE2QztBQUU3Qyw0R0FBZ0g7QUFDaEgsa0hBQXNIO0FBSXRILG1EQUF1RDtBQUloRCxNQUFNLEVBQUUsR0FBZ0csQ0FDM0csRUFBRSxFQUNKLEVBQUU7SUFDQSxPQUFPLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFvQjtRQUUxQyxFQUFFLENBQUMsd0JBQXdCLENBQUM7WUFDeEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNYLFdBQVEsRUFDUixDQUFDLENBQUMsRUFBcUIsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUMxQyxDQUNHO2dCQUNJLE1BQU0sRUFBRTtvQkFDSixNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUk7b0JBQ2YsdUJBQXVCLEVBQUUsSUFBSTtpQkFDaEM7Z0JBQ0QscUJBQXFCLEVBQUUsS0FBSzthQUMvQixFQUNELElBQUksQ0FDUDtZQUNELENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDWCxlQUFZLEVBQ1osQ0FBQyxDQUFDLEVBQXFCLEVBQUUsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLENBQ2xFLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQztRQUVqQixPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FDakIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFBLGtCQUFlLEVBQ3hDO1lBQ0ksTUFBTSxFQUFFLENBQUM7WUFDVCxNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUk7WUFDZixLQUFLLEVBQUUsR0FBRztZQUNWLGFBQWEsRUFBRSxFQUFFLENBQUMsV0FBVztZQUM3QixTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU87WUFDckIsd0JBQXdCLEVBQUUsS0FBSztTQUNsQyxFQUNELElBQUksQ0FDUCxDQUFDLEVBQ0YsQ0FBQyxDQUFDLEVBQXFCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FDekM7S0FDSixDQUFDLENBQUE7QUFDTixDQUFDLENBQUE7QUF2Q1ksUUFBQSxFQUFFLE1BdUNkIn0=
@@ -1,3 +1,3 @@
1
1
  import * as _easync from 'exupery-core-async';
2
2
  import * as D from "../../../../temp/temp_types";
3
- export declare const $$: _easync.Unguaranteed_Procedure_Initializer<D.File_Parameters, D.File_Error>;
3
+ export declare const $$: _easync.Unguaranteed_Procedure_Initializer<D.File_Parameters, D.File_Error, null>;
@@ -34,15 +34,15 @@ const $$ = ($p) => {
34
34
  _easync.upi.u(make_directory_1.$$, ($) => ['make directory', $])({
35
35
  'path': $p['directory path'],
36
36
  'escape spaces in path': true,
37
- }),
37
+ }, null),
38
38
  _easync.upi.u(write_file_1.$$, ($) => ['write file', $])({
39
39
  'path': {
40
40
  'path': `${$p['directory path']}/${$p.filename}`,
41
41
  'escape spaces in path': true,
42
42
  },
43
43
  'data': (0, join_list_of_texts_1.$$)(t_block_2_lines.Group($p.group, { 'indentation': $p.indentation }).map(($) => $ + $p.newline)),
44
- })
44
+ }, null)
45
45
  ]);
46
46
  };
47
47
  exports.$$ = $$;
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGVfdG9fZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9hbGdvcml0aG1zL3Byb2NlZHVyZXMvdW5ndWFyYW50ZWVkL3dyaXRlX3RvX2ZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSw0REFBNkM7QUFFN0MsNEhBQWdJO0FBQ2hJLG9IQUF3SDtBQUt4SCxtRkFBb0U7QUFJcEUsMElBQStJO0FBS3hJLE1BQU0sRUFBRSxHQUFnRixDQUMzRixFQUFFLEVBQ0osRUFBRTtJQUNBLE9BQU8sT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7UUFDdkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ1QsbUJBQWdCLEVBQ2hCLENBQUMsQ0FBQyxFQUFnQixFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FDN0MsQ0FBQztZQUNFLE1BQU0sRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7WUFDNUIsdUJBQXVCLEVBQUUsSUFBSTtTQUNoQyxDQUFDO1FBQ0YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ1QsZUFBWSxFQUNaLENBQUMsQ0FBQyxFQUFnQixFQUFFLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQ3pDLENBQUM7WUFDRSxNQUFNLEVBQUU7Z0JBQ0osTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRTtnQkFDaEQsdUJBQXVCLEVBQUUsSUFBSTthQUNoQztZQUNELE1BQU0sRUFBRSxJQUFBLHVCQUFxQixFQUN6QixlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxhQUFhLEVBQUUsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUNoRztTQUNKLENBQUM7S0FDTCxDQUFDLENBQUE7QUFDTixDQUFDLENBQUE7QUF4QlksUUFBQSxFQUFFLE1Bd0JkIn0=
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGVfdG9fZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9hbGdvcml0aG1zL3Byb2NlZHVyZXMvdW5ndWFyYW50ZWVkL3dyaXRlX3RvX2ZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSw0REFBNkM7QUFFN0MsNEhBQWdJO0FBQ2hJLG9IQUF3SDtBQUt4SCxtRkFBb0U7QUFJcEUsMElBQStJO0FBS3hJLE1BQU0sRUFBRSxHQUFzRixDQUNqRyxFQUFFLEVBQ0osRUFBRTtJQUNBLE9BQU8sT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7UUFDdkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ1QsbUJBQWdCLEVBQ2hCLENBQUMsQ0FBQyxFQUFnQixFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FDN0MsQ0FDRztZQUNJLE1BQU0sRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7WUFDNUIsdUJBQXVCLEVBQUUsSUFBSTtTQUNoQyxFQUNELElBQUksQ0FDUDtRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNULGVBQVksRUFDWixDQUFDLENBQUMsRUFBZ0IsRUFBRSxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUN6QyxDQUNHO1lBQ0ksTUFBTSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Z0JBQ2hELHVCQUF1QixFQUFFLElBQUk7YUFDaEM7WUFDRCxNQUFNLEVBQUUsSUFBQSx1QkFBcUIsRUFDekIsZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FDaEc7U0FDSixFQUNELElBQUksQ0FDUDtLQUNKLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQTtBQTlCWSxRQUFBLEVBQUUsTUE4QmQifQ==
@@ -1,3 +1,3 @@
1
1
  import * as _easync from 'exupery-core-async';
2
2
  import * as D from "../../../../temp/temp_types";
3
- export declare const $$: _easync.Unguaranteed_Procedure_Initializer<D.Node_Parameters, D.Node_Error>;
3
+ export declare const $$: _easync.Unguaranteed_Procedure_Initializer<D.Node_Parameters, D.Node_Error, null>;
@@ -39,7 +39,7 @@ const $$ = ($p) => {
39
39
  'filename': $p.key,
40
40
  'indentation': $p.indentation,
41
41
  'newline': $p.newline
42
- });
42
+ }, null);
43
43
  });
44
44
  case 'directory':
45
45
  return _ea.ss($, ($) => {
@@ -49,11 +49,11 @@ const $$ = ($p) => {
49
49
  'indentation': $p.indentation,
50
50
  'newline': $p.newline,
51
51
  'remove before creating': false,
52
- });
52
+ }, null);
53
53
  });
54
54
  default: return _ea.au($[0]);
55
55
  }
56
56
  });
57
57
  };
58
58
  exports.$$ = $$;
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGVfdG9fbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9hbGdvcml0aG1zL3Byb2NlZHVyZXMvdW5ndWFyYW50ZWVkL3dyaXRlX3RvX25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxzREFBdUM7QUFHdkMsNERBQTZDO0FBSTdDLG1EQUF1RDtBQUN2RCw2REFBaUU7QUFJMUQsTUFBTSxFQUFFLEdBQWdGLENBQzNGLEVBQUUsRUFDSixFQUFFO0lBQ0EsT0FBTyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUN6QixRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ1gsS0FBSyxNQUFNO2dCQUNQLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDbkIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDaEIsa0JBQWUsRUFDZixDQUFDLENBQUMsRUFBZSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQ2xDLENBQUM7d0JBQ0UsT0FBTyxFQUFFLENBQUM7d0JBQ1YsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUk7d0JBQ3pCLFVBQVUsRUFBRSxFQUFFLENBQUMsR0FBRzt3QkFDbEIsYUFBYSxFQUFFLEVBQUUsQ0FBQyxXQUFXO3dCQUM3QixTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU87cUJBQ3hCLENBQUMsQ0FBQTtnQkFDTixDQUFDLENBQUMsQ0FBQTtZQUNOLEtBQUssV0FBVztnQkFDWixPQUFPLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ25CLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ2hCLHVCQUFvQixFQUNwQixDQUFDLENBQUMsRUFBZ0IsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUN4QyxDQUFDO3dCQUNFLFdBQVcsRUFBRSxDQUFDO3dCQUNkLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRTt3QkFDOUIsYUFBYSxFQUFFLEVBQUUsQ0FBQyxXQUFXO3dCQUM3QixTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU87d0JBQ3JCLHdCQUF3QixFQUFFLEtBQUs7cUJBQ2xDLENBQUMsQ0FBQTtnQkFDTixDQUFDLENBQUMsQ0FBQTtZQUNOLE9BQU8sQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNoQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDLENBQUE7QUFsQ1ksUUFBQSxFQUFFLE1Ba0NkIn0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGVfdG9fbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9hbGdvcml0aG1zL3Byb2NlZHVyZXMvdW5ndWFyYW50ZWVkL3dyaXRlX3RvX25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxzREFBdUM7QUFHdkMsNERBQTZDO0FBSTdDLG1EQUF1RDtBQUN2RCw2REFBaUU7QUFJMUQsTUFBTSxFQUFFLEdBQXNGLENBQ2pHLEVBQUUsRUFDSixFQUFFO0lBQ0EsT0FBTyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUN6QixRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ1gsS0FBSyxNQUFNO2dCQUNQLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDbkIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDaEIsa0JBQWUsRUFDZixDQUFDLENBQUMsRUFBZ0IsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUNuQyxDQUNHO3dCQUNJLE9BQU8sRUFBRSxDQUFDO3dCQUNWLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxJQUFJO3dCQUN6QixVQUFVLEVBQUUsRUFBRSxDQUFDLEdBQUc7d0JBQ2xCLGFBQWEsRUFBRSxFQUFFLENBQUMsV0FBVzt3QkFDN0IsU0FBUyxFQUFFLEVBQUUsQ0FBQyxPQUFPO3FCQUN4QixFQUNELElBQUksQ0FDUCxDQUFBO2dCQUNMLENBQUMsQ0FBQyxDQUFBO1lBQ04sS0FBSyxXQUFXO2dCQUNaLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDbkIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDaEIsdUJBQW9CLEVBQ3BCLENBQUMsQ0FBQyxFQUFnQixFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQ3hDLENBQ0c7d0JBQ0ksV0FBVyxFQUFFLENBQUM7d0JBQ2QsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsR0FBRyxFQUFFO3dCQUM5QixhQUFhLEVBQUUsRUFBRSxDQUFDLFdBQVc7d0JBQzdCLFNBQVMsRUFBRSxFQUFFLENBQUMsT0FBTzt3QkFDckIsd0JBQXdCLEVBQUUsS0FBSztxQkFDbEMsRUFDRCxJQUFJLENBQ1AsQ0FBQTtnQkFDTCxDQUFDLENBQUMsQ0FBQTtZQUNOLE9BQU8sQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNoQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDLENBQUE7QUF4Q1ksUUFBQSxFQUFFLE1Bd0NkIn0=
@@ -34,4 +34,4 @@ const Group = ($, $p) => {
34
34
  return t.Lines(t_2.Group($), { 'indentation': $p.indentation });
35
35
  };
36
36
  exports.Group = Group;
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vYWxnb3JpdGhtcy90cmFuc2Zvcm1hdGlvbnMvYmxvY2svbGluZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSx1REFBd0M7QUFDeEMsa0RBQW1DO0FBSTNCLE1BQU0sU0FBUyxHQUFHLENBQ3RCLENBQWlCLEVBQ2pCLEVBRUMsRUFDYyxFQUFFO0lBQ2pCLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FDZCxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUNoQixFQUFFLENBQ0wsQ0FBQTtBQUNMLENBQUMsQ0FBQTtBQVZhLFFBQUEsU0FBUyxhQVV0QjtBQUVNLE1BQU0sS0FBSyxHQUFHLENBQ2pCLENBQWEsRUFDYixFQUVDLEVBQ1UsRUFBRTtJQUViLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FBQyxXQUFXLEVBQUMsQ0FBQyxDQUFBO0FBQ25FLENBQUMsQ0FBQTtBQVJZLFFBQUEsS0FBSyxTQVFqQiJ9
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vYWxnb3JpdGhtcy90cmFuc2Zvcm1hdGlvbnMvYmxvY2svbGluZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSx1REFBd0M7QUFDeEMsa0RBQW1DO0FBSTNCLE1BQU0sU0FBUyxHQUFHLENBQ3RCLENBQWlCLEVBQ2pCLEVBRUMsRUFDYyxFQUFFO0lBQ2pCLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FDZCxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUNoQixFQUFFLENBQ0wsQ0FBQTtBQUNMLENBQUMsQ0FBQTtBQVZhLFFBQUEsU0FBUyxhQVV0QjtBQUVNLE1BQU0sS0FBSyxHQUFHLENBQ2pCLENBQWEsRUFDYixFQUVDLEVBQ1UsRUFBRTtJQUViLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FBQyxXQUFXLEVBQUMsQ0FBQyxDQUFBO0FBQ2xFLENBQUMsQ0FBQTtBQVJZLFFBQUEsS0FBSyxTQVFqQiJ9
@@ -0,0 +1,10 @@
1
+ import * as _target from "../../../../../interface/generated/pareto/core/astn_source";
2
+ import * as d_parse_result from "../../../../../interface/generated/pareto/core/parse_result";
3
+ import * as _source from "../../../../../interface/generated/pareto/core/token";
4
+ import * as pg from "./astn_parse_generic";
5
+ export declare const Structural_Token: (token: _source._T_Annotated_Token) => _target._T_Structural_Token;
6
+ export declare const String: (token_iterator: pg.ASTN_Token_Iterator) => _target._T_String;
7
+ export declare const Document: (token_iterator: pg.ASTN_Token_Iterator) => _target._T_Document;
8
+ export declare const Elements: (token_iterator: pg.ASTN_Token_Iterator, end_reached: ($: _source._T_Token_Type) => boolean, end_token: d_parse_result.Expected) => _target._T_Elements;
9
+ export declare const Key_Value_Pairs: (token_iterator: pg.ASTN_Token_Iterator, end_reached: ($: _source._T_Token_Type) => boolean, end_token: d_parse_result.Expected) => _target._T_Key_Value_Pairs;
10
+ export declare const Value: (token_iterator: pg.ASTN_Token_Iterator) => _target._T_Value;
@@ -0,0 +1,245 @@
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 (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.Value = exports.Key_Value_Pairs = exports.Elements = exports.Document = exports.String = exports.Structural_Token = void 0;
27
+ const _ea = __importStar(require("exupery-core-alg"));
28
+ const pg = __importStar(require("./astn_parse_generic"));
29
+ //this file contains the parser functionality, each function return a type from the 'ast' schema
30
+ const Structural_Token = (token) => {
31
+ return {
32
+ 'trailing trivia': token['trailing trivia'],
33
+ 'range': {
34
+ 'start': token['start'],
35
+ 'end': token['end']
36
+ }
37
+ };
38
+ };
39
+ exports.Structural_Token = Structural_Token;
40
+ const String = (token_iterator) => {
41
+ const token = token_iterator['get required token'](_ea.array_literal([['a string', null]]));
42
+ if (token.type[0] !== 'string') {
43
+ return pg.throw_unexpected_token(token, _ea.array_literal([['a string', null]]));
44
+ }
45
+ token_iterator['consume token']();
46
+ return {
47
+ 'range': {
48
+ 'start': token['start'],
49
+ 'end': token['end']
50
+ },
51
+ 'value': token.type[1].value,
52
+ 'type': token.type[1].type,
53
+ 'trailing trivia': token['trailing trivia'],
54
+ };
55
+ };
56
+ exports.String = String;
57
+ const Document = (token_iterator) => {
58
+ return {
59
+ 'header': _ea.block(() => {
60
+ const token = token_iterator['get required token'](_ea.array_literal([['!', null], ['a value', null]]));
61
+ if (token.type[0] !== '!') {
62
+ return _ea.not_set();
63
+ }
64
+ token_iterator['consume token']();
65
+ return _ea.set({
66
+ '!': (0, exports.Structural_Token)(token),
67
+ 'value': (0, exports.Value)(token_iterator)
68
+ });
69
+ }),
70
+ 'content': (0, exports.Value)(token_iterator)
71
+ };
72
+ };
73
+ exports.Document = Document;
74
+ const Elements = (token_iterator, end_reached, end_token) => {
75
+ return _ea.build_list(($i) => {
76
+ while (true) {
77
+ const current_token = token_iterator['get required token'](_ea.array_literal([end_token, ['a value', null]]));
78
+ if (end_reached(current_token.type)) {
79
+ return;
80
+ }
81
+ $i['add element']({
82
+ 'value': (0, exports.Value)(token_iterator),
83
+ });
84
+ }
85
+ });
86
+ };
87
+ exports.Elements = Elements;
88
+ const Key_Value_Pairs = (token_iterator, end_reached, end_token) => {
89
+ return _ea.build_list(($i) => {
90
+ while (true) {
91
+ const current_token = token_iterator['get required token'](_ea.array_literal([end_token, ['a string', null]]));
92
+ if (end_reached(current_token.type)) {
93
+ return;
94
+ }
95
+ $i['add element']({
96
+ 'key': (0, exports.String)(token_iterator),
97
+ 'value': _ea.block(() => {
98
+ const candidate_colon = token_iterator['get required token'](_ea.array_literal([['a string', null], [':', null], end_token]));
99
+ if (candidate_colon.type[0] !== ':') {
100
+ return _ea.not_set();
101
+ }
102
+ token_iterator['consume token']();
103
+ return _ea.set({
104
+ ':': (0, exports.Structural_Token)(candidate_colon),
105
+ 'value': (0, exports.Value)(token_iterator)
106
+ });
107
+ }),
108
+ ',': _ea.not_set()
109
+ });
110
+ }
111
+ });
112
+ };
113
+ exports.Key_Value_Pairs = Key_Value_Pairs;
114
+ const Value = (token_iterator) => {
115
+ const token = token_iterator['get required token'](_ea.array_literal([['a value', null]]));
116
+ return _ea.cc(token.type, ($) => {
117
+ switch ($[0]) {
118
+ case 'string': return _ea.ss($, ($) => {
119
+ return ['string', (0, exports.String)(token_iterator)];
120
+ });
121
+ case '{': return _ea.ss($, ($) => {
122
+ token_iterator['consume token']();
123
+ return ['indexed collection', ['dictionary', {
124
+ '{': (0, exports.Structural_Token)(token),
125
+ 'entries': (0, exports.Key_Value_Pairs)(token_iterator, ($) => $[0] === '}', ['}', null]),
126
+ '}': _ea.block(() => {
127
+ const current_token = token_iterator['get required token'](_ea.array_literal([['}', null]]));
128
+ token_iterator['consume token']();
129
+ return (0, exports.Structural_Token)(current_token);
130
+ })
131
+ }]];
132
+ });
133
+ case '(': return _ea.ss($, ($) => {
134
+ token_iterator['consume token']();
135
+ return ['indexed collection', ['verbose group', {
136
+ '(': (0, exports.Structural_Token)(token),
137
+ 'entries': (0, exports.Key_Value_Pairs)(token_iterator, ($) => $[0] === ')', [')', null]),
138
+ ')': _ea.block(() => {
139
+ const current_token = token_iterator['get required token'](_ea.array_literal([[')', null]]));
140
+ token_iterator['consume token']();
141
+ return (0, exports.Structural_Token)(current_token);
142
+ })
143
+ }]];
144
+ });
145
+ case '[': return _ea.ss($, ($) => {
146
+ token_iterator['consume token']();
147
+ return ['ordered collection', ['list', {
148
+ '[': (0, exports.Structural_Token)(token),
149
+ 'elements': (0, exports.Elements)(token_iterator, ($) => $[0] === ']', [']', null]),
150
+ ']': _ea.block(() => {
151
+ const current_token = token_iterator['get required token'](_ea.array_literal([[']', null]]));
152
+ token_iterator['consume token']();
153
+ return (0, exports.Structural_Token)(current_token);
154
+ }),
155
+ }]];
156
+ });
157
+ case '<': return _ea.ss($, ($) => {
158
+ token_iterator['consume token']();
159
+ return ['ordered collection', ['concise group', {
160
+ '<': (0, exports.Structural_Token)(token),
161
+ 'elements': (0, exports.Elements)(token_iterator, ($) => $[0] === '>', ['>', null]),
162
+ '>': _ea.block(() => {
163
+ const current_token = token_iterator['get required token'](_ea.array_literal([['>', null]]));
164
+ token_iterator['consume token']();
165
+ return (0, exports.Structural_Token)(current_token);
166
+ }),
167
+ }]];
168
+ });
169
+ case '|': return _ea.ss($, ($) => {
170
+ token_iterator['consume token']();
171
+ const token = token_iterator['get required token'](_ea.array_literal([['a value', null], ['#', null]]));
172
+ return ['tagged value', {
173
+ '|': (0, exports.Structural_Token)(token),
174
+ 'state': (0, exports.String)(token_iterator),
175
+ 'value': (0, exports.Value)(token_iterator)
176
+ }];
177
+ });
178
+ case '*': return _ea.ss($, ($) => {
179
+ token_iterator['consume token']();
180
+ return ['set optional value', {
181
+ '*': (0, exports.Structural_Token)(token),
182
+ 'value': (0, exports.Value)(token_iterator)
183
+ }];
184
+ });
185
+ case '~': return _ea.ss($, ($) => {
186
+ token_iterator['consume token']();
187
+ return ['not set', {
188
+ '~': (0, exports.Structural_Token)(token),
189
+ }];
190
+ });
191
+ //unexpected tokens
192
+ case '#': return _ea.ss($, ($) => {
193
+ token_iterator['consume token']();
194
+ return pg.throw_unexpected_token(token, _ea.array_literal([
195
+ ['a value', null]
196
+ ]));
197
+ });
198
+ case '@': return _ea.ss($, ($) => {
199
+ token_iterator['consume token']();
200
+ return pg.throw_unexpected_token(token, _ea.array_literal([
201
+ ['a value', null]
202
+ ]));
203
+ });
204
+ case '!': return _ea.ss($, ($) => {
205
+ token_iterator['consume token']();
206
+ return pg.throw_unexpected_token(token, _ea.array_literal([
207
+ ['a value', null]
208
+ ]));
209
+ });
210
+ case ':': return _ea.ss($, ($) => {
211
+ token_iterator['consume token']();
212
+ return pg.throw_unexpected_token(token, _ea.array_literal([
213
+ ['a value', null]
214
+ ]));
215
+ });
216
+ case ')': return _ea.ss($, ($) => {
217
+ token_iterator['consume token']();
218
+ return pg.throw_unexpected_token(token, _ea.array_literal([
219
+ ['a value', null]
220
+ ]));
221
+ });
222
+ case '>': return _ea.ss($, ($) => {
223
+ token_iterator['consume token']();
224
+ return pg.throw_unexpected_token(token, _ea.array_literal([
225
+ ['a value', null]
226
+ ]));
227
+ });
228
+ case ']': return _ea.ss($, ($) => {
229
+ token_iterator['consume token']();
230
+ return pg.throw_unexpected_token(token, _ea.array_literal([
231
+ ['a value', null]
232
+ ]));
233
+ });
234
+ case '}': return _ea.ss($, ($) => {
235
+ token_iterator['consume token']();
236
+ return pg.throw_unexpected_token(token, _ea.array_literal([
237
+ ['a value', null]
238
+ ]));
239
+ });
240
+ default: return _ea.au($[0]);
241
+ }
242
+ });
243
+ };
244
+ exports.Value = Value;
245
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL2dlbmVyYXRlZC9wYXJldG8vZ2VuZXJpYy9wYXJzZS9hc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzREFBdUM7QUFPdkMseURBQTBDO0FBRTFDLGdHQUFnRztBQUV6RixNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBaUMsRUFBK0IsRUFBRTtJQUMvRixPQUFPO1FBQ0gsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDO1FBQzNDLE9BQU8sRUFBRTtZQUNMLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ3ZCLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDO1NBQ3RCO0tBQ0osQ0FBQTtBQUNMLENBQUMsQ0FBQTtBQVJZLFFBQUEsZ0JBQWdCLG9CQVE1QjtBQUVNLE1BQU0sTUFBTSxHQUFHLENBQUMsY0FBc0MsRUFBcUIsRUFBRTtJQUNoRixNQUFNLEtBQUssR0FBRyxjQUFjLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDM0YsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzdCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDcEYsQ0FBQztJQUNELGNBQWMsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFBO0lBQ2pDLE9BQU87UUFDSCxPQUFPLEVBQUU7WUFDTCxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQztZ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
@@ -0,0 +1,13 @@
1
+ import * as _et from 'exupery-core-types';
2
+ import * as si from "./string_iterator";
3
+ import * as _source from "../../../../../interface/generated/pareto/core/token";
4
+ import * as d_parse_result from "../../../../../interface/generated/pareto/core/parse_result";
5
+ export declare class Parse_Error_Class {
6
+ readonly type: d_parse_result._T_Parse_Error._type;
7
+ readonly range: _source._T_Range;
8
+ constructor(type: d_parse_result._T_Parse_Error._type, range: _source._T_Range);
9
+ }
10
+ export declare const throw_lexer_error: (type: d_parse_result.Lexer_Error, range: _source._T_Range) => never;
11
+ export declare const throw_unexpected_token: (found: _source._T_Annotated_Token, expected: _et.Array<d_parse_result.Expected>) => never;
12
+ export type ASTN_Token_Iterator = si.Token_Iterator<d_parse_result.Expected, _source._T_Annotated_Token>;
13
+ export declare const create_astn_token_iterator: ($: _source._T_Tokenizer_Result.tokens, end: si.Location) => ASTN_Token_Iterator;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.create_astn_token_iterator = exports.throw_unexpected_token = exports.throw_lexer_error = exports.Parse_Error_Class = void 0;
4
+ class Parse_Error_Class {
5
+ type;
6
+ range;
7
+ constructor(type, range) {
8
+ this.type = type;
9
+ this.range = range;
10
+ }
11
+ }
12
+ exports.Parse_Error_Class = Parse_Error_Class;
13
+ const throw_parse_error = (type, range) => {
14
+ throw new Parse_Error_Class(type, range);
15
+ };
16
+ const throw_lexer_error = (type, range) => {
17
+ throw new Parse_Error_Class(['lexer', type], range);
18
+ };
19
+ exports.throw_lexer_error = throw_lexer_error;
20
+ const throw_unexpected_token = (found, expected) => {
21
+ return throw_parse_error(['parser', {
22
+ 'expected': expected,
23
+ 'cause': ['unexpected token', {
24
+ 'found': found.type,
25
+ }]
26
+ }], {
27
+ 'start': found.start,
28
+ 'end': found.end
29
+ });
30
+ };
31
+ exports.throw_unexpected_token = throw_unexpected_token;
32
+ const create_astn_token_iterator = ($, end) => {
33
+ let position = 0;
34
+ return {
35
+ 'get required token': (pet) => {
36
+ return $.__get_element_at(position).transform(($) => $, () => throw_parse_error(['parser', {
37
+ 'expected': pet,
38
+ 'cause': ['missing token', null]
39
+ }], {
40
+ 'start': end,
41
+ 'end': end,
42
+ }));
43
+ },
44
+ 'consume token': () => {
45
+ position += 1;
46
+ },
47
+ };
48
+ };
49
+ exports.create_astn_token_iterator = create_astn_token_iterator;
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN0bl9wYXJzZV9nZW5lcmljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL2dlbmVyYXRlZC9wYXJldG8vZ2VuZXJpYy9wYXJzZS9hc3RuX3BhcnNlX2dlbmVyaWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBUUEsTUFBYSxpQkFBaUI7SUFHTjtJQUNBO0lBRnBCLFlBQ29CLElBQXlDLEVBQ3pDLEtBQXVCO1FBRHZCLFNBQUksR0FBSixJQUFJLENBQXFDO1FBQ3pDLFVBQUssR0FBTCxLQUFLLENBQWtCO0lBRTFDLENBQUM7Q0FDTDtBQVBELDhDQU9DO0FBRUQsTUFBTSxpQkFBaUIsR0FBRyxDQUN0QixJQUF5QyxFQUN6QyxLQUF1QixFQUNsQixFQUFFO0lBQ1AsTUFBTSxJQUFJLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQTtBQUM1QyxDQUFDLENBQUE7QUFFTSxNQUFNLGlCQUFpQixHQUFHLENBQzdCLElBQWdDLEVBQ2hDLEtBQXVCLEVBQ2xCLEVBQUU7SUFDUCxNQUFNLElBQUksaUJBQWlCLENBQUMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUE7QUFDdkQsQ0FBQyxDQUFBO0FBTFksUUFBQSxpQkFBaUIscUJBSzdCO0FBRU0sTUFBTSxzQkFBc0IsR0FBRyxDQUNsQyxLQUFpQyxFQUNqQyxRQUE0QyxFQUN2QyxFQUFFO0lBQ1AsT0FBTyxpQkFBaUIsQ0FDcEIsQ0FBQyxRQUFRLEVBQUU7WUFDUCxVQUFVLEVBQUUsUUFBUTtZQUNwQixPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRTtvQkFDMUIsT0FBTyxFQUFFLEtBQUssQ0FBQyxJQUFJO2lCQUN0QixDQUFDO1NBQ0wsQ0FBQyxFQUNGO1FBQ0ksT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLO1FBQ3BCLEtBQUssRUFBRSxLQUFLLENBQUMsR0FBRztLQUNuQixDQUNKLENBQUE7QUFDTCxDQUFDLENBQUE7QUFoQlksUUFBQSxzQkFBc0IsMEJBZ0JsQztBQUlNLE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxDQUFxQyxFQUFFLEdBQWdCLEVBQXVCLEVBQUU7SUFDdkgsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFBO0lBQ2hCLE9BQU87UUFDSCxvQkFBb0IsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQzFCLE9BQU8sQ0FBQyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FDekMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFDUixHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FDbkIsQ0FBQyxRQUFRLEVBQUU7b0JBQ1AsVUFBVSxFQUFFLEdBQUc7b0JBQ2YsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQztpQkFDbkMsQ0FBQyxFQUNGO2dCQUNJLE9BQU8sRUFBRSxHQUFHO2dCQUNaLEtBQUssRUFBRSxHQUFHO2FBQ2IsQ0FDSixDQUNKLENBQUE7UUFDTCxDQUFDO1FBQ0QsZUFBZSxFQUFFLEdBQUcsRUFBRTtZQUNsQixRQUFRLElBQUksQ0FBQyxDQUFBO1FBQ2pCLENBQUM7S0FDSixDQUFBO0FBQ0wsQ0FBQyxDQUFBO0FBdEJZLFFBQUEsMEJBQTBCLDhCQXNCdEMifQ==
@@ -0,0 +1,6 @@
1
+ import * as _ea from 'exupery-core-alg';
2
+ import * as _target from "../../../../../interface/generated/pareto/core/parse_result";
3
+ import * as s_ast from "../../../../../interface/generated/pareto/core/astn_source";
4
+ export declare const parse: ($: string, $p: {
5
+ "tab size": number;
6
+ }) => _ea.Refinement_Result<s_ast._T_Document, _target._T_Parse_Error>;
@@ -0,0 +1,65 @@
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 (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.parse = void 0;
27
+ const _ea = __importStar(require("exupery-core-alg"));
28
+ const d_ast = __importStar(require("./ast"));
29
+ const pg = __importStar(require("./astn_parse_generic"));
30
+ const si = __importStar(require("./string_iterator"));
31
+ const tokenize = __importStar(require("./token"));
32
+ const parse = ($, $p) => {
33
+ try {
34
+ const string_iterator = si.create_string_iterator($, {
35
+ 'tab size': $p['tab size']
36
+ });
37
+ const tokenizer_result = tokenize.Tokenizer_Result(null, {
38
+ 'string iterator': string_iterator
39
+ });
40
+ // tokenizer_result.tokens.__for_each(($) => {
41
+ // _edev.log_debug_message(`token: ${_ea.cc($.type, ($) => {
42
+ // switch ($[0]) {
43
+ // case 'string': return _ea.ss($, ($) => `string: ${$.value.value}`)
44
+ // default: return `structural: ${$[0]}`
45
+ // }
46
+ // })}`)
47
+ // })
48
+ const token_iterator = pg.create_astn_token_iterator(tokenizer_result.tokens, tokenizer_result.end);
49
+ return _ea.refinement.successful(d_ast.Document(token_iterator));
50
+ }
51
+ catch (error) {
52
+ if (error instanceof pg.Parse_Error_Class) {
53
+ return _ea.refinement.failed({
54
+ 'type': error.type,
55
+ 'range': {
56
+ 'start': error.range.start,
57
+ 'end': error.range.end,
58
+ }
59
+ });
60
+ }
61
+ return _ea.deprecated_panic("unknown error thrown");
62
+ }
63
+ };
64
+ exports.parse = parse;
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vZ2VuZXJhdGVkL3BhcmV0by9nZW5lcmljL3BhcnNlL3BhcnNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0RBQXVDO0FBR3ZDLDZDQUE4QjtBQUk5Qix5REFBMEM7QUFDMUMsc0RBQXVDO0FBRXZDLGtEQUFtQztBQUc1QixNQUFNLEtBQUssR0FBRyxDQUNqQixDQUFTLEVBQ1QsRUFFQyxFQUMrRCxFQUFFO0lBQ2xFLElBQUksQ0FBQztRQUNELE1BQU0sZUFBZSxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLEVBQUU7WUFDakQsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUM7U0FDN0IsQ0FBQyxDQUFBO1FBQ0YsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1lBQ3JELGlCQUFpQixFQUFFLGVBQWU7U0FDckMsQ0FBQyxDQUFBO1FBQ0YsOENBQThDO1FBQzlDLGdFQUFnRTtRQUNoRSwwQkFBMEI7UUFDMUIsaUZBQWlGO1FBQ2pGLG9EQUFvRDtRQUNwRCxZQUFZO1FBQ1osWUFBWTtRQUNaLEtBQUs7UUFDTCxNQUFNLGNBQWMsR0FBRyxFQUFFLENBQUMsMEJBQTBCLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ25HLE9BQU8sR0FBRyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO0lBRXBFLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2IsSUFBSSxLQUFLLFlBQVksRUFBRSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFFeEMsT0FBTyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztnQkFDekIsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJO2dCQUNsQixPQUFPLEVBQUU7b0JBQ0wsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSztvQkFDMUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRztpQkFDekI7YUFDSixDQUFDLENBQUE7UUFDTixDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsQ0FBQTtJQUN2RCxDQUFDO0FBQ0wsQ0FBQyxDQUFBO0FBckNZLFFBQUEsS0FBSyxTQXFDakIifQ==
@@ -0,0 +1,40 @@
1
+ import * as _et from 'exupery-core-types';
2
+ export type Location = {
3
+ 'absolute': number;
4
+ 'relative': {
5
+ 'line': number;
6
+ 'column': number;
7
+ };
8
+ };
9
+ export type String_Iterator = {
10
+ 'consume character': () => void;
11
+ 'consume string': ($: string) => void;
12
+ /**
13
+ * returns the current character, or null if the end of the string has been reached.
14
+ * equivalent to `look ahead(0)`
15
+ */
16
+ 'get current character': () => number | null;
17
+ 'look ahead': ($: number) => number | null;
18
+ 'create offset location info': (subtract: number) => Location;
19
+ 'create location info': () => Location;
20
+ 'create location info string': () => string;
21
+ /**
22
+ * if no non-whitespace character has been found yet on the current line,
23
+ * this will return the current column,
24
+ * otherwise it will return the offset of that first non-whitespace character
25
+ * (which is the indentation of the line)
26
+ */
27
+ 'get line indentation': () => number;
28
+ };
29
+ export declare const is_control_character: ($: number) => boolean;
30
+ /**
31
+ * Creates a string iterator that allows iterating over characters in a string,
32
+ * while keeping track of line numbers, columns, and line indentation.
33
+ */
34
+ export declare const create_string_iterator: ($: string, $p: {
35
+ "tab size": number;
36
+ }) => String_Iterator;
37
+ export type Token_Iterator<Expected, Token> = {
38
+ 'get required token': (expected: _et.Array<Expected>) => Token;
39
+ 'consume token': () => void;
40
+ };