astn-core 0.5.125 → 0.5.127

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.
@@ -69,4 +69,4 @@ export const Annotated_Characters = ($, $p) => p_.from.list($).map_with_state({
69
69
  'characters': final_list,
70
70
  'end': final_state.location,
71
71
  }));
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvYW5ub3RhdGVkX2NoYXJhY3RlcnMvdGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3hELE9BQU8sS0FBSyxJQUFJLE1BQU0sbUNBQW1DLENBQUE7QUFFekQsT0FBTyxLQUFLLEtBQUssTUFBTSxvREFBb0QsQ0FBQTtBQUMzRSxPQUFPLEtBQUssSUFBSSxNQUFNLCtFQUErRSxDQUFBO0FBQ3JHLE9BQU8sS0FBSyxVQUFVLE1BQU0sOEVBQThFLENBQUE7QUF3QjFHOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFvQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FDMUc7SUFDSSxVQUFVLEVBQUU7UUFDUixVQUFVLEVBQUUsQ0FBQztRQUNiLFVBQVUsRUFBRTtZQUNSLE1BQU0sRUFBRSxDQUFDO1lBQ1QsUUFBUSxFQUFFLENBQUM7U0FDZDtLQUNKO0lBQ0Qsa0JBQWtCLEVBQUUsSUFBSTtJQUN4Qiw4QkFBOEIsRUFBRSxLQUFLO0NBQzVCLEVBQ2IsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2YsTUFBTSxFQUFFLEtBQUs7SUFDYixVQUFVLEVBQUUsS0FBSyxDQUFDLFFBQVE7SUFDMUIsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEtBQUssSUFBSTtRQUNsRCxDQUFDLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDO1FBQzNCLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNO0NBQ3ZDLENBQUMsRUFDRixDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtJQUNiLE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsZUFBZTtRQUN0QyxDQUFDLENBQUM7WUFDRSxVQUFVLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUM7Z0JBQ3ZDLFVBQVUsRUFBRTtvQkFDUixNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUM7b0JBQ3hDLFFBQVEsRUFBRSxDQUFDO2lCQUNkO2FBQ0o7WUFDRCxrQkFBa0IsRUFBRSxJQUFJO1lBQ3hCLDhCQUE4QixFQUFFLEtBQUs7U0FDeEM7UUFDRCxDQUFDLENBQUMsS0FBSyxDQUFDLDhCQUE4QixDQUFDO1lBQ25DLENBQUMsQ0FBQztnQkFDRSxVQUFVLEVBQUU7b0JBQ1IsVUFBVSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUM7b0JBQ3ZDLFVBQVUsRUFBRTt3QkFDUixNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUM7d0JBQ3hDLFFBQVEsRUFBRSxDQUFDO3FCQUNkO2lCQUNKO2dCQUVELGtCQUFrQixFQUFFLElBQUk7Z0JBQ3hCLDhCQUE4QixFQUFFLEtBQUs7YUFDeEM7WUFDRCxDQUFDLENBQUM7Z0JBQ0UsVUFBVSxFQUFFO29CQUNSLFVBQVUsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsR0FBRyxDQUFDO29CQUN2QyxVQUFVLEVBQUU7d0JBQ1IsTUFBTSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUk7d0JBQ3BDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxTQUFTOzRCQUNyRSxDQUFDLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQzs0QkFDaEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztxQkFDWDtpQkFDSjtnQkFDRCxrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsS0FBSyxJQUFJO29CQUNsRCxDQUFDLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDO29CQUMzQixDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFNBQVM7d0JBQzlELENBQUMsQ0FBQyxJQUFJO3dCQUNOLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNO2dCQUN4Qyw4QkFBOEIsRUFBRSxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxxQkFBcUI7YUFDNUUsQ0FBQTtBQUNiLENBQUMsRUFDRCxDQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUIsWUFBWSxFQUFFLFVBQVU7SUFDeEIsS0FBSyxFQUFFLFdBQVcsQ0FBQyxRQUFRO0NBQzlCLENBQUMsQ0FDTCxDQUFBIn0=
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvYW5ub3RhdGVkX2NoYXJhY3RlcnMvdGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3hELE9BQU8sS0FBSyxJQUFJLE1BQU0sbUNBQW1DLENBQUE7QUFFekQsT0FBTyxLQUFLLEtBQUssTUFBTSxvREFBb0QsQ0FBQTtBQUMzRSxPQUFPLEtBQUssSUFBSSxNQUFNLCtFQUErRSxDQUFBO0FBQ3JHLE9BQU8sS0FBSyxVQUFVLE1BQU0sOEVBQThFLENBQUE7QUFZMUc7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQW9DLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUMxRztJQUNJLFVBQVUsRUFBRTtRQUNSLFVBQVUsRUFBRSxDQUFDO1FBQ2IsVUFBVSxFQUFFO1lBQ1IsTUFBTSxFQUFFLENBQUM7WUFDVCxRQUFRLEVBQUUsQ0FBQztTQUNkO0tBQ0o7SUFDRCxrQkFBa0IsRUFBRSxJQUFJO0lBQ3hCLDhCQUE4QixFQUFFLEtBQUs7Q0FXeEMsRUFDRCxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDZixNQUFNLEVBQUUsS0FBSztJQUNiLFVBQVUsRUFBRSxLQUFLLENBQUMsUUFBUTtJQUMxQixrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsS0FBSyxJQUFJO1FBQ2xELENBQUMsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUM7UUFDM0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU07Q0FDdkMsQ0FBQyxFQUNGLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFO0lBQ2IsT0FBTyxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxlQUFlO1FBQ3RDLENBQUMsQ0FBQztZQUNFLFVBQVUsRUFBRTtnQkFDUixVQUFVLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQztnQkFDdkMsVUFBVSxFQUFFO29CQUNSLE1BQU0sRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsQ0FBQztvQkFDeEMsUUFBUSxFQUFFLENBQUM7aUJBQ2Q7YUFDSjtZQUNELGtCQUFrQixFQUFFLElBQUk7WUFDeEIsOEJBQThCLEVBQUUsS0FBSztTQUN4QztRQUNELENBQUMsQ0FBQyxLQUFLLENBQUMsOEJBQThCLENBQUM7WUFDbkMsQ0FBQyxDQUFDO2dCQUNFLFVBQVUsRUFBRTtvQkFDUixVQUFVLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQztvQkFDdkMsVUFBVSxFQUFFO3dCQUNSLE1BQU0sRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsQ0FBQzt3QkFDeEMsUUFBUSxFQUFFLENBQUM7cUJBQ2Q7aUJBQ0o7Z0JBRUQsa0JBQWtCLEVBQUUsSUFBSTtnQkFDeEIsOEJBQThCLEVBQUUsS0FBSzthQUN4QztZQUNELENBQUMsQ0FBQztnQkFDRSxVQUFVLEVBQUU7b0JBQ1IsVUFBVSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUM7b0JBQ3ZDLFVBQVUsRUFBRTt3QkFDUixNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSTt3QkFDcEMsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFNBQVM7NEJBQ3JFLENBQUMsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDOzRCQUNoQixDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUNYO2lCQUNKO2dCQUNELGtCQUFrQixFQUFFLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLElBQUk7b0JBQ2xELENBQUMsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUM7b0JBQzNCLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsU0FBUzt3QkFDOUQsQ0FBQyxDQUFDLElBQUk7d0JBQ04sQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU07Z0JBQ3hDLDhCQUE4QixFQUFFLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLHFCQUFxQjthQUM1RSxDQUFBO0FBQ2IsQ0FBQyxFQUNELENBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxQixZQUFZLEVBQUUsVUFBVTtJQUN4QixLQUFLLEVBQUUsV0FBVyxDQUFDLFFBQVE7Q0FDOUIsQ0FBQyxDQUNMLENBQUEifQ==
@@ -6,7 +6,7 @@ import * as d_out from "../../../../interface/generated/liana/schemas/parse_tree
6
6
  import * as d_in from "pareto-fountain-pen/interface/generated/liana/schemas/list_of_characters/data";
7
7
  //dependencies
8
8
  import * as r_annotated_characters from "../annotated_characters/text.js";
9
- import * as r_tokenize from "../../productions/token/annotated_character.js";
9
+ import * as r_tokenize from "../token/annotated_character.js";
10
10
  import * as r_from_tokenizer_result from "./tokenizer_result.js";
11
11
  export const Document = ($, abort, $p) => {
12
12
  const ann_chars = r_annotated_characters.Annotated_Characters($, $p);
@@ -24,4 +24,4 @@ export const Document = ($, abort, $p) => {
24
24
  on_dangling_item: null, //fixme: make this iterate_fully
25
25
  });
