pareto-json 0.3.91 → 0.3.92

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 (19) hide show
  1. package/dist/api.js +4 -4
  2. package/dist/interface/api.d.ts +2 -2
  3. package/dist/interface/api.js +2 -2
  4. package/dist/modules/deserialization/implementation/deserializers/primitives.d.ts +2 -0
  5. package/dist/modules/deserialization/implementation/deserializers/primitives.js +83 -0
  6. package/dist/modules/deserialization/implementation/refiners/{model → deserialized_json}/astn_parse_tree.d.ts +1 -1
  7. package/dist/modules/deserialization/implementation/refiners/deserialized_json/astn_parse_tree.js +93 -0
  8. package/dist/modules/deserialization/implementation/refiners/{model → deserialized_json}/list_of_characters.d.ts +1 -1
  9. package/dist/modules/deserialization/implementation/refiners/deserialized_json/list_of_characters.js +5 -0
  10. package/dist/modules/deserialization/schemas/deserialized_json.js +2 -0
  11. package/dist/modules/unmarshalling/implemenation/refiners/unmarshalled_json_value/json_with_parse_info.d.ts +1 -1
  12. package/dist/modules/unmarshalling/schemas/unmarshalled_json_value.d.ts +1 -1
  13. package/package.json +1 -1
  14. package/dist/modules/deserialization/implementation/refiners/model/astn_parse_tree.js +0 -93
  15. package/dist/modules/deserialization/implementation/refiners/model/list_of_characters.js +0 -5
  16. package/dist/modules/deserialization/implementation/refiners/primitives/list_of_characters.d.ts +0 -3
  17. package/dist/modules/deserialization/implementation/refiners/primitives/list_of_characters.js +0 -83
  18. package/dist/modules/deserialization/schemas/model.js +0 -2
  19. /package/dist/modules/deserialization/schemas/{model.d.ts → deserialized_json.d.ts} +0 -0
package/dist/api.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as interface_ from "./interface/api.js";
2
- import * as r_json_with_parse_info_from_list_of_characters from "./modules/deserialization/implementation/refiners/model/list_of_characters.js";
2
+ import * as r_deserialized_json_from_list_of_characters from "./modules/deserialization/implementation/refiners/deserialized_json/list_of_characters.js";
3
3
  import * as ser_json_without_guaranteed_unique_keys_to_list_of_characters from "./modules/serialization/implementation/transformers/without_guaranteed_unique_keys/paragraph.js";
4
4
  import * as ser_json_with_guaranteed_unique_keys_to_list_of_characters from "./modules/serialization/implementation/transformers/with_guaranteed_unique_keys/paragraph.js";
5
5
  export const api = {
@@ -17,11 +17,11 @@ export const api = {
17
17
  }
18
18
  },
