@fncts/schema 0.0.24 → 0.0.25
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/LICENSE +26 -0
- package/_cjs/AST.cjs +1093 -1226
- package/_cjs/AST.cjs.map +1 -1
- package/_cjs/ASTAnnotation.cjs +114 -85
- package/_cjs/ASTAnnotation.cjs.map +1 -1
- package/_cjs/ASTAnnotationMap.cjs +43 -41
- package/_cjs/ASTAnnotationMap.cjs.map +1 -1
- package/_cjs/Eq.cjs +113 -145
- package/_cjs/Eq.cjs.map +1 -1
- package/_cjs/Gen.cjs +131 -167
- package/_cjs/Gen.cjs.map +1 -1
- package/_cjs/Guard.cjs +167 -267
- package/_cjs/Guard.cjs.map +1 -1
- package/_cjs/InvalidInterpretationError.cjs +9 -10
- package/_cjs/InvalidInterpretationError.cjs.map +1 -1
- package/_cjs/ParseError/ParseError.cjs +283 -284
- package/_cjs/ParseError/ParseError.cjs.map +1 -1
- package/_cjs/ParseError/ParseErrorFormatter.cjs +0 -2
- package/_cjs/ParseError/PathFormatter.cjs +55 -87
- package/_cjs/ParseError/PathFormatter.cjs.map +1 -1
- package/_cjs/ParseError/TreeFormatter.cjs +70 -102
- package/_cjs/ParseError/TreeFormatter.cjs.map +1 -1
- package/_cjs/ParseError.cjs +35 -50
- package/_cjs/ParseResult.cjs +15 -15
- package/_cjs/ParseResult.cjs.map +1 -1
- package/_cjs/Parser/api.cjs +54 -50
- package/_cjs/Parser/api.cjs.map +1 -1
- package/_cjs/Parser/definition.cjs +17 -16
- package/_cjs/Parser/definition.cjs.map +1 -1
- package/_cjs/Parser/interpreter.cjs +276 -358
- package/_cjs/Parser/interpreter.cjs.map +1 -1
- package/_cjs/Parser.cjs +12 -39
- package/_cjs/Schema/api/conc.cjs +64 -59
- package/_cjs/Schema/api/conc.cjs.map +1 -1
- package/_cjs/Schema/api/either.cjs +73 -72
- package/_cjs/Schema/api/either.cjs.map +1 -1
- package/_cjs/Schema/api/hashMap.cjs +85 -85
- package/_cjs/Schema/api/hashMap.cjs.map +1 -1
- package/_cjs/Schema/api/hashSet.cjs +75 -69
- package/_cjs/Schema/api/hashSet.cjs.map +1 -1
- package/_cjs/Schema/api/list.cjs +74 -66
- package/_cjs/Schema/api/list.cjs.map +1 -1
- package/_cjs/Schema/api/map.cjs +81 -83
- package/_cjs/Schema/api/map.cjs.map +1 -1
- package/_cjs/Schema/api/maybe.cjs +56 -49
- package/_cjs/Schema/api/maybe.cjs.map +1 -1
- package/_cjs/Schema/api/set.cjs +68 -61
- package/_cjs/Schema/api/set.cjs.map +1 -1
- package/_cjs/Schema/api.cjs +332 -350
- package/_cjs/Schema/api.cjs.map +1 -1
- package/_cjs/Schema/definition.cjs +28 -26
- package/_cjs/Schema/definition.cjs.map +1 -1
- package/_cjs/Schema/derivations.cjs +85 -100
- package/_cjs/Schema/derivations.cjs.map +1 -1
- package/_cjs/Schema.cjs +95 -127
- package/_cjs/Show.cjs +91 -151
- package/_cjs/Show.cjs.map +1 -1
- package/_cjs/chunk.cjs +28 -0
- package/_cjs/global.cjs +0 -2
- package/_cjs/index.cjs +0 -2
- package/_cjs/utils.cjs +41 -46
- package/_cjs/utils.cjs.map +1 -1
- package/_mjs/AST.mjs +996 -1161
- package/_mjs/AST.mjs.map +1 -1
- package/_mjs/ASTAnnotation.mjs +77 -73
- package/_mjs/ASTAnnotation.mjs.map +1 -1
- package/_mjs/ASTAnnotationMap.mjs +31 -29
- package/_mjs/ASTAnnotationMap.mjs.map +1 -1
- package/_mjs/Eq.mjs +101 -134
- package/_mjs/Eq.mjs.map +1 -1
- package/_mjs/Gen.mjs +117 -157
- package/_mjs/Gen.mjs.map +1 -1
- package/_mjs/Guard.mjs +154 -257
- package/_mjs/Guard.mjs.map +1 -1
- package/_mjs/InvalidInterpretationError.mjs +8 -4
- package/_mjs/InvalidInterpretationError.mjs.map +1 -1
- package/_mjs/ParseError/ParseError.mjs +266 -262
- package/_mjs/ParseError/ParseError.mjs.map +1 -1
- package/_mjs/ParseError/ParseErrorFormatter.mjs +0 -2
- package/_mjs/ParseError/PathFormatter.mjs +51 -80
- package/_mjs/ParseError/PathFormatter.mjs.map +1 -1
- package/_mjs/ParseError/TreeFormatter.mjs +62 -94
- package/_mjs/ParseError/TreeFormatter.mjs.map +1 -1
- package/_mjs/ParseError.mjs +5 -6
- package/_mjs/ParseResult.mjs +13 -9
- package/_mjs/ParseResult.mjs.map +1 -1
- package/_mjs/Parser/api.mjs +43 -39
- package/_mjs/Parser/api.mjs.map +1 -1
- package/_mjs/Parser/definition.mjs +12 -8
- package/_mjs/Parser/definition.mjs.map +1 -1
- package/_mjs/Parser/interpreter.mjs +262 -348
- package/_mjs/Parser/interpreter.mjs.map +1 -1
- package/_mjs/Parser.mjs +4 -5
- package/_mjs/Schema/api/conc.mjs +41 -45
- package/_mjs/Schema/api/conc.mjs.map +1 -1
- package/_mjs/Schema/api/either.mjs +55 -61
- package/_mjs/Schema/api/either.mjs.map +1 -1
- package/_mjs/Schema/api/hashMap.mjs +61 -71
- package/_mjs/Schema/api/hashMap.mjs.map +1 -1
- package/_mjs/Schema/api/hashSet.mjs +53 -56
- package/_mjs/Schema/api/hashSet.mjs.map +1 -1
- package/_mjs/Schema/api/list.mjs +50 -53
- package/_mjs/Schema/api/list.mjs.map +1 -1
- package/_mjs/Schema/api/map.mjs +59 -69
- package/_mjs/Schema/api/map.mjs.map +1 -1
- package/_mjs/Schema/api/maybe.mjs +34 -36
- package/_mjs/Schema/api/maybe.mjs.map +1 -1
- package/_mjs/Schema/api/set.mjs +47 -48
- package/_mjs/Schema/api/set.mjs.map +1 -1
- package/_mjs/Schema/api.mjs +304 -346
- package/_mjs/Schema/api.mjs.map +1 -1
- package/_mjs/Schema/definition.mjs +21 -17
- package/_mjs/Schema/definition.mjs.map +1 -1
- package/_mjs/Schema/derivations.mjs +71 -90
- package/_mjs/Schema/derivations.mjs.map +1 -1
- package/_mjs/Schema.mjs +12 -15
- package/_mjs/Show.mjs +79 -139
- package/_mjs/Show.mjs.map +1 -1
- package/_mjs/global.mjs +0 -2
- package/_mjs/index.mjs +0 -2
- package/_mjs/utils.mjs +35 -37
- package/_mjs/utils.mjs.map +1 -1
- package/package.json +7 -3
- package/_cjs/ParseError/ParseErrorFormatter.cjs.map +0 -1
- package/_cjs/ParseError.cjs.map +0 -1
- package/_cjs/Parser.cjs.map +0 -1
- package/_cjs/Schema.cjs.map +0 -1
- package/_cjs/global.cjs.map +0 -1
- package/_cjs/index.cjs.map +0 -1
- package/_mjs/ParseError/ParseErrorFormatter.mjs.map +0 -1
- package/_mjs/ParseError.mjs.map +0 -1
- package/_mjs/Parser.mjs.map +0 -1
- package/_mjs/Schema.mjs.map +0 -1
- package/_mjs/global.mjs.map +0 -1
- package/_mjs/index.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hashMap.mjs","names":["
|
|
1
|
+
{"version":3,"file":"hashMap.mjs","names":[],"sources":["../../../esm/Schema/api/hashMap.js"],"sourcesContent":["import * as tsplus_module_1 from \"@fncts/schema/ASTAnnotation\";\nimport * as tsplus_module_2 from \"@fncts/schema/Show\";\nimport * as tsplus_module_3 from \"@fncts/base/collection/immutable/Vector/api\";\nimport * as tsplus_module_4 from \"@fncts/schema/Schema/api\";\nimport * as tsplus_module_5 from \"@fncts/base/collection/immutable/HashMap/api\";\nimport * as tsplus_module_6 from \"@fncts/base/data/function/api\";\nimport * as tsplus_module_7 from \"@fncts/base/collection/immutable/HashMap/definition\";\nimport * as tsplus_module_8 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_9 from \"@fncts/schema/ParseResult\";\nimport * as tsplus_module_10 from \"@fncts/schema/Parser/api\";\nimport * as tsplus_module_11 from \"@fncts/base/data/Either/api\";\nimport * as tsplus_module_12 from \"@fncts/base/collection/immutable/Vector/internal\";\nimport * as tsplus_module_13 from \"@fncts/schema/Parser/definition\";\nimport * as tsplus_module_14 from \"@fncts/test/control/Gen/api\";\nexport const hashMap = hashMap_1;\nexport const hashMapFromRecord = hashMapFromRecord_1;\n/**\n * @tsplus static fncts.schema.SchemaOps hashMap\n */\nfunction hashMap_1(key, value) {\n return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `HashMap<${tsplus_module_2.show()(key)}, ${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(key, value), hashMapParser(true), hashMapParser(false))));\n}\n/**\n * @tsplus static fncts.schema.SchemaOps hashMapFromRecord\n */\nfunction hashMapFromRecord_1(key, value) {\n return tsplus_module_4.transform(hashMap_1(key, value), (input) => {\n const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());\n for (const [k, v] of Object.entries(input)) {\n tsplus_module_5.set(k, v)(out);\n }\n return tsplus_module_5.endMutation(out);\n }, (input) => {\n const out = {};\n tsplus_module_5.forEachWithIndex((k, v) => {\n out[k] = v;\n })(input);\n return out;\n })(tsplus_module_4.record(key, value));\n}\n/**\n * @tsplus derive fncts.schema.Schema[fncts.HashMap]<_> 10\n */\nexport function deriveHashMap(\n// @ts-expect-error\n...[key, value]) {\n return hashMapFromRecord_1(key, value);\n}\nfunction hashMapParser(isDecoding) {\n return (key, value) => {\n const schema = hashMap_1(key, value);\n return tsplus_module_13.make((u, options) => {\n if (!tsplus_module_7.isHashMap(u)) {\n return tsplus_module_9.fail(tsplus_module_8.typeError(schema.ast, u));\n }\n const allErrors = options?.allErrors;\n const errors = tsplus_module_3.emptyPushable();\n const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());\n const keyParser = isDecoding ? tsplus_module_10.decode(key) : tsplus_module_10.encode(key);\n const valueParser = isDecoding ? tsplus_module_10.decode(value) : tsplus_module_10.encode(value);\n for (const [k, v] of u) {\n const tk = keyParser(k, options);\n void 0;\n if (tsplus_module_11.isLeft(tk)) {\n tsplus_module_12.push(tsplus_module_8.keyError(key.ast, k, tk.left))(errors);\n if (!allErrors) {\n return tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors));\n }\n }\n const tv = valueParser(v, options);\n void 0;\n if (tsplus_module_11.isLeft(tv)) {\n tsplus_module_12.push(tsplus_module_8.keyError(key.ast, k, tv.left))(errors);\n if (!allErrors) {\n return tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors));\n }\n }\n if (tsplus_module_11.isLeft(tk) || tsplus_module_11.isLeft(tv)) {\n continue;\n }\n tsplus_module_5.set(tk.right, tv.right)(out);\n }\n return tsplus_module_3.isNonEmpty(errors)\n ? tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors))\n : tsplus_module_9.succeed(tsplus_module_5.endMutation(out));\n });\n };\n}\nfunction gen(key, value) {\n return tsplus_module_14.map((pairs) => tsplus_module_5.from(pairs))(tsplus_module_14.array(tsplus_module_14.tuple(key, value)));\n}\n//# sourceMappingURL=hashMap.js.map"],"mappings":";;;;;;;;;;;;;;;AAcA,MAAa,UAAU;AACvB,MAAa,oBAAoB;;;;AAIjC,SAAS,UAAU,KAAK,OAAO;AAC3B,QAAO,gBAAgB,SAAS,gBAAgB,SAAS,IAAI,CAAC,gBAAgB,SAAS,gBAAgB,YAAY,WAAW,gBAAgB,MAAM,CAAC,IAAI,CAAC,IAAI,gBAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,YAAY,gBAAgB,OAAO,KAAK,MAAM,EAAE,cAAc,KAAK,EAAE,cAAc,MAAM,CAAC,CAAC,CAAC;;;;;AAKhT,SAAS,oBAAoB,KAAK,OAAO;AACrC,QAAO,gBAAgB,UAAU,UAAU,KAAK,MAAM,GAAG,UAAU;EAC/D,MAAM,MAAM,gBAAgB,cAAc,gBAAgB,OAAO,CAAC;AAClE,OAAK,MAAM,CAAC,GAAG,MAAM,OAAO,QAAQ,MAAM,CACtC,iBAAgB,IAAI,GAAG,EAAE,CAAC,IAAI;AAElC,SAAO,gBAAgB,YAAY,IAAI;KACvC,UAAU;EACV,MAAM,MAAM,EAAE;AACd,kBAAgB,kBAAkB,GAAG,MAAM;AACvC,OAAI,KAAK;IACX,CAAC,MAAM;AACT,SAAO;GACT,CAAC,gBAAgB,OAAO,KAAK,MAAM,CAAC;;;;;AAK1C,SAAgB,cAEhB,GAAG,CAAC,KAAK,QAAQ;AACb,QAAO,oBAAoB,KAAK,MAAM;;AAE1C,SAAS,cAAc,YAAY;AAC/B,SAAQ,KAAK,UAAU;EACnB,MAAM,SAAS,UAAU,KAAK,MAAM;AACpC,SAAO,iBAAiB,MAAM,GAAG,YAAY;AACzC,OAAI,CAAC,gBAAgB,UAAU,EAAE,CAC7B,QAAO,gBAAgB,KAAK,gBAAgB,UAAU,OAAO,KAAK,EAAE,CAAC;GAEzE,MAAM,YAAY,SAAS;GAC3B,MAAM,SAAS,gBAAgB,eAAe;GAC9C,MAAM,MAAM,gBAAgB,cAAc,gBAAgB,OAAO,CAAC;GAClE,MAAM,YAAY,aAAa,iBAAiB,OAAO,IAAI,GAAG,iBAAiB,OAAO,IAAI;GAC1F,MAAM,cAAc,aAAa,iBAAiB,OAAO,MAAM,GAAG,iBAAiB,OAAO,MAAM;AAChG,QAAK,MAAM,CAAC,GAAG,MAAM,GAAG;IACpB,MAAM,KAAK,UAAU,GAAG,QAAQ;AAEhC,QAAI,iBAAiB,OAAO,GAAG,EAAE;AAC7B,sBAAiB,KAAK,gBAAgB,SAAS,IAAI,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO;AAC5E,SAAI,CAAC,UACD,QAAO,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC;;IAGzF,MAAM,KAAK,YAAY,GAAG,QAAQ;AAElC,QAAI,iBAAiB,OAAO,GAAG,EAAE;AAC7B,sBAAiB,KAAK,gBAAgB,SAAS,IAAI,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO;AAC5E,SAAI,CAAC,UACD,QAAO,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC;;AAGzF,QAAI,iBAAiB,OAAO,GAAG,IAAI,iBAAiB,OAAO,GAAG,CAC1D;AAEJ,oBAAgB,IAAI,GAAG,OAAO,GAAG,MAAM,CAAC,IAAI;;AAEhD,UAAO,gBAAgB,WAAW,OAAO,GACnC,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC,GAC1E,gBAAgB,QAAQ,gBAAgB,YAAY,IAAI,CAAC;IACjE;;;AAGV,SAAS,IAAI,KAAK,OAAO;AACrB,QAAO,iBAAiB,KAAK,UAAU,gBAAgB,KAAK,MAAM,CAAC,CAAC,iBAAiB,MAAM,iBAAiB,MAAM,KAAK,MAAM,CAAC,CAAC"}
|
|
@@ -1,73 +1,70 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
2
|
-
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
3
1
|
import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
|
|
4
|
-
import * as
|
|
5
|
-
import * as
|
|
6
|
-
import * as tsplus_module_6 from "@fncts/base/data/function/api";
|
|
2
|
+
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
3
|
+
import * as tsplus_module_10 from "@fncts/schema/ParseResult";
|
|
7
4
|
import * as tsplus_module_7 from "@fncts/schema/Parser/api";
|
|
8
|
-
import * as
|
|
5
|
+
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
9
6
|
import * as tsplus_module_9 from "@fncts/schema/ParseError/ParseError";
|
|
10
|
-
import * as tsplus_module_10 from "@fncts/schema/ParseResult";
|
|
11
|
-
import * as tsplus_module_11 from "@fncts/base/data/Either/api";
|
|
12
7
|
import * as tsplus_module_12 from "@fncts/base/collection/immutable/Vector/internal";
|
|
8
|
+
import * as tsplus_module_4 from "@fncts/schema/Schema/api";
|
|
9
|
+
import "@fncts/base/data/function/api";
|
|
10
|
+
import * as tsplus_module_11 from "@fncts/base/data/Either/api";
|
|
13
11
|
import * as tsplus_module_13 from "@fncts/schema/Parser/definition";
|
|
14
12
|
import * as tsplus_module_14 from "@fncts/test/control/Gen/api";
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
import * as tsplus_module_5 from "@fncts/base/collection/immutable/HashSet/api";
|
|
14
|
+
import * as tsplus_module_8 from "@fncts/base/collection/immutable/HashSet/definition";
|
|
15
|
+
//#region build/esm/Schema/api/hashSet.js
|
|
16
|
+
const hashSetFromArray = hashSetFromArray_1;
|
|
17
|
+
function hashSet(value) {
|
|
18
|
+
return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `HashSet<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), hashSetParser(true), hashSetParser(false))));
|
|
18
19
|
}
|
|
19
20
|
/**
|
|
20
|
-
|
|
21
|
-
|
|
21
|
+
* @tsplus static fncts.schema.SchemaOps hashSetFromArray
|
|
22
|
+
*/
|
|
22
23
|
function hashSetFromArray_1(value) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
return out;
|
|
35
|
-
})(tsplus_module_4.array(value));
|
|
24
|
+
return tsplus_module_4.transform(hashSet(value), (input) => {
|
|
25
|
+
const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());
|
|
26
|
+
for (const v of input) tsplus_module_5.add(v)(out);
|
|
27
|
+
return tsplus_module_5.endMutation(out);
|
|
28
|
+
}, (input) => {
|
|
29
|
+
const out = [];
|
|
30
|
+
tsplus_module_5.forEach((v) => {
|
|
31
|
+
out.push(v);
|
|
32
|
+
})(input);
|
|
33
|
+
return out;
|
|
34
|
+
})(tsplus_module_4.array(value));
|
|
36
35
|
}
|
|
37
36
|
/**
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
37
|
+
* @tsplus derive fncts.schema.Schema[fncts.HashSet]<_> 10
|
|
38
|
+
*/
|
|
39
|
+
function deriveHashSet(...[value]) {
|
|
40
|
+
return hashSetFromArray_1(value);
|
|
42
41
|
}
|
|
43
42
|
function hashSetParser(isDecoding) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
tsplus_module_5.add(tv.right)(out);
|
|
65
|
-
}
|
|
66
|
-
return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors)) : tsplus_module_10.succeed(tsplus_module_5.endMutation(out));
|
|
67
|
-
});
|
|
68
|
-
};
|
|
43
|
+
return (value) => {
|
|
44
|
+
const schema = hashSet(value);
|
|
45
|
+
const parseValue = isDecoding ? tsplus_module_7.decode(value) : tsplus_module_7.encode(value);
|
|
46
|
+
return tsplus_module_13.make((u, options) => {
|
|
47
|
+
if (!tsplus_module_8.isHashSet(u)) return tsplus_module_10.fail(tsplus_module_9.typeError(schema.ast, u));
|
|
48
|
+
const allErrors = options?.allErrors;
|
|
49
|
+
const errors = tsplus_module_3.emptyPushable();
|
|
50
|
+
const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());
|
|
51
|
+
for (const v of u) {
|
|
52
|
+
const tv = parseValue(v, options);
|
|
53
|
+
if (tsplus_module_11.isLeft(tv)) {
|
|
54
|
+
tsplus_module_12.push(tsplus_module_9.keyError(value.ast, v, tv.left))(errors);
|
|
55
|
+
if (!allErrors) return tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors));
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
tsplus_module_5.add(tv.right)(out);
|
|
59
|
+
}
|
|
60
|
+
return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors)) : tsplus_module_10.succeed(tsplus_module_5.endMutation(out));
|
|
61
|
+
});
|
|
62
|
+
};
|
|
69
63
|
}
|
|
70
64
|
function gen(value) {
|
|
71
|
-
|
|
65
|
+
return tsplus_module_14.map(tsplus_module_5.from)(tsplus_module_14.array(value));
|
|
72
66
|
}
|
|
67
|
+
//#endregion
|
|
68
|
+
export { deriveHashSet, hashSet, hashSetFromArray };
|
|
69
|
+
|
|
73
70
|
//# sourceMappingURL=hashSet.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hashSet.mjs","names":[
|
|
1
|
+
{"version":3,"file":"hashSet.mjs","names":[],"sources":["../../../esm/Schema/api/hashSet.js"],"sourcesContent":["import * as tsplus_module_1 from \"@fncts/schema/ASTAnnotation\";\nimport * as tsplus_module_2 from \"@fncts/schema/Show\";\nimport * as tsplus_module_3 from \"@fncts/base/collection/immutable/Vector/api\";\nimport * as tsplus_module_4 from \"@fncts/schema/Schema/api\";\nimport * as tsplus_module_5 from \"@fncts/base/collection/immutable/HashSet/api\";\nimport * as tsplus_module_6 from \"@fncts/base/data/function/api\";\nimport * as tsplus_module_7 from \"@fncts/schema/Parser/api\";\nimport * as tsplus_module_8 from \"@fncts/base/collection/immutable/HashSet/definition\";\nimport * as tsplus_module_9 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_10 from \"@fncts/schema/ParseResult\";\nimport * as tsplus_module_11 from \"@fncts/base/data/Either/api\";\nimport * as tsplus_module_12 from \"@fncts/base/collection/immutable/Vector/internal\";\nimport * as tsplus_module_13 from \"@fncts/schema/Parser/definition\";\nimport * as tsplus_module_14 from \"@fncts/test/control/Gen/api\";\nexport const hashSetFromArray = hashSetFromArray_1;\nexport function hashSet(value) {\n return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `HashSet<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), hashSetParser(true), hashSetParser(false))));\n}\n/**\n * @tsplus static fncts.schema.SchemaOps hashSetFromArray\n */\nfunction hashSetFromArray_1(value) {\n return tsplus_module_4.transform(hashSet(value), (input) => {\n const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());\n for (const v of input) {\n tsplus_module_5.add(v)(out);\n }\n return tsplus_module_5.endMutation(out);\n }, (input) => {\n const out = [];\n tsplus_module_5.forEach((v) => {\n out.push(v);\n })(input);\n return out;\n })(tsplus_module_4.array(value));\n}\n/**\n * @tsplus derive fncts.schema.Schema[fncts.HashSet]<_> 10\n */\nexport function deriveHashSet(...[value]) {\n return hashSetFromArray_1(value);\n}\nfunction hashSetParser(isDecoding) {\n return (value) => {\n const schema = hashSet(value);\n const parseValue = isDecoding ? tsplus_module_7.decode(value) : tsplus_module_7.encode(value);\n return tsplus_module_13.make((u, options) => {\n if (!tsplus_module_8.isHashSet(u)) {\n return tsplus_module_10.fail(tsplus_module_9.typeError(schema.ast, u));\n }\n const allErrors = options?.allErrors;\n const errors = tsplus_module_3.emptyPushable();\n const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());\n for (const v of u) {\n const tv = parseValue(v, options);\n void 0;\n if (tsplus_module_11.isLeft(tv)) {\n tsplus_module_12.push(tsplus_module_9.keyError(value.ast, v, tv.left))(errors);\n if (!allErrors) {\n return tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors));\n }\n continue;\n }\n tsplus_module_5.add(tv.right)(out);\n }\n return tsplus_module_3.isNonEmpty(errors)\n ? tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors))\n : tsplus_module_10.succeed(tsplus_module_5.endMutation(out));\n });\n };\n}\nfunction gen(value) {\n return tsplus_module_14.map(tsplus_module_5.from)(tsplus_module_14.array(value));\n}\n//# sourceMappingURL=hashSet.js.map"],"mappings":";;;;;;;;;;;;;;;AAcA,MAAa,mBAAmB;AAChC,SAAgB,QAAQ,OAAO;AAC3B,QAAO,gBAAgB,SAAS,gBAAgB,SAAS,IAAI,CAAC,gBAAgB,SAAS,gBAAgB,YAAY,WAAW,gBAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,YAAY,gBAAgB,OAAO,MAAM,EAAE,cAAc,KAAK,EAAE,cAAc,MAAM,CAAC,CAAC,CAAC;;;;;AAK3Q,SAAS,mBAAmB,OAAO;AAC/B,QAAO,gBAAgB,UAAU,QAAQ,MAAM,GAAG,UAAU;EACxD,MAAM,MAAM,gBAAgB,cAAc,gBAAgB,OAAO,CAAC;AAClE,OAAK,MAAM,KAAK,MACZ,iBAAgB,IAAI,EAAE,CAAC,IAAI;AAE/B,SAAO,gBAAgB,YAAY,IAAI;KACvC,UAAU;EACV,MAAM,MAAM,EAAE;AACd,kBAAgB,SAAS,MAAM;AAC3B,OAAI,KAAK,EAAE;IACb,CAAC,MAAM;AACT,SAAO;GACT,CAAC,gBAAgB,MAAM,MAAM,CAAC;;;;;AAKpC,SAAgB,cAAc,GAAG,CAAC,QAAQ;AACtC,QAAO,mBAAmB,MAAM;;AAEpC,SAAS,cAAc,YAAY;AAC/B,SAAQ,UAAU;EACd,MAAM,SAAS,QAAQ,MAAM;EAC7B,MAAM,aAAa,aAAa,gBAAgB,OAAO,MAAM,GAAG,gBAAgB,OAAO,MAAM;AAC7F,SAAO,iBAAiB,MAAM,GAAG,YAAY;AACzC,OAAI,CAAC,gBAAgB,UAAU,EAAE,CAC7B,QAAO,iBAAiB,KAAK,gBAAgB,UAAU,OAAO,KAAK,EAAE,CAAC;GAE1E,MAAM,YAAY,SAAS;GAC3B,MAAM,SAAS,gBAAgB,eAAe;GAC9C,MAAM,MAAM,gBAAgB,cAAc,gBAAgB,OAAO,CAAC;AAClE,QAAK,MAAM,KAAK,GAAG;IACf,MAAM,KAAK,WAAW,GAAG,QAAQ;AAEjC,QAAI,iBAAiB,OAAO,GAAG,EAAE;AAC7B,sBAAiB,KAAK,gBAAgB,SAAS,MAAM,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO;AAC9E,SAAI,CAAC,UACD,QAAO,iBAAiB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC;AAEtF;;AAEJ,oBAAgB,IAAI,GAAG,MAAM,CAAC,IAAI;;AAEtC,UAAO,gBAAgB,WAAW,OAAO,GACnC,iBAAiB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC,GAC3E,iBAAiB,QAAQ,gBAAgB,YAAY,IAAI,CAAC;IAClE;;;AAGV,SAAS,IAAI,OAAO;AAChB,QAAO,iBAAiB,IAAI,gBAAgB,KAAK,CAAC,iBAAiB,MAAM,MAAM,CAAC"}
|
package/_mjs/Schema/api/list.mjs
CHANGED
|
@@ -1,72 +1,69 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
2
|
-
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
3
1
|
import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
|
|
4
|
-
import * as
|
|
5
|
-
import * as
|
|
6
|
-
import * as tsplus_module_6 from "@fncts/base/data/function/api";
|
|
2
|
+
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
3
|
+
import * as tsplus_module_10 from "@fncts/schema/ParseResult";
|
|
7
4
|
import * as tsplus_module_7 from "@fncts/schema/Parser/api";
|
|
8
|
-
import * as
|
|
5
|
+
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
9
6
|
import * as tsplus_module_9 from "@fncts/schema/ParseError/ParseError";
|
|
10
|
-
import * as tsplus_module_10 from "@fncts/schema/ParseResult";
|
|
11
|
-
import * as tsplus_module_11 from "@fncts/base/collection/mutable/ListBuffer";
|
|
12
|
-
import * as tsplus_module_12 from "@fncts/base/data/Either/api";
|
|
13
7
|
import * as tsplus_module_13 from "@fncts/base/collection/immutable/Vector/internal";
|
|
8
|
+
import * as tsplus_module_4 from "@fncts/schema/Schema/api";
|
|
9
|
+
import "@fncts/base/data/function/api";
|
|
10
|
+
import * as tsplus_module_12 from "@fncts/base/data/Either/api";
|
|
14
11
|
import * as tsplus_module_14 from "@fncts/schema/Parser/definition";
|
|
15
12
|
import * as tsplus_module_15 from "@fncts/test/control/Gen/api";
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
import * as tsplus_module_5 from "@fncts/base/collection/immutable/List/constructors";
|
|
14
|
+
import * as tsplus_module_8 from "@fncts/base/collection/immutable/List/definition";
|
|
15
|
+
import * as tsplus_module_11 from "@fncts/base/collection/mutable/ListBuffer";
|
|
16
|
+
//#region build/esm/Schema/api/list.js
|
|
17
|
+
const list = list_1;
|
|
18
|
+
const listFromArray = listFromArray_1;
|
|
18
19
|
/**
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
* @tsplus static fncts.schema.SchemaOps list
|
|
21
|
+
* @tsplus getter fncts.Schema.Schema list
|
|
22
|
+
*/
|
|
22
23
|
function list_1(value) {
|
|
23
|
-
|
|
24
|
+
return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `List<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), parser(true), parser(false))));
|
|
24
25
|
}
|
|
25
26
|
/**
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
* @tsplus static fncts.schema.SchemaOps listFromArray
|
|
28
|
+
* @tsplus getter fncts.Schema.Schema listFromArray
|
|
29
|
+
*/
|
|
29
30
|
function listFromArray_1(value) {
|
|
30
|
-
|
|
31
|
+
return tsplus_module_4.transform(list_1(value), (input) => tsplus_module_5.from(input), (input) => Array.from(input))(tsplus_module_4.array(value));
|
|
31
32
|
}
|
|
32
33
|
/**
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
* @tsplus derive fncts.schema.Schema[fncts.List]<_> 10
|
|
35
|
+
*/
|
|
36
|
+
function deriveList(...[value]) {
|
|
37
|
+
return listFromArray_1(value);
|
|
37
38
|
}
|
|
38
39
|
function parser(isDecoding) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
out.append(t.right);
|
|
62
|
-
}
|
|
63
|
-
index++;
|
|
64
|
-
}
|
|
65
|
-
return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors)) : tsplus_module_10.succeed(out.toList);
|
|
66
|
-
});
|
|
67
|
-
};
|
|
40
|
+
return (value) => {
|
|
41
|
+
const schema = list_1(value);
|
|
42
|
+
const parseValue = isDecoding ? tsplus_module_7.decode(value) : tsplus_module_7.encode(value);
|
|
43
|
+
return tsplus_module_14.make((u, options) => {
|
|
44
|
+
if (!tsplus_module_8.isList(u)) return tsplus_module_10.fail(tsplus_module_9.typeError(schema.ast, u));
|
|
45
|
+
const out = new tsplus_module_11.ListBuffer();
|
|
46
|
+
const errors = tsplus_module_3.emptyPushable();
|
|
47
|
+
const allErrors = options?.allErrors;
|
|
48
|
+
let index = 0;
|
|
49
|
+
for (const v of u) {
|
|
50
|
+
const t = parseValue(v, options);
|
|
51
|
+
if (tsplus_module_12.isLeft(t)) {
|
|
52
|
+
tsplus_module_13.push(tsplus_module_9.indexError(index, t.left))(errors);
|
|
53
|
+
index++;
|
|
54
|
+
if (allErrors) continue;
|
|
55
|
+
return tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors));
|
|
56
|
+
} else out.append(t.right);
|
|
57
|
+
index++;
|
|
58
|
+
}
|
|
59
|
+
return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors)) : tsplus_module_10.succeed(out.toList);
|
|
60
|
+
});
|
|
61
|
+
};
|
|
68
62
|
}
|
|
69
63
|
function gen(value) {
|
|
70
|
-
|
|
64
|
+
return tsplus_module_15.map((array) => tsplus_module_5.from(array))(tsplus_module_15.array(value));
|
|
71
65
|
}
|
|
66
|
+
//#endregion
|
|
67
|
+
export { deriveList, list, listFromArray };
|
|
68
|
+
|
|
72
69
|
//# sourceMappingURL=list.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.mjs","names":["list","
|
|
1
|
+
{"version":3,"file":"list.mjs","names":[],"sources":["../../../esm/Schema/api/list.js"],"sourcesContent":["import * as tsplus_module_1 from \"@fncts/schema/ASTAnnotation\";\nimport * as tsplus_module_2 from \"@fncts/schema/Show\";\nimport * as tsplus_module_3 from \"@fncts/base/collection/immutable/Vector/api\";\nimport * as tsplus_module_4 from \"@fncts/schema/Schema/api\";\nimport * as tsplus_module_5 from \"@fncts/base/collection/immutable/List/constructors\";\nimport * as tsplus_module_6 from \"@fncts/base/data/function/api\";\nimport * as tsplus_module_7 from \"@fncts/schema/Parser/api\";\nimport * as tsplus_module_8 from \"@fncts/base/collection/immutable/List/definition\";\nimport * as tsplus_module_9 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_10 from \"@fncts/schema/ParseResult\";\nimport * as tsplus_module_11 from \"@fncts/base/collection/mutable/ListBuffer\";\nimport * as tsplus_module_12 from \"@fncts/base/data/Either/api\";\nimport * as tsplus_module_13 from \"@fncts/base/collection/immutable/Vector/internal\";\nimport * as tsplus_module_14 from \"@fncts/schema/Parser/definition\";\nimport * as tsplus_module_15 from \"@fncts/test/control/Gen/api\";\nexport const list = list_1;\nexport const listFromArray = listFromArray_1;\n/**\n * @tsplus static fncts.schema.SchemaOps list\n * @tsplus getter fncts.Schema.Schema list\n */\nfunction list_1(value) {\n return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `List<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), parser(true), parser(false))));\n}\n/**\n * @tsplus static fncts.schema.SchemaOps listFromArray\n * @tsplus getter fncts.Schema.Schema listFromArray\n */\nfunction listFromArray_1(value) {\n return tsplus_module_4.transform(list_1(value), (input) => tsplus_module_5.from(input), (input) => Array.from(input))(tsplus_module_4.array(value));\n}\n/**\n * @tsplus derive fncts.schema.Schema[fncts.List]<_> 10\n */\nexport function deriveList(...[value]) {\n return listFromArray_1(value);\n}\nfunction parser(isDecoding) {\n return (value) => {\n const schema = list_1(value);\n const parseValue = isDecoding ? tsplus_module_7.decode(value) : tsplus_module_7.encode(value);\n return tsplus_module_14.make((u, options) => {\n if (!tsplus_module_8.isList(u)) {\n return tsplus_module_10.fail(tsplus_module_9.typeError(schema.ast, u));\n }\n const out = new tsplus_module_11.ListBuffer();\n const errors = tsplus_module_3.emptyPushable();\n const allErrors = options?.allErrors;\n let index = 0;\n for (const v of u) {\n const t = parseValue(v, options);\n void 0;\n if (tsplus_module_12.isLeft(t)) {\n tsplus_module_13.push(tsplus_module_9.indexError(index, t.left))(errors);\n index++;\n if (allErrors) {\n continue;\n }\n return tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors));\n }\n else {\n out.append(t.right);\n }\n index++;\n }\n return tsplus_module_3.isNonEmpty(errors)\n ? tsplus_module_10.fail(tsplus_module_9.iterableError(schema.ast, u, errors))\n : tsplus_module_10.succeed(out.toList);\n });\n };\n}\nfunction gen(value) {\n return tsplus_module_15.map((array) => tsplus_module_5.from(array))(tsplus_module_15.array(value));\n}\n//# sourceMappingURL=list.js.map"],"mappings":";;;;;;;;;;;;;;;;AAeA,MAAa,OAAO;AACpB,MAAa,gBAAgB;;;;;AAK7B,SAAS,OAAO,OAAO;AACnB,QAAO,gBAAgB,SAAS,gBAAgB,SAAS,IAAI,CAAC,gBAAgB,SAAS,gBAAgB,YAAY,QAAQ,gBAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,YAAY,gBAAgB,OAAO,MAAM,EAAE,OAAO,KAAK,EAAE,OAAO,MAAM,CAAC,CAAC,CAAC;;;;;;AAM1P,SAAS,gBAAgB,OAAO;AAC5B,QAAO,gBAAgB,UAAU,OAAO,MAAM,GAAG,UAAU,gBAAgB,KAAK,MAAM,GAAG,UAAU,MAAM,KAAK,MAAM,CAAC,CAAC,gBAAgB,MAAM,MAAM,CAAC;;;;;AAKvJ,SAAgB,WAAW,GAAG,CAAC,QAAQ;AACnC,QAAO,gBAAgB,MAAM;;AAEjC,SAAS,OAAO,YAAY;AACxB,SAAQ,UAAU;EACd,MAAM,SAAS,OAAO,MAAM;EAC5B,MAAM,aAAa,aAAa,gBAAgB,OAAO,MAAM,GAAG,gBAAgB,OAAO,MAAM;AAC7F,SAAO,iBAAiB,MAAM,GAAG,YAAY;AACzC,OAAI,CAAC,gBAAgB,OAAO,EAAE,CAC1B,QAAO,iBAAiB,KAAK,gBAAgB,UAAU,OAAO,KAAK,EAAE,CAAC;GAE1E,MAAM,MAAM,IAAI,iBAAiB,YAAY;GAC7C,MAAM,SAAS,gBAAgB,eAAe;GAC9C,MAAM,YAAY,SAAS;GAC3B,IAAI,QAAQ;AACZ,QAAK,MAAM,KAAK,GAAG;IACf,MAAM,IAAI,WAAW,GAAG,QAAQ;AAEhC,QAAI,iBAAiB,OAAO,EAAE,EAAE;AAC5B,sBAAiB,KAAK,gBAAgB,WAAW,OAAO,EAAE,KAAK,CAAC,CAAC,OAAO;AACxE;AACA,SAAI,UACA;AAEJ,YAAO,iBAAiB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC;UAGlF,KAAI,OAAO,EAAE,MAAM;AAEvB;;AAEJ,UAAO,gBAAgB,WAAW,OAAO,GACnC,iBAAiB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC,GAC3E,iBAAiB,QAAQ,IAAI,OAAO;IAC5C;;;AAGV,SAAS,IAAI,OAAO;AAChB,QAAO,iBAAiB,KAAK,UAAU,gBAAgB,KAAK,MAAM,CAAC,CAAC,iBAAiB,MAAM,MAAM,CAAC"}
|
package/_mjs/Schema/api/map.mjs
CHANGED
|
@@ -1,88 +1,78 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
2
|
-
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
3
1
|
import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
|
|
4
|
-
import * as
|
|
5
|
-
import * as tsplus_module_5 from "@fncts/base/data/function/api";
|
|
6
|
-
import * as tsplus_module_6 from "@fncts/schema/ParseError/ParseError";
|
|
2
|
+
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
7
3
|
import * as tsplus_module_7 from "@fncts/schema/ParseResult";
|
|
8
4
|
import * as tsplus_module_8 from "@fncts/schema/Parser/api";
|
|
9
|
-
import * as
|
|
5
|
+
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
6
|
+
import * as tsplus_module_6 from "@fncts/schema/ParseError/ParseError";
|
|
10
7
|
import * as tsplus_module_10 from "@fncts/base/collection/immutable/Vector/internal";
|
|
8
|
+
import * as tsplus_module_4 from "@fncts/schema/Schema/api";
|
|
9
|
+
import "@fncts/base/data/function/api";
|
|
10
|
+
import * as tsplus_module_9 from "@fncts/base/data/Either/api";
|
|
11
11
|
import * as tsplus_module_11 from "@fncts/schema/Parser/definition";
|
|
12
12
|
import * as tsplus_module_12 from "@fncts/test/control/Gen/api";
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
//#region build/esm/Schema/api/map.js
|
|
14
|
+
const map = map_1;
|
|
15
|
+
const mapFromRecord = mapFromRecord_1;
|
|
15
16
|
/**
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
* @tsplus static fncts.schema.SchemaOps map
|
|
18
|
+
*/
|
|
18
19
|
function map_1(key, value) {
|
|
19
|
-
|
|
20
|
+
return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `Map<${tsplus_module_2.show()(key)}, ${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(key, value), mapParser(true), mapParser(false))));
|
|
20
21
|
}
|
|
21
22
|
/**
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
* @tsplus static fncts.schema.SchemaOps mapFromRecord
|
|
24
|
+
*/
|
|
24
25
|
function mapFromRecord_1(key, value) {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
return out;
|
|
37
|
-
})(tsplus_module_4.record(key, value));
|
|
26
|
+
return tsplus_module_4.transform(map_1(key, value), (input) => {
|
|
27
|
+
const out = /* @__PURE__ */ new Map();
|
|
28
|
+
for (const [k, v] of Object.entries(input)) out.set(k, v);
|
|
29
|
+
return out;
|
|
30
|
+
}, (input) => {
|
|
31
|
+
const out = {};
|
|
32
|
+
input.forEach((v, k) => {
|
|
33
|
+
out[k] = v;
|
|
34
|
+
});
|
|
35
|
+
return out;
|
|
36
|
+
})(tsplus_module_4.record(key, value));
|
|
38
37
|
}
|
|
39
38
|
/**
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
...[key, value]) {
|
|
45
|
-
return mapFromRecord_1(key, value);
|
|
39
|
+
* @tsplus derive fncts.schema.Schema[fncts.Map]<_> 10
|
|
40
|
+
*/
|
|
41
|
+
function deriveMap(...[key, value]) {
|
|
42
|
+
return mapFromRecord_1(key, value);
|
|
46
43
|
}
|
|
47
44
|
function mapParser(isDecoding) {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
if (tsplus_module_9.isLeft(tk) || tsplus_module_9.isLeft(tv)) {
|
|
77
|
-
continue;
|
|
78
|
-
}
|
|
79
|
-
out.set(tk.right, tv.right);
|
|
80
|
-
}
|
|
81
|
-
return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_7.fail(tsplus_module_6.iterableError(schema.ast, u, errors)) : tsplus_module_7.succeed(out);
|
|
82
|
-
});
|
|
83
|
-
};
|
|
45
|
+
return (key, value) => {
|
|
46
|
+
const schema = map_1(key, value);
|
|
47
|
+
return tsplus_module_11.make((u, options) => {
|
|
48
|
+
if (!(u instanceof Map)) return tsplus_module_7.fail(tsplus_module_6.typeError(schema.ast, u));
|
|
49
|
+
const allErrors = options?.allErrors;
|
|
50
|
+
const errors = tsplus_module_3.emptyPushable();
|
|
51
|
+
const out = /* @__PURE__ */ new Map();
|
|
52
|
+
const keyParser = isDecoding ? tsplus_module_8.decode(key) : tsplus_module_8.encode(key);
|
|
53
|
+
const valueParser = isDecoding ? tsplus_module_8.decode(value) : tsplus_module_8.encode(value);
|
|
54
|
+
for (const [k, v] of u) {
|
|
55
|
+
const tk = keyParser(k, options);
|
|
56
|
+
if (tsplus_module_9.isLeft(tk)) {
|
|
57
|
+
tsplus_module_10.push(tsplus_module_6.keyError(key.ast, k, tk.left))(errors);
|
|
58
|
+
if (!allErrors) return tsplus_module_7.fail(tsplus_module_6.iterableError(schema.ast, u, errors));
|
|
59
|
+
}
|
|
60
|
+
const tv = valueParser(v, options);
|
|
61
|
+
if (tsplus_module_9.isLeft(tv)) {
|
|
62
|
+
tsplus_module_10.push(tsplus_module_6.keyError(key.ast, k, tv.left))(errors);
|
|
63
|
+
if (!allErrors) return tsplus_module_7.fail(tsplus_module_6.iterableError(schema.ast, u, errors));
|
|
64
|
+
}
|
|
65
|
+
if (tsplus_module_9.isLeft(tk) || tsplus_module_9.isLeft(tv)) continue;
|
|
66
|
+
out.set(tk.right, tv.right);
|
|
67
|
+
}
|
|
68
|
+
return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_7.fail(tsplus_module_6.iterableError(schema.ast, u, errors)) : tsplus_module_7.succeed(out);
|
|
69
|
+
});
|
|
70
|
+
};
|
|
84
71
|
}
|
|
85
72
|
function gen(key, value) {
|
|
86
|
-
|
|
73
|
+
return tsplus_module_12.map((pairs) => new Map(pairs))(tsplus_module_12.array(tsplus_module_12.tuple(key, value)));
|
|
87
74
|
}
|
|
75
|
+
//#endregion
|
|
76
|
+
export { deriveMap, map, mapFromRecord };
|
|
77
|
+
|
|
88
78
|
//# sourceMappingURL=map.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.mjs","names":["
|
|
1
|
+
{"version":3,"file":"map.mjs","names":[],"sources":["../../../esm/Schema/api/map.js"],"sourcesContent":["import * as tsplus_module_1 from \"@fncts/schema/ASTAnnotation\";\nimport * as tsplus_module_2 from \"@fncts/schema/Show\";\nimport * as tsplus_module_3 from \"@fncts/base/collection/immutable/Vector/api\";\nimport * as tsplus_module_4 from \"@fncts/schema/Schema/api\";\nimport * as tsplus_module_5 from \"@fncts/base/data/function/api\";\nimport * as tsplus_module_6 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_7 from \"@fncts/schema/ParseResult\";\nimport * as tsplus_module_8 from \"@fncts/schema/Parser/api\";\nimport * as tsplus_module_9 from \"@fncts/base/data/Either/api\";\nimport * as tsplus_module_10 from \"@fncts/base/collection/immutable/Vector/internal\";\nimport * as tsplus_module_11 from \"@fncts/schema/Parser/definition\";\nimport * as tsplus_module_12 from \"@fncts/test/control/Gen/api\";\nexport const map = map_1;\nexport const mapFromRecord = mapFromRecord_1;\n/**\n * @tsplus static fncts.schema.SchemaOps map\n */\nfunction map_1(key, value) {\n return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `Map<${tsplus_module_2.show()(key)}, ${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(key, value), mapParser(true), mapParser(false))));\n}\n/**\n * @tsplus static fncts.schema.SchemaOps mapFromRecord\n */\nfunction mapFromRecord_1(key, value) {\n return tsplus_module_4.transform(map_1(key, value), (input) => {\n const out = new Map();\n for (const [k, v] of Object.entries(input)) {\n out.set(k, v);\n }\n return out;\n }, (input) => {\n const out = {};\n input.forEach((v, k) => {\n out[k] = v;\n });\n return out;\n })(tsplus_module_4.record(key, value));\n}\n/**\n * @tsplus derive fncts.schema.Schema[fncts.Map]<_> 10\n */\nexport function deriveMap(\n// @ts-expect-error\n...[key, value]) {\n return mapFromRecord_1(key, value);\n}\nfunction mapParser(isDecoding) {\n return (key, value) => {\n const schema = map_1(key, value);\n return tsplus_module_11.make((u, options) => {\n if (!(u instanceof Map)) {\n return tsplus_module_7.fail(tsplus_module_6.typeError(schema.ast, u));\n }\n const allErrors = options?.allErrors;\n const errors = tsplus_module_3.emptyPushable();\n const out = new Map();\n const keyParser = isDecoding ? tsplus_module_8.decode(key) : tsplus_module_8.encode(key);\n const valueParser = isDecoding ? tsplus_module_8.decode(value) : tsplus_module_8.encode(value);\n for (const [k, v] of u) {\n const tk = keyParser(k, options);\n void 0;\n if (tsplus_module_9.isLeft(tk)) {\n tsplus_module_10.push(tsplus_module_6.keyError(key.ast, k, tk.left))(errors);\n if (!allErrors) {\n return tsplus_module_7.fail(tsplus_module_6.iterableError(schema.ast, u, errors));\n }\n }\n const tv = valueParser(v, options);\n void 0;\n if (tsplus_module_9.isLeft(tv)) {\n tsplus_module_10.push(tsplus_module_6.keyError(key.ast, k, tv.left))(errors);\n if (!allErrors) {\n return tsplus_module_7.fail(tsplus_module_6.iterableError(schema.ast, u, errors));\n }\n }\n if (tsplus_module_9.isLeft(tk) || tsplus_module_9.isLeft(tv)) {\n continue;\n }\n out.set(tk.right, tv.right);\n }\n return tsplus_module_3.isNonEmpty(errors)\n ? tsplus_module_7.fail(tsplus_module_6.iterableError(schema.ast, u, errors))\n : tsplus_module_7.succeed(out);\n });\n };\n}\nfunction gen(key, value) {\n return tsplus_module_12.map((pairs) => new Map(pairs))(tsplus_module_12.array(tsplus_module_12.tuple(key, value)));\n}\n//# sourceMappingURL=map.js.map"],"mappings":";;;;;;;;;;;;;AAYA,MAAa,MAAM;AACnB,MAAa,gBAAgB;;;;AAI7B,SAAS,MAAM,KAAK,OAAO;AACvB,QAAO,gBAAgB,SAAS,gBAAgB,SAAS,IAAI,CAAC,gBAAgB,SAAS,gBAAgB,YAAY,OAAO,gBAAgB,MAAM,CAAC,IAAI,CAAC,IAAI,gBAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,YAAY,gBAAgB,OAAO,KAAK,MAAM,EAAE,UAAU,KAAK,EAAE,UAAU,MAAM,CAAC,CAAC,CAAC;;;;;AAKpS,SAAS,gBAAgB,KAAK,OAAO;AACjC,QAAO,gBAAgB,UAAU,MAAM,KAAK,MAAM,GAAG,UAAU;EAC3D,MAAM,sBAAM,IAAI,KAAK;AACrB,OAAK,MAAM,CAAC,GAAG,MAAM,OAAO,QAAQ,MAAM,CACtC,KAAI,IAAI,GAAG,EAAE;AAEjB,SAAO;KACP,UAAU;EACV,MAAM,MAAM,EAAE;AACd,QAAM,SAAS,GAAG,MAAM;AACpB,OAAI,KAAK;IACX;AACF,SAAO;GACT,CAAC,gBAAgB,OAAO,KAAK,MAAM,CAAC;;;;;AAK1C,SAAgB,UAEhB,GAAG,CAAC,KAAK,QAAQ;AACb,QAAO,gBAAgB,KAAK,MAAM;;AAEtC,SAAS,UAAU,YAAY;AAC3B,SAAQ,KAAK,UAAU;EACnB,MAAM,SAAS,MAAM,KAAK,MAAM;AAChC,SAAO,iBAAiB,MAAM,GAAG,YAAY;AACzC,OAAI,EAAE,aAAa,KACf,QAAO,gBAAgB,KAAK,gBAAgB,UAAU,OAAO,KAAK,EAAE,CAAC;GAEzE,MAAM,YAAY,SAAS;GAC3B,MAAM,SAAS,gBAAgB,eAAe;GAC9C,MAAM,sBAAM,IAAI,KAAK;GACrB,MAAM,YAAY,aAAa,gBAAgB,OAAO,IAAI,GAAG,gBAAgB,OAAO,IAAI;GACxF,MAAM,cAAc,aAAa,gBAAgB,OAAO,MAAM,GAAG,gBAAgB,OAAO,MAAM;AAC9F,QAAK,MAAM,CAAC,GAAG,MAAM,GAAG;IACpB,MAAM,KAAK,UAAU,GAAG,QAAQ;AAEhC,QAAI,gBAAgB,OAAO,GAAG,EAAE;AAC5B,sBAAiB,KAAK,gBAAgB,SAAS,IAAI,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO;AAC5E,SAAI,CAAC,UACD,QAAO,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC;;IAGzF,MAAM,KAAK,YAAY,GAAG,QAAQ;AAElC,QAAI,gBAAgB,OAAO,GAAG,EAAE;AAC5B,sBAAiB,KAAK,gBAAgB,SAAS,IAAI,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO;AAC5E,SAAI,CAAC,UACD,QAAO,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC;;AAGzF,QAAI,gBAAgB,OAAO,GAAG,IAAI,gBAAgB,OAAO,GAAG,CACxD;AAEJ,QAAI,IAAI,GAAG,OAAO,GAAG,MAAM;;AAE/B,UAAO,gBAAgB,WAAW,OAAO,GACnC,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC,GAC1E,gBAAgB,QAAQ,IAAI;IACpC;;;AAGV,SAAS,IAAI,KAAK,OAAO;AACrB,QAAO,iBAAiB,KAAK,UAAU,IAAI,IAAI,MAAM,CAAC,CAAC,iBAAiB,MAAM,iBAAiB,MAAM,KAAK,MAAM,CAAC,CAAC"}
|