26
26
  };
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL21hbnVhbC9yZWZpbmVycy9wYXJzZV90cmVlL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssR0FBRyxNQUFNLCtCQUErQixDQUFBO0FBQ3BELE9BQU8sU0FBUyxNQUFNLHFEQUFxRCxDQUFBO0FBRTNFLFlBQVk7QUFDWixPQUFPLEtBQUssVUFBVSxNQUFNLDhFQUE4RSxDQUFBO0FBQzFHLE9BQU8sS0FBSyxLQUFLLE1BQU0sa0VBQWtFLENBQUE7QUFDekYsT0FBTyxLQUFLLElBQUksTUFBTSwrRUFBK0UsQ0FBQTtBQUVyRyxjQUFjO0FBQ2QsT0FBTyxLQUFLLHNCQUFzQixNQUFNLGlDQUFpQyxDQUFBO0FBQ3pFLE9BQU8sS0FBSyxVQUFVLE1BQU0sZ0RBQWdELENBQUE7QUFDNUUsT0FBTyxLQUFLLHVCQUF1QixNQUFNLHVCQUF1QixDQUFBO0FBYWhFLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRyxFQUFFO0lBQzNELE1BQU0sU0FBUyxHQUFHLHNCQUFzQixDQUFDLG9CQUFvQixDQUN6RCxDQUFDLEVBQ0QsRUFBRSxDQUNMLENBQUE7SUFDRCxPQUFPLFNBQVMsQ0FBQztRQUNiLElBQUksRUFBRSxTQUFTLENBQUMsVUFBVTtRQUMxQixRQUFRLEVBQUUsU0FBUyxDQUFDLEdBQUc7UUFDdkIsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsZ0NBQWdDO1FBQ25GLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FDdkIsUUFBUSxFQUNSLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDVCxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZCLENBQUMsRUFDRjtZQUNJLFVBQVUsRUFBRSxTQUFTLENBQUMsR0FBRztTQUM1QixDQUNKLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNULE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDeEIsQ0FBQyxDQUNMO1FBQ0QsZ0JBQWdCLEVBQUUsSUFBSSxFQUFDLGdDQUFnQztLQUMxRCxDQUFDLENBQUE7QUFDTixDQUFDLENBQUEifQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL21hbnVhbC9yZWZpbmVycy9wYXJzZV90cmVlL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssR0FBRyxNQUFNLCtCQUErQixDQUFBO0FBQ3BELE9BQU8sU0FBUyxNQUFNLHFEQUFxRCxDQUFBO0FBRTNFLFlBQVk7QUFDWixPQUFPLEtBQUssVUFBVSxNQUFNLDhFQUE4RSxDQUFBO0FBQzFHLE9BQU8sS0FBSyxLQUFLLE1BQU0sa0VBQWtFLENBQUE7QUFDekYsT0FBTyxLQUFLLElBQUksTUFBTSwrRUFBK0UsQ0FBQTtBQUVyRyxjQUFjO0FBQ2QsT0FBTyxLQUFLLHNCQUFzQixNQUFNLGlDQUFpQyxDQUFBO0FBQ3pFLE9BQU8sS0FBSyxVQUFVLE1BQU0saUNBQWlDLENBQUE7QUFDN0QsT0FBTyxLQUFLLHVCQUF1QixNQUFNLHVCQUF1QixDQUFBO0FBYWhFLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRyxFQUFFO0lBQzNELE1BQU0sU0FBUyxHQUFHLHNCQUFzQixDQUFDLG9CQUFvQixDQUN6RCxDQUFDLEVBQ0QsRUFBRSxDQUNMLENBQUE7SUFDRCxPQUFPLFNBQVMsQ0FBQztRQUNiLElBQUksRUFBRSxTQUFTLENBQUMsVUFBVTtRQUMxQixRQUFRLEVBQUUsU0FBUyxDQUFDLEdBQUc7UUFDdkIsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsZ0NBQWdDO1FBQ25GLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FDdkIsUUFBUSxFQUNSLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDVCxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZCLENBQUMsRUFDRjtZQUNJLFVBQVUsRUFBRSxTQUFTLENBQUMsR0FBRztTQUM1QixDQUNKLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNULE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDeEIsQ0FBQyxDQUNMO1FBQ0QsZ0JBQWdCLEVBQUUsSUFBSSxFQUFDLGdDQUFnQztLQUMxRCxDQUFDLENBQUE7QUFDTixDQUFDLENBQUEifQ==
@@ -6,5 +6,7 @@ import * as d_out from "../../../../interface/generated/liana/schemas/parse_tree
6
6
  import * as d_in from "pareto-fountain-pen/interface/generated/liana/schemas/text/data";
7
7
  //dependencies
8
8
  import * as r_from_list_of_characters from "./list_of_characters.js";
9
- export const Document = ($, abort, $p) => r_from_list_of_characters.Document(p_list_from_text($, ($) => $), abort, $p);
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvcGFyc2VfdHJlZS90ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxHQUFHLE1BQU0sK0JBQStCLENBQUE7QUFDcEQsT0FBTyxnQkFBZ0IsTUFBTSw0REFBNEQsQ0FBQTtBQUV6RixZQUFZO0FBQ1osT0FBTyxLQUFLLFVBQVUsTUFBTSw4RUFBOEUsQ0FBQTtBQUMxRyxPQUFPLEtBQUssS0FBSyxNQUFNLGtFQUFrRSxDQUFBO0FBQ3pGLE9BQU8sS0FBSyxJQUFJLE1BQU0saUVBQWlFLENBQUE7QUFFdkYsY0FBYztBQUNkLE9BQU8sS0FBSyx5QkFBeUIsTUFBTSx5QkFBeUIsQ0FBQTtBQVNwRSxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQWEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRyxFQUFFLENBQUMseUJBQXlCLENBQUMsUUFBUSxDQUNuRixnQkFBZ0IsQ0FDWixDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDWCxFQUNELEtBQUssRUFDTCxFQUFFLENBQ0wsQ0FBQSJ9
9
+ export const Document = ($, abort, $p) => {
10
+ return r_from_list_of_characters.Document(p_list_from_text($, ($) => $), abort, $p);
11
+ };
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvcGFyc2VfdHJlZS90ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxHQUFHLE1BQU0sK0JBQStCLENBQUE7QUFDcEQsT0FBTyxnQkFBZ0IsTUFBTSw0REFBNEQsQ0FBQTtBQUV6RixZQUFZO0FBQ1osT0FBTyxLQUFLLFVBQVUsTUFBTSw4RUFBOEUsQ0FBQTtBQUMxRyxPQUFPLEtBQUssS0FBSyxNQUFNLGtFQUFrRSxDQUFBO0FBQ3pGLE9BQU8sS0FBSyxJQUFJLE1BQU0saUVBQWlFLENBQUE7QUFFdkYsY0FBYztBQUNkLE9BQU8sS0FBSyx5QkFBeUIsTUFBTSx5QkFBeUIsQ0FBQTtBQVNwRSxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQWEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFO0lBQy9DLE9BQU8seUJBQXlCLENBQUMsUUFBUSxDQUNyQyxnQkFBZ0IsQ0FDWixDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDWCxFQUNELEtBQUssRUFDTCxFQUFFLENBQ0wsQ0FBQTtBQUNMLENBQUMsQ0FBQSJ9
@@ -1,8 +1,43 @@
1
1
  import * as p_i from 'pareto-core/interface/refiner';
2
+ import * as p_ti from 'pareto-core/interface/transformer';
3
+ import * as d_choice from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
2
4
  import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
3
5
  import * as d_out from "../../../../interface/generated/liana/schemas/parse_tree/data.js";
4
6
  import * as d_in from "../../../../interface/generated/liana/schemas/token/data.js";
7
+ import * as d_location from "../../../../interface/generated/liana/schemas/location/data.js";
5
8
  export declare namespace interface_ {
6
9
  type Document = p_i.Refiner<d_out.Document, d_function.Parser_Error, d_in.Tokenizer_Result>;
10
+ type Value = p_i.Production<d_out.Value, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
11
+ type Guaranteed_Structural_Token = p_i.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
12
+ 'token': d_in.Annotated_Token;
13
+ }>;
14
+ type Possible_Structural_Token = p_i.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
15
+ 'expected token': d_choice.Expected;
16
+ }>;
17
+ type Text = p_i.Production_With_Parameter<d_out.Text, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
18
+ 'text': d_in.Annotated_Token.type_.text;
19
+ 'token': d_in.Annotated_Token;
20
+ }>;
21
+ type Items = p_i.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
22
+ 'end token': d_choice.Expected;
23
+ }>;
24
+ type Element = p_i.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
25
+ 'end token': d_choice.Expected;
26
+ }>;
27
+ type ID_Value_Pairs = p_i.Production_With_Parameter<d_out.ID_Value_Pairs, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
28
+ 'end token': d_choice.Expected;
29
+ }>;
7
30
  }
31
+ export declare const create_missing_token: p_ti.Transformer_With_Parameter<d_choice.Parser_Error.expected, d_choice.Parser_Error, {
32
+ 'end location': d_location.Location;
33
+ }>;
34
+ export declare const create_unexpected_token: p_ti.Transformer_With_Parameter<d_choice.Parser_Error.expected, d_choice.Parser_Error, {
35
+ 'found': d_in.Annotated_Token;
36
+ }>;
37
+ export declare const Value: interface_.Value;
38
+ export declare const Guaranteed_Structural_Token: interface_.Guaranteed_Structural_Token;
39
+ export declare const Possible_Structural_Token: interface_.Possible_Structural_Token;
40
+ export declare const Text: interface_.Text;
41
+ export declare const Items: interface_.Items;
42
+ export declare const ID_Value_Pairs: interface_.ID_Value_Pairs;
8
43
  export declare const Document: interface_.Document;
@@ -1,15 +1,219 @@
1
+ import * as p_ from 'pareto-core/implementation/refiner';
1
2
  import * as p_i from 'pareto-core/interface/refiner';
3
+ import * as p_ti from 'pareto-core/interface/transformer';
2
4
  import p_iterate from 'pareto-core/implementation/refiner/specials/iterate';
5
+ import p_unreachable_code_path from 'pareto-core/implementation/transformer/specials/unreachable_code_path';
6
+ //data types
7
+ import * as d_choice from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
3
8
  import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
4
9
  import * as d_out from "../../../../interface/generated/liana/schemas/parse_tree/data.js";
5
10
  import * as d_in from "../../../../interface/generated/liana/schemas/token/data.js";
6
11
  import * as d_location from "../../../../interface/generated/liana/schemas/location/data.js";