19
19
  'refiners': {
20
- 'json with parse info': {
20
+ 'deserialized json': {
21
21
  'list of characters': {
22
- 'Value': r_json_with_parse_info_from_list_of_characters.Value,
22
+ 'Value': r_deserialized_json_from_list_of_characters.Value,
23
23
  }
24
24
  }
25
25
  }
26
26
  };
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssVUFBVSxNQUFNLG9CQUFvQixDQUFBO0FBRWhELE9BQU8sS0FBSyw4Q0FBOEMsTUFBTSwrRUFBK0UsQ0FBQTtBQUMvSSxPQUFPLEtBQUssNkRBQTZELE1BQU0saUdBQWlHLENBQUE7QUFDaEwsT0FBTyxLQUFLLDBEQUEwRCxNQUFNLDhGQUE4RixDQUFBO0FBRTFLLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBbUI7SUFDL0IsYUFBYSxFQUFFLEVBQ2Q7SUFDRCxjQUFjLEVBQUU7UUFFWiwwQkFBMEIsRUFBRTtZQUN4QixXQUFXLEVBQUU7Z0JBRVQsVUFBVSxFQUFFLDZEQUE2RCxDQUFDLFFBQVE7YUFDckY7U0FDSjtRQUNELHVCQUF1QixFQUFFO1lBQ3JCLFdBQVcsRUFBRTtnQkFFVCxVQUFVLEVBQUUsMERBQTBELENBQUMsUUFBUTthQUNsRjtTQUNKO0tBRUo7SUFDRCxVQUFVLEVBQUU7UUFDUixzQkFBc0IsRUFBRTtZQUNwQixvQkFBb0IsRUFBRTtnQkFFbEIsT0FBTyxFQUFFLDhDQUE4QyxDQUFDLEtBQUs7YUFDaEU7U0FDSjtLQUNKO0NBQ0osQ0FBQSJ9
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssVUFBVSxNQUFNLG9CQUFvQixDQUFBO0FBRWhELE9BQU8sS0FBSywyQ0FBMkMsTUFBTSwyRkFBMkYsQ0FBQTtBQUN4SixPQUFPLEtBQUssNkRBQTZELE1BQU0saUdBQWlHLENBQUE7QUFDaEwsT0FBTyxLQUFLLDBEQUEwRCxNQUFNLDhGQUE4RixDQUFBO0FBRTFLLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBbUI7SUFDL0IsYUFBYSxFQUFFLEVBQ2Q7SUFDRCxjQUFjLEVBQUU7UUFFWiwwQkFBMEIsRUFBRTtZQUN4QixXQUFXLEVBQUU7Z0JBRVQsVUFBVSxFQUFFLDZEQUE2RCxDQUFDLFFBQVE7YUFDckY7U0FDSjtRQUNELHVCQUF1QixFQUFFO1lBQ3JCLFdBQVcsRUFBRTtnQkFFVCxVQUFVLEVBQUUsMERBQTBELENBQUMsUUFBUTthQUNsRjtTQUNKO0tBRUo7SUFDRCxVQUFVLEVBQUU7UUFDUixtQkFBbUIsRUFBRTtZQUNqQixvQkFBb0IsRUFBRTtnQkFFbEIsT0FBTyxFQUFFLDJDQUEyQyxDQUFDLEtBQUs7YUFDN0Q7U0FDSjtLQUNKO0NBQ0osQ0FBQSJ9
@@ -3,7 +3,7 @@ import * as p_r from 'pareto-core/interface/refiner';
3
3
  import * as s_deserialize_json from "../modules/deserialization/schemas/deserialization.js";
4
4
  import * as s_list_of_characters from "../modules/deserialization/schemas/list_of_characters.js";
5
5
  import * as s_json_with_guaranteed_unique_keys from "../modules/serialization/schemas/with_guaranteed_unique_keys.js";
6
- import * as s_json_with_parse_info from "../modules/deserialization/schemas/model.js";
6
+ import * as s_json_with_parse_info from "../modules/deserialization/schemas/deserialized_json.js";
7
7
  import * as s_json_without_guaranteed_unique_keys from "../modules/serialization/schemas/without_guaranteed_unique_keys.js";
8
8
  import type * as s_paragraph from "../modules/serialization/schemas/paragraph.js";
9
9
  export type API = {
@@ -21,7 +21,7 @@ export type API = {
21
21
  };
22
22
  };
