astn-core 0.5.113 → 0.5.115

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/globals.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  interface Array<T> {
2
2
  [n: number]: T;
3
3
  length: number;
4
- readonly __isArray: true;
4
+ readonly __state: true;
5
5
  }
6
6
  interface Boolean {
7
7
  }
@@ -4,22 +4,24 @@ import * as d_choice from "../../../../interface/generated/liana/schemas/deseria
4
4
  import * as d_in from "../../../../interface/generated/liana/schemas/token/data";
5
5
  import * as d_location from "../../../../interface/generated/liana/schemas/location/data";
6
6
  export declare namespace interface_ {
7
- type Document = p_pi.Production<d_out.Document, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
8
- type Value = p_pi.Production<d_out.Value, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
9
- type Guaranteed_Structural_Token = p_pi.Production<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
10
- type Possible_Structural_Token = p_pi.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
7
+ type Document = p_pi.Production<d_out.Document, d_choice.Parser_Error, d_choice.Parser_Error.expected, d_in.Annotated_Token, d_location.Location>;
8
+ type Value = p_pi.Production<d_out.Value, d_choice.Parser_Error, d_choice.Parser_Error.expected, d_in.Annotated_Token, d_location.Location>;
9
+ type Guaranteed_Structural_Token = p_pi.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_choice.Parser_Error.expected, d_in.Annotated_Token, d_location.Location, {
10
+ 'token': d_in.Annotated_Token;
11
+ }>;
12
+ type Possible_Structural_Token = p_pi.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_choice.Parser_Error.expected, d_in.Annotated_Token, d_location.Location, {
11
13
  'expected token': d_choice.Expected;
12
14
  }>;
13
- type Text = p_pi.Production_With_Parameter<d_out.Text, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
15
+ type Text = p_pi.Production_With_Parameter<d_out.Text, d_choice.Parser_Error, d_choice.Parser_Error.expected, d_in.Annotated_Token, d_location.Location, {
14
16
  'text': d_in.Annotated_Token.type_.text;
15
17
  }>;
16
- type Items = p_pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
18
+ type Items = p_pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_choice.Parser_Error.expected, d_in.Annotated_Token, d_location.Location, {
17
19
  'end token': d_choice.Expected;
18
20
  }>;
19
- type Element = p_pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
21
+ type Element = p_pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_choice.Parser_Error.expected, d_in.Annotated_Token, d_location.Location, {
20
22
  'end token': d_choice.Expected;
21
23
  }>;
22
- 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, {
24
+ type ID_Value_Pairs = p_pi.Production_With_Parameter<d_out.ID_Value_Pairs, d_choice.Parser_Error, d_choice.Parser_Error.expected, d_in.Annotated_Token, d_location.Location, {
23
25
  'end token': d_choice.Expected;
24
26
  }>;
25
27
  }
@@ -38,98 +38,78 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.ID_Value_Pairs = exports.Items = exports.Text = exports.Possible_Structural_Token = exports.Guaranteed_Structural_Token = exports.Value = exports.Document = void 0;
40
40
  const p_ = __importStar(require("pareto-core/dist/implementation/production"));
41
- const p_t = __importStar(require("pareto-core/dist/implementation/transformer"));
42
41
  const unreachable_code_path_1 = __importDefault(require("pareto-core/dist/implementation/transformer/specials/unreachable_code_path"));
43
- const temp_create_error = (element, expected, end_info) => ({
44
- 'expected': expected,
45
- 'cause': p_t.from.optional(element).decide(($) => ['unexpected token', {
46
- 'found': $,
47
- }], () => ['missing token', {
48
- 'end': end_info,
49
- }]),
50
- });
51
- const Document = (iterator, abort) => ({
42
+ const Document = (iterator) => ({
52
43
  'header': iterator.optional({
53
44
  item: (token) => token.type[0] === '!' //header token
54
45
  ? p_.literal.set({
55
- '!': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
56
- 'value': (0, exports.Value)(iterator, abort)
46
+ '!': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
47
+ 'value': (0, exports.Value)(iterator)
57
48
  })
58
49
  : p_.literal.not_set(),
59
50
  }),
60
- 'content': (0, exports.Value)(iterator, abort)
51
+ 'content': (0, exports.Value)(iterator)
61
52
  });
62
53
  exports.Document = Document;
63
- const Value = (iterator, abort) => iterator.expect({
64
- abort: abort,
65
- get_error: ($) => temp_create_error($, p_.literal.list([
54
+ const Value = (iterator) => iterator.expect({
55
+ expected: p_.literal.list([
66
56
  ['any value', null]
67
- ]), iterator.get_end_info()),
57
+ ]),
68
58
  item: (token, abort2) => ({
69
59
  'type': p_.from.state(token.type).decide(($) => {
70
60
  switch ($[0]) {
71
61
  case 'text': return p_.ss($, ($) => ['concrete',
72
- ['text', iterator.expect({
73
- abort: abort,
74
- get_error: ($) => temp_create_error($, p_.literal.list([
75
- ['a text value', null]
76
- ]), iterator.get_end_info()),
77
- item: (token, abort2) => token.type[0] === 'text'
78
- ? (0, exports.Text)(iterator, abort, { 'text': token.type[1] })
79
- : abort2(null),
80
- })]
62
+ ['text', (0, exports.Text)(iterator, { 'text': $ })]
81
63
  ]);
82
64
  case '{': return p_.ss($, ($) => ['concrete', ['dictionary', {
83
- '{': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
84
- 'entries': (0, exports.ID_Value_Pairs)(iterator, abort, { 'end token': ['}', null] }),
85
- '}': (0, exports.Possible_Structural_Token)(iterator, abort, { 'expected token': ['}', null] }),
65
+ '{': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
66
+ 'entries': (0, exports.ID_Value_Pairs)(iterator, { 'end token': ['}', null] }),
67
+ '}': (0, exports.Possible_Structural_Token)(iterator, { 'expected token': ['}', null] }),
86
68
  }]]);
87
69
  case '(': return p_.ss($, ($) => ['concrete', ['group', ['verbose', {
88
- '(': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
89
- 'properties': (0, exports.ID_Value_Pairs)(iterator, abort, { 'end token': [')', null] }),
90
- ')': (0, exports.Possible_Structural_Token)(iterator, abort, { 'expected token': [')', null] })
70
+ '(': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
71
+ 'properties': (0, exports.ID_Value_Pairs)(iterator, { 'end token': [')', null] }),
72
+ ')': (0, exports.Possible_Structural_Token)(iterator, { 'expected token': [')', null] })
91
73
  }]]]);
92
74
  case '[': return p_.ss($, ($) => ['concrete', ['list', {
93
- '[': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
94
- 'items': (0, exports.Items)(iterator, abort, { 'end token': [']', null] }),
95
- ']': (0, exports.Possible_Structural_Token)(iterator, abort, { 'expected token': [']', null] })
75
+ '[': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
76
+ 'items': (0, exports.Items)(iterator, { 'end token': [']', null] }),
77
+ ']': (0, exports.Possible_Structural_Token)(iterator, { 'expected token': [']', null] })
96
78
  }]]);
97
79
  case '<': return p_.ss($, ($) => ['concrete', ['group', ['concise', {
98
- '<': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
99
- 'properties': (0, exports.Items)(iterator, abort, { 'end token': ['>', null] }),
100
- '>': (0, exports.Possible_Structural_Token)(iterator, abort, { 'expected token': ['>', null] })
80
+ '<': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
81
+ 'properties': (0, exports.Items)(iterator, { 'end token': ['>', null] }),
82
+ '>': (0, exports.Possible_Structural_Token)(iterator, { 'expected token': ['>', null] })
101
83
  }]]]);
102
84
  case '@': return p_.ss($, ($) => ['include', {
103
- '@': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
85
+ '@': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
104
86
  'path': iterator.expect({
105
- abort: abort,
106
- get_error: ($) => temp_create_error($, p_.literal.list([
87
+ expected: p_.literal.list([
107
88
  ['a text value', null]
108
- ]), iterator.get_end_info()),
89
+ ]),
109
90
  item: (token, abort2) => token.type[0] === 'text'
110
- ? (0, exports.Text)(iterator, abort, { 'text': token.type[1] })
91
+ ? (0, exports.Text)(iterator, { 'text': token.type[1] })
111
92
  : abort2(null),
112
93
  })
113
94
  }]);
114
95
  case '~': return p_.ss($, ($) => ['concrete', ['nothing', {
115
- '~': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
96
+ '~': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
116
97
  }]]);
117
98
  case '|': return p_.ss($, ($) => ['concrete', ['state', {
118
- '|': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
99
+ '|': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
119
100
  'status': iterator.expect({
120
- abort: abort,
121
- get_error: ($) => temp_create_error($, p_.literal.list([
101
+ expected: p_.literal.list([
122
102
  ['any value', null],
123
103
  ['#', null]
124
- ]), iterator.get_end_info()),
104
+ ]),
125
105
  item: (token, abort2) => p_.from.state(token.type).decide(($) => {
126
106
  switch ($[0]) {
127
107
  case 'text': return p_.ss($, ($) => ['set', {
128
- 'option': (0, exports.Text)(iterator, abort, { 'text': $ }),
129
- 'value': (0, exports.Value)(iterator, abort)
108
+ 'option': (0, exports.Text)(iterator, { 'text': $ }),
109
+ 'value': (0, exports.Value)(iterator)
130
110
  }]);
131
111
  case '#': return p_.ss($, ($) => ['missing', {
132
- '#': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
112
+ '#': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
133
113
  }]);
134
114
  default: return abort2(null);
135
115
  }
@@ -137,14 +117,14 @@ const Value = (iterator, abort) => iterator.expect({
137
117
  })
138
118
  }]]);
139
119
  case '_': return p_.ss($, ($) => ['concrete', ['optional', ['not set', {
140
- '_': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
120
+ '_': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
141
121
  }]]]);
142
122
  case '*': return p_.ss($, ($) => ['concrete', ['optional', ['set', {
143
- '*': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
144
- 'value': (0, exports.Value)(iterator, abort)
123
+ '*': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
124
+ 'value': (0, exports.Value)(iterator)
145
125
  }]]]);
146
126
  case '#': return p_.ss($, ($) => ['missing', {
147
- '#': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
127
+ '#': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
148
128
  }]);
149
129
  //unexpected tokens
150
130
  // case '!': return p_.ss($, ($) => iterator.unexpected_token(token, p_.literal.list([
@@ -171,19 +151,19 @@ const Value = (iterator, abort) => iterator.expect({
171
151
  }),
172
152
  });
173
153
  exports.Value = Value;
174
- const Guaranteed_Structural_Token = (iterator) => iterator.consume((token) => ({
175
- 'trailing trivia': token['trailing trivia'],
154
+ const Guaranteed_Structural_Token = (iterator, $p) => iterator.consume(//make this a 'discard' operation
155
+ (token) => ({
156
+ 'trailing trivia': $p.token['trailing trivia'],
176
157
  'range': {
177
- 'start': token['start'],
178
- 'end': token['end']
158
+ 'start': $p.token['start'],
159
+ 'end': $p.token['end']
179
160
  }
180
161
  }), () => (0, unreachable_code_path_1.default)("this function should only be called when we are sure there is a structural token to consume"));
181
162
  exports.Guaranteed_Structural_Token = Guaranteed_Structural_Token;
182
- const Possible_Structural_Token = (iterator, abort, $p) => iterator.expect({
183
- abort: abort,
184
- get_error: ($) => temp_create_error($, p_.literal.list([
163
+ const Possible_Structural_Token = (iterator, $p) => iterator.expect({
164
+ expected: p_.literal.list([
185
165
  $p['expected token']
186
- ]), iterator.get_end_info()),
166
+ ]),
187
167
  item: (token, abort2) => {
188
168
  iterator.discard(() => null);
189
169
  return ({
@@ -196,7 +176,7 @@ const Possible_Structural_Token = (iterator, abort, $p) => iterator.expect({
196
176
  },
197
177
  });
198
178
  exports.Possible_Structural_Token = Possible_Structural_Token;
199
- const Text = (iterator, abort, $p) => iterator.consume((token) => ({
179
+ const Text = (iterator, $p) => iterator.consume((token) => ({
200
180
  'range': {
201
181
  'start': token['start'],
202
182
  'end': token['end']
@@ -205,46 +185,43 @@ const Text = (iterator, abort, $p) => iterator.consume((token) => ({
205
185
  'trailing trivia': token['trailing trivia'],
206
186
  }), () => (0, unreachable_code_path_1.default)("this function should only be called when we are sure there is a text token to consume"));
207
187
  exports.Text = Text;
208
- const Items = (iterator, abort, $p) => iterator.list({
188
+ const Items = (iterator, $p) => iterator.list({
209
189
  has_more_items: (current_token) => current_token.type[0] !== $p['end token'][0],
210
190
  handle: () => iterator.expect({
211
- abort: abort,
212
- get_error: ($) => temp_create_error($, p_.literal.list([
191
+ expected: p_.literal.list([
213
192
  ['any value', null],
214
193
  $p['end token']
215
- ]), iterator.get_end_info()),
194
+ ]),
216
195
  item: (token, abort2) => ({
217
- 'value': (0, exports.Value)(iterator, abort)
196
+ 'value': (0, exports.Value)(iterator)
218
197
  }),
219
198
  }),
220
199
  });
221
200
  exports.Items = Items;
222
- const ID_Value_Pairs = (iterator, abort, $p) => iterator.list({
201
+ const ID_Value_Pairs = (iterator, $p) => iterator.list({
223
202
  has_more_items: (current_token) => current_token.type[0] !== $p['end token'][0],
224
203
  handle: () => ({
225
204
  'id': iterator.expect({
226
- abort: abort,
227
- get_error: ($) => temp_create_error($, p_.literal.list([
205
+ expected: p_.literal.list([
228
206
  ['a text value', null],
229
207
  $p['end token'],
230
- ]), iterator.get_end_info()),
208
+ ]),
231
209
  item: (token, abort2) => token.type[0] === 'text'
232
- ? (0, exports.Text)(iterator, abort, { 'text': token.type[1] })
210
+ ? (0, exports.Text)(iterator, { 'text': token.type[1] })
233
211
  : abort2(null),
234
212
  }),
235
213
  'assignment': iterator.expect({
236
- abort: abort,
237
- get_error: ($) => temp_create_error($, p_.literal.list([
214
+ expected: p_.literal.list([
238
215
  ['a text value', null],
239
216
  [':', null],
240
217
  $p['end token']
241
- ]), iterator.get_end_info()),
218
+ ]),
242
219
  item: (token, abort2) => p_.from.state(token.type).decide(($) => {
243
220
  switch ($[0]) {
244
221
  case 'text': return p_.ss($, ($) => p_.literal.not_set());
245
222
  case ':': return p_.ss($, ($) => p_.literal.set({
246
- ':': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
247
- 'value': p_.literal.set((0, exports.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
223
+ ':': (0, exports.Guaranteed_Structural_Token)(iterator, { 'token': token }),
224
+ 'value': p_.literal.set((0, exports.Value)(iterator)) //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
248
225
  }));
249
226
  default: return $[0] === $p['end token'][0] ? p_.literal.not_set() : abort2(null);
250
227
  }
@@ -254,4 +231,4 @@ const ID_Value_Pairs = (iterator, abort, $p) => iterator.list({
254
231
  }),
255
232
  });
256
233
  exports.ID_Value_Pairs = ID_Value_Pairs;
257
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vbWFudWFsL3Byb2R1Y3Rpb25zL3BhcnNlX3RyZWUvdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0VBQWdFO0FBQ2hFLGlGQUFrRTtBQUdsRSx1SUFBZ0g7QUFvRmhILE1BQU0saUJBQWlCLEdBQUcsQ0FDdEIsT0FBa0QsRUFDbEQsUUFBc0MsRUFDdEMsUUFBNkIsRUFDUixFQUFFLENBQUMsQ0FBQztJQUN6QixVQUFVLEVBQUUsUUFBUTtJQUNwQixPQUFPLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUN0QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsRUFBRTtZQUN4QixPQUFPLEVBQUUsQ0FBQztTQUNiLENBQUMsRUFDRixHQUFHLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRTtZQUNwQixLQUFLLEVBQUUsUUFBUTtTQUNsQixDQUFDLENBQ0w7Q0FDSixDQUFDLENBQUE7QUFHSyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQ3hCLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsY0FBYztZQUNqRCxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQ2IsR0FBRyxFQUFFLElBQUEsbUNBQTJCLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztnQkFDakQsT0FBTyxFQUFFLElBQUEsYUFBSyxFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7YUFDbEMsQ0FBQztZQUNGLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtLQUM3QixDQUFDO0lBQ0YsU0FBUyxFQUFFLElBQUEsYUFBSyxFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7Q0FDcEMsQ0FBQyxDQUFBO0FBVlcsUUFBQSxRQUFRLFlBVW5CO0FBRUssTUFBTSxLQUFLLEdBQXFCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUN4RSxLQUFLLEVBQUUsS0FBSztJQUNaLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQy9CLENBQUMsRUFDRCxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBb0I7UUFDL0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDO0tBQ3RCLENBQUMsRUFDRixRQUFRLENBQUMsWUFBWSxFQUFFLENBQzFCO0lBQ0QsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN0QixNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FDcEMsQ0FBQyxDQUFDLEVBQXFCLEVBQUU7WUFDckIsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDWCxLQUFLLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQXFCLEVBQUUsQ0FBQyxDQUFDLFVBQVU7b0JBQzlELENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUM7NEJBQ3JCLEtBQUssRUFBRSxLQUFLOzRCQUNaLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQy9CLENBQUMsRUFDRCxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQ0FDWixDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUM7NkJBQ3pCLENBQUMsRUFDRixRQUFRLENBQUMsWUFBWSxFQUFFLENBQzFCOzRCQUNELElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssTUFBTTtnQ0FDN0MsQ0FBQyxDQUFDLElBQUEsWUFBSSxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dDQUNsRCxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQzt5QkFDckIsQ0FBQyxDQUFDO2lCQUNOLENBQUMsQ0FBQTtnQkFDRixLQUFLLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsWUFBWSxFQUFFOzRCQUN6RCxHQUFHLEVBQUUsSUFBQSxtQ0FBMkIsRUFBQyxRQUFRLEVBQUUsS0FBSyxDQUFDOzRCQUNqRCxTQUFTLEVBQUUsSUFBQSxzQkFBYyxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQzs0QkFDeEUsR0FBRyxFQUFFLElBQUEsaUNBQXlCLEVBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLGdCQUFnQixFQUFFLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7eUJBQ3JGLENBQUMsQ0FBQyxDQUFDLENBQUE7Z0JBQ0osS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRTtnQ0FDaEUsR0FBRyxFQUFFLElBQUEsbUNBQTJCLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztnQ0FDakQsWUFBWSxFQUFFLElBQUEsc0JBQWMsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7Z0NBQzNFLEdBQUcsRUFBRSxJQUFBLGlDQUF5QixFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDOzZCQUNyRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7Z0JBQ0wsS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFxQixFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxNQUFNLEVBQUU7NEJBQ3RFLEdBQUcsRUFBRSxJQUFBLG1DQUEyQixFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7NEJBQ2pELE9BQU8sRUFBRSxJQUFBLGFBQUssRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7NEJBQzdELEdBQUcsRUFBRSxJQUFBLGlDQUF5QixFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDO3lCQUNyRixDQUFDLENBQUMsQ0FBQyxDQUFBO2dCQUNKLEtBQUssR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBcUIsRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsU0FBUyxFQUFFO2dDQUNuRixHQUFHLEVBQUUsSUFBQSxtQ0FBMkIsRUFBQyxRQUFRLEVBQUUsS0FBSyxDQUFDO2dDQUNqRCxZQUFZLEVBQUUsSUFBQSxhQUFLLEVBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDO2dDQUNsRSxHQUFHLEVBQUUsSUFBQSxpQ0FBeUIsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQzs2QkFDckYsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2dCQUNMLEtBQUssR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUU7d0JBQ3pDLEdBQUcsRUFBRSxJQUFBLG1DQUEyQixFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7d0JBQ2pELE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDOzRCQUNwQixLQUFLLEVBQUUsS0FBSzs0QkFDWixTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUMvQixDQUFDLEVBQ0QsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0NBQ1osQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDOzZCQUN6QixDQUFDLEVBQ0YsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUMxQjs0QkFDRCxJQUFJLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLE1BQU07Z0NBQzdDLENBQUMsQ0FBQyxJQUFBLFlBQUksRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQ0FDbEQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7eUJBQ3JCLENBQUM7cUJBQ0wsQ0FBQyxDQUFDLENBQUE7Z0JBQ0gsS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLFNBQVMsRUFBRTs0QkFDdEQsR0FBRyxFQUFFLElBQUEsbUNBQTJCLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQzt5QkFDcEQsQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQkFDSixLQUFLLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxFQUFFOzRCQUNwRCxHQUFHLEVBQUUsSUFBQSxtQ0FBMkIsRUFBQyxRQUFRLEVBQUUsS0FBSyxDQUFDOzRCQUNqRCxRQUFRLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQztnQ0FDdEIsS0FBSyxFQUFFLEtBQUs7Z0NBQ1osU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FDL0IsQ0FBQyxFQUNELEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO29DQUNaLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQztvQ0FDbkIsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDO2lDQUNkLENBQUMsRUFDRixRQUFRLENBQUMsWUFBWSxFQUFFLENBQzFCO2dDQUNELElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQ3JELENBQUMsQ0FBQyxFQUEyQyxFQUFFO29DQUMzQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO3dDQUNYLEtBQUssTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUU7Z0RBQ3hDLFFBQVEsRUFBRSxJQUFBLFlBQUksRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO2dEQUM5QyxPQUFPLEVBQUUsSUFBQSxhQUFLLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQzs2Q0FDbEMsQ0FBQyxDQUFDLENBQUE7d0NBQ0gsS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRTtnREFDekMsR0FBRyxFQUFFLElBQUEsbUNBQTJCLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQzs2Q0FDcEQsQ0FBQyxDQUFDLENBQUE7d0NBRUgsT0FBTyxDQUFDLENBQUMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7b0NBQ2hDLENBQUM7Z0NBQ0wsQ0FBQyxDQUFDOzZCQUNULENBQUM7eUJBQ0wsQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQkFDSixLQUFLLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsU0FBUyxFQUFFO2dDQUNuRSxHQUFHLEVBQUUsSUFBQSxtQ0FBMkIsRUFBQyxRQUFRLEVBQUUsS0FBSyxDQUFDOzZCQUNwRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7Z0JBQ0wsS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRTtnQ0FDL0QsR0FBRyxFQUFFLElBQUEsbUNBQTJCLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztnQ0FDakQsT0FBTyxFQUFFLElBQUEsYUFBSyxFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7NkJBQ2xDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQkFDTCxLQUFLLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFO3dCQUN6QyxHQUFHLEVBQUUsSUFBQSxtQ0FBMkIsRUFBQyxRQUFRLEVBQUUsS0FBSyxDQUFDO3FCQUNwRCxDQUFDLENBQUMsQ0FBQTtnQkFFSCxtQkFBbUI7Z0JBRW5CLHNGQUFzRjtnQkFDdEYsMEJBQTBCO2dCQUMxQixPQUFPO2dCQUNQLHNGQUFzRjtnQkFDdEYsMEJBQTBCO2dCQUMxQixPQUFPO2dCQUNQLHNGQUFzRjtnQkFDdEYsMEJBQTBCO2dCQUMxQixPQUFPO2dCQUNQLHNGQUFzRjtnQkFDdEYsMEJBQTBCO2dCQUMxQixPQUFPO2dCQUNQLHNGQUFzRjtnQkFDdEYsMEJBQTBCO2dCQUMxQixPQUFPO2dCQUNQLHNGQUFzRjtnQkFDdEYsMEJBQTBCO2dCQUMxQixPQUFPO2dCQUVQLE9BQU8sQ0FBQyxDQUFDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ2hDLENBQUM7UUFDTCxDQUFDLENBQUM7S0FDVCxDQUFDO0NBQ0wsQ0FBQyxDQUFBO0FBbklXLFFBQUEsS0FBSyxTQW1JaEI7QUFFSyxNQUFNLDJCQUEyQixHQUEyQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FDN0csQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDUixpQkFBaUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUM7SUFDM0MsT0FBTyxFQUFFO1FBQ0wsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDdkIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUM7S0FDdEI7Q0FDSixDQUFDLEVBQ0YsR0FBRyxFQUFFLENBQUMsSUFBQSwrQkFBdUIsRUFBQyw2RkFBNkYsQ0FBQyxDQUMvSCxDQUFBO0FBVFksUUFBQSwyQkFBMkIsK0JBU3ZDO0FBRU0sTUFBTSx5QkFBeUIsR0FBeUMsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUNwSCxLQUFLLEVBQUUsS0FBSztJQUNaLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQy9CLENBQUMsRUFDRCxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBb0I7UUFDL0IsRUFBRSxDQUFDLGdCQUFnQixDQUFDO0tBQ3ZCLENBQUMsRUFDRixRQUFRLENBQUMsWUFBWSxFQUFFLENBQzFCO0lBQ0QsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQ3BCLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUNiLENBQUE7UUFDRCxPQUFPLENBQUM7WUFDSixpQkFBaUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUM7WUFDM0MsT0FBTyxFQUFFO2dCQUNMLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDO2dCQUN2QixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQzthQUN0QjtTQUNKLENBQUMsQ0FBQTtJQUNOLENBQUM7Q0FDSixDQUFDLENBQUE7QUFyQlcsUUFBQSx5QkFBeUIsNkJBcUJwQztBQUVLLE1BQU0sSUFBSSxHQUFvQixDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUMxRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNSLE9BQU8sRUFBRTtRQUNMLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ3ZCLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDO0tBQ3RCO0lBQ0QsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJO0lBQ2hCLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztDQUM5QyxDQUFDLEVBQ0YsR0FBRyxFQUFFLENBQUMsSUFBQSwrQkFBdUIsRUFBQyx1RkFBdUYsQ0FBQyxDQUV6SCxDQUFBO0FBWFksUUFBQSxJQUFJLFFBV2hCO0FBRU0sTUFBTSxLQUFLLEdBQXFCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFDMUUsY0FBYyxFQUFFLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0UsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFDMUIsS0FBSyxFQUFFLEtBQUs7UUFDWixTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUMvQixDQUFDLEVBQ0QsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQW9CO1lBQy9CLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQztZQUNuQixFQUFFLENBQUMsV0FBVyxDQUFDO1NBQ2xCLENBQUMsRUFDRixRQUFRLENBQUMsWUFBWSxFQUFFLENBQzFCO1FBQ0QsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN0QixPQUFPLEVBQUUsSUFBQSxhQUFLLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztTQUNsQyxDQUFDO0tBQ0wsQ0FBQztDQUNMLENBQUMsQ0FBQTtBQWhCVyxRQUFBLEtBQUssU0FnQmhCO0FBRUssTUFBTSxjQUFjLEdBQThCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFDNUYsY0FBYyxFQUFFLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0UsTUFBTSxFQUFFLEdBQTJCLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLElBQUksRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ2xCLEtBQUssRUFBRSxLQUFLO1lBQ1osU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FDL0IsQ0FBQyxFQUNELEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFvQjtnQkFDL0IsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDO2dCQUN0QixFQUFFLENBQUMsV0FBVyxDQUFDO2FBQ2xCLENBQUMsRUFDRixRQUFRLENBQUMsWUFBWSxFQUFFLENBQzFCO1lBQ0QsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxNQUFNO2dCQUM3QyxDQUFDLENBQUMsSUFBQSxZQUFJLEVBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2xELENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1NBQ3JCLENBQUM7UUFDRixZQUFZLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUMxQixLQUFLLEVBQUUsS0FBSztZQUNaLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQy9CLENBQUMsRUFDRCxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBb0I7Z0JBQy9CLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQztnQkFDdEIsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDO2dCQUNYLEVBQUUsQ0FBQyxXQUFXLENBQUM7YUFDbEIsQ0FBQyxFQUNGLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FDMUI7WUFDRCxJQUFJLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUNyRCxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNGLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ1gsS0FBSyxNQUFNLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUE7b0JBQ3pELEtBQUssR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7d0JBQzVDLEdBQUcsRUFBRSxJQUFBLG1DQUEyQixFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7d0JBQ2pELE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFBLGFBQUssRUFBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyx3SEFBd0g7cUJBQzNLLENBQUMsQ0FBQyxDQUFBO29CQUVILE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUNyRixDQUFDO1lBQ0wsQ0FBQyxDQUFDO1NBQ1QsQ0FBQztRQUNGLHdIQUF3SDtLQUMzSCxDQUFDO0NBQ0wsQ0FBQyxDQUFBO0FBM0NXLFFBQUEsY0FBYyxrQkEyQ3pCIn0=
234
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vbWFudWFsL3Byb2R1Y3Rpb25zL3BhcnNlX3RyZWUvdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0VBQWdFO0FBRWhFLHVJQUFnSDtBQWlHekcsTUFBTSxRQUFRLEdBQXdCLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQ3hCLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsY0FBYztZQUNqRCxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQ2IsR0FBRyxFQUFFLElBQUEsbUNBQTJCLEVBQzVCLFFBQVEsRUFDUixFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FDckI7Z0JBQ0QsT0FBTyxFQUFFLElBQUEsYUFBSyxFQUFDLFFBQVEsQ0FBQzthQUMzQixDQUFDO1lBQ0YsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO0tBQzdCLENBQUM7SUFDRixTQUFTLEVBQUUsSUFBQSxhQUFLLEVBQUMsUUFBUSxDQUFDO0NBQzdCLENBQUMsQ0FBQTtBQWJXLFFBQUEsUUFBUSxZQWFuQjtBQUVLLE1BQU0sS0FBSyxHQUFxQixDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUNqRSxRQUFRLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQW9CO1FBQ3pDLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQztLQUN0QixDQUFDO0lBQ0YsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFB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
@@ -4,10 +4,12 @@ import * as d_out from "../../../../interface/generated/liana/schemas/token/data
4
4
  import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data";
5
5
  import * as d_location from "../../../../interface/generated/liana/schemas/location/data";
6
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, {
7
+ export declare const Trivia: p_pi.Production<d_out.Trivia, d_function.Lexer_Error, d_function.Lexer_Error.expected, d_in.Annotated_Character, d_location.Location>;
8
+ export declare const Delimited_Text: p_pi.Production_With_Parameter<string, d_function.Lexer_Error, d_function.Lexer_Error.expected, d_in.Annotated_Character, d_location.Location, {
9
9
  'allow newlines': boolean;
10
10
  'end character': number;
11
11
  'start character': d_in.Annotated_Character;
12
12
  }>;
13
- export declare const Tokenizer_Result: p_pi.Production<d_out.Tokenizer_Result, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location>;
13
+ export declare const Tokenizer_Result: p_pi.Production_With_Parameter<d_out.Tokenizer_Result, d_function.Lexer_Error, d_function.Lexer_Error.expected, d_in.Annotated_Character, d_location.Location, {
14
+ 'end info': d_location.Location;
15
+ }>;
@@ -89,7 +89,7 @@ const Whitespace = (iterator) => {
89
89
  }
90
90
  };
91
91
  exports.Whitespace = Whitespace;
92
- const Trivia = (iterator, abort) => ({
92
+ const Trivia = (iterator) => ({
93
93
  'leading whitespace': (0, exports.Whitespace)(iterator),
94
94
  'comments': iterator.list({
95
95
  has_more_items: (current) => {
@@ -146,15 +146,13 @@ const Trivia = (iterator, abort) => ({
146
146
  },
147
147
  }), ($) => $), () => ({
148
148
  'asterisk': iterator.expect({
149
- abort: abort,
150
- get_error: ($) => create_error($, ['block comment termination', null]),
149
+ expected: ['block comment termination', null],
151
150
  item: ($, abort2) => $.code === 0x2A
152
151
  ? $
153
152
  : abort2(null),
154
153
  }),
155
154
  'solidus': iterator.expect({
156
- abort: abort,
157
- get_error: ($) => create_error($, ['block comment termination', null]),
155
+ expected: ['block comment termination', null],
158
156
  item: ($, abort2) => $.code === 0x2F
159
157
  ? $
160
158
  : abort2(null),
@@ -170,7 +168,7 @@ const Trivia = (iterator, abort) => ({
170
168
  }),
171
169
  });
172
170
  exports.Trivia = Trivia;
173
- const Delimited_Text = (iterator, abort, $p) => {
171
+ const Delimited_Text = (iterator, $p) => {
174
172
  const Character = {
175
173
  backspace: 0x08, // \b
176
174
  form_feed: 0x0C, // \f
@@ -196,7 +194,7 @@ const Delimited_Text = (iterator, abort, $p) => {
196
194
  while (true) {
197
195
  const $ = iterator.look_raw();
198
196
  if ($ === null) {
199
- return abort({
197
+ return iterator.abort({
200
198
  'range': create_range(iterator, { 'start character': $p['start character'] }),
201
199
  'expected': ['text termination', null]
202
200
  });
@@ -209,7 +207,7 @@ const Delimited_Text = (iterator, abort, $p) => {
209
207
  case Character.line_feed:
210
208
  case Character.carriage_return:
211
209
  if (!$p['allow newlines']) {
212
- return abort({
210
+ return iterator.abort({
213
211
  'expected': ['no end of line in text', null],
214
212
  'range': create_range(iterator, { 'start character': $p['start character'] }),
215
213
  });
@@ -222,7 +220,7 @@ const Delimited_Text = (iterator, abort, $p) => {
222
220
  {
223
221
  const $ = iterator.look_raw();
224
222
  if ($ === null) {
225
- return abort({
223
+ return iterator.abort({
226
224
  'range': create_range(iterator, { 'start character': $p['start character'] }),
227
225
  'expected': ['escape character', { 'found': p_.literal.not_set() }]
228
226
  });
@@ -326,13 +324,13 @@ const Delimited_Text = (iterator, abort, $p) => {
326
324
  const get_char = () => {
327
325
  const char = iterator.look_raw();
328
326
  if (char === null) {
329
- return abort({
327
+ return iterator.abort({
330
328
  'range': create_range(iterator, { 'start character': $p['start character'] }),
331
329
  'expected': ['unicode character', { 'found': p_.literal.not_set() }]
332
330
  });
333
331
  }
334
332
  if (char[0].code < Character.a || (char[0].code > Character.f && char[0].code < Character.A) || char[0].code > Character.F || char[0].code < 0x30 || char[0].code > 0x39) {
335
- return abort({
333
+ return iterator.abort({
336
334
  'range': create_range(iterator, { 'start character': $p['start character'] }),
337
335
  'expected': ['unicode character', { 'found': p_.literal.set(char[0].code) }]
338
336
  });
@@ -347,7 +345,7 @@ const Delimited_Text = (iterator, abort, $p) => {
347
345
  }), () => (0, unreachable_code_path_1.default)("the number was built in a controlled way")));
348
346
  break;
349
347
  default:
350
- return abort({
348
+ return iterator.abort({
351
349
  'range': create_range(iterator, { 'start character': $p['start character'] }),
352
350
  'expected': ['escape character', {
353
351
  'found': p_.literal.set($[0].code)
@@ -365,8 +363,8 @@ const Delimited_Text = (iterator, abort, $p) => {
365
363
  return txt;
366
364
  };
367
365
  exports.Delimited_Text = Delimited_Text;
368
- const Tokenizer_Result = (iterator, abort) => ({
369
- 'leading trivia': (0, exports.Trivia)(iterator, abort),
366
+ const Tokenizer_Result = (iterator, $p) => ({
367
+ 'leading trivia': (0, exports.Trivia)(iterator),
370
368
  'tokens': iterator.list({
371
369
  has_more_items: ($) => true,
372
370
  handle: ($) => ({
@@ -448,7 +446,7 @@ const Tokenizer_Result = (iterator, abort) => ({
448
446
  case Character.quotation_mark:
449
447
  iterator.discard(() => null);
450
448
  return ['text', {
451
- 'value': (0, exports.Delimited_Text)(iterator, abort, {
449
+ 'value': (0, exports.Delimited_Text)(iterator, {
452
450
  'start character': $,
453
451
  'end character': Character.quotation_mark,
454
452
  'allow newlines': true,
@@ -458,7 +456,7 @@ const Tokenizer_Result = (iterator, abort) => ({
458
456
  case Character.backtick:
459
457
  iterator.discard(() => null);
460
458
  return ['text', {
461
- 'value': (0, exports.Delimited_Text)(iterator, abort, {
459
+ 'value': (0, exports.Delimited_Text)(iterator, {
462
460
  'start character': $,
463
461
  'end character': Character.backtick,
464
462
  'allow newlines': false,
@@ -468,7 +466,7 @@ const Tokenizer_Result = (iterator, abort) => ({
468
466
  case Character.apostrophe:
469
467
  iterator.discard(() => null);
470
468
  return ['text', {
471
- 'value': (0, exports.Delimited_Text)(iterator, abort, {
469
+ 'value': (0, exports.Delimited_Text)(iterator, {
472
470
  'start character': $,
473
471
  'end character': Character.apostrophe,
474
472
  'allow newlines': false,
@@ -521,10 +519,10 @@ const Tokenizer_Result = (iterator, abort) => ({
521
519
  }),
522
520
  'start': $.location,
523
521
  'end': create_range(iterator, { 'start character': $ }).end,
524
- 'trailing trivia': (0, exports.Trivia)(iterator, abort),
522
+ 'trailing trivia': (0, exports.Trivia)(iterator),
525
523
  }),
526
524
  }),
527
- 'end': iterator.get_end_info()
525
+ 'end': $p['end info']
528
526
  });
529
527
  exports.Tokenizer_Result = Tokenizer_Result;
530
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGVkX2NoYXJhY3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcHJvZHVjdGlvbnMvdG9rZW4vYW5ub3RhdGVkX2NoYXJhY3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrRUFBZ0U7QUFDaEUsaUZBQWtFO0FBSWxFLHVJQUFnSDtBQUNoSCxtSUFBNEc7QUFDNUcseUhBQWtHO0FBQ2xHLHFIQUE4RjtBQVU5RixjQUFjO0FBSWQsTUFBTSxZQUFZLEdBT2QsQ0FDQSxRQUFRLEVBQ1IsRUFBRSxFQUNtQixFQUFFLENBQUMsQ0FBQztJQUN6QixPQUFPLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUMsUUFBUTtJQUN2QyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FDaEIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQ3ZCLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQ3pCO0NBQ0osQ0FBQyxDQUFBO0FBR0ssTUFBTSxVQUFVLEdBSW5CLENBQ0EsUUFBUSxFQUNRLEVBQUU7SUFFZCxNQUFNLHVCQUF1QixHQUFHLENBQUMsQ0FBMkIsRUFBRSxFQUFFO1FBQzVELFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2IsS0FBSyxJQUFJLEVBQUUsS0FBSztnQkFDWixPQUFPLElBQUksQ0FBQTtZQUNmLEtBQUssSUFBSSxFQUFFLEtBQUs7Z0JBQ1osT0FBTyxJQUFJLENBQUE7WUFDZixLQUFLLElBQUksRUFBRSxLQUFLO2dCQUNaLE9BQU8sSUFBSSxDQUFBO1lBQ2YsS0FBSyxJQUFJLEVBQUUsUUFBUTtnQkFDZixPQUFPLElBQUksQ0FBQTtZQUNmLEtBQUssSUFBSSxFQUFFLElBQUk7Z0JBQ1gsT0FBTyxJQUFJLENBQUE7WUFDZjtnQkFDSSxPQUFPLEtBQUssQ0FBQTtRQUNwQixDQUFDO0lBQ0wsQ0FBQyxDQUFBO0lBRUQsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ2hDLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUMvQixDQUFDO1NBQU0sQ0FBQztRQUNKLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3BDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUMvQixDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUMvQixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO2dCQUNsQixPQUFPLEVBQUUsSUFBQSx3QkFBZ0IsRUFDckIsUUFBUSxDQUFDLElBQUksQ0FBQztvQkFDVixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztvQkFDakQsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7d0JBQ1YsUUFBUSxDQUFDLE9BQU8sQ0FDWixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQSxDQUFDLHdCQUF3Qjt3QkFDeEMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFBO29CQUNqQixDQUFDO2lCQUNKLENBQUMsRUFDRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUNYO2dCQUNELE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLENBQUM7YUFDMUUsQ0FBQyxDQUFBO1FBQ04sQ0FBQztJQUNMLENBQUM7QUFDTCxDQUFDLENBQUE7QUFqRFEsUUFBQSxVQUFVLGNBaURsQjtBQUVFLE1BQU0sTUFBTSxHQUtmLENBQ0EsUUFBUSxFQUNSLEtBQUssRUFDTyxFQUFFLENBQUMsQ0FBQztJQUNoQixvQkFBb0IsRUFBRSxJQUFBLGtCQUFVLEVBQUMsUUFBUSxDQUFDO0lBQzFDLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3RCLGNBQWMsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3hCLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDdkMsT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLElBQUk7bUJBQ3JCLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFBLENBQUMsNkNBQTZDO1FBQzFILENBQUM7UUFDRCxNQUFNLEVBQUUsQ0FBQyxlQUFlLEVBQTJCLEVBQUU7WUFDakQsUUFBUSxDQUFDLE9BQU8sQ0FDWixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQSxDQUFDLDBCQUEwQjtZQUMxQyxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUE7WUFDckMsSUFBSSxTQUFTLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ3JCLE9BQU8sSUFBQSwrQkFBdUIsRUFBQyxrR0FBa0csQ0FBQyxDQUFBO1lBQ3RJLENBQUM7WUFDRCxRQUFRLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDeEIsS0FBSyxJQUFJLEVBQUUsSUFBSTtvQkFDWCxRQUFRLENBQUMsT0FBTyxDQUNaLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsdUJBQXVCO29CQUN2QyxPQUFPLENBQUM7d0JBQ0osTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQzt3QkFDdEIsU0FBUyxFQUFFLElBQUEsd0JBQWdCLEVBQ3ZCLFFBQVEsQ0FBQyxJQUFJLENBQUM7NEJBQ1YsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRSxxQ0FBcUM7NEJBQ2hHLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dDQUNWLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyx3QkFBd0I7Z0NBQ3hDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQTs0QkFDakIsQ0FBQzt5QkFDSixDQUFDLEVBQ0YsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDWDt3QkFDRCxPQUFPLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxDQUFDO3dCQUN2RSxxQkFBcUIsRUFBRSxJQUFBLGtCQUFVLEVBQUMsUUFBUSxDQUFDO3FCQUM5QyxDQUFDLENBQUE7Z0JBQ04sS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUEsSUFBSTtvQkFDWixRQUFRLENBQUMsT0FBTyxDQUNaLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsdUJBQXVCO29CQUd2QyxNQUFNLFlBQVksR0FBRyxDQUNqQixPQUFzRCxFQUN0RCxRQUF5QyxFQUNuQixFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUMxRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQzt3QkFDSixPQUFPLEVBQUU7NEJBQ0wsT0FBTyxFQUFFLENBQUMsQ0FBQyxRQUFROzRCQUNuQixLQUFLLEVBQUU7Z0NBQ0gsVUFBVSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUM7Z0NBQ25DLFVBQVUsRUFBRTtvQ0FDUixNQUFNLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSTtvQ0FDaEMsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDO2lDQUMzQzs2QkFDSjt5QkFDSjt3QkFDRCxVQUFVLEVBQUUsUUFBUTtxQkFDdkIsQ0FBQyxFQUNGLEdBQUcsRUFBRSxDQUFDLElBQUEsK0JBQXVCLEVBQUMsY0FBYyxDQUFDLENBQ2hELENBQUE7b0JBQ0QsT0FBTzt3QkFDSCxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDO3dCQUN2QixTQUFTLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FDdkIsR0FBRyxFQUFFLENBQUMsSUFBQSx3QkFBZ0IsRUFDbEIsUUFBUSxDQUFDLElBQUksQ0FBQzs0QkFDVixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQ0FDbEIsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQ0FDNUMsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQSxDQUFDLCtEQUErRDs0QkFDaEosQ0FBQzs0QkFDRCxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQ0FDVixRQUFRLENBQUMsT0FBTyxDQUNaLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsd0JBQXdCO2dDQUN4QyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUE7NEJBQ2pCLENBQUM7eUJBQ0osQ0FBQyxFQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1gsRUFDRCxHQUFHLEVBQUUsQ0FBQyxDQUFDOzRCQUNILFVBQVUsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDO2dDQUN4QixLQUFLLEVBQUUsS0FBSztnQ0FDWixTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FDMUIsQ0FBQyxFQUNELENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLENBQ3RDO2dDQUNELElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSTtvQ0FDaEMsQ0FBQyxDQUFDLENBQUM7b0NBQ0gsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7NkJBQ3JCLENBQUM7NEJBQ0YsU0FBUyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0NBQ3ZCLEtBQUssRUFBRSxLQUFLO2dDQUNaLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUMxQixDQUFDLEVBQ0QsQ0FBQywyQkFBMkIsRUFBRSxJQUFJLENBQUMsQ0FDdEM7Z0NBQ0QsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJO29DQUNoQyxDQUFDLENBQUMsQ0FBQztvQ0FDSCxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQzs2QkFDckIsQ0FBQzt5QkFDTCxDQUFDLENBQ0w7d0JBQ0QsT0FBTyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsQ0FBQzt3QkFDdkUscUJBQXFCLEVBQUUsSUFBQSxrQkFBVSxFQUFDLFFBQVEsQ0FBQztxQkFDOUMsQ0FBQTtnQkFDTCxDQUFDO2dCQUNELE9BQU8sQ0FBQyxDQUFDLE9BQU8sSUFBQSwrQkFBdUIsRUFBQyx3R0FBd0csQ0FBQyxDQUFBO1lBQ3JKLENBQUM7UUFDTCxDQUFDO0tBRUosQ0FBQztDQUNMLENBQUMsQ0FBQTtBQXBIVyxRQUFBLE1BQU0sVUFvSGpCO0FBRUssTUFBTSxjQUFjLEdBVXZCLENBQ0EsUUFBUSxFQUNSLEtBQUssRUFDTCxFQUFFLEVBQ0ksRUFBRTtJQUVKLE1BQU0sU0FBUyxHQUFHO1FBQ2QsU0FBUyxFQUFFLElBQUksRUFBYSxLQUFLO1FBQ2pDLFNBQVMsRUFBRSxJQUFJLEVBQWEsS0FBSztRQUNqQyxHQUFHLEVBQUUsSUFBSSxFQUFtQixLQUFLO1FBQ2pDLFNBQVMsRUFBRSxJQUFJLEVBQWEsS0FBSztRQUNqQyxlQUFlLEVBQUUsSUFBSSxFQUFPLEtBQUs7UUFDakMsY0FBYyxFQUFFLElBQUksRUFBUSxJQUFJO1FBQ2hDLFFBQVEsRUFBRSxJQUFJLEVBQWMsSUFBSTtRQUNoQyxVQUFVLEVBQUUsSUFBSSxFQUFZLElBQUk7UUFDaEMsZUFBZSxFQUFFLElBQUksRUFBTyxJQUFJO1FBQ2hDLE9BQU8sRUFBRSxJQUFJLEVBQWUsSUFBSTtRQUNoQyxDQUFDLEVBQUUsSUFBSSxFQUFxQixJQUFJO1FBQ2hDLENBQUMsRUFBRSxJQUFJLEVBQXFCLElBQUk7UUFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtRQUNoQyxDQUFDLEVBQUUsSUFBSSxFQUFxQixJQUFJO1FBQ2hDLENBQUMsRUFBRSxJQUFJLEVBQXFCLElBQUk7UUFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtRQUNoQyxDQUFDLEVBQUUsSUFBSSxFQUFxQixJQUFJO1FBQ2hDLENBQUMsRUFBRSxJQUFJLEVBQXFCLElBQUk7UUFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtLQUVuQyxDQUFBO0lBQ0QsTUFBTSxHQUFHLEdBQUcsSUFBQSx3QkFBZ0IsRUFDeEIsSUFBQSwrQkFBdUIsRUFDbkIsQ0FBQyxFQUFFLEVBQUUsRUFBRTtRQUNILE9BQU8sSUFBSSxFQUFFLENBQUM7WUFDVixNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUE7WUFDN0IsSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBRWIsT0FBTyxLQUFLLENBQUM7b0JBQ1QsT0FBTyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO29CQUM3RSxVQUFVLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUM7aUJBQ3pDLENBQUMsQ0FBQTtZQUNOLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7Z0JBQ3BDLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyw0QkFBNEI7Z0JBQzVDLE9BQU07WUFDVixDQUFDO1lBQ0QsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2hCLEtBQUssU0FBUyxDQUFDLFNBQVMsQ0FBQztnQkFDekIsS0FBSyxTQUFTLENBQUMsZUFBZTtvQkFDMUIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7d0JBQ3hCLE9BQU8sS0FBSyxDQUFDOzRCQUNULFVBQVUsRUFBRSxDQUFDLHdCQUF3QixFQUFFLElBQUksQ0FBQzs0QkFDNUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO3lCQUNoRixDQUFDLENBQUE7b0JBQ04sQ0FBQztvQkFDRCxRQUFRLENBQUMsT0FBTyxDQUNaLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO29CQUNmLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUE7b0JBQ3pCLE1BQUs7Z0JBQ1QsS0FBSyxTQUFTLENBQUMsZUFBZSxFQUFFLGFBQWE7b0JBQ3pDLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7b0JBQ2YsQ0FBQzt3QkFDRyxNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUE7d0JBQzdCLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDOzRCQUNiLE9BQU8sS0FBSyxDQUFDO2dDQUNULE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztnQ0FDN0UsVUFBVSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDOzZCQUN0RSxDQUFDLENBQUE7d0JBQ04sQ0FBQzt3QkFDRCxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQzs0QkFDaEIsS0FBSyxTQUFTLENBQUMsY0FBYztnQ0FDekIsUUFBUSxDQUFDLE9BQU8sQ0FDWixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQ0FDZixFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFBO2dDQUN4QyxNQUFLOzRCQUNULEtBQUssU0FBUyxDQUFDLFVBQVU7Z0NBQ3JCLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQ2YsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQTtnQ0FDcEMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxRQUFRO2dDQUNuQixRQUFRLENBQUMsT0FBTyxDQUNaLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO2dDQUNmLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUE7Z0NBQ2xDLE1BQUs7NEJBQ1QsS0FBSyxTQUFTLENBQUMsZUFBZTtnQ0FDMUIsUUFBUSxDQUFDLE9BQU8sQ0FDWixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQ0FDZixFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFBO2dDQUN6QyxNQUFLOzRCQUNULEtBQUssU0FBUyxDQUFDLE9BQU87Z0NBQ2xCLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQ2YsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtnQ0FDakMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dDQUNaLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQ2YsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQ0FDbkMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dDQUNaLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQ2YsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQ0FDbkMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dDQUNaLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQ2YsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQ0FDbkMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dDQUNaLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQ2YsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQTtnQ0FDekMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dDQUNaLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQ2YsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQ0FDN0IsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dDQUNaLFFBQVEsQ0FBQyxPQUFPLENBQ1osR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQ2YsTUFBTSxhQUFhLEdBRTNELENBQUMsQ0FBQyxFQUFF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
528
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGVkX2NoYXJhY3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcHJvZHVjdGlvbnMvdG9rZW4vYW5ub3RhdGVkX2NoYXJhY3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrRUFBZ0U7QUFDaEUsaUZBQWtFO0FBSWxFLHVJQUFnSDtBQUNoSCxtSUFBNEc7QUFDNUcseUhBQWtHO0FBQ2xHLHFIQUE4RjtBQVU5RixjQUFjO0FBSWQsTUFBTSxZQUFZLEdBT2QsQ0FDQSxRQUFRLEVBQ1IsRUFBRSxFQUNtQixFQUFFLENBQUMsQ0FBQztJQUN6QixPQUFPLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUMsUUFBUTtJQUN2QyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FDaEIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQ3ZCLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQ3pCO0NBQ0osQ0FBQyxDQUFBO0FBR0ssTUFBTSxVQUFVLEdBSW5CLENBQ0EsUUFBUSxFQUNRLEVBQUU7SUFFZCxNQUFNLHVCQUF1QixHQUFHLENBQUMsQ0FBMkIsRUFBRSxFQUFFO1FBQzVELFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2IsS0FBSyxJQUFJLEVBQUUsS0FBSztnQkFDWixPQUFPLElBQUksQ0FBQTtZQUNmLEtBQUssSUFBSSxFQUFFLEtBQUs7Z0JBQ1osT0FBTyxJQUFJLENBQUE7WUFDZixLQUFLLElBQUksRUFBRSxLQUFLO2dCQUNaLE9BQU8sSUFBSSxDQUFBO1lBQ2YsS0FBSyxJQUFJLEVBQUUsUUFBUTtnQkFDZixPQUFPLElBQUksQ0FBQTtZQUNmLEtBQUssSUFBSSxFQUFFLElBQUk7Z0JBQ1gsT0FBTyxJQUFJLENBQUE7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
@@ -37,20 +37,61 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.Document = void 0;
40
+ const p_ = __importStar(require("pareto-core/dist/implementation/refiner"));
40
41
  const iterate_1 = __importDefault(require("pareto-core/dist/implementation/refiner/specials/iterate"));
41
42
  //dependencies
42
43
  const r_annotated_characters = __importStar(require("../annotated_characters/text"));
43
44
  const pr_tokenize = __importStar(require("../../productions/token/annotated_character"));
44
- const r_from_token = __importStar(require("./tokenizer_result"));
45
+ const r_from_tokenizer_result = __importStar(require("./tokenizer_result"));
45
46
  const Document = ($, abort, $p) => {
46
47
  const ann_chars = r_annotated_characters.Annotated_Characters($, $p);
47
- return (0, iterate_1.default)(//fixme: make this iterate_fully
48
- ann_chars.characters, ann_chars.end, (iter) => r_from_token.Document(//fixme: make this iterate_fully
49
- pr_tokenize.Tokenizer_Result(iter, ($) => abort({
50
- 'type': ['lexer', $],
51
- })), ($) => abort({
52
- 'type': ['parser', $],
53
- })));
48
+ return (0, iterate_1.default)({
49
+ list: ann_chars.characters,
50
+ end_info: ann_chars.end,
51
+ create_dangling_item_error: () => p_.literal.not_set(), //fixme: make this iterate_fully
52
+ create_expectation_error: (expected, found) => ({
53
+ 'type': ['lexer', {
54
+ 'expected': expected,
55
+ 'range': p_.from.state(found).decide(($) => {
56
+ switch ($[0]) {
57
+ case 'end': return p_.ss($, ($) => ({
58
+ 'start': ann_chars.end,
59
+ 'end': ann_chars.end
60
+ }));
61
+ case 'item': return p_.ss($, ($) => ({
62
+ 'start': $.location,
63
+ 'end': $.location, //shouldn't this be incremented by 1?
64
+ }));
65
+ default: return p_.au($[0]);
66
+ }
67
+ }),
68
+ }]
69
+ }),
70
+ abort: abort,
71
+ assign: (iter) => r_from_tokenizer_result.Document(//fixme: make this iterate_fully
72
+ pr_tokenize.Tokenizer_Result(iter.to_new_iterator(($) => ({
73
+ 'type': ['lexer', $],
74
+ }), (expected, found) => ({
75
+ 'expected': expected,
76
+ 'range': p_.from.state(found).decide(($) => {
77
+ switch ($[0]) {
78
+ case 'end': return p_.ss($, ($) => ({
79
+ 'start': ann_chars.end,
80
+ 'end': ann_chars.end
81
+ }));
82
+ case 'item': return p_.ss($, ($) => ({
83
+ 'start': $.location,
84
+ 'end': $.location, //shouldn't this be incremented by 1?
85
+ }));
86
+ default: return p_.au($[0]);
87
+ }
88
+ }),
89
+ })), {
90
+ 'end info': ann_chars.end,
91
+ }), ($) => abort({
92
+ 'type': ['parser', $],
93
+ }))
94
+ });
54
95
  };
55
96
  exports.Document = Document;
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL21hbnVhbC9yZWZpbmVycy9wYXJzZV90cmVlL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx1R0FBZ0Y7QUFRaEYsY0FBYztBQUNkLHFGQUFzRTtBQUN0RSx5RkFBMEU7QUFDMUUsaUVBQWtEO0FBYTNDLE1BQU0sUUFBUSxHQUF3QixDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFHLEVBQUU7SUFDM0QsTUFBTSxTQUFTLEdBQUcsc0JBQXNCLENBQUMsb0JBQW9CLENBQ3pELENBQUMsRUFDRCxFQUFFLENBQ0wsQ0FBQTtJQUNELE9BQU8sSUFBQSxpQkFBUyxFQUFFLGdDQUFnQztJQUM5QyxTQUFTLENBQUMsVUFBVSxFQUNwQixTQUFTLENBQUMsR0FBRyxFQUNiLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGdDQUFnQztJQUM1RCxXQUFXLENBQUMsZ0JBQWdCLENBQ3hCLElBQUksRUFDSixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ1QsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztLQUN2QixDQUFDLENBQ0wsRUFDRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ1QsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztLQUN4QixDQUFDLENBQ0wsQ0FDSixDQUFBO0FBQ0wsQ0FBQyxDQUFBO0FBcEJZLFFBQUEsUUFBUSxZQW9CcEIifQ==
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL21hbnVhbC9yZWZpbmVycy9wYXJzZV90cmVlL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw0RUFBNkQ7QUFFN0QsdUdBQWdGO0FBU2hGLGNBQWM7QUFDZCxxRkFBc0U7QUFDdEUseUZBQTBFO0FBQzFFLDRFQUE2RDtBQWF0RCxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRyxFQUFFO0lBQzNELE1BQU0sU0FBUyxHQUFHLHNCQUFzQixDQUFDLG9CQUFvQixDQUN6RCxDQUFDLEVBQ0QsRUFBRSxDQUNMLENBQUE7SUFDRCxPQUFPLElBQUEsaUJBQVMsRUFNZDtRQUNFLElBQUksRUFBRSxTQUFTLENBQUMsVUFBVTtRQUMxQixRQUFRLEVBQUUsU0FBUyxDQUFDLEdBQUc7UUFDdkIsMEJBQTBCLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQW9CLEVBQUMsZ0NBQWdDO1FBQ3pHLHdCQUF3QixFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM1QyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7b0JBQ2QsVUFBVSxFQUFFLFFBQVE7b0JBQ3BCLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQ2hDLENBQUMsQ0FBQyxFQUFvQixFQUFFO3dCQUNwQixRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDOzRCQUNYLEtBQUssS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFD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
@@ -37,10 +37,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.Document = void 0;
40
+ const p_ = __importStar(require("pareto-core/dist/implementation/refiner"));
40
41
  const iterate_1 = __importDefault(require("pareto-core/dist/implementation/refiner/specials/iterate"));
41
42
  //dependencies
42
43
  const pr_authoring_parse_tree = __importStar(require("../../productions/parse_tree/token"));
43
- const Document = ($, abort) => (0, iterate_1.default)(//fixme: make this iterate_fully
44
- $.tokens, $.end, (iter) => pr_authoring_parse_tree.Document(iter, abort));
44
+ const Document = ($, abort) => (0, iterate_1.default)({
45
+ list: $.tokens,
46
+ end_info: $.end,
47
+ //p_.literal.set<d_function.Parser_Error>(ss), //FIX enable checking for too many tokens
48
+ create_dangling_item_error: () => p_.literal.not_set(),
49
+ abort: abort,
50
+ create_expectation_error: (expected, found) => ({
51
+ 'expected': expected,
52
+ 'cause': p_.from.state(found).decide(($) => {
53
+ switch ($[0]) {
54
+ case 'end': return p_.ss($, ($) => ['missing token', {
55
+ 'end': $,
56
+ }]);
57
+ case 'item': return p_.ss($, ($) => ['unexpected token', {
58
+ 'found': $,
59
+ }]);
60
+ default: return p_.au($[0]);
61
+ }
62
+ })
63
+ }),
64
+ assign: (iter) => pr_authoring_parse_tree.Document(iter)
65
+ });
45
66
  exports.Document = Document;
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5pemVyX3Jlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvcGFyc2VfdHJlZS90b2tlbml6ZXJfcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHVHQUFnRjtBQVVoRixjQUFjO0FBQ2QsNEZBQTZFO0FBVXRFLE1BQU0sUUFBUSxHQUF3QixDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUEsaUJBQVMsRUFBQyxnQ0FBZ0M7QUFDakcsQ0FBQyxDQUFDLE1BQU0sRUFDUixDQUFDLENBQUMsR0FBRyxFQUNMLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQ3RDLElBQUksRUFDSixLQUFLLENBQ1IsQ0FDSixDQUFBO0FBUFksUUFBQSxRQUFRLFlBT3BCIn0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5pemVyX3Jlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvcGFyc2VfdHJlZS90b2tlbml6ZXJfcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDRFQUE2RDtBQUU3RCx1R0FBZ0Y7QUFXaEYsY0FBYztBQUNkLDRGQUE2RTtBQWN0RSxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFBLGlCQUFTLEVBT2xFO0lBQ0UsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ2QsUUFBUSxFQUFFLENBQUMsQ0FBQyxHQUFHO0lBQ2Ysd0ZBQXdGO0lBQ3hGLDBCQUEwQixFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUEyQjtJQUMvRSxLQUFLLEVBQUUsS0FBSztJQUNaLHdCQUF3QixFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM1QyxVQUFVLEVBQUUsUUFBUTtRQUNwQixPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUNoQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ0YsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDWCxLQUFLLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFO3dCQUNqRCxLQUFLLEVBQUUsQ0FBQztxQkFDWCxDQUFDLENBQUMsQ0FBQTtnQkFDSCxLQUFLLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsa0JBQWtCLEVBQUU7d0JBQ3JELE9BQU8sRUFBRSxDQUFDO3FCQUNiLENBQUMsQ0FBQyxDQUFBO2dCQUNILE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUMvQixDQUFDO1FBQ0wsQ0FBQyxDQUNKO0tBQ0osQ0FBQztJQUNGLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUM5QyxJQUFJLENBQ1A7Q0FDSixDQUFDLENBQUE7QUFoQ1csUUFBQSxRQUFRLFlBZ0NuQiJ9
@@ -7,5 +7,6 @@ export type Annotated_Character = {
7
7
  };
8
8
  export type Annotated_Characters = {
9
9
  'characters': p_.List<Annotated_Character>;
10
- 'end': d_location.Location;
10
+ 'end': End;
11
11
  };
12
+ export type End = d_location.Location;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "astn-core",
3
- "version": "0.5.113",
3
+ "version": "0.5.115",
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",