7
- //dependencies
8
- import * as pr_authoring_parse_tree from "../../productions/parse_tree/token.js";
12
+ export const create_missing_token = ($, $p) => ({
13
+ 'expected': $,
14
+ 'cause': ['missing token', {
15
+ 'end': $p['end location'],
16
+ }]
17
+ });
18
+ export const create_unexpected_token = ($, $p) => ({
19
+ 'expected': $,
20
+ 'cause': ['unexpected token', {
21
+ 'found': $p.found,
22
+ }]
23
+ });
24
+ export const Value = (iterator, abort) => ({
25
+ 'type': iterator.peek_with_expectation(p_.literal.list([
26
+ ['any value', null]
27
+ ]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
28
+ const token = $;
29
+ return p_.from.state($.type).decide(($) => {
30
+ switch ($[0]) {
31
+ case 'text': return p_.option($, ($) => ['concrete',
32
+ ['text', Text(iterator, abort, { 'token': token, 'text': $ })]
33
+ ]);
34
+ case '{': return p_.option($, ($) => ['concrete', ['dictionary', {
35
+ '{': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
36
+ 'entries': ID_Value_Pairs(iterator, abort, { 'end token': ['}', null] }),
37
+ '}': Possible_Structural_Token(iterator, abort, { 'expected token': ['}', null] }),
38
+ }]]);
39
+ case '(': return p_.option($, ($) => ['concrete', ['group', ['verbose', {
40
+ '(': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
41
+ 'properties': ID_Value_Pairs(iterator, abort, { 'end token': [')', null] }),
42
+ ')': Possible_Structural_Token(iterator, abort, { 'expected token': [')', null] })
43
+ }]]]);
44
+ case '[': return p_.option($, ($) => ['concrete', ['list', {
45
+ '[': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
46
+ 'items': Items(iterator, abort, { 'end token': [']', null] }),
47
+ ']': Possible_Structural_Token(iterator, abort, { 'expected token': [']', null] })
48
+ }]]);
49
+ case '<': return p_.option($, ($) => ['concrete', ['group', ['concise', {
50
+ '<': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
51
+ 'properties': Items(iterator, abort, { 'end token': ['>', null] }),
52
+ '>': Possible_Structural_Token(iterator, abort, { 'expected token': ['>', null] })
53
+ }]]]);
54
+ case '@': return p_.option($, ($) => ['include', {
55
+ '@': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
56
+ 'path': iterator.peek_with_expectation(p_.literal.list([
57
+ ['a text value', null]
58
+ ]), (end_info, expected) => abort(create_missing_token(expected, { 'end location': end_info })), ($, expected) => $.type[0] === 'text'
59
+ ? Text(iterator, abort, { 'token': $, 'text': $.type[1] })
60
+ : abort(create_unexpected_token(expected, { 'found': $ })))
61
+ }]);
62
+ case '~': return p_.option($, ($) => ['concrete', ['nothing', {
63
+ '~': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
64
+ }]]);
65
+ case '|': return p_.option($, ($) => ['concrete', ['state', {
66
+ '|': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
67
+ 'status': iterator.peek_with_expectation(p_.literal.list([
68
+ ['a text value', null],
69
+ ['#', null]
70
+ ]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
71
+ const token = $;
72
+ return p_.from.state($.type).decide(($) => {
73
+ switch ($[0]) {
74
+ case 'text': return p_.option($, ($) => ['set', {
75
+ 'option': Text(iterator, abort, { 'token': token, 'text': $ }),
76
+ 'value': Value(iterator, abort)
77
+ }]);
78
+ case '#': return p_.option($, ($) => ['missing', {
79
+ '#': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
80
+ }]);
81
+ default: return abort(create_unexpected_token(expected, { 'found': token }));
82
+ }
83
+ });
84
+ })
85
+ }]]);
86
+ case '_': return p_.option($, ($) => ['concrete', ['optional', ['not set', {
87
+ '_': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
88
+ }]]]);
89
+ case '*': return p_.option($, ($) => ['concrete', ['optional', ['set', {
90
+ '*': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
91
+ 'value': Value(iterator, abort)
92
+ }]]]);
93
+ case '#': return p_.option($, ($) => ['missing', {
94
+ '#': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
95
+ }]);
96
+ //unexpected tokens
97
+ // case '!': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
98
+ // ['any value', null]
99
+ // ])))
100
+ // case ':': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
101
+ // ['any value', null]
102
+ // ])))
103
+ // case ')': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
104
+ // ['any value', null]
105
+ // ])))
106
+ // case '>': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
107
+ // ['any value', null]
108
+ // ])))
109
+ // case ']': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
110
+ // ['any value', null]
111
+ // ])))
112
+ // case '}': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
113
+ // ['any value', null]
114
+ // ])))
115
+ default: return abort(create_unexpected_token(expected, { 'found': token }));
116
+ }
117
+ });
118
+ })
119
+ });
120
+ export const Guaranteed_Structural_Token = (iterator, abort, $p) => {
121
+ iterator.consume(() => p_unreachable_code_path("guaranteed"), () => null); //make this a 'discard' operation
122
+ return {
123
+ 'trailing trivia': $p.token['trailing trivia'],
124
+ 'range': {
125
+ 'start': $p.token['start'],
126
+ 'end': $p.token['end']
127
+ }
128
+ };
129
+ };
130
+ export const Possible_Structural_Token = (iterator, abort, $p) => iterator.peek_with_expectation(p_.literal.list([
131
+ $p['expected token']
132
+ ]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
133
+ const token = $;
134
+ if ($.type[0] !== $p['expected token'][0]) {
135
+ return abort(create_unexpected_token(expected, { 'found': token }));
136
+ }
137
+ else {
138
+ return iterator.consume(//discard
139
+ () => p_unreachable_code_path("peeked (with 'expected')"), () => ({
140
+ 'trailing trivia': token['trailing trivia'],
141
+ 'range': {
142
+ 'start': token['start'],
143
+ 'end': token['end']
144
+ }
145
+ }));
146
+ }
147
+ });
148
+ export const Text = (iterator, abort, $p) => {
149
+ return iterator.consume(() => p_unreachable_code_path("guaranteed (it has a token as parameter)"), ($) => ({
150
+ 'range': {
151
+ 'start': $['start'],
152
+ 'end': $['end']
153
+ },
154
+ 'token': $p.text,
155
+ 'trailing trivia': $['trailing trivia'],
156
+ }));
157
+ };
158
+ export const Items = (iterator, abort, $p) => iterator.build_list({
159
+ has_more_items: (current_token) => current_token.type[0] !== $p['end token'][0],
160
+ handle: () => iterator.peek(//for the proper error message (any value or end token) we peek instead of processing the token directly
161
+ ($) => abort(create_missing_token(p_.literal.list([
162
+ ['any value', null],
163
+ $p['end token']
164
+ ]), { 'end location': $ })), ($) => ({
165
+ 'value': Value(iterator, abort)
166
+ })),
167
+ on_no_progression: () => p_unreachable_code_path("'handle' is expected to always consume at least one token, so this should never happen"),
168
+ });
169
+ export const ID_Value_Pairs = (iterator, abort, $p) => iterator.build_list({
170
+ has_more_items: ($) => $.type[0] !== $p['end token'][0],
171
+ handle: () => ({
172
+ 'id': iterator.peek(//to get a better error message (a text value or end token) we peek instead of processing the Text token directly
173
+ () => p_unreachable_code_path("has more items is true"), ($) => $.type[0] === 'text'
174
+ ? Text(iterator, abort, {
175
+ 'token': $,
176
+ 'text': $.type[1]
177
+ })
178
+ : abort(create_unexpected_token(p_.literal.list([
179
+ ['a text value', null],
180
+ $p['end token'],
181
+ ]), { 'found': $ }))),
182
+ 'assignment': iterator.peek_with_expectation(p_.literal.list([
183
+ ['a text value', null],
184
+ [':', null],
185
+ $p['end token']
186
+ ]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
187
+ const token = $;
188
+ return p_.from.state($.type).decide(($) => {
189
+ switch ($[0]) {
190
+ case 'text': return p_.option($, ($) => p_.literal.not_set());
191
+ case ':': return p_.option($, ($) => p_.literal.set({
192
+ ':': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
193
+ 'value': p_.literal.set(Value(iterator, abort)) //FIXME determine if it is set... if the next token is a text, we will need to do an extra lookahead if there is a colon
194
+ }));
195
+ default: return $[0] === $p['end token'][0]
196
+ ? p_.literal.not_set()
197
+ : abort(create_unexpected_token(expected, { 'found': token }));
198
+ }
199
+ });
200
+ }),
201
+ // ',': p_.literal.not_set() //FIXME implement optional comma (or keep it as 'whitespace' but then remove this property)
202
+ }),
203
+ on_no_progression: () => p_unreachable_code_path("'handle' is expected to always consume at least one token, so this should never happen"),
204
+ });
9
205
  export const Document = ($, abort) => p_iterate({
10
206
  list: $.tokens,
11
207
  end_info: $.end,
12
- assign: (iterator) => pr_authoring_parse_tree.Document(iterator, abort),
208
+ assign: (iterator) => ({
209
+ 'header': iterator.peek(($) => p_.literal.not_set(), ($) => $.type[0] === '!' //header token
210
+ ? iterator.consume(() => p_unreachable_code_path("peeked (with 'expected')"), ($) => p_.literal.set({
211
+ '!': Guaranteed_Structural_Token(iterator, abort, { 'token': $ }),
212
+ 'value': Value(iterator, abort)
213
+ }))
214
+ : p_.literal.not_set()),
215
+ 'content': Value(iterator, abort)
216
+ }),
13
217
  on_dangling_item: null, //FIX enable checking for too many tokens
14
218
  });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5pemVyX3Jlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvcGFyc2VfdHJlZS90b2tlbml6ZXJfcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxHQUFHLE1BQU0sK0JBQStCLENBQUE7QUFDcEQsT0FBTyxTQUFTLE1BQU0scURBQXFELENBQUE7QUFLM0UsT0FBTyxLQUFLLFVBQVUsTUFBTSw4RUFBOEUsQ0FBQTtBQUMxRyxPQUFPLEtBQUssS0FBSyxNQUFNLGtFQUFrRSxDQUFBO0FBQ3pGLE9BQU8sS0FBSyxJQUFJLE1BQU0sNkRBQTZELENBQUE7QUFDbkYsT0FBTyxLQUFLLFVBQVUsTUFBTSxnRUFBZ0UsQ0FBQTtBQUc1RixjQUFjO0FBQ2QsT0FBTyxLQUFLLHVCQUF1QixNQUFNLHVDQUF1QyxDQUFBO0FBY2hGLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBS2xFO0lBQ0UsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ2QsUUFBUSxFQUFFLENBQUMsQ0FBQyxHQUFHO0lBQ2YsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQ2xELFFBQVEsRUFDUixLQUFLLENBQ1I7SUFDRCxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUseUNBQXlDO0NBQ3BFLENBQUMsQ0FBQSJ9
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5pemVyX3Jlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvcGFyc2VfdHJlZS90b2tlbml6ZXJfcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDeEQsT0FBTyxLQUFLLEdBQUcsTUFBTSwrQkFBK0IsQ0FBQTtBQUNwRCxPQUFPLEtBQUssSUFBSSxNQUFNLG1DQUFtQyxDQUFBO0FBRXpELE9BQU8sU0FBUyxNQUFNLHFEQUFxRCxDQUFBO0FBQzNFLE9BQU8sdUJBQXVCLE1BQU0sdUVBQXVFLENBQUE7QUFFM0csWUFBWTtBQUNaLE9BQU8sS0FBSyxRQUFRLE1BQU0sOEVBQThFLENBQUE7QUFDeEcsT0FBTyxLQUFLLFVBQVUsTUFBTSw4RUFBOEUsQ0FBQTtBQUMxRyxPQUFPLEtBQUssS0FBSyxNQUFNLGtFQUFrRSxDQUFBO0FBQ3pGLE9BQU8sS0FBSyxJQUFJLE1BQU0sNkRBQTZELENBQUE7QUFDbkYsT0FBTyxLQUFLLFVBQVUsTUFBTSxnRUFBZ0UsQ0FBQTtBQW1GNUYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBTTdCLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNaLFVBQVUsRUFBRSxDQUFDO0lBQ2IsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFO1lBQ3ZCLEtBQUssRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDO1NBQzVCLENBQUM7Q0FDTCxDQUFDLENBQUE7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FNaEMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1osVUFBVSxFQUFFLENBQUM7SUFDYixPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRTtZQUMxQixPQUFPLEVBQUUsRUFBRSxDQUFDLEtBQUs7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
@@ -0,0 +1,15 @@
1
+ import * as p_i from 'pareto-core/interface/refiner';
2
+ import * as d_in from "../../../../interface/data/annotated_characters.js";
3
+ import * as d_out from "../../../../interface/generated/liana/schemas/token/data.js";
4
+ import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
5
+ import * as d_location from "../../../../interface/generated/liana/schemas/location/data.js";
6
+ export declare const Whitespace: p_i.Production_Without_Error<d_out.Whitespace, d_in.Annotated_Character, d_location.Location>;
7
+ export declare const Trivia: p_i.Production<d_out.Trivia, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location>;
8
+ export declare const Delimited_Text: p_i.Production_With_Parameter<string, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location, {
9
+ 'allow newlines': boolean;
10
+ 'end character': number;
11
+ 'start character': d_in.Annotated_Character;
12
+ }>;
13
+ export declare const Tokenizer_Result: p_i.Production_With_Parameter<d_out.Tokenizer_Result, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location, {
14
+ 'end info': d_location.Location;
15
+ }>;
@@ -1,10 +1,10 @@
1
- import * as p_ from 'pareto-core/implementation/production';
1
+ import * as p_ from 'pareto-core/implementation/refiner';
2
+ import * as p_i from 'pareto-core/interface/refiner';
2
3
  import * as p_t from 'pareto-core/implementation/transformer';
