exupery-core-internals 0.3.1 → 0.3.3
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.
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as _et from 'exupery-core-types';
|
|
2
|
+
export type Procedural_Dictionary_Builder<Entry> = {
|
|
3
|
+
'add entry': (key: string, entry: Entry) => void;
|
|
4
|
+
'get dictionary': () => _et.Dictionary<Entry>;
|
|
5
|
+
};
|
|
6
|
+
export declare const create_procedural_dictionary_builder: <Entry>() => Procedural_Dictionary_Builder<Entry>;
|
|
7
|
+
export type Procedural_List_Builder<Item> = {
|
|
8
|
+
'add item': (item: Item) => void;
|
|
9
|
+
'get list': () => _et.Array<Item>;
|
|
10
|
+
};
|
|
11
|
+
export declare const create_procedural_list_builder: <Item>() => Procedural_List_Builder<Item>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.create_procedural_list_builder = exports.create_procedural_dictionary_builder = void 0;
|
|
4
|
+
const dictionary_literal_1 = require("./dictionary_literal");
|
|
5
|
+
const array_literal_1 = require("./array_literal");
|
|
6
|
+
const create_procedural_dictionary_builder = () => {
|
|
7
|
+
const entries = {};
|
|
8
|
+
return {
|
|
9
|
+
'add entry': (key, entry) => {
|
|
10
|
+
entries[key] = entry;
|
|
11
|
+
},
|
|
12
|
+
'get dictionary': () => {
|
|
13
|
+
return (0, dictionary_literal_1.dictionary_literal)(entries);
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
exports.create_procedural_dictionary_builder = create_procedural_dictionary_builder;
|
|
18
|
+
const create_procedural_list_builder = () => {
|
|
19
|
+
const items = [];
|
|
20
|
+
return {
|
|
21
|
+
'add item': (item) => {
|
|
22
|
+
items.push(item);
|
|
23
|
+
},
|
|
24
|
+
'get list': () => {
|
|
25
|
+
return (0, array_literal_1.array_literal)(items);
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
exports.create_procedural_list_builder = create_procedural_list_builder;
|
package/dist/refinement.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _et from 'exupery-core-types';
|
|
2
2
|
export declare namespace refinement {
|
|
3
|
-
const failed: <T, E>(
|
|
3
|
+
const failed: <T, E>(error: E) => _et.Refinement_Result<T, E>;
|
|
4
4
|
const successful: <T, E>(value: T) => _et.Refinement_Result<T, E>;
|
|
5
5
|
}
|
package/dist/refinement.js
CHANGED
|
@@ -3,42 +3,48 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.refinement = void 0;
|
|
4
4
|
var refinement;
|
|
5
5
|
(function (refinement) {
|
|
6
|
-
refinement.failed = (
|
|
6
|
+
refinement.failed = (error) => {
|
|
7
7
|
return {
|
|
8
|
-
'process': (success,
|
|
9
|
-
|
|
8
|
+
'process': (success, error_handler) => {
|
|
9
|
+
error_handler(error);
|
|
10
10
|
},
|
|
11
|
-
'transform': (success,
|
|
12
|
-
return
|
|
11
|
+
'transform': (success, error_handler) => {
|
|
12
|
+
return error_handler(error);
|
|
13
13
|
},
|
|
14
14
|
'with_result': (success) => {
|
|
15
|
-
return refinement.failed(
|
|
15
|
+
return refinement.failed(error);
|
|
16
16
|
},
|
|
17
|
-
'map': (handle_value,
|
|
18
|
-
return refinement.failed(
|
|
17
|
+
'map': (handle_value, handle_error) => {
|
|
18
|
+
return refinement.failed(handle_error(error));
|
|
19
19
|
},
|
|
20
20
|
'map_result': (handle_value) => {
|
|
21
|
-
return refinement.failed(
|
|
22
|
-
}
|
|
21
|
+
return refinement.failed(error);
|
|
22
|
+
},
|
|
23
|
+
'transform_error': (handle_error) => {
|
|
24
|
+
return refinement.failed(handle_error(error));
|
|
25
|
+
},
|
|
23
26
|
};
|
|
24
27
|
};
|
|
25
28
|
refinement.successful = (value) => {
|
|
26
29
|
return {
|
|
27
|
-
'process': (success,
|
|
30
|
+
'process': (success, error_handler) => {
|
|
28
31
|
success(value);
|
|
29
32
|
},
|
|
30
|
-
'transform': (success,
|
|
33
|
+
'transform': (success, error_handler) => {
|
|
31
34
|
return success(value);
|
|
32
35
|
},
|
|
33
36
|
'with_result': (success) => {
|
|
34
37
|
return success(value);
|
|
35
38
|
},
|
|
36
|
-
'map': (handle_value,
|
|
39
|
+
'map': (handle_value, handle_error) => {
|
|
37
40
|
return refinement.successful(handle_value(value));
|
|
38
41
|
},
|
|
39
42
|
'map_result': (handle_value) => {
|
|
40
43
|
return refinement.successful(handle_value(value));
|
|
41
|
-
}
|
|
44
|
+
},
|
|
45
|
+
'transform_error': (handle_error) => {
|
|
46
|
+
return refinement.successful(value);
|
|
47
|
+
},
|
|
42
48
|
};
|
|
43
49
|
};
|
|
44
50
|
})(refinement || (exports.refinement = refinement = {}));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "exupery-core-internals",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"license": "ISC",
|
|
5
5
|
"description": "",
|
|
6
6
|
"author": "Corno",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"url": "https://github.com/corno/exupery-core/issues"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"exupery-core-types": "^0.3.
|
|
18
|
+
"exupery-core-types": "^0.3.31"
|
|
19
19
|
},
|
|
20
20
|
"main": "./dist/index.js",
|
|
21
21
|
"types": "dist/index.d.ts",
|