pareto-core 0.1.219 → 0.1.221

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.
@@ -38,11 +38,12 @@ const lit = __importStar(require("../../__internal/sync/literal"));
38
38
  function iterate_safe(list, end_info, assign) {
39
39
  const raw = list.__get_raw();
40
40
  let position = 0;
41
- const look_raw = () => {
42
- if (position < 0 || position >= raw.length) {
41
+ const look_raw = (ahead) => {
42
+ const pos = position + (ahead !== null && ahead !== void 0 ? ahead : 0);
43
+ if (pos < 0 || pos >= raw.length) {
43
44
  return null;
44
45
  }
45
- return [raw[position]];
46
+ return [raw[pos]];
46
47
  };
47
48
  const result = assign({
48
49
  consume: {
@@ -113,6 +114,17 @@ function iterate_safe(list, end_info, assign) {
113
114
  }
114
115
  return assign(this_list_raw[position]);
115
116
  },
117
+ peek_ahead: (offset, assign, no_item) => {
118
+ const this_list_raw = list.__get_raw();
119
+ const currentx = look_raw(offset);
120
+ if (currentx === null) {
121
+ return no_item(end_info);
122
+ }
123
+ if (position > this_list_raw.length - 1) {
124
+ throw new Error("just checked that position is in bounds");
125
+ }
126
+ return assign(this_list_raw[position]);
127
+ },
116
128
  build_segmented_list: ($x) => {
117
129
  const raw = [];
118
130
  while (true) {
@@ -132,4 +144,4 @@ function iterate_safe(list, end_info, assign) {
132
144
  });
133
145
  return result;
134
146
  }
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlcmF0ZSBzYWZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL3JlZmluZXIvc3BlY2lhbHMvaXRlcmF0ZSBzYWZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT0EsK0JBOEpDO0FBbktELG1FQUFvRDtBQUtwRCxTQUF3QixZQUFZLENBS2hDLElBQXFCLEVBQ3JCLFFBQWtCLEVBQ2xCLE1BQWtFO0lBR2xFLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUU1QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUE7SUFFaEIsTUFBTSxRQUFRLEdBQUcsR0FBNkIsRUFBRTtRQUM1QyxJQUFJLFFBQVEsR0FBRyxDQUFDLElBQUksUUFBUSxJQUFJLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN6QyxPQUFPLElBQUksQ0FBQTtRQUNmLENBQUM7UUFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUE7SUFDMUIsQ0FBQyxDQUFBO0lBRUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBRWxCLE9BQU8sRUFBRTtZQUVMLE9BQU8sRUFBRSxDQUNMLE1BQU0sRUFDTixPQUFPLEVBQ1QsRUFBRTtnQkFDQSxNQUFNLFFBQVEsR0FBRyxRQUFRLEVBQUUsQ0FBQTtnQkFDM0IsSUFBSSxRQUFRLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQ3BCLE9BQU8sT0FBTyxDQUNWLFFBQVEsQ0FDWCxDQUFBO2dCQUNMLENBQUM7Z0JBQ0QsUUFBUSxJQUFJLENBQUMsQ0FBQTtnQkFDYixPQUFPLE1BQU0sQ0FDVCxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQ2QsQ0FBQTtZQUNMLENBQUM7WUFFRCxPQUFPLEVBQUUsQ0FDTCxNQUFNLEVBQ04sT0FBTyxFQUNULEVBQUU7Z0JBQ0EsTUFBTSxRQUFRLEdBQUcs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
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlcmF0ZSBzYWZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL3JlZmluZXIvc3BlY2lhbHMvaXRlcmF0ZSBzYWZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT0EsK0JBK0tDO0FBcExELG1FQUFvRDtBQUtwRCxTQUF3QixZQUFZLENBS2hDLElBQXFCLEVBQ3JCLFFBQWtCLEVBQ2xCLE1BQWtFO0lBR2xFLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUU1QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUE7SUFFaEIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFjLEVBQTRCLEVBQUU7UUFDMUQsTUFBTSxHQUFHLEdBQUcsUUFBUSxHQUFHLENBQUMsS0FBSyxhQUFMLEtBQUssY0FBTCxLQUFLLEdBQUksQ0FBQyxDQUFDLENBQUE7UUFDbkMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDL0IsT0FBTyxJQUFJLENBQUE7UUFDZixDQUFDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ3JCLENBQUMsQ0FBQTtJQUVELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUVsQixPQUFPLEVBQUU7WUFFTCxPQUFPLEVBQUUsQ0FDTCxNQUFNLEVBQ04sT0FBTyxFQUNULEVBQUU7Z0JBQ0EsTUFBTSxRQUFRLEdBQUcsUUFBUSxFQUFFLENBQUE7Z0JBQzNCLElBQUksUUFBUSxLQUFLLElBQUksRUFBRSxDQUFDO29CQUNwQixPQUFPLE9BQU8sQ0FDVixRQUFRLENBQ1gsQ0FBQTtnQkFDTCxDQUFDO2dCQUNELFFBQVEsSUFBSSxDQUFDLENBQUE7Z0JBQ2IsT0FBTyxNQUFNLENBQ1QsUUFBUSxDQUFDLENBQUMs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
@@ -1,12 +1,10 @@
1
1
  import * as p_di from "../../../interface/data";
2
2
  import * as p_pi from "../../../interface/production";
3
3
  import { Abort } from "../../../interface/__internal/Abort";
4
- import { Create_Expectation_Error } from "../../../interface/production/__internal/Iterator";
5
4
  export default function iterate<Return_Type extends p_di.Value, Error extends p_di.Value, Expected extends p_di.Value, Item extends p_di.Value, End_Info extends p_di.Value>($$: {
6
5
  list: p_di.List<Item>;
7
6
  end_info: End_Info;
8
7
  abort: Abort<Error>;
9
- create_dangling_item_error: ($: Item) => p_di.Optional_Value<Error>;
10
- create_expectation_error: Create_Expectation_Error<Error, Expected, Item, End_Info>;
11
- assign: ($iter: p_pi.Iterator<Item, End_Info, Error, Expected>, abort: Abort<Error>) => Return_Type;
8
+ on_dangling_item: null | Abort<Item>;
9
+ assign: ($iter: p_pi.Iterator<Item, End_Info>) => Return_Type;
12
10
  }): Return_Type;
@@ -38,46 +38,47 @@ const lit = __importStar(require("../../__internal/sync/literal"));
38
38
  function iterate($$) {
39
39
  const raw = $$.list.__get_raw();
40
40
  let position = 0;
41
- const look_raw = () => {
42
- if (position < 0 || position >= raw.length) {
41
+ const look_raw = (ahead) => {
42
+ const pos = position + (ahead !== null && ahead !== void 0 ? ahead : 0);
43
+ if (pos < 0 || pos >= raw.length) {
43
44
  return null;
44
45
  }
45
- return [raw[position]];
46
+ return [raw[pos]];
46
47
  };
47
- const create_iterator = (transform_the_error, create_expectation_error) => {
48
+ const create_iterator = () => {
48
49
  return {
49
50
  consume: {
50
51
  boolean: (assign, no_item) => {
51
52
  const currentx = look_raw();
52
53
  if (currentx === null) {
53
- return no_item($$.end_info, ($) => $$.abort(transform_the_error($)));
54
+ return no_item($$.end_info);
54
55
  }
55
56
  position += 1;
56
- return assign(currentx[0], ($) => $$.abort(transform_the_error($)));
57
+ return assign(currentx[0]);
57
58
  },
58
59
  list: (assign, no_item) => {
59
60
  const currentx = look_raw();
60
61
  if (currentx === null) {
61
- return no_item($$.end_info, ($) => $$.abort(transform_the_error($)));
62
+ return no_item($$.end_info);
62
63
  }
63
64
  position += 1;
64
- return assign(currentx[0], ($) => $$.abort(transform_the_error($)));
65
+ return assign(currentx[0]);
65
66
  },
66
67
  nothing: (assign, no_item) => {
67
68
  const currentx = look_raw();
68
69
  if (currentx === null) {
69
- return no_item($$.end_info, ($) => $$.abort(transform_the_error($)));
70
+ return no_item($$.end_info);
70
71
  }
71
72
  position += 1;
72
- return assign(currentx[0], ($) => $$.abort(transform_the_error($)));
73
+ return assign(currentx[0]);
73
74
  },
74
75
  number: (assign, no_item) => {
75
76
  const currentx = look_raw();
76
77
  if (currentx === null) {
77
- return no_item($$.end_info, ($) => $$.abort(transform_the_error($)));
78
+ return no_item($$.end_info);
78
79
  }
79
80
  position += 1;
80
- return assign(currentx[0], ($) => $$.abort(transform_the_error($)));
81
+ return assign(currentx[0]);
81
82
  },
82
83
  optional: ($i) => {
83
84
  const next = look_raw();
@@ -89,18 +90,18 @@ function iterate($$) {
89
90
  state: (assign, no_item) => {
90
91
  const currentx = look_raw();
91
92
  if (currentx === null) {
92
- return no_item($$.end_info, ($) => $$.abort(transform_the_error($)));
93
+ return no_item($$.end_info);
93
94
  }
94
95
  position += 1;
95
- return assign(currentx[0], ($) => $$.abort(transform_the_error($)));
96
+ return assign(currentx[0]);
96
97
  },
97
98
  text: (assign, no_item) => {
98
99
  const currentx = look_raw();
99
100
  if (currentx === null) {
100
- return no_item($$.end_info, ($) => $$.abort(transform_the_error($)));
101
+ return no_item($$.end_info);
101
102
  }
102
103
  position += 1;
103
- return assign(currentx[0], ($) => $$.abort(transform_the_error($)));
104
+ return assign(currentx[0]);
104
105
  },
105
106
  },
106
107
  build_list: ($x) => {
@@ -119,7 +120,7 @@ function iterate($$) {
119
120
  }
120
121
  return lit.list(raw);
121
122
  },
122
- build_segmented_list: ($x) => {
123
+ build_list_with_segments: ($x) => {
123
124
  const raw = [];
124
125
  while (true) {
125
126
  const next_element = look_raw();
@@ -138,30 +139,32 @@ function iterate($$) {
138
139
  peek: (item, no_item) => {
139
140
  const next = look_raw();
140
141
  if (next === null) {
141
- return no_item($$.end_info, ($) => $$.abort(transform_the_error($)));
142
+ return no_item($$.end_info);
142
143
  }
143
- return item(next[0], ($) => $$.abort(transform_the_error($)));
144
+ return item(next[0]);
144
145
  },
145
- state_based_on_strategy: ($i) => {
146
- const next = look_raw();
146
+ peek_ahead: (offset, item, no_item) => {
147
+ const next = look_raw(offset);
147
148
  if (next === null) {
148
- return $$.abort(transform_the_error(create_expectation_error($i.expected, ['end', $$.end_info])));
149
+ return no_item($$.end_info);
149
150
  }
150
- return $i.item(next[0], ($) => $$.abort(transform_the_error(create_expectation_error($i.expected, ['item', next[0]]))));
151
+ return item(next[0]);
151
152
  },
152
- to_new_iterator: (transform_error, cee) => {
153
- return create_iterator(($) => transform_the_error(transform_error($)), cee);
153
+ expect: ($i) => {
154
+ const next = look_raw();
155
+ if (next === null) {
156
+ return $i.no_item($$.end_info, $i.expected);
157
+ }
158
+ return $i.item(next[0], $i.expected);
154
159
  },
155
160
  };
156
161
  };
157
- const result = $$.assign(create_iterator(($) => $, $$.create_expectation_error), ($) => $$.abort($));
158
- if (position < raw.length - 1) {
159
- $$.create_dangling_item_error(raw[position]).__extract_data(($) => {
160
- $$.abort($);
161
- }, () => {
162
- // do nothing
163
- });
162
+ const result = $$.assign(create_iterator());
163
+ if ($$.on_dangling_item !== null) {
164
+ if (position < raw.length - 1) {
165
+ $$.on_dangling_item(raw[position]);
166
+ }
164
167
  }
165
168
  return result;
166
169
  }
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlcmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9yZWZpbmVyL3NwZWNpYWxzL2l0ZXJhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFVQSwwQkEyUkM7QUFuU0QsbUVBQW9EO0FBUXBELFNBQXdCLE9BQU8sQ0FNN0IsRUFjRDtJQUVHLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7SUFFL0IsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFBO0lBRWhCLE1BQU0sUUFBUSxHQUFHLEdBQTZCLEVBQUU7UUFDNUMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxJQUFJLFFBQVEsSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDekMsT0FBTyxJQUFJLENBQUE7UUFDZixDQUFDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFBO0lBQzFCLENBQUMsQ0FBQTtJQUVELE1BQU0sZUFBZSxHQUFHLENBSXBCLG1CQUE0QyxFQUM1Qyx3QkFLQyxFQUtILEVBQUU7UUFDQSxPQUFPO1lBRUgsT0FBTyxFQUFFO2dCQUVMLE9BQU8sRUFBRSxDQUNMLE1BQU0sRUFDTixPQUFPLEVBQ1QsRUFBRTtvQkFDQSxNQUFNLFFBQVEsR0FBRyxRQUFRLEVBQUUsQ0FBQTtvQkFDM0IsSUFBSSxRQUFRLEtBQUssSUFBSSxFQUFFLENBQUM7d0JBQ3BCLE9BQU8sT0FBTyxDQUNWLEVBQUUsQ0FBQyxRQUFRLEVBQ1gsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDMUMsQ0FBQTtvQkFDTCxDQUFDO29CQUNELFFBQVEsSUFBSSxDQUFDLENBQUE7b0JBQ2IsT0FBTyxNQUFNLENBQ1QsUUFBUSxDQUFD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
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlcmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9yZWZpbmVyL3NwZWNpYWxzL2l0ZXJhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQSwwQkE4T0M7QUFwUEQsbUVBQW9EO0FBTXBELFNBQXdCLE9BQU8sQ0FNN0IsRUFRRDtJQUVHLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7SUFFL0IsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFBO0lBRWhCLE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBYyxFQUE0QixFQUFFO1FBQzFELE1BQU0sR0FBRyxHQUFHLFFBQVEsR0FBRyxDQUFDLEtBQUssYUFBTCxLQUFLLGNBQUwsS0FBSyxHQUFJLENBQUMsQ0FBQyxDQUFBO1FBQ25DLElBQUksR0FBRyxHQUFHLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9CLE9BQU8sSUFBSSxDQUFBO1FBQ2YsQ0FBQztRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUNyQixDQUFDLENBQUE7SUFFRCxNQUFNLGVBQWUsR0FBRyxHQUl0QixFQUFFO1FBQ0EsT0FBTztZQUVILE9BQU8sRUFBRTtnQkFFTCxPQUFPLEVBQUUsQ0FDTCxNQUFNLEVBQ04sT0FBTyxFQUNULEVBQUU7b0JBQ0EsTUFBTSxRQUFRLEdBQUcsUUFBUSxFQUFFLENBQUE7b0JBQzNCLElBQUksUUFBUSxLQUFLLElBQUksRUFBRSxDQUFDO3dCQUNwQixPQUFPLE9BQU8sQ0FDVixFQUFFLENBQUMsUUFBUSxDQUNkLENBQUE7b0JBQ0wsQ0FBQztvQkFDRCxRQUFRLElBQUksQ0FBQyxDQUFBO29CQUNiLE9BQU8sTUFBTSxDQUNULFFBQVEsQ0FBQyxDQUFDLENBQUMs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
@@ -14,6 +14,7 @@ export interface Guaranteed_Value_Iterator<Item extends p_di.Value, End_Info ext
14
14
  handle: () => List_Item;
15
15
  }) => p_di.List<List_Item>;
16
16
  peek: <T extends p_di.Value>(item: (token: Item) => T, no_item: (end_info: End_Info) => T) => T;
17
+ peek_ahead: <T extends p_di.Value>(offset: number, item: (token: Item) => T, no_item: (end_info: End_Info) => T) => T;
17
18
  build_segmented_list: <List_Item extends p_di.Value>($: {
18
19
  has_more_items: ($: Item) => boolean;
19
20
  handle: () => p_di.List<List_Item>;
@@ -1,30 +1,29 @@
1
1
  import * as p_di from "../../data";
2
- import { Abort } from "../../__internal/Abort";
3
- export type Create_Expectation_Error<Error extends p_di.Value, Expected extends p_di.Value, Item extends p_di.Value, End_Info extends p_di.Value> = (expected: Expected, found: ['item', Item] | ['end', End_Info]) => Error;
4
- export interface Iterator<Item extends p_di.Value, End_Info extends p_di.Value, Error extends p_di.Value, Expected extends p_di.Value> {
2
+ export interface Iterator<Item extends p_di.Value, End_Info extends p_di.Value> {
5
3
  consume: {
6
- boolean: (callback: (token: Item, abort: Abort<Error>) => boolean, no_item: (end_info: End_Info, abort: Abort<Error>) => boolean) => boolean;
7
- list: <T extends p_di.Value>(callback: (token: Item, abort: Abort<Error>) => p_di.List<T>, no_item: (end_info: End_Info, abort: Abort<Error>) => p_di.List<T>) => p_di.List<T>;
8
- nothing: (callback: (token: Item, abort: Abort<Error>) => null, no_item: (end_info: End_Info, abort: Abort<Error>) => null) => null;
9
- number: (callback: (token: Item, abort: Abort<Error>) => number, no_item: (end_info: End_Info, abort: Abort<Error>) => number) => number;
4
+ boolean: (callback: (token: Item) => boolean, no_item: (end_info: End_Info) => boolean) => boolean;
5
+ list: <T extends p_di.Value>(callback: (token: Item) => p_di.List<T>, no_item: (end_info: End_Info) => p_di.List<T>) => p_di.List<T>;
6
+ nothing: (callback: (token: Item) => null, no_item: (end_info: End_Info) => null) => null;
7
+ number: (callback: (token: Item) => number, no_item: (end_info: End_Info) => number) => number;
10
8
  optional: <T extends p_di.Value>($: {
11
9
  item: (token: Item) => p_di.Optional_Value<T>;
12
10
  }) => p_di.Optional_Value<T>;
13
- state: <State extends p_di.State>(callback: (token: Item, abort: Abort<Error>) => State, no_item: (end_info: End_Info, abort: Abort<Error>) => State) => State;
14
- text: (callback: (token: Item, abort: Abort<Error>) => string, no_item: (end_info: End_Info, abort: Abort<Error>) => string) => string;
11
+ state: <State extends p_di.State>(callback: (token: Item) => State, no_item: (end_info: End_Info) => State) => State;
12
+ text: (callback: (token: Item) => string, no_item: (end_info: End_Info) => string) => string;
15
13
  };
16
14
  build_list: <List_Item extends p_di.Value>($: {
17
15
  has_more_items: ($: Item) => boolean;
18
16
  handle: () => List_Item;
19
17
  }) => p_di.List<List_Item>;
20
- build_segmented_list: <List_Item extends p_di.Value>($: {
18
+ build_list_with_segments: <List_Item extends p_di.Value>($: {
21
19
  has_more_items: ($: Item) => boolean;
22
20
  handle: () => p_di.List<List_Item>;
23
21
  }) => p_di.List<List_Item>;
24
- peek: <T extends p_di.Value>(item: (token: Item, abort: Abort<Error>) => T, no_item: (end_info: End_Info, abort: Abort<Error>) => T) => T;
25
- state_based_on_strategy: <State extends p_di.State>($: {
22
+ peek: <T extends p_di.Value>(item: (token: Item) => T, no_item: (end_info: End_Info) => T) => T;
23
+ peek_ahead: <T extends p_di.Value>(offset: number, item: (token: Item) => T, no_item: (end_info: End_Info) => T) => T;
24
+ expect: <Expected extends p_di.Value, Value extends p_di.Value>($: {
26
25
  expected: Expected;
27
- item: (token: Item, abort: Abort<null>) => State;
28
- }) => State;
29
- to_new_iterator: <New_Error extends p_di.Value, New_Expected extends p_di.Value>(transform_error: ($: New_Error) => Error, create_expectation_error: Create_Expectation_Error<New_Error, New_Expected, Item, End_Info>) => Iterator<Item, End_Info, New_Error, New_Expected>;
26
+ item: (token: Item, expected: Expected) => Value;
27
+ no_item: (end_info: End_Info, expected: Expected) => Value;
28
+ }) => Value;
30
29
  }
@@ -1,9 +1,8 @@
1
1
  import { Iterator } from "./__internal/Iterator";
2
- import { Guaranteed_Value_Iterator } from "./__internal/Guaranteed_Value_Iterator";
2
+ import { Abort } from "../__internal/Abort";
3
3
  import * as p_di from "../data";
4
4
  export { Iterator } from "./__internal/Iterator";
5
- export { Guaranteed_Value_Iterator as Safe_Iterator } from "./__internal/Guaranteed_Value_Iterator";
6
- export type Production<Result extends p_di.Value, Error extends p_di.Value, Expected extends p_di.Value, Iterator_Item extends p_di.Value, End_Info extends p_di.Value> = (iterator: Iterator<Iterator_Item, End_Info, Error, Expected>) => Result;
7
- export type Production_With_Parameter<Result extends p_di.Value, Error extends p_di.Value, Expected extends p_di.Value, Iterator_Item extends p_di.Value, End_Info extends p_di.Value, Parameter extends p_di.Value> = (iterator: Iterator<Iterator_Item, End_Info, Error, Expected>, $p: Parameter) => Result;
8
- export type Production_Without_Error<Result extends p_di.Value, Iterator_Item extends p_di.Value, End_Info extends p_di.Value> = (iterator: Guaranteed_Value_Iterator<Iterator_Item, End_Info>) => Result;
9
- export type Production_Without_Error_With_Parameter<Result extends p_di.Value, Iterator_Item extends p_di.Value, End_Info extends p_di.Value, Parameter extends p_di.Value> = (iterator: Guaranteed_Value_Iterator<Iterator_Item, End_Info>, $p: Parameter) => Result;
5
+ export type Production<Result extends p_di.Value, Error extends p_di.Value, Iterator_Item extends p_di.Value, End_Info extends p_di.Value> = (iterator: Iterator<Iterator_Item, End_Info>, abort: Abort<Error>) => Result;
6
+ export type Production_With_Parameter<Result extends p_di.Value, Error extends p_di.Value, Iterator_Item extends p_di.Value, End_Info extends p_di.Value, Parameter extends p_di.Value> = (iterator: Iterator<Iterator_Item, End_Info>, abort: Abort<Error>, $p: Parameter) => Result;
7
+ export type Production_Without_Error<Result extends p_di.Value, Iterator_Item extends p_di.Value, End_Info extends p_di.Value> = (iterator: Iterator<Iterator_Item, End_Info>) => Result;
8
+ export type Production_Without_Error_With_Parameter<Result extends p_di.Value, Iterator_Item extends p_di.Value, End_Info extends p_di.Value, Parameter extends p_di.Value> = (iterator: Iterator<Iterator_Item, End_Info>, $p: Parameter) => Result;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pareto-core",
3
- "version": "0.1.219",
3
+ "version": "0.1.221",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Corno",
6
6
  "description": "the core language constructs for the Pareto programming language (in TypeScript)",