3
- import * as p_ri from 'pareto-core/interface/refiner';
4
- import * as p_pi from 'pareto-core/interface/production';
5
4
  import p_unreachable_code_path from 'pareto-core/implementation/transformer/specials/unreachable_code_path';
6
5
  import p_variables from 'pareto-core/implementation/transformer/specials/variables';
7
6
  import p_text_from_list from 'pareto-core/implementation/transformer/specials/text_from_list';
7
+ //data types
8
8
  import * as d_in from "../../../../interface/data/annotated_characters.js";
9
9
  import * as d_out from "../../../../interface/generated/liana/schemas/token/data.js";
10
10
  import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
@@ -407,4 +407,4 @@ export const Tokenizer_Result = (iterator, abort, $p) => ({
407
407
  }),
408
408
  'end': $p['end info']
409
409
  });
410
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGVkX2NoYXJhY3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcHJvZHVjdGlvbnMvdG9rZW4vYW5ub3RhdGVkX2NoYXJhY3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLHVDQUF1QyxDQUFBO0FBQzNELE9BQU8sS0FBSyxHQUFHLE1BQU0sd0NBQXdDLENBQUE7QUFDN0QsT0FBTyxLQUFLLElBQUksTUFBTSwrQkFBK0IsQ0FBQTtBQUNyRCxPQUFPLEtBQUssSUFBSSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3hELE9BQU8sdUJBQXVCLE1BQU0sdUVBQXVFLENBQUE7QUFDM0csT0FBTyxXQUFXLE1BQU0sMkRBQTJELENBQUE7QUFDbkYsT0FBTyxnQkFBZ0IsTUFBTSxnRUFBZ0UsQ0FBQTtBQUU3RixPQUFPLEtBQUssSUFBSSxNQUFNLG9EQUFvRCxDQUFBO0FBQzFFLE9BQU8sS0FBSyxLQUFLLE1BQU0sNkRBQTZELENBQUE7QUFDcEYsT0FBTyxLQUFLLFVBQVUsTUFBTSw4RUFBOEUsQ0FBQTtBQUMxRyxPQUFPLEtBQUssVUFBVSxNQUFNLGdFQUFnRSxDQUFBO0FBRTVGLE9BQU8sS0FBSyxlQUFlLE1BQU0sZ0VBQWdFLENBQUE7QUFDakcsT0FBTyxLQUFLLEtBQUssTUFBTSwrRUFBK0UsQ0FBQTtBQUV0RyxjQUFjO0FBSWQsTUFBTSxZQUFZLEdBT2QsQ0FDQSxRQUFRLEVBQ1IsRUFBRSxFQUNtQixFQUFFLENBQUMsQ0FBQztJQUN6QixPQUFPLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUMsUUFBUTtJQUN2QyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FDaEIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFDUixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FDcEI7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
410
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGVkX2NoYXJhY3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvdG9rZW4vYW5ub3RhdGVkX2NoYXJhY3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3hELE9BQU8sS0FBSyxHQUFHLE1BQU0sK0JBQStCLENBQUE7QUFDcEQsT0FBTyxLQUFLLEdBQUcsTUFBTSx3Q0FBd0MsQ0FBQTtBQUM3RCxPQUFPLHVCQUF1QixNQUFNLHVFQUF1RSxDQUFBO0FBQzNHLE9BQU8sV0FBVyxNQUFNLDJEQUEyRCxDQUFBO0FBQ25GLE9BQU8sZ0JBQWdCLE1BQU0sZ0VBQWdFLENBQUE7QUFFN0YsWUFBWTtBQUNaLE9BQU8sS0FBSyxJQUFJLE1BQU0sb0RBQW9ELENBQUE7QUFDMUUsT0FBTyxLQUFLLEtBQUssTUFBTSw2REFBNkQsQ0FBQTtBQUNwRixPQUFPLEtBQUssVUFBVSxNQUFNLDhFQUE4RSxDQUFBO0FBQzFHLE9BQU8sS0FBSyxVQUFVLE1BQU0sZ0VBQWdFLENBQUE7QUFFNUYsT0FBTyxLQUFLLGVBQWUsTUFBTSxnRUFBZ0UsQ0FBQTtBQUNqRyxPQUFPLEtBQUssS0FBSyxNQUFNLCtFQUErRSxDQUFBO0FBRXRHLGNBQWM7QUFJZCxNQUFNLFlBQVksR0FPZCxDQUNBLFFBQVEsRUFDUixFQUFFLEVBQ21CLEVBQUUsQ0FBQyxDQUFDO0lBQ3pCLE9BQU8sRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxRQUFRO0lBQ3ZDLEtBQUssRUFBRSxRQUFRLENBQUMsSUFBSSxDQUNoQixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUNSLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUNwQjtDQUNKLENBQUMsQ0FBQTtBQUdGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FJbkIsQ0FDQSxRQUFRLEVBQ1EsRUFBRTtJQUVkLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxDQUEyQixFQUFFLEVBQUU7UUFDNUQsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDYixLQUFLLElBQUksRUFBRSxLQUFLO2dCQUNaLE9BQU8sSUFBSSxDQUFBO1lBQ2YsS0FBSyxJQUFJLEVBQUUsS0FBSztnQkFDWixPQUFPLElBQUksQ0FBQTtZQUNmLEtBQUssSUFBSSxFQUFFLEtBQUs7Z0JBQ1osT0FBTyxJQUFJLENBQUE7WUFDZixLQUFLLElBQUksRUFBRSxRQUFRO2dCQUNmLE9BQU8sSUFBSSxDQUFBO1lBQ2YsS0FBSyxJQUFJLEVBQUUsSUFBSTtnQkFDWCxPQUFPLElBQUksQ0FBQTtZQUNmO2dCQUNJLE9BQU8sS0FBSyxDQUFBO1FBQ3BCLENBQUM7SUFDTCxDQUFDLENBQUE7SUFFRCxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQzFCLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDRixJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM5QixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDL0IsQ0FBQzthQUFNLENBQUM7WUFDSixNQUFNLGVBQWUsR0FBRyxDQUFDLENBQUE7WUFDekIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFDbEIsT0FBTyxFQUFFLGdCQUFnQixDQUNyQixRQUFRLENBQUMsVUFBVSxDQUFDO29CQUNoQixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztvQkFDakQsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQzFCLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLHdFQUF3RSxDQUFDLEVBQ3ZHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoQjtvQkFDRCxpQkFBaUIsRUFBRSxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyw0RUFBNEUsQ0FBQztpQkFDakksQ0FBQyxFQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1g7Z0JBQ0QsT0FBTyxFQUFFLFlBQVksQ0FDakIsUUFBUSxFQUNSO29CQUNJLGlCQUFpQixFQUFFLGVBQWU7aUJBQ3JDLENBQ0o7YUFDSixDQUFDLENBQUE7UUFDTixDQUFDO0lBRUwsQ0FBQyxDQUNKLENBQUE7QUFDTCxDQUFDLENBQUE7QUFFTCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBS2YsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFnQixFQUFFLENBQUMsQ0FBQztJQUNwQyxvQkFBb0IsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQzFDLFVBQVUsRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDO1FBQzVCLGNBQWMsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3hCLDZDQUE2QztZQUM3QyxPQUFPLE9BQU8sQ0FBQyxJQUFJLEtBQUssSUFBSTttQkFDckIsUUFBUSxDQUFDLFVBQVUsQ0FDbEIsQ0FBQyxFQUNELEdBQUcsRUFBRSxDQUFDLEtBQUssRUFDWCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQzVDLENBQUE7UUFDVCxDQUFDO1FBQ0QsTUFBTSxFQUFFLEdBQUUsRUFBRTtZQUNSLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBRSwwQkFBMEI7WUFDL0MsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsd0JBQXdCLENBQUMsRUFDdkQsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLHdCQUF3QixDQUFDLEVBQ3ZELENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ0YsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ2IsS0FBSyxJQUFJLEVBQUUsSUFBSTt3QkFDWCxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsdUJBQXVCO3dCQUMzQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUN2RCxHQUFHLEVBQUUsQ0FBQyxDQUFDOzRCQUNILE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7NEJBQ3RCLFNBQVMsRUFBRSxnQkFBZ0IsQ0FDdkIsUUFBUSxDQUFDLFVBQVUsQ0FBQztnQ0FDaEIsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRSxxQ0FBcUM7Z0NBQ2hHLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUMxQixHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUN2RCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDaEI7Z0NBQ0QsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsNEVBQTRFLENBQUM7NkJBQ2pJLENBQUMsRUFDRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUNYOzRCQUNELE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLENBQUM7NEJBQ3pELHFCQUFxQixFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7eUJBQzlDLENBQUMsQ0FFTCxDQUFBO29CQUNMLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBLElBQUk7d0JBQ1osT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLHVCQUF1Qjt3QkFDM0MsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsd0JBQXdCLENBQUMsRUFDdkQsR0FBRyxFQUFFLENBQUMsQ0FBQzs0QkFDSCxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDOzRCQUN2QixTQUFTLEVBQUUsV0FBVyxDQUFDLEdBQUcsRUFBRTtnQ0FDeEIsTUFBTSxlQUFlLEdBQUcsZ0JBQWdCLENBQ3BDLFFBQVEsQ0FBQyxVQUFVLENBQUM7b0NBQ2hCLGNBQWMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO3dDQUNsQiwrREFBK0Q7d0NBQy9ELE9BQU8sQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJOytDQUNmLFFBQVEsQ0FBQyxVQUFVLENBQ2xCLENBQUMsRUFDRCxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsb0VBQW9FOzRDQUNoRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQ3pCLENBQUE7b0NBQ1QsQ0FBQztvQ0FDRCxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FDMUIsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsd0JBQXdCLENBQUMsRUFDdkQsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ2hCO29DQUNELGlCQUFpQixFQUFFLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLDRFQUE0RSxDQUFDO2lDQUNqSSxDQUFDLEVBQ0YsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDWCxDQUFBO2dDQUNELFFBQVEsQ0FBQyxPQUFPLENBQUUsdUJBQXVCO2dDQUNyQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO29DQUNULFVBQVUsRUFBRSxDQUFDLDJCQUEyQixFQUFFLElBQUksQ0FBQztvQ0FDL0MsT0FBTyxFQUFFO3dDQUNMLE9BQU8sRUFBRSxDQUFDO3dDQUNWLEtBQUssRUFBRSxDQUFDO3FDQUNYO2lDQUNKLENBQUMsRUFDRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJO29DQUNsQixDQUFDLENBQUMsSUFBSTtvQ0FDTixDQUFDLENBQUMsS0FBSyxDQUFDO3dDQUNKLFVBQVUsRUFBRSxDQUFDLDJCQUEyQixFQUFFLElBQUksQ0FBQzt3Q0FDL0MsT0FBTyxFQUFFOzRDQUNMLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUTs0Q0FDbkIsS0FBSyxFQUFFLENBQUMsQ0FBQyxRQUFRO3lDQUNwQjtxQ0FDSixDQUFDLENBQ1QsQ0FBQTtnQ0FDRCxRQUFRLENBQUMsT0FBTyxDQUFFLHNCQUFzQjtnQ0FDcEMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQztvQ0FDVCxVQUFVLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxJQUFJLENBQUM7b0NBQy9DLE9BQU8sRUFBRTt3Q0FDTCxPQUFPLEVBQUUsQ0FBQzt3Q0FDVixLQUFLLEVBQUUsQ0FBQztxQ0FDWDtpQ0FDSixDQUFDLEVBQ0YsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSTtvQ0FDbEIsQ0FBQyxDQUFDLElBQUk7b0NBQ04sQ0FBQyxDQUFDLEtBQUssQ0FBQzt3Q0FDSixVQUFVLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxJQUFJLENBQUM7d0NBQy9DLE9BQU8sRUFBRTs0Q0FDTCxPQUFPLEVBQUUsQ0FBQyxDQUFDLFFBQVE7NENBQ25CLEtBQUssRUFBRSxDQUFDLENBQUMsUUFBUTt5Q0FDcEI7cUNBQ0osQ0FBQyxDQUNULENBQUE7Z0NBRUQsT0FBTyxlQUFlLENBQUE7NEJBQzFCLENBQUMsQ0FDQTs0QkFDRCxPQUFPLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixFQUFFLENBQUMsRUFBRSxDQUFDOzRCQUN6RCxxQkFBcUIsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO3lCQUM5QyxDQUFDLENBRUwsQ0FBQTtvQkFDTCxDQUFDO29CQUNELE9BQU8sQ0FBQyxDQUFDLE9BQU8sdUJBQXVCLENBQUMsd0dBQXdHLENBQUMsQ0FBQTtnQkFDckosQ0FBQztZQUNMLENBQUMsQ0FDSixDQUNKLENBQUE7UUFDTCxDQUFDO1FBQ0QsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsNEVBQTRFLENBQUM7S0FDakksQ0FBQztDQUNMLENBQUMsQ0FBQTtBQUVGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FVdkIsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFO0lBQ3hCLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUMvQixRQUFRLENBQUMsVUFBVSxDQUFDO1FBQ2hCLGNBQWMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsZUFBZSxDQUFDO1FBQ3JELE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUMxQixHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUN2RCxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ0YsTUFBTSxTQUFTLEdBQUc7Z0JBQ2QsU0FBUyxFQUFFLElBQUksRUFBYSxLQUFLO2dCQUNqQyxTQUFTLEVBQUUsSUFBSSxFQUFhLEtBQUs7Z0JBQ2pDLEdBQUcsRUFBRSxJQUFJLEVBQW1CLEtBQUs7Z0JBQ2pDLFNBQVMsRUFBRSxJQUFJLEVBQWEsS0FBSztnQkFDakMsZUFBZSxFQUFFLElBQUksRUFBTyxLQUFLO2dCQUNqQyxjQUFjLEVBQUUsSUFBSSxFQUFRLElBQUk7Z0JBQ2hDLFFBQVEsRUFBRSxJQUFJLEVBQWMsSUFBSTtnQkFDaEMsVUFBVSxFQUFFLElBQUksRUFBWSxJQUFJO2dCQUNoQyxlQUFlLEVBQUUsSUFBSSxFQUFPLElBQUk7Z0JBQ2hDLE9BQU8sRUFBRSxJQUFJLEVBQWUsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtnQkFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTthQUVuQyxDQUFBO1lBQ0QsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2IsS0FBSyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ2pELENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSTtvQkFDUixDQUFDLENBQUMsS0FBSyxDQUFDO3dCQUNKLFVBQVUsRUFBRSxDQUFDLHdCQUF3QixFQUFFLElBQUksQ0FBQzt3QkFDNUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO3FCQUNoRixDQUFDLENBQUE7Z0JBQ04sS0FBSyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ3ZELENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSTtvQkFDUixDQUFDLENBQUMsS0FBSyxDQUFDO3dCQUNKLFVBQVUsRUFBRSxDQUFDLHdCQUF3QixFQUFFLElBQUksQ0FBQzt3QkFDNUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO3FCQUNoRixDQUFDLENBQUE7Z0JBQ04sS0FBSyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUNuRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO29CQUNULE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztvQkFDN0UsVUFBVSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO2lCQUN0RSxDQUFDLEVBQ0YsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDRixRQUFRLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQzt3QkFDYixLQUFLLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxPQUFPLFNBQVMsQ0FBQyxjQUFjLENBQUE7d0JBQzlELEtBQUssU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sU0FBUyxDQUFDLFVBQVUsQ0FBQTt3QkFDdEQsS0FBSyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxTQUFTLENBQUMsUUFBUSxDQUFBO3dCQUNsRCxLQUFLLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxPQUFPLFNBQVMsQ0FBQyxlQUFlLENBQUE7d0JBQ2hFLEtBQUssU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQTt3QkFFaEQsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxTQUFTLENBQUMsU0FBUyxDQUFBO3dCQUM1QyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLFNBQVMsQ0FBQyxTQUFTLENBQUE7d0JBQzVDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sU0FBUyxDQUFDLFNBQVMsQ0FBQTt3QkFDNUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxTQUFTLENBQUMsZUFBZSxDQUFBO3dCQUNsRCxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLFNBQVMsQ0FBQyxHQUFHLENBQUE7d0JBQ3RDLEtBQUssU0FBUyxDQUFDLENBQUM7NEJBQ1osTUFBTSxhQUFhLEdBRWYsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0NBQ2IsTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFBO2dDQUNwQixJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUE7Z0NBQ2QsSUFBSSxVQUFVLEdBQUcsS0FBSyxDQUFBO2dDQUN0QixJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUE7Z0NBRWxCLHlCQUF5QjtnQ0FDekIsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQ0FDcEQsS0FBSyxDQUFDLGdEQUFnRCxDQUFDLENBQUE7Z0NBQzNELENBQUM7Z0NBRUQsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQWEsRUFBVSxFQUFFO29DQUMvQyxPQUFPLFVBQVUsQ0FBQyx3QkFBd0IsQ0FDdEMsS0FBSyxFQUNMO3dDQUNJLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyw4RUFBOEUsQ0FBQztxQ0FDL0gsQ0FDSixDQUFBO2dDQUNMLENBQUMsQ0FBQTtnQ0FFRCwwQkFBMEI7Z0NBQzFCLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsZUFBZSxFQUFFLEdBQUcsQ0FBQyxJQUFJLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTTtvQ0FDdkYsVUFBVSxHQUFHLElBQUksQ0FBQTtvQ0FDakIsVUFBVSxHQUFHLENBQUMsQ0FBQTtnQ0FDbEIsQ0FBQztnQ0FFRCw2Q0FBNkM7Z0NBQzdDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsZUFBZSxFQUFFLElBQUksVUFBVSxHQUFHLENBQUM7b0NBQzdELGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxNQUFNO29DQUM3QyxnQkFBZ0IsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNO29DQUNsRCxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQTtnQ0FDckQsQ0FBQztnQ0FDRCxVQUFVLElBQUksQ0FBQyxDQUFBO2dDQUVmLDZDQUE2QztnQ0FDN0MsSUFBSSxVQUFVLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQztvQ0FDNUQsS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUE7Z0NBQ2xFLENBQUM7Z0NBRUQsc0NBQXNDO2dDQUN0QyxLQUFLLElBQUksQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztvQ0FDNUUsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUE7b0NBQ3BDLElBQUksS0FBYSxDQUFBO29DQUVqQixvQ0FBb0M7b0NBQ3BDLElBQUksUUFBUSxJQUFJLEVBQUUsSUFBSSxRQUFRLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxVQUFVO3dDQUM5QyxLQUFLLEdBQUcsUUFBUSxHQUFHLEVBQUUsQ0FBQTtvQ0FDekIsQ0FBQzt5Q0FBTSxJQUFJLFFBQVEsSUFBSSxFQUFFLElBQUksUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVTt3Q0FDckQsS0FBSyxHQUFHLFFBQVEsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFBO29DQUM5QixDQUFDO3lDQUFNLElBQUksUUFBUSxJQUFJLEVBQUUsSUFBSSxRQUFRLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxVQUFVO3dDQUN0RCxLQUFLLEdBQUcsUUFBUSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUE7b0NBQzlCLENBQUM7eUNBQU0sQ0FBQzt3Q0FDSixvQkFBb0I7d0NBQ3BCLE9BQU8sS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUE7b0NBQzNELENBQUM7b0NBRUQsTUFBTSxHQUFHLE1BQU0sR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFBO2dDQUNoQyxDQUFDO2dDQUVELE9BQU8sVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBOzRCQUN4QyxDQUFDLENBQUE7NEJBQ0QsTUFBTSxZQUFZLEdBQUcsR0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FDL0MsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQztnQ0FDVCxPQUFPLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7Z0NBQzdFLFVBQVUsRUFBRSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQzs2QkFDdkUsQ0FBQyxFQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoQixDQUFBOzRCQUNELE9BQU8sYUFBYSxDQUNoQixFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQ0FDWixZQUFZLEVBQUU7Z0NBQ2QsWUFBWSxFQUFFO2dDQUNkLFlBQVksRUFBRTtnQ0FDZCxZQUFZLEVBQUU7NkJBQ2pCLENBQUMsRUFDRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO2dDQUNULE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztnQ0FDN0UsVUFBVSxFQUFFLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLGtDQUFrQzs2QkFDeEcsQ0FBQyxDQUNMLENBQUE7d0JBQ0wsT0FBTyxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUM7NEJBQ2xCLE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQzs0QkFDN0UsVUFBVSxFQUFFLENBQUMsa0JBQWtCLEVBQUU7b0NBQzdCLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2lDQUNsQyxDQUFDO3lCQUNMLENBQUMsQ0FBQTtvQkFDTixDQUFDO2dCQUNMLENBQUMsQ0FDSixDQUFBO2dCQUNELE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQTtZQUMxQixDQUFDO1FBQ0wsQ0FBQyxDQUNKO1FBQ0QsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsNEVBQTRFLENBQUM7S0FDakksQ0FBQyxFQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1gsQ0FBQTtJQUNELFFBQVEsQ0FBQyxPQUFPLENBQUUsMkJBQTJCO0lBQ3pDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNSLFVBQVUsRUFBRSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQztRQUN0QyxPQUFPLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7S0FDaEYsQ0FBQyxFQUNGLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FDYixDQUFBO0lBQ0QsT0FBTyxVQUFVLENBQUE7QUFDckIsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBUXpCLENBQ0EsUUFBUSxFQUNSLEtBQUssRUFDTCxFQUFFLEVBQ0osRUFBRSxDQUFDLENBQUM7SUFDRixnQkFBZ0IsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztJQUN6QyxRQUFRLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQztRQUMxQixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUk7UUFDM0IsTUFBTSxFQUFFLEdBQUcsRUFBRTtZQUNULE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQzFCLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLHdCQUF3QixDQUFDLEVBQ3ZELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1gsQ0FBQTtZQUNELE9BQU8sQ0FBQztnQkFDSixPQUFPLEVBQUUsUUFBUSxDQUFDLFFBQVE7Z0JBQzFCLE1BQU0sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUNqQixHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUN2RCxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUVGLE1BQU0sU0FBUyxHQUFHO3dCQUVkLGtCQUFrQixFQUFFLElBQUksRUFBRSxJQUFJO3dCQUM5QixVQUFVLEVBQUUsSUFBSSxFQUFZLElBQUk7d0JBQ2hDLFlBQVksRUFBRSxJQUFJLEVBQVUsSUFBSTt3QkFDaEMsVUFBVSxFQUFFLElBQUksRUFBVyxJQUFJO3dCQUUvQixtQkFBbUIsRUFBRSxJQUFJLEVBQUUsSUFBSTt3QkFDL0IsV0FBVyxFQUFFLElBQUksRUFBVyxJQUFJO3dCQUNoQyxhQUFhLEVBQUUsSUFBSSxFQUFTLElBQUk7d0JBQ2hDLFdBQVcsRUFBRSxJQUFJLEVBQVUsSUFBSTt3QkFFL0IsVUFBVSxFQUFFLElBQUksRUFBVyxJQUFJO3dCQUMvQixRQUFRLEVBQUUsSUFBSSxFQUFhLElBQUk7d0JBQy9CLEVBQUUsRUFBRSxJQUFJLEVBQW1CLElBQUk7d0JBQy9CLFFBQVEsRUFBRSxJQUFJLEVBQWEsSUFBSTt3QkFDL0IsSUFBSSxFQUFFLElBQUk7d0JBQ1YsS0FBSyxFQUFFLElBQUksRUFBaUIsSUFBSTt3QkFDaEMsSUFBSSxFQUFFLElBQUksRUFBaUIsSUFBSTt3QkFDL0IsY0FBYyxFQUFFLElBQUksRUFBUSxJQUFJO3dCQUNoQyxLQUFLLEVBQUUsSUFBSSxFQUFnQixJQUFJO3dCQUMvQixVQUFVLEVBQUUsSUFBSSxFQUFZLElBQUk7d0JBQ2hDLEtBQUssRUFBRSxJQUFJLEVBQWdCLElBQUk7d0JBQy9CLElBQUksRUFBRSxJQUFJLEVBQWlCLElBQUk7d0JBRS9CLEtBQUssRUFBRSxJQUFJLEVBQWdCLFFBQVE7d0JBQ25DLEdBQUcsRUFBRSxJQUFJLEVBQWtCLEtBQUs7cUJBRW5DLENBQUE7b0JBQ0QsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7d0JBQ2IsS0FBSyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUM5QyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsRUFDdkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUNyQixDQUFBO3dCQUNELEtBQUssU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FDaEQsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLEVBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FDckIsQ0FBQTt3QkFDRCxLQUFLLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FDdEQsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLEVBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FDckIsQ0FBQTt3QkFDRCxLQUFLLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQzlDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUN2QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQ3JCLENBQUE7d0JBQ0QsS0FBSyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUMvQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsRUFDdkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUNyQixDQUFBO3dCQUNELEtBQUssU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FDakQsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLEVBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FDckIsQ0FBQTt3QkFDRCxLQUFLLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FDdkQsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLEVBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FDckIsQ0FBQTt3QkFDRCxLQUFLLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQy9DLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUN2QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQ3JCLENBQUE7d0JBR0QsYUFBYTt3QkFDYixLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQ3hDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUN2QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMscUJBQXFCO3lCQUMzQyxDQUFBO3dCQUNELEtBQUssU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FDeEMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLEVBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxvQkFBb0I7eUJBQzFDLENBQUE7d0JBQ0QsS0FBSyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUM5QyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsRUFDdkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLG9CQUFvQjt5QkFDMUMsQ0FBQTt3QkFDRCxLQUFLLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQ3pDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUN2QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsb0JBQW9CO3lCQUMxQyxDQUFBO3dCQUNELEtBQUssU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FDNUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLEVBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxrQkFBa0I7eUJBQ3hDLENBQUE7d0JBQ0QsS0FBSyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUN0QyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsRUFDdkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLGdCQUFnQjt5QkFDdEMsQ0FBQTt3QkFDRCxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQ3hDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUN2QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsZUFBZTt5QkFDckMsQ0FBQTt3QkFDRCxLQUFLLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQ3pDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUN2QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsbUJBQW1CO3lCQUN6QyxDQUFBO3dCQUNELEtBQUssU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FDbEQsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLEVBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtnQ0FDWixPQUFPLEVBQUUsY0FBYyxDQUNuQixRQUFRLEVBQ1IsS0FBSyxFQUNMO29DQUNJLGlCQUFpQixFQUFFLENBQUM7b0NBQ3BCLGVBQWUsRUFBRSxTQUFTLENBQUMsY0FBYztvQ0FDekMsZ0JBQWdCLEVBQUUsSUFBSTtpQ0FDekIsQ0FDSjtnQ0FDRCxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDOzZCQUMzQixDQUFDLENBQ0wsQ0FBQTt3QkFDRCxLQUFLLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQzVDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUN2QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7Z0NBQ1osT0FBTyxFQUFFLGNBQWMsQ0FDbkIsUUFBUSxFQUNSLEtBQUssRUFDTDtvQ0FDSSxpQkFBaUIsRUFBRSxDQUFDO29DQUNwQixlQUFlLEVBQUUsU0FBUyxDQUFDLFFBQVE7b0NBQ25DLGdCQUFnQixFQUFFLEtBQUs7aUNBQzFCLENBQ0o7Z0NBQ0QsTUFBTSxFQUFFLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQzs2QkFDL0IsQ0FBQyxDQUNMLENBQUE7d0JBQ0QsS0FBSyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUM5QyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsRUFDdkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO2dDQUNaLE9BQU8sRUFBRSxjQUFjLENBQ25CLFFBQVEsRUFDUixLQUFLLEVBQ0w7b0NBQ0ksaUJBQWlCLEVBQUUsQ0FBQztvQ0FDcEIsZUFBZSxFQUFFLFNBQVMsQ0FBQyxVQUFVO29DQUNyQyxnQkFBZ0IsRUFBRSxLQUFLO2lDQUMxQixDQUNKO2dDQUNELE1BQU0sRUFBRSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUM7NkJBQ2hDLENBQUMsQ0FDTCxDQUFBO3dCQUVELE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7Z0NBQ3JCLE1BQU0sRUFBRSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUM7Z0NBQzdCLE9BQU8sRUFBRSxnQkFBZ0IsQ0FFckIsUUFBUSxDQUFDLFVBQVUsQ0FBQztvQ0FDaEIsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7d0NBQ2xCLE1BQU0sZUFBZSxHQUFHOzRDQUNwQixHQUFHLEVBQUUsSUFBSSxFQUFtQixLQUFLOzRDQUNqQyxTQUFTLEVBQUUsSUFBSSxFQUFhLEtBQUs7NENBQ2pDLGVBQWUsRUFBRSxJQUFJLEVBQU8sS0FBSzs0Q0FDakMsS0FBSyxFQUFFLElBQUksRUFBaUIsRUFBRTs0Q0FDOUIsS0FBSyxFQUFFLElBQUksRUFBaUIsSUFBSTt5Q0FDbkMsQ0FBQTt3Q0FDRCxPQUFPLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLFVBQVU7NENBQ2xDLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLFdBQVc7NENBQ2hDLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLFlBQVk7NENBQ2pDLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLGFBQWE7NENBQ2xDLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLGtCQUFrQjs0Q0FDdkMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsbUJBQW1COzRDQUN4QyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxVQUFVOzRDQUMvQixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxXQUFXOzRDQUNoQyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxVQUFVOzRDQUMvQixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxRQUFROzRDQUM3QixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxFQUFFOzRDQUN2QixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxRQUFROzRDQUM3QixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxJQUFJOzRDQUN6QixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxLQUFLOzRDQUMxQixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxJQUFJOzRDQUN6QixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxjQUFjOzRDQUNuQyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxLQUFLOzRDQUMxQixDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxLQUFLOzRDQUMxQixDQUFDLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxLQUFLOzRDQUNoQyxDQUFDLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxLQUFLOzRDQUNoQyxDQUFDLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxHQUFHOzRDQUM5QixDQUFDLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxTQUFTOzRDQUNwQyxDQUFDLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxlQUFlLENBQUE7b0NBQ2xELENBQUM7b0NBQ0QsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQzFCLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLHdCQUF3QixDQUFDLEVBQ3ZELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoQjtvQ0FDRCxpQkFBaUIsRUFBRSxHQUFHLEVBQUUsQ0FBQSx1QkFBdUIsQ0FBQywwQkFBMEIsQ0FBQztpQ0FDOUUsQ0FBQyxFQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1g7NkJBQ0osQ0FBQyxDQUFBO29CQUNOLENBQUM7Z0JBR0wsQ0FBQyxDQUNKO2dCQUNELEtBQUssRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxHQUFHO2dCQUNsRSxpQkFBaUIsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQzthQUM3QyxDQUFDLENBQUE7UUFDTixDQUFDO1FBQ0QsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLENBQUEsdUJBQXVCLENBQUMsMEZBQTBGLENBQUM7S0FDOUksQ0FBQztJQUNGLEtBQUssRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDO0NBQ3hCLENBQUMsQ0FBQSJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "astn-core",
3
- "version": "0.5.125",
3
+ "version": "0.5.127",
4
4
  "author": "Corno",
