pareto-fountain-pen 0.2.0 → 0.3.1
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/algorithms/procedures/guaranteed/console_error.d.ts +2 -1
- package/dist/implementation/algorithms/procedures/guaranteed/console_error.js +2 -2
- package/dist/implementation/algorithms/procedures/guaranteed/console_log.d.ts +2 -1
- package/dist/implementation/algorithms/procedures/guaranteed/console_log.js +2 -2
- package/dist/implementation/algorithms/procedures/unguaranteed/write_to_directory.d.ts +1 -1
- package/dist/implementation/algorithms/procedures/unguaranteed/write_to_directory.js +4 -4
- package/dist/implementation/algorithms/procedures/unguaranteed/write_to_file.d.ts +1 -1
- package/dist/implementation/algorithms/procedures/unguaranteed/write_to_file.js +3 -3
- package/dist/implementation/algorithms/procedures/unguaranteed/write_to_node.d.ts +1 -1
- package/dist/implementation/algorithms/procedures/unguaranteed/write_to_node.js +3 -3
- package/dist/implementation/algorithms/transformations/block/lines.js +1 -1
- package/dist/implementation/generated/pareto/generic/parse/ast.d.ts +10 -0
- package/dist/implementation/generated/pareto/generic/parse/ast.js +245 -0
- package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.d.ts +13 -0
- package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.js +50 -0
- package/dist/implementation/generated/pareto/generic/parse/parse.d.ts +6 -0
- package/dist/implementation/generated/pareto/generic/parse/parse.js +65 -0
- package/dist/implementation/generated/pareto/generic/parse/string_iterator.d.ts +40 -0
- package/dist/implementation/generated/pareto/generic/parse/string_iterator.js +109 -0
- package/dist/implementation/generated/pareto/generic/parse/token.d.ts +9 -0
- package/dist/implementation/generated/pareto/generic/parse/token.js +519 -0
- package/dist/implementation/generated/pareto/generic/resolve.js +3 -3
- package/dist/implementation/generated/pareto/generic/serialize.d.ts +4 -0
- package/dist/implementation/generated/pareto/generic/serialize.js +93 -0
- package/dist/implementation/generated/pareto/generic/unmarshall.d.ts +26 -26
- package/dist/implementation/generated/pareto/generic/unmarshall.js +19 -10
- package/dist/implementation/generated/pareto/schemas/block/deserialize.d.ts +7 -0
- package/dist/implementation/generated/pareto/schemas/block/deserialize.js +40 -0
- package/dist/implementation/generated/pareto/schemas/block/serialize.d.ts +7 -0
- package/dist/implementation/generated/pareto/schemas/block/serialize.js +53 -0
- package/dist/implementation/generated/pareto/schemas/lines/deserialize.d.ts +3 -0
- package/dist/implementation/generated/pareto/schemas/lines/deserialize.js +32 -0
- package/dist/implementation/generated/pareto/schemas/lines/serialize.d.ts +3 -0
- package/dist/implementation/generated/pareto/schemas/lines/serialize.js +37 -0
- package/dist/implementation/generated/pareto/schemas/semi_lines/deserialize.d.ts +3 -0
- package/dist/implementation/generated/pareto/schemas/semi_lines/deserialize.js +32 -0
- package/dist/implementation/generated/pareto/schemas/semi_lines/serialize.d.ts +3 -0
- package/dist/implementation/generated/pareto/schemas/semi_lines/serialize.js +37 -0
- package/dist/implementation/generated/pareto/schemas/text/deserialize.d.ts +3 -0
- package/dist/implementation/generated/pareto/schemas/text/deserialize.js +32 -0
- package/dist/implementation/generated/pareto/schemas/text/serialize.d.ts +3 -0
- package/dist/implementation/generated/pareto/schemas/text/serialize.js +37 -0
- package/dist/interface/generated/pareto/core/astn_source.d.ts +15 -0
- package/dist/interface/generated/pareto/core/parse_result.d.ts +25 -0
- package/dist/interface/generated/pareto/core/parse_result.js +3 -0
- package/dist/interface/generated/pareto/core/resolve.d.ts +1 -1
- package/dist/interface/generated/pareto/core/resolved.d.ts +3 -3
- package/dist/interface/generated/pareto/core/token.d.ts +49 -0
- package/dist/interface/generated/pareto/core/token.js +3 -0
- package/dist/interface/generated/pareto/schemas/block/deserialize.d.ts +158 -0
- package/dist/interface/generated/pareto/schemas/block/deserialize.js +3 -0
- package/dist/interface/generated/pareto/schemas/block/serialize.d.ts +158 -0
- package/dist/interface/generated/pareto/schemas/block/serialize.js +3 -0
- package/dist/interface/generated/pareto/schemas/lines/deserialize.d.ts +54 -0
- package/dist/interface/generated/pareto/schemas/lines/deserialize.js +3 -0
- package/dist/interface/generated/pareto/schemas/lines/serialize.d.ts +54 -0
- package/dist/interface/generated/pareto/schemas/lines/serialize.js +3 -0
- package/dist/interface/generated/pareto/schemas/semi_lines/deserialize.d.ts +54 -0
- package/dist/interface/generated/pareto/schemas/semi_lines/deserialize.js +3 -0
- package/dist/interface/generated/pareto/schemas/semi_lines/serialize.d.ts +54 -0
- package/dist/interface/generated/pareto/schemas/semi_lines/serialize.js +3 -0
- package/dist/interface/generated/pareto/schemas/text/deserialize.d.ts +54 -0
- package/dist/interface/generated/pareto/schemas/text/deserialize.js +3 -0
- package/dist/interface/generated/pareto/schemas/text/serialize.d.ts +54 -0
- package/dist/interface/generated/pareto/schemas/text/serialize.js +3 -0
- package/dist/temp/temp_types.d.ts +2 -2
- package/package.json +7 -14
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.create_string_iterator = exports.is_control_character = void 0;
|
|
4
|
+
const to_character_list_1 = require("exupery-standard-library/dist/implementation/algorithms/operations/impure/text/to_character_list");
|
|
5
|
+
const WhitespaceChars = {
|
|
6
|
+
tab: 0x09, // \t
|
|
7
|
+
line_feed: 0x0A, // \n
|
|
8
|
+
carriage_return: 0x0D, // \r
|
|
9
|
+
space: 0x20, //
|
|
10
|
+
};
|
|
11
|
+
const is_control_character = ($) => {
|
|
12
|
+
return ($ < 0x20 && $ !== WhitespaceChars.tab && $ !== WhitespaceChars.line_feed && $ !== WhitespaceChars.carriage_return);
|
|
13
|
+
};
|
|
14
|
+
exports.is_control_character = is_control_character;
|
|
15
|
+
/**
|
|
16
|
+
* Creates a string iterator that allows iterating over characters in a string,
|
|
17
|
+
* while keeping track of line numbers, columns, and line indentation.
|
|
18
|
+
*/
|
|
19
|
+
const create_string_iterator = ($, $p) => {
|
|
20
|
+
const source = $;
|
|
21
|
+
const characters = (0, to_character_list_1.$$)($);
|
|
22
|
+
const length = characters.__get_number_of_elements();
|
|
23
|
+
let found_carriage_return_before = false;
|
|
24
|
+
let position = 0;
|
|
25
|
+
let relative_position = {
|
|
26
|
+
'line': 0,
|
|
27
|
+
'column': 0,
|
|
28
|
+
'line indentation': null
|
|
29
|
+
};
|
|
30
|
+
const consume_character = () => {
|
|
31
|
+
const c = characters.__get_element_at(position);
|
|
32
|
+
const start = relative_position;
|
|
33
|
+
relative_position = c.transform(($) => {
|
|
34
|
+
return $ === WhitespaceChars.line_feed
|
|
35
|
+
? {
|
|
36
|
+
'line': relative_position.line + 1,
|
|
37
|
+
'column': 0,
|
|
38
|
+
'line indentation': null,
|
|
39
|
+
}
|
|
40
|
+
: found_carriage_return_before
|
|
41
|
+
? {
|
|
42
|
+
'line': relative_position.line + 1,
|
|
43
|
+
'column': 0,
|
|
44
|
+
'line indentation': null,
|
|
45
|
+
}
|
|
46
|
+
: {
|
|
47
|
+
'line': relative_position.line,
|
|
48
|
+
'column': relative_position['column'] + ($ === WhitespaceChars.tab
|
|
49
|
+
? $p['tab size']
|
|
50
|
+
: 1),
|
|
51
|
+
'line indentation': relative_position['line indentation'] !== null
|
|
52
|
+
? relative_position['line indentation']
|
|
53
|
+
: $ === WhitespaceChars.space || $ === WhitespaceChars.tab
|
|
54
|
+
? null
|
|
55
|
+
: relative_position['column'],
|
|
56
|
+
};
|
|
57
|
+
}, () => relative_position //this is weird, we were already at the end of the list
|
|
58
|
+
);
|
|
59
|
+
found_carriage_return_before = c.transform(($) => $ === WhitespaceChars.carriage_return, () => false);
|
|
60
|
+
position += 1;
|
|
61
|
+
};
|
|
62
|
+
return {
|
|
63
|
+
'consume string': ($) => {
|
|
64
|
+
(0, to_character_list_1.$$)($).__for_each(() => {
|
|
65
|
+
consume_character();
|
|
66
|
+
});
|
|
67
|
+
},
|
|
68
|
+
'consume character': consume_character,
|
|
69
|
+
'get current character': () => {
|
|
70
|
+
if (position === length) {
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
return characters.__get_element_at(position).transform(($) => $, () => null);
|
|
74
|
+
},
|
|
75
|
+
'look ahead': ($) => {
|
|
76
|
+
const next_position = position + $;
|
|
77
|
+
if (next_position >= length) {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
return characters.__get_element_at(next_position).transform(($) => $, () => null);
|
|
81
|
+
},
|
|
82
|
+
'create location info': () => {
|
|
83
|
+
return {
|
|
84
|
+
'absolute': position,
|
|
85
|
+
'relative': {
|
|
86
|
+
'line': relative_position.line,
|
|
87
|
+
'column': relative_position['column'],
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
},
|
|
91
|
+
'create offset location info': (subtract) => {
|
|
92
|
+
return {
|
|
93
|
+
'absolute': position - subtract,
|
|
94
|
+
'relative': {
|
|
95
|
+
'line': relative_position.line,
|
|
96
|
+
'column': relative_position['column'] - subtract,
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
},
|
|
100
|
+
'create location info string': () => `${relative_position.line}:${relative_position['column']}`,
|
|
101
|
+
'get line indentation': () => {
|
|
102
|
+
return relative_position['line indentation'] !== null
|
|
103
|
+
? relative_position['line indentation']
|
|
104
|
+
: relative_position['column'];
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
};
|
|
108
|
+
exports.create_string_iterator = create_string_iterator;
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nX2l0ZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL2dlbmVyYXRlZC9wYXJldG8vZ2VuZXJpYy9wYXJzZS9zdHJpbmdfaXRlcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBb0NBLHdJQUE2STtBQUU3SSxNQUFNLGVBQWUsR0FBRztJQUNwQixHQUFHLEVBQUUsSUFBSSxFQUFtQixLQUFLO0lBQ2pDLFNBQVMsRUFBRSxJQUFJLEVBQWEsS0FBSztJQUNqQyxlQUFlLEVBQUUsSUFBSSxFQUFPLEtBQUs7SUFDakMsS0FBSyxFQUFFLElBQUksRUFBaUIsRUFBRTtDQUNqQyxDQUFBO0FBRU0sTUFBTSxvQkFBb0IsR0FBRyxDQUFDLENBQVMsRUFBVyxFQUFFO0lBQ3ZELE9BQU8sQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxlQUFlLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxlQUFlLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxlQUFlLENBQUMsZUFBZSxDQUFDLENBQUE7QUFDOUgsQ0FBQyxDQUFBO0FBRlksUUFBQSxvQkFBb0Isd0JBRWhDO0FBRUQ7OztHQUdHO0FBRUksTUFBTSxzQkFBc0IsR0FBRyxDQUNsQyxDQUFTLEVBQ1QsRUFFQyxFQUNjLEVBQUU7SUFDakIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFBO0lBQ2hCLE1BQU0sVUFBVSxHQUFHLElBQUEsc0JBQW9CLEVBQUMsQ0FBQyxDQUFDLENBQUE7SUFDMUMsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLHdCQUF3QixFQUFFLENBQUE7SUFRcEQsSUFBSSw0QkFBNEIsR0FBRyxLQUFLLENBQUE7SUFDeEMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFBO0lBQ2hCLElBQUksaUJBQWlCLEdBQWtDO1FBQ25ELE1BQU0sRUFBRSxDQUFDO1FBQ1QsUUFBUSxFQUFFLENBQUM7UUFDWCxr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
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as _out from "../../../../../interface/generated/pareto/core/token";
|
|
2
|
+
import { String_Iterator } from "./string_iterator";
|
|
3
|
+
export declare const Whitespace: (string_iterator: String_Iterator) => _out._T_Whitespace;
|
|
4
|
+
export declare const Trivia: (string_iterator: String_Iterator) => _out._T_Trivia;
|
|
5
|
+
export declare const Annotated_Token: (st: String_Iterator) => _out._T_Annotated_Token;
|
|
6
|
+
export declare const Delimited_String: (string_iterator: String_Iterator, is_end_character: (character: number) => boolean, allow_newlines: boolean) => _out._T_Delimited_String;
|
|
7
|
+
export declare const Tokenizer_Result: ($: null, $p: {
|
|
8
|
+
"string iterator": String_Iterator;
|
|
9
|
+
}) => _out._T_Tokenizer_Result;
|