23
23
  'refiners': {
24
- 'json with parse info': {
24
+ 'deserialized json': {
25
25
  'list of characters': {
26
26
  'Value': p_r.Refiner_With_Parameter<s_json_with_parse_info.Value, s_deserialize_json.Error, s_list_of_characters.List_Of_Characters, s_deserialize_json.Parameters>;
27
27
  };
@@ -5,6 +5,6 @@ import * as p_s from 'pareto-core/implementation/serializer';
5
5
  import * as s_deserialize_json from "../modules/deserialization/schemas/deserialization.js";
6
6
  import * as s_list_of_characters from "../modules/deserialization/schemas/list_of_characters.js";
7
7
  import * as s_json_with_guaranteed_unique_keys from "../modules/serialization/schemas/with_guaranteed_unique_keys.js";
8
- import * as s_json_with_parse_info from "../modules/deserialization/schemas/model.js";
8
+ import * as s_json_with_parse_info from "../modules/deserialization/schemas/deserialized_json.js";
9
9
  import * as s_json_without_guaranteed_unique_keys from "../modules/serialization/schemas/without_guaranteed_unique_keys.js";
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVyZmFjZS9hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEdBQUcsTUFBTSxtQ0FBbUMsQ0FBQTtBQUN4RCxPQUFPLEtBQUssR0FBRyxNQUFNLCtCQUErQixDQUFBO0FBQ3BELE9BQU8sS0FBSyxHQUFHLE1BQU0sdUNBQXVDLENBQUE7QUFFNUQsU0FBUztBQUNULE9BQU8sS0FBSyxrQkFBa0IsTUFBTSx1REFBdUQsQ0FBQTtBQUMzRixPQUFPLEtBQUssb0JBQW9CLE1BQU0sMERBQTBELENBQUE7QUFDaEcsT0FBTyxLQUFLLGtDQUFrQyxNQUFNLGlFQUFpRSxDQUFBO0FBQ3JILE9BQU8sS0FBSyxzQkFBc0IsTUFBTSw2Q0FBNkMsQ0FBQTtBQUNyRixPQUFPLEtBQUsscUNBQXFDLE1BQU0sb0VBQW9FLENBQUEifQ==
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVyZmFjZS9hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEdBQUcsTUFBTSxtQ0FBbUMsQ0FBQTtBQUN4RCxPQUFPLEtBQUssR0FBRyxNQUFNLCtCQUErQixDQUFBO0FBQ3BELE9BQU8sS0FBSyxHQUFHLE1BQU0sdUNBQXVDLENBQUE7QUFFNUQsU0FBUztBQUNULE9BQU8sS0FBSyxrQkFBa0IsTUFBTSx1REFBdUQsQ0FBQTtBQUMzRixPQUFPLEtBQUssb0JBQW9CLE1BQU0sMERBQTBELENBQUE7QUFDaEcsT0FBTyxLQUFLLGtDQUFrQyxNQUFNLGlFQUFpRSxDQUFBO0FBQ3JILE9BQU8sS0FBSyxzQkFBc0IsTUFBTSx5REFBeUQsQ0FBQTtBQUNqRyxPQUFPLEtBQUsscUNBQXFDLE1BQU0sb0VBQW9FLENBQUEifQ==
@@ -0,0 +1,2 @@
1
+ import * as p_ from 'pareto-core/implementation/refiner';
2
+ export declare const Number: p_.Refiner<number, string, string>;
@@ -0,0 +1,83 @@
1
+ import * as p_ from 'pareto-core/implementation/refiner';
2
+ import * as p_t from 'pareto-core/implementation/transformer';
3
+ import p_list_from_text from 'pareto-core/implementation/refiner/specials/list_from_text';
4
+ export const Number = ($, abort) => {
5
+ const characters = p_list_from_text($, ($) => $);
6
+ let result = 0;
7
+ let isNegative = false;
8
+ let startIndex = 0;
9
+ let decimalPart = 0;
10
+ let decimalDivisor = 1;
11
+ let exponent = 0;
12
+ let isExponentNegative = false;
13
+ let hasDecimal = false;
14
+ let inExponent = false;
15
+ const get_character_at = (index) => p_t.from.optional(characters.__deprecated_get_possible_item_at(index)).decide(($) => $, () => abort("index out of bounds"));
16
+ // Check for negative sign
17
+ if (p_t.from.list(characters).amount_of_items() > 0 && get_character_at(0) === 45) { // '-'
18
+ isNegative = true;
19
+ startIndex = 1;
20
+ }
21
+ // Parse the number
22
+ for (let i = startIndex; i < p_t.from.list(characters).amount_of_items(); i++) {
23
+ const charCode = get_character_at(i);
24
+ if (charCode === 46) { // '.'
25
+ if (hasDecimal || inExponent) {
26
+ abort("Invalid decimal format: multiple decimal points or decimal in exponent");
27
+ }
28
+ hasDecimal = true;
29
+ }
30
+ else if (charCode === 101 || charCode === 69) { // 'e' or 'E'
31
+ if (inExponent) {
32
+ abort("Invalid decimal format: multiple exponent markers");
33
+ }
34
+ inExponent = true;
35
+ // Check for exponent sign
36
+ if (i + 1 < p_t.from.list(characters).amount_of_items()) {
37
+ const nextChar = get_character_at(i + 1);
38
+ if (nextChar === 45) { // '-'
39
+ isExponentNegative = true;
40
+ i++;
41
+ }
42
+ else if (nextChar === 43) { // '+'
43
+ i++;
44
+ }
45
+ }
46
+ }
47
+ else if (charCode >= 48 && charCode <= 57) { // '0'-'9'
48
+ const digit = charCode - 48;
49
+ if (inExponent) {
50
+ exponent = exponent * 10 + digit;
51
+ }
52
+ else if (hasDecimal) {
53
+ decimalPart = decimalPart * 10 + digit;
54
+ decimalDivisor = decimalDivisor * 10;
55
+ }
56
+ else {
57
+ result = result * 10 + digit;
58
+ }
59
+ }
60
+ else {
61
+ abort("Invalid character in decimal string");
62
+ }
63
+ }
64
+ // Combine integer and decimal parts
65
+ let finalResult = result + (decimalPart / decimalDivisor);
66
+ // Apply exponent
67
+ if (isExponentNegative) {
68
+ exponent = -exponent;
69
+ }
70
+ // Apply exponent by multiplying/dividing by 10
71
+ if (exponent > 0) {
72
+ for (let i = 0; i < exponent; i++) {
73
+ finalResult = finalResult * 10;
74
+ }
75
+ }
76
+ else if (exponent < 0) {
77
+ for (let i = 0; i < -exponent; i++) {
78
+ finalResult = finalResult / 10;
79
+ }
80
+ }
81
+ return isNegative ? -finalResult : finalResult;
82
+ };
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL2Rlc2VyaWFsaXphdGlvbi9pbXBsZW1lbnRhdGlvbi9kZXNlcmlhbGl6ZXJzL3ByaW1pdGl2ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUN4RCxPQUFPLEtBQUssR0FBRyxNQUFNLHdDQUF3QyxDQUFBO0FBQzdELE9BQU8sZ0JBQWdCLE1BQU0sNERBQTRELENBQUE7QUFFekYsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUlmLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFO0lBQ2IsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNoRCxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUE7SUFDZCxJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUE7SUFDdEIsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFBO0lBQ2xCLElBQUksV0FBVyxHQUFHLENBQUMsQ0FBQTtJQUNuQixJQUFJLGNBQWMsR0FBRyxDQUFDLENBQUE7SUFDdEIsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFBO0lBQ2hCLElBQUksa0JBQWtCLEdBQUcsS0FBSyxDQUFBO0lBQzlCLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQTtJQUN0QixJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUE7SUFFdEIsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQWEsRUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLGlDQUFpQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUM3SCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUNSLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxx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
@@ -1,5 +1,5 @@
1
1
  import type * as p_i from 'pareto-core/interface/refiner';
2
2
  import type * as s_in from "../../../schemas/parse_tree.js";
3
- import type * as s_out from "../../../schemas/model.js";
3
+ import type * as s_out from "../../../schemas/deserialized_json.js";
4
4
  import type * as s_error from "../../../schemas/deserialization.js";
5
5
  export declare const Value: p_i.Refiner<s_out.Value, s_error.JSONify_Error, s_in.Value>;
@@ -0,0 +1,93 @@
1
+ import * as p_ from 'pareto-core/implementation/refiner';
2
+ import p_list_from_text from 'pareto-core/implementation/refiner/specials/list_from_text';
3
+ //dependencies
4
+ import * as api_astn_core from "astn-core/api";
5
+ import * as deser_primitives from "../../deserializers/primitives.js";
6
+ export const Value = ($, abort) => {
7
+ const range = api_astn_core.api.deserialization.transformers['parse tree']['full value range'].Value($);
8
+ return {
9
+ 'range': range,
10
+ 'type': p_.from.state($.type).decide(($) => {
11
+ switch ($[0]) {
12
+ case 'concrete': return p_.option($, ($) => p_.from.state($).decide(($) => {
13
+ switch ($[0]) {
14
+ case 'dictionary': return p_.option($, ($) => ['object', {
15
+ 'dictionary': $,
16
+ 'entries': p_.from.list($.entries).map(($) => ({
17
+ 'key': $.id,
18
+ 'value': p_.from.optional($.assignment).decide(($) => p_.from.optional($.value).decide(($) => Value($, abort), () => abort({
19
+ 'range': range,
20
+ 'type': ['missing property', null]
21
+ })), () => abort({
22
+ 'range': range,
23
+ 'type': ['missing property', null]
24
+ })),
25
+ }))
26
+ }]);
27
+ case 'group': return p_.option($, ($) => abort({
28
+ 'range': range,
29
+ 'type': ['group', null]
30
+ }));
31
+ case 'list': return p_.option($, ($) => ['array', {
32
+ 'items': p_.from.list($.items).map(($) => Value($.value, abort))
33
+ }]);
34
+ case 'nothing': return p_.option($, ($) => abort({
35
+ 'range': range,
36
+ 'type': ['nothing', null]
37
+ }));
38
+ case 'optional': return p_.option($, ($) => abort({
39
+ 'range': range,
40
+ 'type': ['optional', null]
41
+ }));
42
+ case 'state': return p_.option($, ($) => abort({
43
+ 'range': range,
44
+ 'type': ['state', null]
45
+ }));
46
+ case 'text': return p_.option($, ($) => {
47
+ const x = $;
48
+ return p_.from.state($.token.type).decide(($) => {
49
+ switch ($[0]) {
50
+ case 'quoted': return p_.option($, ($) => ['string', x]);
51
+ case 'apostrophed': return p_.option($, ($) => abort({
52
+ 'range': range,
53
+ 'type': ['apostrophed text', null]
54
+ }));
55
+ case 'undelimited': return p_.option($, ($) => {
56
+ return x.token.value === "null"
57
+ ? ['null', x]
58
+ : x.token.value === "true"
59
+ ? ['boolean', { 'text': x, 'value': true }]
60
+ : x.token.value === "false"
61
+ ? ['boolean', { 'text': x, 'value': false }]
62
+ : ['number', {
63
+ 'text': x, 'value': deser_primitives.Number(x.token.value, ($) => abort({
64
+ 'range': range,
65
+ 'type': ['undelimited text', null]
66
+ }))
67
+ }];
68
+ });
69
+ case 'backticked': return p_.option($, ($) => abort({
70
+ 'range': range,
71
+ 'type': ['backticked text', null]
72
+ }));
73
+ default: return p_.exhaustive($[0]);
74
+ }
75
+ });
76
+ });
77
+ default: return p_.exhaustive($[0]);
78
+ }
79
+ }));
80
+ case 'include': return p_.option($, ($) => abort({
81
+ 'range': range,
82
+ 'type': ['include', null]
83
+ }));
84
+ case 'missing': return p_.option($, ($) => abort({
85
+ 'range': range,
86
+ 'type': ['missing data', null]
87
+ }));
88
+ default: return p_.exhaustive($[0]);
89
+ }
90
+ })
91
+ };
92
+ };
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN0bl9wYXJzZV90cmVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvZGVzZXJpYWxpemF0aW9uL2ltcGxlbWVudGF0aW9uL3JlZmluZXJzL2Rlc2VyaWFsaXplZF9qc29uL2FzdG5fcGFyc2VfdHJlZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBRXhELE9BQU8sZ0JBQWdCLE1BQU0sNERBQTRELENBQUE7QUFPekYsY0FBYztBQUNkLE9BQU8sS0FBSyxhQUFhLE1BQU0sZUFBZSxDQUFBO0FBQzlDLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSxtQ0FBbUMsQ0FBQTtBQUVyRSxNQUFNLENBQUMsTUFBTSxLQUFLLEdBSWQsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUU7SUFDYixNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDdkcsT0FBTztRQUNILE9BQU8sRUFBRSxLQUFLO1FBQ2QsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQ2hDLENBQUMsQ0FBQyxFQUFvQixFQUFFO1lBQ3BCLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ1gsS0FBSyxVQUFVLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQy9ELENBQUMsQ0FBQyxFQUFvQixFQUFFO29CQUNwQixRQUFRLENBQUMsQ0FBQyxDQUFD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
@@ -1,5 +1,5 @@
1
1
  import type * as p_ from 'pareto-core/implementation/refiner';
2
- import type * as s_out from "../../../schemas/model.js";
2
+ import type * as s_out from "../../../schemas/deserialized_json.js";
3
3
  import type * as s_error from "../../../schemas/deserialization.js";
4
4
  import type * as s_parameters from "../../../schemas/astn_parse_tree_deserialization.js";
5
5
  import type * as s_in from "../../../schemas/list_of_characters.js";
@@ -0,0 +1,5 @@
1
+ //dependencies
2
+ import * as r_from_parse_tree from "./astn_parse_tree.js";
3
+ import * as api_astn_core from "astn-core/api";
4
+ export const Value = ($, abort, $p) => r_from_parse_tree.Value(api_astn_core.api.deserialization.refiners['parse tree']['list of characters'].Document($, ($) => abort(['deserialize astn parse tree', $]), $p).content, ($) => abort(['jsonify', $]));
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvZGVzZXJpYWxpemF0aW9uL2ltcGxlbWVudGF0aW9uL3JlZmluZXJzL2Rlc2VyaWFsaXplZF9qc29uL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsY0FBYztBQUNkLE9BQU8sS0FBSyxpQkFBaUIsTUFBTSxzQkFBc0IsQ0FBQTtBQUN6RCxPQUFPLEtBQUssYUFBYSxNQUFNLGVBQWUsQ0FBQTtBQUU5QyxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQXVCLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FDOUUsYUFBYSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsUUFBUSxDQUNuRixDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLDZCQUE2QixFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQ2hELEVBQUUsQ0FDTCxDQUFDLE9BQU8sRUFDVCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQy9CLENBQUEifQ==
@@ -0,0 +1,2 @@
1
+ import * as p_ from 'pareto-core/interface/schema';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzZXJpYWxpemVkX2pzb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9kZXNlcmlhbGl6YXRpb24vc2NoZW1hcy9kZXNlcmlhbGl6ZWRfanNvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLDhCQUE4QixDQUFBIn0=
@@ -2,7 +2,7 @@ import * as p_ from 'pareto-core/implementation/refiner';
2
2
  import type * as p_i from 'pareto-core/interface/refiner';
3
3
  import type * as p_di from 'pareto-core/interface/schema';
4
4
  import type * as s_out from "../../../schemas/unmarshalled_json_value.js";
5
- import type * as s_in from "../../../../deserialization/schemas/model.js";
5
+ import type * as s_in from "../../../../deserialization/schemas/deserialized_json.js";
6
6
  import type * as s_error from "../../../schemas/json_value_unmarshalling.js";
7
7
  export declare const Array: p_i.Refiner<s_out.Array, s_error.Error, s_in.Value>;
8
8
  export declare const Boolean: p_i.Refiner<s_out.Boolean, s_error.Error, s_in.Value>;
@@ -1,5 +1,5 @@
1
1
  import * as p_ from 'pareto-core/interface/schema';
2
- import type * as s_json_with_parse_info from "../../deserialization/schemas/model.js";
2
+ import type * as s_json_with_parse_info from "../../deserialization/schemas/deserialized_json.js";
3
3
  import type * as s_location from "./location.js";
4
4
  export type Object = s_json_with_parse_info.Object;
5
5
  export type Object_With_Unique_Keys = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pareto-json",
3
- "version": "0.3.91",
3
+ "version": "0.3.92",
4
4
  "author": "Corno",
5
5
  "license": "Apache-2.0",
6
6
  "description": "A TypeScript library for building JSON values in Pareto-style which can then be serialized",
@@ -1,93 +0,0 @@
1
- import * as p_ from 'pareto-core/implementation/refiner';
2
- import p_list_from_text from 'pareto-core/implementation/refiner/specials/list_from_text';
3
- //dependencies
4
- import * as api_astn_core from "astn-core/api";
5
- import * as r_primitives_from_loc from "../../refiners/primitives/list_of_characters.js";
6
- export const Value = ($, abort) => {
7
- const range = api_astn_core.api.deserialization.transformers['parse tree']['full value range'].Value($);
8
- return {
9
- 'range': range,
10
- 'type': p_.from.state($.type).decide(($) => {
11
- switch ($[0]) {
12
- case 'concrete': return p_.option($, ($) => p_.from.state($).decide(($) => {
13
- switch ($[0]) {
14
- case 'dictionary': return p_.option($, ($) => ['object', {
15
- 'dictionary': $,
16
- 'entries': p_.from.list($.entries).map(($) => ({
17
- 'key': $.id,
18
- 'value': p_.from.optional($.assignment).decide(($) => p_.from.optional($.value).decide(($) => Value($, abort), () => abort({
19
- 'range': range,
20
- 'type': ['missing property', null]
21
- })), () => abort({
22
- 'range': range,
23
- 'type': ['missing property', null]
24
- })),
25
- }))
26
- }]);
27
- case 'group': return p_.option($, ($) => abort({
28
- 'range': range,
29
- 'type': ['group', null]
30
- }));
31
- case 'list': return p_.option($, ($) => ['array', {
32
- 'items': p_.from.list($.items).map(($) => Value($.value, abort))
33
- }]);
34
- case 'nothing': return p_.option($, ($) => abort({
35
- 'range': range,
36
- 'type': ['nothing', null]
37
- }));
38
- case 'optional': return p_.option($, ($) => abort({
39
- 'range': range,
40
- 'type': ['optional', null]
41
- }));
42
- case 'state': return p_.option($, ($) => abort({
43
- 'range': range,
44
- 'type': ['state', null]
45
- }));
46
- case 'text': return p_.option($, ($) => {
47
- const x = $;
48
- return p_.from.state($.token.type).decide(($) => {
49
- switch ($[0]) {
50
- case 'quoted': return p_.option($, ($) => ['string', x]);
51
- case 'apostrophed': return p_.option($, ($) => abort({
52
- 'range': range,
53
- 'type': ['apostrophed text', null]
54
- }));
55
- case 'undelimited': return p_.option($, ($) => {
56
- return x.token.value === "null"
57
- ? ['null', x]
58
- : x.token.value === "true"
59
- ? ['boolean', { 'text': x, 'value': true }]
60
- : x.token.value === "false"
61
- ? ['boolean', { 'text': x, 'value': false }]
62
- : ['number', {
63
- 'text': x, 'value': r_primitives_from_loc.Number(p_list_from_text(x.token.value, ($) => $), ($) => abort({
64
- 'range': range,
65
- 'type': ['undelimited text', null]
66
- }))
67
- }];
68
- });
69
- case 'backticked': return p_.option($, ($) => abort({
70
- 'range': range,
71
- 'type': ['backticked text', null]
72
- }));
73
- default: return p_.exhaustive($[0]);
74
- }
75
- });
76
- });
77
- default: return p_.exhaustive($[0]);
78
- }
79
- }));
80
- case 'include': return p_.option($, ($) => abort({
81
- 'range': range,
82
- 'type': ['include', null]
83
- }));
84
- case 'missing': return p_.option($, ($) => abort({
85
- 'range': range,
86
- 'type': ['missing data', null]
87
- }));
88
- default: return p_.exhaustive($[0]);
89
- }
90
- })
91
- };
92
- };
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN0bl9wYXJzZV90cmVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvZGVzZXJpYWxpemF0aW9uL2ltcGxlbWVudGF0aW9uL3JlZmluZXJzL21vZGVsL2FzdG5fcGFyc2VfdHJlZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBRXhELE9BQU8sZ0JBQWdCLE1BQU0sNERBQTRELENBQUE7QUFPekYsY0FBYztBQUNkLE9BQU8sS0FBSyxhQUFhLE1BQU0sZUFBZSxDQUFBO0FBQzlDLE9BQU8sS0FBSyxxQkFBcUIsTUFBTSxpREFBaUQsQ0FBQTtBQUV4RixNQUFNLENBQUMsTUFBTSxLQUFLLEdBSWQsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUU7SUFDYixNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDdkcsT0FBTztRQUNILE9BQU8sRUFBRSxLQUFLO1FBQ2QsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQ2hDLENBQUMsQ0FBQyxFQUFvQixFQUFFO1lBQ3BCLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ1gsS0FBSyxVQUFVLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQy9ELENBQUMsQ0FBQyxFQUFvQixFQUFFO29CQUNwQixRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxD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
@@ -1,5 +0,0 @@
1
- //dependencies
2
- import * as r_from_parse_tree from "./astn_parse_tree.js";
3
- import * as api_astn_core from "astn-core/api";
4
- export const Value = ($, abort, $p) => r_from_parse_tree.Value(api_astn_core.api.deserialization.refiners['parse tree']['list of characters'].Document($, ($) => abort(['deserialize astn parse tree', $]), $p).content, ($) => abort(['jsonify', $]));
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvZGVzZXJpYWxpemF0aW9uL2ltcGxlbWVudGF0aW9uL3JlZmluZXJzL21vZGVsL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsY0FBYztBQUNkLE9BQU8sS0FBSyxpQkFBaUIsTUFBTSxzQkFBc0IsQ0FBQTtBQUN6RCxPQUFPLEtBQUssYUFBYSxNQUFNLGVBQWUsQ0FBQTtBQUU5QyxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQXVCLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FDOUUsYUFBYSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsUUFBUSxDQUNuRixDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLDZCQUE2QixFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQ2hELEVBQUUsQ0FDTCxDQUFDLE9BQU8sRUFDVCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQy9CLENBQUEifQ==
@@ -1,3 +0,0 @@
1
- import * as p_ from 'pareto-core/implementation/refiner';
2
- import * as s_list_of_characters from "../../../schemas/list_of_characters.js";
3
- export declare const Number: p_.Refiner<number, string, s_list_of_characters.List_Of_Characters>;
@@ -1,83 +0,0 @@
1
- import * as p_ from 'pareto-core/implementation/refiner';
2
- import * as p_t from 'pareto-core/implementation/transformer';
3
- import * as s_list_of_characters from "../../../schemas/list_of_characters.js";
4
- export const Number = ($, abort) => {
5
- const characters = $;
6
- let result = 0;
7
- let isNegative = false;
8
- let startIndex = 0;
9
- let decimalPart = 0;
10
- let decimalDivisor = 1;
11
- let exponent = 0;
12
- let isExponentNegative = false;
13
- let hasDecimal = false;
14
- let inExponent = false;
15
- const get_character_at = (index) => p_t.from.optional(characters.__deprecated_get_possible_item_at(index)).decide(($) => $, () => abort("index out of bounds"));
16
- // Check for negative sign
17
- if (p_t.from.list(characters).amount_of_items() > 0 && get_character_at(0) === 45) { // '-'
18
- isNegative = true;
19
- startIndex = 1;
20
- }
21
- // Parse the number
22
- for (let i = startIndex; i < p_t.from.list(characters).amount_of_items(); i++) {
23
- const charCode = get_character_at(i);
24
- if (charCode === 46) { // '.'
25
- if (hasDecimal || inExponent) {
26
- abort("Invalid decimal format: multiple decimal points or decimal in exponent");
27
- }
28
- hasDecimal = true;
29
- }
30
- else if (charCode === 101 || charCode === 69) { // 'e' or 'E'
31
- if (inExponent) {
32
- abort("Invalid decimal format: multiple exponent markers");
33
- }
34
- inExponent = true;
35
- // Check for exponent sign
36
- if (i + 1 < p_t.from.list(characters).amount_of_items()) {
37
- const nextChar = get_character_at(i + 1);
38
- if (nextChar === 45) { // '-'
39
- isExponentNegative = true;
40
- i++;
41
- }
42
- else if (nextChar === 43) { // '+'
43
- i++;
44
- }
45
- }
46
- }
47
- else if (charCode >= 48 && charCode <= 57) { // '0'-'9'
48
- const digit = charCode - 48;
49
- if (inExponent) {
50
- exponent = exponent * 10 + digit;
51
- }
52
- else if (hasDecimal) {
53
- decimalPart = decimalPart * 10 + digit;
54
- decimalDivisor = decimalDivisor * 10;
55
- }
56
- else {
57
- result = result * 10 + digit;
58
- }
59
- }
60
- else {
61
- abort("Invalid character in decimal string");
62
- }
63
- }
64
- // Combine integer and decimal parts
65
- let finalResult = result + (decimalPart / decimalDivisor);
66
- // Apply exponent
67
- if (isExponentNegative) {
68
- exponent = -exponent;
69
- }
70
- // Apply exponent by multiplying/dividing by 10
71
- if (exponent > 0) {
72
- for (let i = 0; i < exponent; i++) {
73
- finalResult = finalResult * 10;
74
- }
75
- }
76
- else if (exponent < 0) {
77
- for (let i = 0; i < -exponent; i++) {
78
- finalResult = finalResult / 10;
79
- }
80
- }
81
- return isNegative ? -finalResult : finalResult;
82
- };
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvZGVzZXJpYWxpemF0aW9uL2ltcGxlbWVudGF0aW9uL3JlZmluZXJzL3ByaW1pdGl2ZXMvbGlzdF9vZl9jaGFyYWN0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDeEQsT0FBTyxLQUFLLEdBQUcsTUFBTSx3Q0FBd0MsQ0FBQTtBQUU3RCxPQUFPLEtBQUssb0JBQW9CLE1BQU0sd0NBQXdDLENBQUE7QUFFOUUsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUlmLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFO0lBQ2IsTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFBO0lBQ3BCLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQTtJQUNkLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQTtJQUN0QixJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUE7SUFDbEIsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFBO0lBQ25CLElBQUksY0FBYyxHQUFHLENBQUMsQ0FBQTtJQUN0QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUE7SUFDaEIsSUFBSSxrQkFBa0IsR0FBRyxLQUFLLENBQUE7SUFDOUIsSUFBSSxVQUFVLEdBQUcsS0FBSyxDQUFBO0lBQ3RCLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQTtJQUV0QixNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBYSxFQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsaUNBQWlDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQzdILENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQ1IsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQ3JDLENBQUE7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
@@ -1,2 +0,0 @@
1
- import * as p_ from 'pareto-core/interface/schema';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9kZXNlcmlhbGl6YXRpb24vc2NoZW1hcy9tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLDhCQUE4QixDQUFBIn0=