5
5
  "license": "Apache-2.0",
6
6
  "description": "The TypeScript library for parsing and formatting ASTN (Abstract Syntax Tree Notation) - a human-editable data format for structured content",
@@ -31,9 +31,6 @@
31
31
  "default": "./dist/*.js"
32
32
  }
33
33
  },
34
- "main": "./dist/index.js",
35
- "types": "dist/index.d.ts",
36
- "module": "./dist/index.js",
37
34
  "files": [
38
35
  "dist",
39
36
  "README.md",
@@ -1,42 +0,0 @@
1
- import * as p_ti from 'pareto-core/interface/transformer';
2
- import * as p_pi from 'pareto-core/interface/production';
3
- import * as d_out from "../../../../interface/generated/liana/schemas/parse_tree/data.js";
4
- import * as d_choice from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
5
- import * as d_in from "../../../../interface/generated/liana/schemas/token/data.js";
6
- import * as d_location from "../../../../interface/generated/liana/schemas/location/data.js";
7
- export declare namespace interface_ {
8
- type Document = p_pi.Production<d_out.Document, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
9
- type Value = p_pi.Production<d_out.Value, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
10
- type Guaranteed_Structural_Token = p_pi.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
11
- 'token': d_in.Annotated_Token;
12
- }>;
13
- type Possible_Structural_Token = p_pi.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
14
- 'expected token': d_choice.Expected;
15
- }>;
16
- type Text = p_pi.Production_With_Parameter<d_out.Text, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
17
- 'text': d_in.Annotated_Token.type_.text;
18
- 'token': d_in.Annotated_Token;
19
- }>;
20
- type Items = p_pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
21
- 'end token': d_choice.Expected;
22
- }>;
23
- type Element = p_pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
24
- 'end token': d_choice.Expected;
25
- }>;
26
- type ID_Value_Pairs = p_pi.Production_With_Parameter<d_out.ID_Value_Pairs, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
27
- 'end token': d_choice.Expected;
28
- }>;
29
- }
30
- export declare const create_missing_token: p_ti.Transformer_With_Parameter<d_choice.Parser_Error.expected, d_choice.Parser_Error, {
31
- 'end location': d_location.Location;
32
- }>;
33
- export declare const create_unexpected_token: p_ti.Transformer_With_Parameter<d_choice.Parser_Error.expected, d_choice.Parser_Error, {
34
- 'found': d_in.Annotated_Token;
35
- }>;
36
- export declare const Document: interface_.Document;
37
- export declare const Value: interface_.Value;
38
- export declare const Guaranteed_Structural_Token: interface_.Guaranteed_Structural_Token;
39
- export declare const Possible_Structural_Token: interface_.Possible_Structural_Token;
40
- export declare const Text: interface_.Text;
41
- export declare const Items: interface_.Items;
42
- export declare const ID_Value_Pairs: interface_.ID_Value_Pairs;
@@ -1,212 +0,0 @@
1
- import * as p_ from 'pareto-core/implementation/production';
2
- import * as p_ti from 'pareto-core/interface/transformer';
3
- import * as p_pi from 'pareto-core/interface/production';
4
- import p_unreachable_code_path from 'pareto-core/implementation/transformer/specials/unreachable_code_path';
5
- //data types
6
- import * as d_out from "../../../../interface/generated/liana/schemas/parse_tree/data.js";
7
- import * as d_choice from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
8
- import * as d_in from "../../../../interface/generated/liana/schemas/token/data.js";
9
- import * as d_location from "../../../../interface/generated/liana/schemas/location/data.js";
10
- export const create_missing_token = ($, $p) => ({
11
- 'expected': $,
12
- 'cause': ['missing token', {
13
- 'end': $p['end location'],
14
- }]
15
- });
16
- export const create_unexpected_token = ($, $p) => ({
17
- 'expected': $,
18
- 'cause': ['unexpected token', {
19
- 'found': $p.found,
20
- }]
21
- });
22
- export const Document = (iterator, abort) => ({
23
- 'header': iterator.peek(($) => p_.literal.not_set(), ($) => $.type[0] === '!' //header token
24
- ? iterator.consume(() => p_unreachable_code_path("peeked (with 'expected')"), ($) => p_.literal.set({
25
- '!': Guaranteed_Structural_Token(iterator, abort, { 'token': $ }),
26
- 'value': Value(iterator, abort)
27
- }))
28
- : p_.literal.not_set()),
29
- 'content': Value(iterator, abort)
30
- });
31
- export const Value = (iterator, abort) => ({
32
- 'type': iterator.peek_with_expectation(p_.literal.list([
33
- ['any value', null]
34
- ]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
35
- const token = $;
36
- return p_.from.state($.type).decide(($) => {
37
- switch ($[0]) {
38
- case 'text': return p_.option($, ($) => ['concrete',
39
- ['text', Text(iterator, abort, { 'token': token, 'text': $ })]
40
- ]);
41
- case '{': return p_.option($, ($) => ['concrete', ['dictionary', {
42
- '{': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
43
- 'entries': ID_Value_Pairs(iterator, abort, { 'end token': ['}', null] }),
44
- '}': Possible_Structural_Token(iterator, abort, { 'expected token': ['}', null] }),
45
- }]]);
46
- case '(': return p_.option($, ($) => ['concrete', ['group', ['verbose', {
47
- '(': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
48
- 'properties': ID_Value_Pairs(iterator, abort, { 'end token': [')', null] }),
49
- ')': Possible_Structural_Token(iterator, abort, { 'expected token': [')', null] })
50
- }]]]);
51
- case '[': return p_.option($, ($) => ['concrete', ['list', {
52
- '[': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
53
- 'items': Items(iterator, abort, { 'end token': [']', null] }),
54
- ']': Possible_Structural_Token(iterator, abort, { 'expected token': [']', null] })
55
- }]]);
56
- case '<': return p_.option($, ($) => ['concrete', ['group', ['concise', {
57
- '<': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
58
- 'properties': Items(iterator, abort, { 'end token': ['>', null] }),
59
- '>': Possible_Structural_Token(iterator, abort, { 'expected token': ['>', null] })
60
- }]]]);
61
- case '@': return p_.option($, ($) => ['include', {
62
- '@': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
63
- 'path': iterator.peek_with_expectation(p_.literal.list([
64
- ['a text value', null]
65
- ]), (end_info, expected) => abort(create_missing_token(expected, { 'end location': end_info })), ($, expected) => $.type[0] === 'text'
66
- ? Text(iterator, abort, { 'token': $, 'text': $.type[1] })
67
- : abort(create_unexpected_token(expected, { 'found': $ })))
68
- }]);
69
- case '~': return p_.option($, ($) => ['concrete', ['nothing', {
70
- '~': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
71
- }]]);
72
- case '|': return p_.option($, ($) => ['concrete', ['state', {
73
- '|': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
74
- 'status': iterator.peek_with_expectation(p_.literal.list([
75
- ['a text value', null],
76
- ['#', null]
77
- ]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
78
- const token = $;
79
- return p_.from.state($.type).decide(($) => {
80
- switch ($[0]) {
81
- case 'text': return p_.option($, ($) => ['set', {
82
- 'option': Text(iterator, abort, { 'token': token, 'text': $ }),
83
- 'value': Value(iterator, abort)
84
- }]);
85
- case '#': return p_.option($, ($) => ['missing', {
86
- '#': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
87
- }]);
88
- default: return abort(create_unexpected_token(expected, { 'found': token }));
89
- }
90
- });
91
- })
92
- }]]);
93
- case '_': return p_.option($, ($) => ['concrete', ['optional', ['not set', {
94
- '_': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
95
- }]]]);
96
- case '*': return p_.option($, ($) => ['concrete', ['optional', ['set', {
97
- '*': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
98
- 'value': Value(iterator, abort)
99
- }]]]);
100
- case '#': return p_.option($, ($) => ['missing', {
101
- '#': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
102
- }]);
103
- //unexpected tokens
104
- // case '!': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
105
- // ['any value', null]
106
- // ])))
107
- // case ':': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
108
- // ['any value', null]
109
- // ])))
110
- // case ')': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
111
- // ['any value', null]
112
- // ])))
113
- // case '>': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
114
- // ['any value', null]
115
- // ])))
116
- // case ']': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
117
- // ['any value', null]
118
- // ])))
119
- // case '}': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
120
- // ['any value', null]
121
- // ])))
122
- default: return abort(create_unexpected_token(expected, { 'found': token }));
123
- }
124
- });
125
- })
126
- });
127
- export const Guaranteed_Structural_Token = (iterator, abort, $p) => {
128
- iterator.consume(() => p_unreachable_code_path("guaranteed"), () => null); //make this a 'discard' operation
129
- return {
130
- 'trailing trivia': $p.token['trailing trivia'],
131
- 'range': {
132
- 'start': $p.token['start'],
133
- 'end': $p.token['end']
134
- }
135
- };
136
- };
137
- export const Possible_Structural_Token = (iterator, abort, $p) => iterator.peek_with_expectation(p_.literal.list([
138
- $p['expected token']
139
- ]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
140
- const token = $;
141
- if ($.type[0] !== $p['expected token'][0]) {
142
- return abort(create_unexpected_token(expected, { 'found': token }));
143
- }
144
- else {
145
- return iterator.consume(//discard
146
- () => p_unreachable_code_path("peeked (with 'expected')"), () => ({
147
- 'trailing trivia': token['trailing trivia'],
148
- 'range': {
149
- 'start': token['start'],
150
- 'end': token['end']
151
- }
152
- }));
153
- }
154
- });
155
- export const Text = (iterator, abort, $p) => {
156
- return iterator.consume(() => p_unreachable_code_path("guaranteed (it has a token as parameter)"), ($) => ({
157
- 'range': {
158
- 'start': $['start'],
159
- 'end': $['end']
160
- },
161
- 'token': $p.text,
162
- 'trailing trivia': $['trailing trivia'],
163
- }));
164
- };
165
- export const Items = (iterator, abort, $p) => iterator.build_list({
166
- has_more_items: (current_token) => current_token.type[0] !== $p['end token'][0],
167
- handle: () => iterator.peek(//for the proper error message (any value or end token) we peek instead of processing the token directly
168
- ($) => abort(create_missing_token(p_.literal.list([
169
- ['any value', null],
170
- $p['end token']
171
- ]), { 'end location': $ })), ($) => ({
172
- 'value': Value(iterator, abort)
173
- })),
174
- on_no_progression: () => p_unreachable_code_path("'handle' is expected to always consume at least one token, so this should never happen"),
175
- });
176
- export const ID_Value_Pairs = (iterator, abort, $p) => iterator.build_list({
177
- has_more_items: ($) => $.type[0] !== $p['end token'][0],
178
- handle: () => ({
179
- 'id': iterator.peek(//to get a better error message (a text value or end token) we peek instead of processing the Text token directly
180
- () => p_unreachable_code_path("has more items is true"), ($) => $.type[0] === 'text'
181
- ? Text(iterator, abort, {
182
- 'token': $,
183
- 'text': $.type[1]
184
- })
185
- : abort(create_unexpected_token(p_.literal.list([
186
- ['a text value', null],
187
- $p['end token'],
188
- ]), { 'found': $ }))),
189
- 'assignment': iterator.peek_with_expectation(p_.literal.list([
190
- ['a text value', null],
191
- [':', null],
192
- $p['end token']
193
- ]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
194
- const token = $;
195
- return p_.from.state($.type).decide(($) => {
196
- switch ($[0]) {
197
- case 'text': return p_.option($, ($) => p_.literal.not_set());
198
- case ':': return p_.option($, ($) => p_.literal.set({
199
- ':': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
200
- 'value': p_.literal.set(Value(iterator, abort)) //FIXME determine if it is set... if the next token is a text, we will need to do an extra lookahead if there is a colon
201
- }));
202
- default: return $[0] === $p['end token'][0]
203
- ? p_.literal.not_set()
204
- : abort(create_unexpected_token(expected, { 'found': token }));
205
- }
206
- });
207
- }),
208
- // ',': p_.literal.not_set() //FIXME implement optional comma (or keep it as 'whitespace' but then remove this property)
209
- }),
210
- on_no_progression: () => p_unreachable_code_path("'handle' is expected to always consume at least one token, so this should never happen"),
211
- });
212
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vbWFudWFsL3Byb2R1Y3Rpb25zL3BhcnNlX3RyZWUvdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQTtBQUMzRCxPQUFPLEtBQUssSUFBSSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3pELE9BQU8sS0FBSyxJQUFJLE1BQU0sa0NBQWtDLENBQUE7QUFDeEQsT0FBTyx1QkFBdUIsTUFBTSx1RUFBdUUsQ0FBQTtBQUUzRyxZQUFZO0FBQ1osT0FBTyxLQUFLLEtBQUssTUFBTSxrRUFBa0UsQ0FBQTtBQUN6RixPQUFPLEtBQUssUUFBUSxNQUFNLDhFQUE4RSxDQUFBO0FBQ3hHLE9BQU8sS0FBSyxJQUFJLE1BQU0sNkRBQTZELENBQUE7QUFDbkYsT0FBTyxLQUFLLFVBQVUsTUFBTSxnRUFBZ0UsQ0FBQTtBQWtGNUYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBTTdCLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNaLFVBQVUsRUFBRSxDQUFDO0lBQ2IsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFO1lBQ3ZCLEtBQUssRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDO1NBQzVCLENBQUM7Q0FDTCxDQUFDLENBQUE7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FNaEMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1osVUFBVSxFQUFFLENBQUM7SUFDYixPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRTtZQUMxQixPQUFPLEVBQUUsRUFBRSxDQUFDLEtBQUs7U0FDcEIsQ0FBQztDQUNMLENBQUMsQ0FBQTtBQUVGLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FB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
@@ -1,15 +0,0 @@
1
- import * as p_pi from 'pareto-core/interface/production';
2
- import * as d_in from "../../../../interface/data/annotated_characters.js";
3
- import * as d_out from "../../../../interface/generated/liana/schemas/token/data.js";
4
- import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data.js";
5
- import * as d_location from "../../../../interface/generated/liana/schemas/location/data.js";
6
- export declare const Whitespace: p_pi.Production_Without_Error<d_out.Whitespace, d_in.Annotated_Character, d_location.Location>;
7
- export declare const Trivia: p_pi.Production<d_out.Trivia, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location>;
8
- export declare const Delimited_Text: p_pi.Production_With_Parameter<string, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location, {
9
- 'allow newlines': boolean;
10
- 'end character': number;
11
- 'start character': d_in.Annotated_Character;
12
- }>;
13
- export declare const Tokenizer_Result: p_pi.Production_With_Parameter<d_out.Tokenizer_Result, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location, {
14
- 'end info': d_location.Location;
15
- }>;