astn-core 0.5.128 → 0.5.129
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.
- package/dist/implementation/{manual/refiners → refiners}/annotated_characters/text.d.ts +1 -1
- package/dist/implementation/refiners/annotated_characters/text.js +68 -0
- package/dist/implementation/refiners/parse_tree/list_of_characters.d.ts +2 -0
- package/dist/implementation/refiners/parse_tree/list_of_characters.js +22 -0
- package/dist/implementation/refiners/parse_tree/text.d.ts +2 -0
- package/dist/implementation/refiners/parse_tree/text.js +7 -0
- package/dist/implementation/{manual/refiners → refiners}/parse_tree/tokenizer_result.d.ts +4 -4
- package/dist/implementation/refiners/parse_tree/tokenizer_result.js +211 -0
- package/dist/implementation/{manual/refiners → refiners}/token/annotated_character.d.ts +4 -4
- package/dist/implementation/{manual/refiners → refiners}/token/annotated_character.js +1 -1
- package/dist/implementation/{manual/refiners → refiners}/unmarshalled/parse_tree.d.ts +1 -1
- package/dist/implementation/refiners/unmarshalled/parse_tree.js +253 -0
- package/dist/implementation/transformers/deserialize/location.d.ts +2 -0
- package/dist/implementation/transformers/deserialize/location.js +12 -0
- package/dist/implementation/transformers/deserialize/prose.d.ts +2 -0
- package/dist/implementation/transformers/deserialize/prose.js +12 -0
- package/dist/implementation/transformers/deserialize_parse_tree/location.d.ts +2 -0
- package/dist/implementation/transformers/deserialize_parse_tree/location.js +20 -0
- package/dist/implementation/transformers/deserialize_parse_tree/prose.d.ts +2 -0
- package/dist/implementation/transformers/deserialize_parse_tree/prose.js +59 -0
- package/dist/implementation/{manual/transformers → transformers}/location/prose.d.ts +1 -1
- package/dist/implementation/transformers/location/prose.js +31 -0
- package/dist/implementation/{manual/transformers → transformers}/parse_tree/full_value_range.d.ts +1 -1
- package/dist/implementation/transformers/parse_tree/full_value_range.js +70 -0
- package/dist/implementation/{manual/transformers → transformers}/parse_tree/start_token_range.d.ts +1 -1
- package/dist/implementation/transformers/parse_tree/start_token_range.js +34 -0
- package/dist/implementation/{manual/transformers → transformers}/primitives/text.d.ts +1 -1
- package/dist/implementation/{manual/transformers → transformers}/primitives/text.js +1 -1
- package/dist/implementation/transformers/sealed_target/deprecated_list_of_characters.d.ts +3 -0
- package/dist/implementation/transformers/sealed_target/deprecated_list_of_characters.js +6 -0
- package/dist/implementation/{manual/transformers → transformers}/sealed_target/prose.d.ts +1 -1
- package/dist/implementation/transformers/sealed_target/prose.js +89 -0
- package/dist/implementation/{manual/transformers → transformers}/sealed_target/text.d.ts +1 -1
- package/dist/implementation/transformers/sealed_target/text.js +6 -0
- package/dist/implementation/transformers/unmarshall/location.d.ts +2 -0
- package/dist/implementation/transformers/unmarshall/location.js +2 -0
- package/dist/implementation/transformers/unmarshall/prose.d.ts +2 -0
- package/dist/implementation/transformers/unmarshall/prose.js +66 -0
- package/package.json +1 -1
- package/dist/implementation/manual/refiners/annotated_characters/text.js +0 -68
- package/dist/implementation/manual/refiners/parse_tree/list_of_characters.d.ts +0 -2
- package/dist/implementation/manual/refiners/parse_tree/list_of_characters.js +0 -22
- package/dist/implementation/manual/refiners/parse_tree/text.d.ts +0 -2
- package/dist/implementation/manual/refiners/parse_tree/text.js +0 -7
- package/dist/implementation/manual/refiners/parse_tree/tokenizer_result.js +0 -211
- package/dist/implementation/manual/refiners/unmarshalled/parse_tree.js +0 -253
- package/dist/implementation/manual/transformers/deserialize/location.d.ts +0 -2
- package/dist/implementation/manual/transformers/deserialize/location.js +0 -12
- package/dist/implementation/manual/transformers/deserialize/prose.d.ts +0 -2
- package/dist/implementation/manual/transformers/deserialize/prose.js +0 -12
- package/dist/implementation/manual/transformers/deserialize_parse_tree/location.d.ts +0 -2
- package/dist/implementation/manual/transformers/deserialize_parse_tree/location.js +0 -20
- package/dist/implementation/manual/transformers/deserialize_parse_tree/prose.d.ts +0 -2
- package/dist/implementation/manual/transformers/deserialize_parse_tree/prose.js +0 -59
- package/dist/implementation/manual/transformers/location/prose.js +0 -31
- package/dist/implementation/manual/transformers/parse_tree/full_value_range.js +0 -70
- package/dist/implementation/manual/transformers/parse_tree/start_token_range.js +0 -34
- package/dist/implementation/manual/transformers/sealed_target/deprecated_list_of_characters.d.ts +0 -3
- package/dist/implementation/manual/transformers/sealed_target/deprecated_list_of_characters.js +0 -6
- package/dist/implementation/manual/transformers/sealed_target/prose.js +0 -89
- package/dist/implementation/manual/transformers/sealed_target/text.js +0 -6
- package/dist/implementation/manual/transformers/unmarshall/location.d.ts +0 -2
- package/dist/implementation/manual/transformers/unmarshall/location.js +0 -2
- package/dist/implementation/manual/transformers/unmarshall/prose.d.ts +0 -2
- package/dist/implementation/manual/transformers/unmarshall/prose.js +0 -66
|
@@ -90,4 +90,4 @@ export const Backticked = ($, $p) => $p['add delimiters']
|
|
|
90
90
|
: Escaped($);
|
|
91
91
|
export const Undelimited = ($) => p_list_from_text($, ($) => $ //FIXME: this needs escaping of the operator characters and whitespace
|
|
92
92
|
);
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi90cmFuc2Zvcm1lcnMvcHJpbWl0aXZlcy90ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDNUQsT0FBTyxnQkFBZ0IsTUFBTSw0REFBNEQsQ0FBQTtBQVl6RixNQUFNLENBQUMsTUFBTSxPQUFPLEdBQXVCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FDM0UsQ0FBQyxFQUNELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1gsQ0FDQSxDQUFDLE9BQU8sQ0FDTCxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ0YsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUNSLHlHQUF5RztRQUN6RywyQkFBMkI7UUFDM0IsK0JBQStCO1FBQy9CLHFCQUFxQjtRQUNyQixxQkFBcUI7UUFDckIsU0FBUztRQUNULEtBQUssSUFBSSxFQUFFLFNBQVM7WUFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDbkIsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsSUFBSSxFQUFFLElBQUk7YUFDYixDQUFDLENBQUE7UUFDTixLQUFLLElBQUksRUFBRSxTQUFTO1lBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ25CLElBQUksRUFBRSxJQUFJO2dCQUNWLElBQUksRUFBRSxJQUFJO2FBQ2IsQ0FBQyxDQUFBO1FBQ04sS0FBSyxJQUFJLEVBQUUsaUJBQWlCO1lBQ3hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ25CLElBQUksRUFBRSxJQUFJO2dCQUNWLElBQUksRUFBRSxJQUFJO2FBQ2IsQ0FBQyxDQUFBO1FBQ04sS0FBSyxJQUFJLEVBQUUsaUJB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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
//dependencies
|
|
2
|
+
import * as t_to_prose from "./prose.js";
|
|
3
|
+
import * as t_fp_to_characters from "pareto-fountain-pen/implementation/transformers/prose/list_of_characters";
|
|
4
|
+
export const Document = ($, $p) => t_fp_to_characters.Paragraph(t_to_prose.Document($), $p);
|
|
5
|
+
export const Value = ($, $p) => t_fp_to_characters.Phrase(t_to_prose.Value($), $p);
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlZF9saXN0X29mX2NoYXJhY3RlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vdHJhbnNmb3JtZXJzL3NlYWxlZF90YXJnZXQvZGVwcmVjYXRlZF9saXN0X29mX2NoYXJhY3RlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsY0FBYztBQUNkLE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFBO0FBQ3hDLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSwwRUFBMEUsQ0FBQTtBQUc5RyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQXdCLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUNoRixVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUN0QixFQUFFLENBQ0wsQ0FBQTtBQUNELE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBcUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQ3ZFLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ25CLEVBQUUsQ0FDTCxDQUFBIn0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type * as interface_ from "
|
|
1
|
+
import type * as interface_ from "../../../declarations/transformers/sealed_target/prose.js";
|
|
2
2
|
export declare const Document: interface_.Document;
|
|
3
3
|
export declare const Value: interface_.Value;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import * as p_ from 'pareto-core/implementation/transformer';
|
|
2
|
+
//dependencies
|
|
3
|
+
import * as t_primitives_to_text from "../primitives/text.js";
|
|
4
|
+
//shorthands
|
|
5
|
+
import * as sh from "pareto-fountain-pen/shorthands/prose/deprecated";
|
|
6
|
+
export const Document = ($) => sh.pg.sentences([
|
|
7
|
+
sh.sentence([
|
|
8
|
+
Value($),
|
|
9
|
+
])
|
|
10
|
+
]);
|
|
11
|
+
export const Value = ($) => sh.ph.composed([
|
|
12
|
+
p_.from.state($).decide(($) => {
|
|
13
|
+
switch ($[0]) {
|
|
14
|
+
case 'dictionary': return p_.option($, ($) => sh.ph.composed([
|
|
15
|
+
sh.ph.literal("{"),
|
|
16
|
+
sh.ph.indent(sh.pg.sentences(p_.from.dictionary($).convert_to_list(($, id) => sh.sentence(p_.literal.list([
|
|
17
|
+
sh.ph.serialize(t_primitives_to_text.Apostrophed(id, {
|
|
18
|
+
'add delimiters': true
|
|
19
|
+
})),
|
|
20
|
+
sh.ph.literal(": "),
|
|
21
|
+
Value($),
|
|
22
|
+
]))))),
|
|
23
|
+
sh.ph.literal("}"),
|
|
24
|
+
]));
|
|
25
|
+
case 'group': return p_.option($, ($) => p_.from.state($).decide(($) => {
|
|
26
|
+
switch ($[0]) {
|
|
27
|
+
case 'verbose': return p_.option($, ($) => sh.ph.composed([
|
|
28
|
+
sh.ph.composed([
|
|
29
|
+
sh.ph.literal("("),
|
|
30
|
+
sh.ph.indent(sh.pg.sentences(p_.from.dictionary($).convert_to_list(($, id) => sh.sentence(p_.literal.list([
|
|
31
|
+
sh.ph.serialize(t_primitives_to_text.Backticked(id, {
|
|
32
|
+
'add delimiters': true
|
|
33
|
+
})),
|
|
34
|
+
sh.ph.literal(": "),
|
|
35
|
+
Value($),
|
|
36
|
+
]))))),
|
|
37
|
+
sh.ph.literal(")"),
|
|
38
|
+
])
|
|
39
|
+
]));
|
|
40
|
+
default: return p_.exhaustive($[0]);
|
|
41
|
+
}
|
|
42
|
+
}));
|
|
43
|
+
case 'list': return p_.option($, ($) => sh.ph.composed([
|
|
44
|
+
sh.ph.literal("["),
|
|
45
|
+
sh.ph.composed(p_.from.list($).map(($) => sh.ph.composed([
|
|
46
|
+
sh.ph.literal(" "),
|
|
47
|
+
Value($),
|
|
48
|
+
]))),
|
|
49
|
+
sh.ph.literal(" ]"),
|
|
50
|
+
]));
|
|
51
|
+
case 'nothing': return p_.option($, ($) => sh.ph.literal("~"));
|
|
52
|
+
case 'optional': return p_.option($, ($) => p_.from.state($).decide(($) => {
|
|
53
|
+
switch ($[0]) {
|
|
54
|
+
case 'not set': return p_.option($, ($) => sh.ph.literal("_"));
|
|
55
|
+
case 'set': return p_.option($, ($) => sh.ph.composed([
|
|
56
|
+
sh.ph.literal("* "),
|
|
57
|
+
Value($),
|
|
58
|
+
]));
|
|
59
|
+
default: return p_.exhaustive($[0]);
|
|
60
|
+
}
|
|
61
|
+
}));
|
|
62
|
+
case 'state': return p_.option($, ($) => sh.ph.composed([
|
|
63
|
+
sh.ph.literal("| "),
|
|
64
|
+
sh.ph.serialize(t_primitives_to_text.Backticked($.option, {
|
|
65
|
+
'add delimiters': true
|
|
66
|
+
})),
|
|
67
|
+
sh.ph.literal(" "),
|
|
68
|
+
Value($.value),
|
|
69
|
+
]));
|
|
70
|
+
case 'text': return p_.option($, ($) => {
|
|
71
|
+
const value = $.value;
|
|
72
|
+
return p_.from.state($.delimiter).decide(($) => {
|
|
73
|
+
switch ($[0]) {
|
|
74
|
+
case 'apostrophe': return p_.option($, ($) => sh.ph.serialize(t_primitives_to_text.Apostrophed(value, {
|
|
75
|
+
'add delimiters': true
|
|
76
|
+
})));
|
|
77
|
+
case 'quote': return p_.option($, ($) => sh.ph.serialize(t_primitives_to_text.Quoted(value, {
|
|
78
|
+
'add delimiters': true
|
|
79
|
+
})));
|
|
80
|
+
case 'none': return p_.option($, ($) => sh.ph.serialize(t_primitives_to_text.Undelimited(value)));
|
|
81
|
+
default: return p_.exhaustive($[0]);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
default: return p_.exhaustive($[0]);
|
|
86
|
+
}
|
|
87
|
+
})
|
|
88
|
+
]);
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vdHJhbnNmb3JtZXJzL3NlYWxlZF90YXJnZXQvcHJvc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUk1RCxjQUFjO0FBQ2QsT0FBTyxLQUFLLG9CQUFvQixNQUFNLHVCQUF1QixDQUFBO0FBRTdELFlBQVk7QUFDWixPQUFPLEtBQUssRUFBRSxNQUFNLGlEQUFpRCxDQUFBO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDO0lBQ2hFLEVBQUUsQ0FBQyxRQUFRLENBQUM7UUFDUixLQUFLLENBQUMsQ0FBQyxDQUFDO0tBQ1gsQ0FBQztDQUNMLENBQUMsQ0FBQTtBQUVGLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBcUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDO0lBQ3pELEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FDbkIsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNGLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDWCxLQUFLLFlBQVksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUN6RCxFQUFFLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQ2xCLEVBQUUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUNSLEVBQUUsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJ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
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type * as interface_ from "
|
|
1
|
+
import type * as interface_ from "../../../declarations/transformers/sealed_target/text.js";
|
|
2
2
|
export declare const Document: interface_.Document;
|
|
3
3
|
export declare const Value: interface_.Value;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
//dependencies
|
|
2
|
+
import * as t_to_prose from "./prose.js";
|
|
3
|
+
import * as t_prose_to_text from "pareto-fountain-pen/implementation/transformers/prose/text";
|
|
4
|
+
export const Document = ($, $p) => t_prose_to_text.Paragraph(t_to_prose.Document($), $p);
|
|
5
|
+
export const Value = ($, $p) => t_prose_to_text.Phrase(t_to_prose.Value($), $p);
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi90cmFuc2Zvcm1lcnMvc2VhbGVkX3RhcmdldC90ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLGNBQWM7QUFDZCxPQUFPLEtBQUssVUFBVSxNQUFNLFlBQVksQ0FBQTtBQUN4QyxPQUFPLEtBQUssZUFBZSxNQUFNLDREQUE0RCxDQUFBO0FBRzdGLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUM3RSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUN0QixFQUFFLENBQ0wsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBcUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUNwRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUNuQixFQUFFLENBQ0wsQ0FBQSJ9
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const Error = ($) => $.range;
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vdHJhbnNmb3JtZXJzL3VubWFyc2hhbGwvbG9jYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFxQixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQSJ9
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as p_ from 'pareto-core/implementation/transformer';
|
|
2
|
+
//shorthands
|
|
3
|
+
import * as sh from "pareto-fountain-pen/shorthands/prose/deprecated";
|
|
4
|
+
export const Error = ($) => sh.ph.composed([
|
|
5
|
+
p_.from.state($.type).decide(($) => {
|
|
6
|
+
switch ($[0]) {
|
|
7
|
+
case 'dictionary': return p_.option($, ($) => p_.from.state($).decide(($) => {
|
|
8
|
+
switch ($[0]) {
|
|
9
|
+
case 'duplicate entry': return p_.option($, ($) => sh.ph.composed([
|
|
10
|
+
sh.ph.literal("duplicate entry: '"),
|
|
11
|
+
sh.ph.literal($),
|
|
12
|
+
sh.ph.literal("'")
|
|
13
|
+
]));
|
|
14
|
+
default: return p_.exhaustive($[0]);
|
|
15
|
+
}
|
|
16
|
+
}));
|
|
17
|
+
case 'type': return p_.option($, ($) => p_.from.state($).decide(($) => {
|
|
18
|
+
switch ($[0]) {
|
|
19
|
+
case 'duplicate property': return p_.option($, ($) => sh.ph.composed([
|
|
20
|
+
sh.ph.literal("duplicate property: '"),
|
|
21
|
+
sh.ph.literal($),
|
|
22
|
+
sh.ph.literal("'")
|
|
23
|
+
]));
|
|
24
|
+
case 'missing property': return p_.option($, ($) => sh.ph.composed([
|
|
25
|
+
sh.ph.literal("missing property: '"),
|
|
26
|
+
sh.ph.literal($),
|
|
27
|
+
sh.ph.literal("'")
|
|
28
|
+
]));
|
|
29
|
+
case 'unexpected properties': return p_.option($, ($) => sh.ph.composed([
|
|
30
|
+
sh.ph.literal("unexpected properties: "),
|
|
31
|
+
sh.ph.indent(sh.pg.sentences(p_.from.dictionary($.found).convert_to_list(($, key) => sh.sentence([
|
|
32
|
+
sh.ph.literal("-'"),
|
|
33
|
+
sh.ph.literal(key),
|
|
34
|
+
sh.ph.literal("'"),
|
|
35
|
+
])))),
|
|
36
|
+
sh.ph.literal("expected properties: "),
|
|
37
|
+
sh.ph.indent(sh.pg.sentences(p_.from.dictionary($.expected).convert_to_list(($, key) => sh.sentence([
|
|
38
|
+
sh.ph.literal("-'"),
|
|
39
|
+
sh.ph.literal(key),
|
|
40
|
+
sh.ph.literal("'"),
|
|
41
|
+
])))),
|
|
42
|
+
]));
|
|
43
|
+
default: return p_.exhaustive($[0]);
|
|
44
|
+
}
|
|
45
|
+
}));
|
|
46
|
+
case 'wrong value type': return p_.option($, ($) => sh.ph.composed([
|
|
47
|
+
sh.ph.literal("wrong value type, expected: "),
|
|
48
|
+
p_.from.state($.expected).decide(($) => {
|
|
49
|
+
switch ($[0]) {
|
|
50
|
+
case 'optional': return p_.option($, ($) => sh.ph.literal("an optional"));
|
|
51
|
+
case 'nothing': return p_.option($, ($) => sh.ph.literal("a nothing"));
|
|
52
|
+
case 'dictionary': return p_.option($, ($) => sh.ph.literal("a dictionary"));
|
|
53
|
+
case 'verbose group': return p_.option($, ($) => sh.ph.literal("a verbose group"));
|
|
54
|
+
case 'list': return p_.option($, ($) => sh.ph.literal("a list"));
|
|
55
|
+
case 'state': return p_.option($, ($) => sh.ph.literal("a state"));
|
|
56
|
+
case 'text': return p_.option($, ($) => sh.ph.literal("a text"));
|
|
57
|
+
default: return p_.exhaustive($[0]);
|
|
58
|
+
}
|
|
59
|
+
}),
|
|
60
|
+
sh.ph.literal(" value")
|
|
61
|
+
]));
|
|
62
|
+
default: return p_.exhaustive($[0]);
|
|
63
|
+
}
|
|
64
|
+
}),
|
|
65
|
+
]);
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vdHJhbnNmb3JtZXJzL3VubWFyc2hhbGwvcHJvc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUk1RCxZQUFZO0FBQ1osT0FBTyxLQUFLLEVBQUUsTUFBTSxpREFBaUQsQ0FBQTtBQUVyRSxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQXFCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQztJQUN6RCxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUN4QixDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ0YsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNYLEtBQUssWUFBWSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUNqRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNGLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ1gsS0FBSyxpQkFBaUIsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDO3dCQUM5RCxFQUFFLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQzt3QkFDbkMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO3dCQUNoQixFQUFFLENBQUMsRUFBRSxDQUFDLE9BQU8s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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "astn-core",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.129",
|
|
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",
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import * as p_ from 'pareto-core/implementation/refiner';
|
|
2
|
-
/**
|
|
3
|
-
* Creates a string iterator that allows iterating over characters in a string,
|
|
4
|
-
* while keeping track of line numbers, columns, and line indentation.
|
|
5
|
-
*/
|
|
6
|
-
export const Annotated_Characters = ($, $p) => p_.from.list($).map_with_state({
|
|
7
|
-
'location': {
|
|
8
|
-
'absolute': 0,
|
|
9
|
-
'relative': {
|
|
10
|
-
'line': 0,
|
|
11
|
-
'column': 0,
|
|
12
|
-
}
|
|
13
|
-
},
|
|
14
|
-
'line indentation': null,
|
|
15
|
-
'found carriage return before': false,
|
|
16
|
-
}, (value, state) => ({
|
|
17
|
-
'code': value,
|
|
18
|
-
'location': state.location,
|
|
19
|
-
'line indentation': state['line indentation'] !== null
|
|
20
|
-
? state['line indentation']
|
|
21
|
-
: state.location.relative.column,
|
|
22
|
-
}), (value, state) => {
|
|
23
|
-
return value.code === 0x0A /* line feed */
|
|
24
|
-
? {
|
|
25
|
-
'location': {
|
|
26
|
-
'absolute': state.location.absolute + 1,
|
|
27
|
-
'relative': {
|
|
28
|
-
'line': state.location.relative.line + 1,
|
|
29
|
-
'column': 0,
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
'line indentation': null,
|
|
33
|
-
'found carriage return before': false,
|
|
34
|
-
}
|
|
35
|
-
: state['found carriage return before']
|
|
36
|
-
? {
|
|
37
|
-
'location': {
|
|
38
|
-
'absolute': state.location.absolute + 1,
|
|
39
|
-
'relative': {
|
|
40
|
-
'line': state.location.relative.line + 1,
|
|
41
|
-
'column': 0,
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
'line indentation': null,
|
|
45
|
-
'found carriage return before': false,
|
|
46
|
-
}
|
|
47
|
-
: {
|
|
48
|
-
'location': {
|
|
49
|
-
'absolute': state.location.absolute + 1,
|
|
50
|
-
'relative': {
|
|
51
|
-
'line': state.location.relative.line,
|
|
52
|
-
'column': state.location.relative.column + (value.code === 0x09 /* tab */
|
|
53
|
-
? $p['tab size']
|
|
54
|
-
: 1),
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
'line indentation': state['line indentation'] !== null
|
|
58
|
-
? state['line indentation']
|
|
59
|
-
: value.code === 0x20 /* space */ || value.code === 0x09 /* tab */
|
|
60
|
-
? null
|
|
61
|
-
: state.location.relative.column,
|
|
62
|
-
'found carriage return before': value.code === 0x0D /* carriage return */,
|
|
63
|
-
};
|
|
64
|
-
}, (final_list, final_state) => ({
|
|
65
|
-
'characters': final_list,
|
|
66
|
-
'end': final_state.location,
|
|
67
|
-
}));
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvYW5ub3RhdGVkX2NoYXJhY3RlcnMvdGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBSXhEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFvQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FDMUc7SUFDSSxVQUFVLEVBQUU7UUFDUixVQUFVLEVBQUUsQ0FBQztRQUNiLFVBQVUsRUFBRTtZQUNSLE1BQU0sRUFBRSxDQUFDO1lBQ1QsUUFBUSxFQUFFLENBQUM7U0FDZDtLQUNKO0lBQ0Qsa0JBQWtCLEVBQUUsSUFBSTtJQUN4Qiw4QkFBOEIsRUFBRSxLQUFLO0NBV3hDLEVBQ0QsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2YsTUFBTSxFQUFFLEtBQUs7SUFDYixVQUFVLEVBQUUsS0FBSyxDQUFDLFFBQVE7SUFDMUIsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEtBQUssSUFBSTtRQUNsRCxDQUFDLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDO1FBQzNCLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNO0NBQ3ZDLENBQUMsRUFDRixDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtJQUNiLE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsZUFBZTtRQUN0QyxDQUFDLENBQUM7WUFDRSxVQUFVLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUM7Z0JBQ3ZDLFVBQVUsRUFBRTtvQkFDUixNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUM7b0JBQ3hDLFFBQVEsRUFBRSxDQUFDO2lCQUNkO2FBQ0o7WUFDRCxrQkFBa0IsRUFBRSxJQUFJO1lBQ3hCLDhCQUE4QixFQUFFLEtBQUs7U0FDeEM7UUFDRCxDQUFDLENBQUMsS0FBSyxDQUFDLDhCQUE4QixDQUFDO1lBQ25DLENBQUMsQ0FBQztnQkFDRSxVQUFVLEVBQUU7b0JBQ1IsVUFBVSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUM7b0JBQ3ZDLFVBQVUsRUFBRTt3QkFDUixNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUM7d0JBQ3hDLFFBQVEsRUFBRSxDQUFDO3FCQUNkO2lCQUNKO2dCQUVELGtCQUFrQixFQUFFLElBQUk7Z0JBQ3hCLDhCQUE4QixFQUFFLEtBQUs7YUFDeEM7WUFDRCxDQUFDLENBQUM7Z0JBQ0UsVUFBVSxFQUFFO29CQUNSLFVBQVUsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsR0FBRyxDQUFDO29CQUN2QyxVQUFVLEVBQUU7d0JBQ1IsTUFBTSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUk7d0JBQ3BDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxTQUFTOzRCQUNyRSxDQUFDLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQzs0QkFDaEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztxQkFDWDtpQkFDSjtnQkFDRCxrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsS0FBSyxJQUFJO29CQUNsRCxDQUFDLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDO29CQUMzQixDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFNBQVM7d0JBQzlELENBQUMsQ0FBQyxJQUFJO3dCQUNOLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNO2dCQUN4Qyw4QkFBOEIsRUFBRSxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxxQkFBcUI7YUFDNUUsQ0FBQTtBQUNiLENBQUMsRUFDRCxDQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUIsWUFBWSxFQUFFLFVBQVU7SUFDeEIsS0FBSyxFQUFFLFdBQVcsQ0FBQyxRQUFRO0NBQzlCLENBQUMsQ0FDTCxDQUFBIn0=
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import p_iterate from 'pareto-core/implementation/refiner/specials/iterate';
|
|
2
|
-
//dependencies
|
|
3
|
-
import * as r_annotated_characters from "../annotated_characters/text.js";
|
|
4
|
-
import * as r_tokenize from "../token/annotated_character.js";
|
|
5
|
-
import * as r_from_tokenizer_result from "./tokenizer_result.js";
|
|
6
|
-
export const Document = ($, abort, $p) => {
|
|
7
|
-
const ann_chars = r_annotated_characters.Annotated_Characters($, $p);
|
|
8
|
-
return p_iterate({
|
|
9
|
-
list: ann_chars.characters,
|
|
10
|
-
end_info: ann_chars.end,
|
|
11
|
-
assign: (iterator) => r_from_tokenizer_result.Document(//fixme: make this iterate_fully
|
|
12
|
-
r_tokenize.Tokenizer_Result(iterator, ($) => abort({
|
|
13
|
-
'type': ['lexer', $],
|
|
14
|
-
}), {
|
|
15
|
-
'end info': ann_chars.end,
|
|
16
|
-
}), ($) => abort({
|
|
17
|
-
'type': ['parser', $],
|
|
18
|
-
})),
|
|
19
|
-
on_dangling_item: null, //fixme: make this iterate_fully
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL21hbnVhbC9yZWZpbmVycy9wYXJzZV90cmVlL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFNBQVMsTUFBTSxxREFBcUQsQ0FBQTtBQUUzRSxjQUFjO0FBQ2QsT0FBTyxLQUFLLHNCQUFzQixNQUFNLGlDQUFpQyxDQUFBO0FBQ3pFLE9BQU8sS0FBSyxVQUFVLE1BQU0saUNBQWlDLENBQUE7QUFDN0QsT0FBTyxLQUFLLHVCQUF1QixNQUFNLHVCQUF1QixDQUFBO0FBSWhFLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRyxFQUFFO0lBQzNELE1BQU0sU0FBUyxHQUFHLHNCQUFzQixDQUFDLG9CQUFvQixDQUN6RCxDQUFDLEVBQ0QsRUFBRSxDQUNMLENBQUE7SUFDRCxPQUFPLFNBQVMsQ0FBQztRQUNiLElBQUksRUFBRSxTQUFTLENBQUMsVUFBVTtRQUMxQixRQUFRLEVBQUUsU0FBUyxDQUFDLEdBQUc7UUFDdkIsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsZ0NBQWdDO1FBQ25GLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FDdkIsUUFBUSxFQUNSLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDVCxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZCLENBQUMsRUFDRjtZQUNJLFVBQVUsRUFBRSxTQUFTLENBQUMsR0FBRztTQUM1QixDQUNKLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNULE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDeEIsQ0FBQyxDQUNMO1FBQ0QsZ0JBQWdCLEVBQUUsSUFBSSxFQUFDLGdDQUFnQztLQUMxRCxDQUFDLENBQUE7QUFDTixDQUFDLENBQUEifQ==
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import p_list_from_text from 'pareto-core/implementation/refiner/specials/list_from_text';
|
|
2
|
-
//dependencies
|
|
3
|
-
import * as r_from_list_of_characters from "./list_of_characters.js";
|
|
4
|
-
export const Document = ($, abort, $p) => {
|
|
5
|
-
return r_from_list_of_characters.Document(p_list_from_text($, ($) => $), abort, $p);
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvcGFyc2VfdHJlZS90ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sZ0JBQWdCLE1BQU0sNERBQTRELENBQUE7QUFFekYsY0FBYztBQUNkLE9BQU8sS0FBSyx5QkFBeUIsTUFBTSx5QkFBeUIsQ0FBQTtBQUlwRSxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQXdCLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRTtJQUMxRCxPQUFPLHlCQUF5QixDQUFDLFFBQVEsQ0FDckMsZ0JBQWdCLENBQ1osQ0FBQyxFQUNELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1gsRUFDRCxLQUFLLEVBQ0wsRUFBRSxDQUNMLENBQUE7QUFDTCxDQUFDLENBQUEifQ==
|
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
import * as p_ from 'pareto-core/implementation/refiner';
|
|
2
|
-
import p_iterate from 'pareto-core/implementation/refiner/specials/iterate';
|
|
3
|
-
import p_unreachable_code_path from 'pareto-core/implementation/transformer/specials/unreachable_code_path';
|
|
4
|
-
export const create_missing_token = ($, $p) => ({
|
|
5
|
-
'expected': $,
|
|
6
|
-
'cause': ['missing token', {
|
|
7
|
-
'end': $p['end location'],
|
|
8
|
-
}]
|
|
9
|
-
});
|
|
10
|
-
export const create_unexpected_token = ($, $p) => ({
|
|
11
|
-
'expected': $,
|
|
12
|
-
'cause': ['unexpected token', {
|
|
13
|
-
'found': $p.found,
|
|
14
|
-
}]
|
|
15
|
-
});
|
|
16
|
-
export const Value = (iterator, abort) => ({
|
|
17
|
-
'type': iterator.peek_with_expectation(p_.literal.list([
|
|
18
|
-
['any value', null]
|
|
19
|
-
]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
|
|
20
|
-
const token = $;
|
|
21
|
-
return p_.from.state($.type).decide(($) => {
|
|
22
|
-
switch ($[0]) {
|
|
23
|
-
case 'text': return p_.option($, ($) => ['concrete',
|
|
24
|
-
['text', Text(iterator, abort, { 'token': token, 'text': $ })]
|
|
25
|
-
]);
|
|
26
|
-
case '{': return p_.option($, ($) => ['concrete', ['dictionary', {
|
|
27
|
-
'{': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
28
|
-
'entries': ID_Value_Pairs(iterator, abort, { 'end token': ['}', null] }),
|
|
29
|
-
'}': Possible_Structural_Token(iterator, abort, { 'expected token': ['}', null] }),
|
|
30
|
-
}]]);
|
|
31
|
-
case '(': return p_.option($, ($) => ['concrete', ['group', ['verbose', {
|
|
32
|
-
'(': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
33
|
-
'properties': ID_Value_Pairs(iterator, abort, { 'end token': [')', null] }),
|
|
34
|
-
')': Possible_Structural_Token(iterator, abort, { 'expected token': [')', null] })
|
|
35
|
-
}]]]);
|
|
36
|
-
case '[': return p_.option($, ($) => ['concrete', ['list', {
|
|
37
|
-
'[': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
38
|
-
'items': Items(iterator, abort, { 'end token': [']', null] }),
|
|
39
|
-
']': Possible_Structural_Token(iterator, abort, { 'expected token': [']', null] })
|
|
40
|
-
}]]);
|
|
41
|
-
case '<': return p_.option($, ($) => ['concrete', ['group', ['concise', {
|
|
42
|
-
'<': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
43
|
-
'properties': Items(iterator, abort, { 'end token': ['>', null] }),
|
|
44
|
-
'>': Possible_Structural_Token(iterator, abort, { 'expected token': ['>', null] })
|
|
45
|
-
}]]]);
|
|
46
|
-
case '@': return p_.option($, ($) => ['include', {
|
|
47
|
-
'@': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
48
|
-
'path': iterator.peek_with_expectation(p_.literal.list([
|
|
49
|
-
['a text value', null]
|
|
50
|
-
]), (end_info, expected) => abort(create_missing_token(expected, { 'end location': end_info })), ($, expected) => $.type[0] === 'text'
|
|
51
|
-
? Text(iterator, abort, { 'token': $, 'text': $.type[1] })
|
|
52
|
-
: abort(create_unexpected_token(expected, { 'found': $ })))
|
|
53
|
-
}]);
|
|
54
|
-
case '~': return p_.option($, ($) => ['concrete', ['nothing', {
|
|
55
|
-
'~': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
56
|
-
}]]);
|
|
57
|
-
case '|': return p_.option($, ($) => ['concrete', ['state', {
|
|
58
|
-
'|': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
59
|
-
'status': iterator.peek_with_expectation(p_.literal.list([
|
|
60
|
-
['a text value', null],
|
|
61
|
-
['#', null]
|
|
62
|
-
]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
|
|
63
|
-
const token = $;
|
|
64
|
-
return p_.from.state($.type).decide(($) => {
|
|
65
|
-
switch ($[0]) {
|
|
66
|
-
case 'text': return p_.option($, ($) => ['set', {
|
|
67
|
-
'option': Text(iterator, abort, { 'token': token, 'text': $ }),
|
|
68
|
-
'value': Value(iterator, abort)
|
|
69
|
-
}]);
|
|
70
|
-
case '#': return p_.option($, ($) => ['missing', {
|
|
71
|
-
'#': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
72
|
-
}]);
|
|
73
|
-
default: return abort(create_unexpected_token(expected, { 'found': token }));
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
})
|
|
77
|
-
}]]);
|
|
78
|
-
case '_': return p_.option($, ($) => ['concrete', ['optional', ['not set', {
|
|
79
|
-
'_': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
80
|
-
}]]]);
|
|
81
|
-
case '*': return p_.option($, ($) => ['concrete', ['optional', ['set', {
|
|
82
|
-
'*': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
83
|
-
'value': Value(iterator, abort)
|
|
84
|
-
}]]]);
|
|
85
|
-
case '#': return p_.option($, ($) => ['missing', {
|
|
86
|
-
'#': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
87
|
-
}]);
|
|
88
|
-
//unexpected tokens
|
|
89
|
-
// case '!': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
|
|
90
|
-
// ['any value', null]
|
|
91
|
-
// ])))
|
|
92
|
-
// case ':': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
|
|
93
|
-
// ['any value', null]
|
|
94
|
-
// ])))
|
|
95
|
-
// case ')': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
|
|
96
|
-
// ['any value', null]
|
|
97
|
-
// ])))
|
|
98
|
-
// case '>': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
|
|
99
|
-
// ['any value', null]
|
|
100
|
-
// ])))
|
|
101
|
-
// case ']': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
|
|
102
|
-
// ['any value', null]
|
|
103
|
-
// ])))
|
|
104
|
-
// case '}': return p_.option($, ($) => iterator.unexpected_token(token, p_.literal.list([
|
|
105
|
-
// ['any value', null]
|
|
106
|
-
// ])))
|
|
107
|
-
default: return abort(create_unexpected_token(expected, { 'found': token }));
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
})
|
|
111
|
-
});
|
|
112
|
-
export const Guaranteed_Structural_Token = (iterator, abort, $p) => {
|
|
113
|
-
iterator.consume(() => p_unreachable_code_path("guaranteed"), () => null); //make this a 'discard' operation
|
|
114
|
-
return {
|
|
115
|
-
'trailing trivia': $p.token['trailing trivia'],
|
|
116
|
-
'range': {
|
|
117
|
-
'start': $p.token['start'],
|
|
118
|
-
'end': $p.token['end']
|
|
119
|
-
}
|
|
120
|
-
};
|
|
121
|
-
};
|
|
122
|
-
export const Possible_Structural_Token = (iterator, abort, $p) => iterator.peek_with_expectation(p_.literal.list([
|
|
123
|
-
$p['expected token']
|
|
124
|
-
]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
|
|
125
|
-
const token = $;
|
|
126
|
-
if ($.type[0] !== $p['expected token'][0]) {
|
|
127
|
-
return abort(create_unexpected_token(expected, { 'found': token }));
|
|
128
|
-
}
|
|
129
|
-
else {
|
|
130
|
-
return iterator.consume(//discard
|
|
131
|
-
() => p_unreachable_code_path("peeked (with 'expected')"), () => ({
|
|
132
|
-
'trailing trivia': token['trailing trivia'],
|
|
133
|
-
'range': {
|
|
134
|
-
'start': token['start'],
|
|
135
|
-
'end': token['end']
|
|
136
|
-
}
|
|
137
|
-
}));
|
|
138
|
-
}
|
|
139
|
-
});
|
|
140
|
-
export const Text = (iterator, abort, $p) => {
|
|
141
|
-
return iterator.consume(() => p_unreachable_code_path("guaranteed (it has a token as parameter)"), ($) => ({
|
|
142
|
-
'range': {
|
|
143
|
-
'start': $['start'],
|
|
144
|
-
'end': $['end']
|
|
145
|
-
},
|
|
146
|
-
'token': $p.text,
|
|
147
|
-
'trailing trivia': $['trailing trivia'],
|
|
148
|
-
}));
|
|
149
|
-
};
|
|
150
|
-
export const Items = (iterator, abort, $p) => iterator.build_list({
|
|
151
|
-
has_more_items: (current_token) => current_token.type[0] !== $p['end token'][0],
|
|
152
|
-
handle: () => iterator.peek(//for the proper error message (any value or end token) we peek instead of processing the token directly
|
|
153
|
-
($) => abort(create_missing_token(p_.literal.list([
|
|
154
|
-
['any value', null],
|
|
155
|
-
$p['end token']
|
|
156
|
-
]), { 'end location': $ })), ($) => ({
|
|
157
|
-
'value': Value(iterator, abort)
|
|
158
|
-
})),
|
|
159
|
-
on_no_progression: () => p_unreachable_code_path("'handle' is expected to always consume at least one token, so this should never happen"),
|
|
160
|
-
});
|
|
161
|
-
export const ID_Value_Pairs = (iterator, abort, $p) => iterator.build_list({
|
|
162
|
-
has_more_items: ($) => $.type[0] !== $p['end token'][0],
|
|
163
|
-
handle: () => ({
|
|
164
|
-
'id': iterator.peek(//to get a better error message (a text value or end token) we peek instead of processing the Text token directly
|
|
165
|
-
() => p_unreachable_code_path("has more items is true"), ($) => $.type[0] === 'text'
|
|
166
|
-
? Text(iterator, abort, {
|
|
167
|
-
'token': $,
|
|
168
|
-
'text': $.type[1]
|
|
169
|
-
})
|
|
170
|
-
: abort(create_unexpected_token(p_.literal.list([
|
|
171
|
-
['a text value', null],
|
|
172
|
-
$p['end token'],
|
|
173
|
-
]), { 'found': $ }))),
|
|
174
|
-
'assignment': iterator.peek_with_expectation(p_.literal.list([
|
|
175
|
-
['a text value', null],
|
|
176
|
-
[':', null],
|
|
177
|
-
$p['end token']
|
|
178
|
-
]), ($, expected) => abort(create_missing_token(expected, { 'end location': $ })), ($, expected) => {
|
|
179
|
-
const token = $;
|
|
180
|
-
return p_.from.state($.type).decide(($) => {
|
|
181
|
-
switch ($[0]) {
|
|
182
|
-
case 'text': return p_.option($, ($) => p_.literal.not_set());
|
|
183
|
-
case ':': return p_.option($, ($) => p_.literal.set({
|
|
184
|
-
':': Guaranteed_Structural_Token(iterator, abort, { 'token': token }),
|
|
185
|
-
'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
|
|
186
|
-
}));
|
|
187
|
-
default: return $[0] === $p['end token'][0]
|
|
188
|
-
? p_.literal.not_set()
|
|
189
|
-
: abort(create_unexpected_token(expected, { 'found': token }));
|
|
190
|
-
}
|
|
191
|
-
});
|
|
192
|
-
}),
|
|
193
|
-
// ',': p_.literal.not_set() //FIXME implement optional comma (or keep it as 'whitespace' but then remove this property)
|
|
194
|
-
}),
|
|
195
|
-
on_no_progression: () => p_unreachable_code_path("'handle' is expected to always consume at least one token, so this should never happen"),
|
|
196
|
-
});
|
|
197
|
-
export const Document = ($, abort) => p_iterate({
|
|
198
|
-
list: $.tokens,
|
|
199
|
-
end_info: $.end,
|
|
200
|
-
assign: (iterator) => ({
|
|
201
|
-
'header': iterator.peek(($) => p_.literal.not_set(), ($) => $.type[0] === '!' //header token
|
|
202
|
-
? iterator.consume(() => p_unreachable_code_path("peeked (with 'expected')"), ($) => p_.literal.set({
|
|
203
|
-
'!': Guaranteed_Structural_Token(iterator, abort, { 'token': $ }),
|
|
204
|
-
'value': Value(iterator, abort)
|
|
205
|
-
}))
|
|
206
|
-
: p_.literal.not_set()),
|
|
207
|
-
'content': Value(iterator, abort)
|
|
208
|
-
}),
|
|
209
|
-
on_dangling_item: null, //FIX enable checking for too many tokens
|
|
210
|
-
});
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5pemVyX3Jlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvcGFyc2VfdHJlZS90b2tlbml6ZXJfcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFFeEQsT0FBTyxTQUFTLE1BQU0scURBQXFELENBQUE7QUFDM0UsT0FBTyx1QkFBdUIsTUFBTSx1RUFBdUUsQ0FBQTtBQVUzRyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FNN0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1osVUFBVSxFQUFFLENBQUM7SUFDYixPQUFPLEVBQUUsQ0FBQyxlQUFlLEVBQUU7WUFDdkIsS0FBSyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUM7U0FDNUIsQ0FBQztDQUNMLENBQUMsQ0FBQTtBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQU1oQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDWixVQUFVLEVBQUUsQ0FBQztJQUNiLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFO1lBQzFCLE9BQU8sRUFBRSxFQUFFLENBQUMsS0FBSztTQUNwQixDQUFDO0NBQ0wsQ0FBQyxDQUFBO0FBRUYsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFxQixDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDekQsTUFBTSxFQUFFLFFBQVEsQ0FBQyxxQkFBcUIsQ0FDbEMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQW9CO1FBQy9CLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQztLQUN0QixDQUFDLEVBQ0YsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsUUFBUSxF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
|