@fncts/schema 0.0.23 → 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/AST.d.ts +60 -29
- package/ASTAnnotationMap.d.ts +4 -1
- package/LICENSE +26 -0
- package/ParseError/ParseError.d.ts +28 -13
- package/_cjs/AST.cjs +1096 -1087
- package/_cjs/AST.cjs.map +1 -1
- package/_cjs/ASTAnnotation.cjs +114 -83
- package/_cjs/ASTAnnotation.cjs.map +1 -1
- package/_cjs/ASTAnnotationMap.cjs +43 -32
- 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 -15
- package/_cjs/InvalidInterpretationError.cjs.map +1 -1
- package/_cjs/ParseError/ParseError.cjs +285 -209
- 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 -64
- 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 -27
- 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 +1007 -1031
- package/_mjs/AST.mjs.map +1 -1
- package/_mjs/ASTAnnotation.mjs +77 -71
- package/_mjs/ASTAnnotation.mjs.map +1 -1
- package/_mjs/ASTAnnotationMap.mjs +36 -25
- 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 -9
- package/_mjs/InvalidInterpretationError.mjs.map +1 -1
- package/_mjs/ParseError/ParseError.mjs +270 -190
- 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 -51
- 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 -18
- 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/_src/AST.ts +226 -28
- package/_src/ASTAnnotationMap.ts +14 -1
- package/_src/ParseError/ParseError.ts +128 -13
- package/_src/Schema/api/hashMap.ts +1 -1
- package/_src/Schema/api/hashSet.ts +1 -1
- package/_src/Schema/api/list.ts +3 -1
- package/_src/Schema/api/map.ts +1 -1
- package/_src/Schema/api/set.ts +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,54 +1,52 @@
|
|
|
1
|
-
const fileName_1 = "(@fncts/schema) src/Schema/api/maybe.ts";
|
|
2
|
-
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
3
|
-
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
4
1
|
import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
|
|
5
|
-
import * as tsplus_module_4 from "@fncts/schema/Schema/api";
|
|
6
|
-
import * as tsplus_module_5 from "@fncts/base/data/Maybe/constructors";
|
|
7
2
|
import * as tsplus_module_6 from "@fncts/base/data/Maybe/api";
|
|
8
|
-
import * as
|
|
3
|
+
import * as tsplus_module_5 from "@fncts/base/data/Maybe/constructors";
|
|
4
|
+
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
5
|
+
import * as tsplus_module_11 from "@fncts/schema/ParseResult";
|
|
9
6
|
import * as tsplus_module_8 from "@fncts/schema/Parser/api";
|
|
10
7
|
import * as tsplus_module_9 from "@fncts/base/data/Maybe/definition";
|
|
8
|
+
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
11
9
|
import * as tsplus_module_10 from "@fncts/schema/ParseError/ParseError";
|
|
12
|
-
import * as
|
|
10
|
+
import * as tsplus_module_4 from "@fncts/schema/Schema/api";
|
|
11
|
+
import "@fncts/base/data/function/api";
|
|
13
12
|
import * as tsplus_module_12 from "@fncts/base/data/Either/api";
|
|
14
13
|
import * as tsplus_module_13 from "@fncts/schema/Parser/definition";
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
//#region build/esm/Schema/api/maybe.js
|
|
15
|
+
const fileName_1 = "(@fncts/schema) src/Schema/api/maybe.ts";
|
|
16
|
+
const maybe = maybe_1;
|
|
17
|
+
const maybeFromNullable = maybeFromNullable_1;
|
|
17
18
|
/**
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
* @tsplus static fncts.schema.SchemaOps maybe
|
|
20
|
+
* @tsplus getter fncts.schema.Schema maybe
|
|
21
|
+
*/
|
|
21
22
|
function maybe_1(value) {
|
|
22
|
-
|
|
23
|
+
return tsplus_module_4.annotate(tsplus_module_1.Identifier, `Maybe<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), maybeParser(true), maybeParser(false)));
|
|
23
24
|
}
|
|
24
25
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
* @tsplus static fncts.schema.SchemaOps maybeFromNullable
|
|
27
|
+
* @tsplus getter fncts.schema.Schema maybeFromNullable
|
|
28
|
+
*/
|
|
28
29
|
function maybeFromNullable_1(value) {
|
|
29
|
-
|
|
30
|
+
return tsplus_module_4.transform(maybe_1(value), tsplus_module_5.fromNullable, (input) => tsplus_module_6.getOrElse(() => null)(input))(tsplus_module_4.union(tsplus_module_4._undefined, tsplus_module_4.nullable(value)));
|
|
30
31
|
}
|
|
31
32
|
/**
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
* @tsplus derive fncts.schema.Schema[fncts.Maybe]<_> 10
|
|
34
|
+
*/
|
|
35
|
+
function deriveMaybe(...[value]) {
|
|
36
|
+
return maybeFromNullable_1(value);
|
|
36
37
|
}
|
|
37
38
|
function maybeParser(isDecoding) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
return tsplus_module_11.succeed(tsplus_module_5.nothing(fileName_1 + ":47:43"));
|
|
48
|
-
} else {
|
|
49
|
-
return tsplus_module_12.map(a => tsplus_module_5.just(a, fileName_1 + ":49:60"))(parseValue(u.value, options));
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
};
|
|
39
|
+
return (value) => {
|
|
40
|
+
const schema = maybe_1(value);
|
|
41
|
+
const parseValue = isDecoding ? tsplus_module_8.decode(value) : tsplus_module_8.encode(value);
|
|
42
|
+
return tsplus_module_13.make((u, options) => {
|
|
43
|
+
if (!tsplus_module_9.isMaybe(u)) return tsplus_module_11.fail(tsplus_module_10.typeError(schema.ast, u));
|
|
44
|
+
if (tsplus_module_9.isNothing(u)) return tsplus_module_11.succeed(tsplus_module_5.nothing(fileName_1 + ":47:43"));
|
|
45
|
+
else return tsplus_module_12.map((a) => tsplus_module_5.just(a, fileName_1 + ":49:60"))(parseValue(u.value, options));
|
|
46
|
+
});
|
|
47
|
+
};
|
|
53
48
|
}
|
|
49
|
+
//#endregion
|
|
50
|
+
export { deriveMaybe, maybe, maybeFromNullable };
|
|
51
|
+
|
|
54
52
|
//# sourceMappingURL=maybe.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maybe.mjs","names":["maybe","
|
|
1
|
+
{"version":3,"file":"maybe.mjs","names":[],"sources":["../../../esm/Schema/api/maybe.js"],"sourcesContent":["const fileName_1 = \"(@fncts/schema) src/Schema/api/maybe.ts\";\nimport * 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/Maybe/constructors\";\nimport * as tsplus_module_6 from \"@fncts/base/data/Maybe/api\";\nimport * as tsplus_module_7 from \"@fncts/base/data/function/api\";\nimport * as tsplus_module_8 from \"@fncts/schema/Parser/api\";\nimport * as tsplus_module_9 from \"@fncts/base/data/Maybe/definition\";\nimport * as tsplus_module_10 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_11 from \"@fncts/schema/ParseResult\";\nimport * as tsplus_module_12 from \"@fncts/base/data/Either/api\";\nimport * as tsplus_module_13 from \"@fncts/schema/Parser/definition\";\nexport const maybe = maybe_1;\nexport const maybeFromNullable = maybeFromNullable_1;\n/**\n * @tsplus static fncts.schema.SchemaOps maybe\n * @tsplus getter fncts.schema.Schema maybe\n */\nfunction maybe_1(value) {\n return tsplus_module_4.annotate(tsplus_module_1.Identifier, `Maybe<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), maybeParser(true), maybeParser(false)));\n}\n/**\n * @tsplus static fncts.schema.SchemaOps maybeFromNullable\n * @tsplus getter fncts.schema.Schema maybeFromNullable\n */\nfunction maybeFromNullable_1(value) {\n return tsplus_module_4.transform(maybe_1(value), tsplus_module_5.fromNullable, (input) => tsplus_module_6.getOrElse(() => null)(input))(tsplus_module_4.union(tsplus_module_4._undefined, tsplus_module_4.nullable(value)));\n}\n/**\n * @tsplus derive fncts.schema.Schema[fncts.Maybe]<_> 10\n */\nexport function deriveMaybe(...[value]) {\n return maybeFromNullable_1(value);\n}\nfunction maybeParser(isDecoding) {\n return (value) => {\n const schema = maybe_1(value);\n const parseValue = isDecoding ? tsplus_module_8.decode(value) : tsplus_module_8.encode(value);\n return tsplus_module_13.make((u, options) => {\n if (!tsplus_module_9.isMaybe(u)) {\n return tsplus_module_11.fail(tsplus_module_10.typeError(schema.ast, u));\n }\n void 0;\n if (tsplus_module_9.isNothing(u)) {\n return tsplus_module_11.succeed(tsplus_module_5.nothing(fileName_1 + \":47:43\"));\n }\n else {\n return tsplus_module_12.map((a) => tsplus_module_5.just(a, fileName_1 + \":49:60\"))(parseValue(u.value, options));\n }\n });\n };\n}\n//# sourceMappingURL=maybe.js.map"],"mappings":";;;;;;;;;;;;;;AAAA,MAAM,aAAa;AAcnB,MAAa,QAAQ;AACrB,MAAa,oBAAoB;;;;;AAKjC,SAAS,QAAQ,OAAO;AACpB,QAAO,gBAAgB,SAAS,gBAAgB,YAAY,SAAS,gBAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,YAAY,gBAAgB,OAAO,MAAM,EAAE,YAAY,KAAK,EAAE,YAAY,MAAM,CAAC,CAAC;;;;;;AAM7M,SAAS,oBAAoB,OAAO;AAChC,QAAO,gBAAgB,UAAU,QAAQ,MAAM,EAAE,gBAAgB,eAAe,UAAU,gBAAgB,gBAAgB,KAAK,CAAC,MAAM,CAAC,CAAC,gBAAgB,MAAM,gBAAgB,YAAY,gBAAgB,SAAS,MAAM,CAAC,CAAC;;;;;AAK/N,SAAgB,YAAY,GAAG,CAAC,QAAQ;AACpC,QAAO,oBAAoB,MAAM;;AAErC,SAAS,YAAY,YAAY;AAC7B,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,QAAQ,EAAE,CAC3B,QAAO,iBAAiB,KAAK,iBAAiB,UAAU,OAAO,KAAK,EAAE,CAAC;AAG3E,OAAI,gBAAgB,UAAU,EAAE,CAC5B,QAAO,iBAAiB,QAAQ,gBAAgB,QAAQ,aAAa,SAAS,CAAC;OAG/E,QAAO,iBAAiB,KAAK,MAAM,gBAAgB,KAAK,GAAG,aAAa,SAAS,CAAC,CAAC,WAAW,EAAE,OAAO,QAAQ,CAAC;IAEtH"}
|
package/_mjs/Schema/api/set.mjs
CHANGED
|
@@ -1,67 +1,66 @@
|
|
|
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
|
|
2
|
+
import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
|
|
3
|
+
import * as tsplus_module_8 from "@fncts/schema/ParseResult";
|
|
6
4
|
import * as tsplus_module_6 from "@fncts/schema/Parser/api";
|
|
5
|
+
import * as tsplus_module_2 from "@fncts/schema/Show";
|
|
7
6
|
import * as tsplus_module_7 from "@fncts/schema/ParseError/ParseError";
|
|
8
|
-
import * as tsplus_module_8 from "@fncts/schema/ParseResult";
|
|
9
|
-
import * as tsplus_module_9 from "@fncts/base/data/Either/api";
|
|
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/set.js
|
|
14
|
+
const set = set_1;
|
|
15
|
+
const setFromArray = setFromArray_1;
|
|
15
16
|
/**
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
* @tsplus static fncts.schema.SchemaOps map
|
|
18
|
+
*/
|
|
18
19
|
function set_1(value) {
|
|
19
|
-
|
|
20
|
+
return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `Set<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), setParser(true), setParser(false))));
|
|
20
21
|
}
|
|
21
22
|
/**
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
* @tsplus static fncts.schema.SchemaOps mapFromRecord
|
|
24
|
+
*/
|
|
24
25
|
function setFromArray_1(value) {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
return tsplus_module_4.transform(set_1(value), (input) => {
|
|
27
|
+
return new Set(input);
|
|
28
|
+
}, (input) => {
|
|
29
|
+
return Array.from(input);
|
|
30
|
+
})(tsplus_module_4.array(value));
|
|
30
31
|
}
|
|
31
32
|
/**
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
* @tsplus derive fncts.schema.Schema[fncts.Set]<_> 10
|
|
34
|
+
*/
|
|
35
|
+
function deriveSet(...[value]) {
|
|
36
|
+
return setFromArray_1(value);
|
|
36
37
|
}
|
|
37
38
|
function setParser(isDecoding) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
out.add(tv.right);
|
|
59
|
-
}
|
|
60
|
-
return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors)) : tsplus_module_8.succeed(out);
|
|
61
|
-
});
|
|
62
|
-
};
|
|
39
|
+
return (value) => {
|
|
40
|
+
const schema = set_1(value);
|
|
41
|
+
const parseValue = isDecoding ? tsplus_module_6.decode(value) : tsplus_module_6.encode(value);
|
|
42
|
+
return tsplus_module_11.make((u, options) => {
|
|
43
|
+
if (!(u instanceof Set)) return tsplus_module_8.fail(tsplus_module_7.typeError(schema.ast, u));
|
|
44
|
+
const allErrors = options?.allErrors;
|
|
45
|
+
const errors = tsplus_module_3.emptyPushable();
|
|
46
|
+
const out = /* @__PURE__ */ new Set();
|
|
47
|
+
for (const v of u) {
|
|
48
|
+
const tv = parseValue(v, options);
|
|
49
|
+
if (tsplus_module_9.isLeft(tv)) {
|
|
50
|
+
tsplus_module_10.push(tsplus_module_7.keyError(value.ast, v, tv.left))(errors);
|
|
51
|
+
if (!allErrors) return tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors));
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
out.add(tv.right);
|
|
55
|
+
}
|
|
56
|
+
return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors)) : tsplus_module_8.succeed(out);
|
|
57
|
+
});
|
|
58
|
+
};
|
|
63
59
|
}
|
|
64
60
|
function gen(value) {
|
|
65
|
-
|
|
61
|
+
return tsplus_module_12.map((values) => new Set(values))(tsplus_module_12.array(value));
|
|
66
62
|
}
|
|
63
|
+
//#endregion
|
|
64
|
+
export { deriveSet, set, setFromArray };
|
|
65
|
+
|
|
67
66
|
//# sourceMappingURL=set.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.mjs","names":["set","
|
|
1
|
+
{"version":3,"file":"set.mjs","names":[],"sources":["../../../esm/Schema/api/set.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/Parser/api\";\nimport * as tsplus_module_7 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_8 from \"@fncts/schema/ParseResult\";\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 set = set_1;\nexport const setFromArray = setFromArray_1;\n/**\n * @tsplus static fncts.schema.SchemaOps map\n */\nfunction set_1(value) {\n return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `Set<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), setParser(true), setParser(false))));\n}\n/**\n * @tsplus static fncts.schema.SchemaOps mapFromRecord\n */\nfunction setFromArray_1(value) {\n return tsplus_module_4.transform(set_1(value), (input) => {\n return new Set(input);\n }, (input) => {\n return Array.from(input);\n })(tsplus_module_4.array(value));\n}\n/**\n * @tsplus derive fncts.schema.Schema[fncts.Set]<_> 10\n */\nexport function deriveSet(...[value]) {\n return setFromArray_1(value);\n}\nfunction setParser(isDecoding) {\n return (value) => {\n const schema = set_1(value);\n const parseValue = isDecoding ? tsplus_module_6.decode(value) : tsplus_module_6.encode(value);\n return tsplus_module_11.make((u, options) => {\n if (!(u instanceof Set)) {\n return tsplus_module_8.fail(tsplus_module_7.typeError(schema.ast, u));\n }\n const allErrors = options?.allErrors;\n const errors = tsplus_module_3.emptyPushable();\n const out = new Set();\n for (const v of u) {\n const tv = parseValue(v, options);\n void 0;\n if (tsplus_module_9.isLeft(tv)) {\n tsplus_module_10.push(tsplus_module_7.keyError(value.ast, v, tv.left))(errors);\n if (!allErrors) {\n return tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors));\n }\n continue;\n }\n out.add(tv.right);\n }\n return tsplus_module_3.isNonEmpty(errors)\n ? tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors))\n : tsplus_module_8.succeed(out);\n });\n };\n}\nfunction gen(value) {\n return tsplus_module_12.map((values) => new Set(values))(tsplus_module_12.array(value));\n}\n//# sourceMappingURL=set.js.map"],"mappings":";;;;;;;;;;;;;AAYA,MAAa,MAAM;AACnB,MAAa,eAAe;;;;AAI5B,SAAS,MAAM,OAAO;AAClB,QAAO,gBAAgB,SAAS,gBAAgB,SAAS,IAAI,CAAC,gBAAgB,SAAS,gBAAgB,YAAY,OAAO,gBAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,YAAY,gBAAgB,OAAO,MAAM,EAAE,UAAU,KAAK,EAAE,UAAU,MAAM,CAAC,CAAC,CAAC;;;;;AAK/P,SAAS,eAAe,OAAO;AAC3B,QAAO,gBAAgB,UAAU,MAAM,MAAM,GAAG,UAAU;AACtD,SAAO,IAAI,IAAI,MAAM;KACrB,UAAU;AACV,SAAO,MAAM,KAAK,MAAM;GAC1B,CAAC,gBAAgB,MAAM,MAAM,CAAC;;;;;AAKpC,SAAgB,UAAU,GAAG,CAAC,QAAQ;AAClC,QAAO,eAAe,MAAM;;AAEhC,SAAS,UAAU,YAAY;AAC3B,SAAQ,UAAU;EACd,MAAM,SAAS,MAAM,MAAM;EAC3B,MAAM,aAAa,aAAa,gBAAgB,OAAO,MAAM,GAAG,gBAAgB,OAAO,MAAM;AAC7F,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;AACrB,QAAK,MAAM,KAAK,GAAG;IACf,MAAM,KAAK,WAAW,GAAG,QAAQ;AAEjC,QAAI,gBAAgB,OAAO,GAAG,EAAE;AAC5B,sBAAiB,KAAK,gBAAgB,SAAS,MAAM,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO;AAC9E,SAAI,CAAC,UACD,QAAO,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC;AAErF;;AAEJ,QAAI,IAAI,GAAG,MAAM;;AAErB,UAAO,gBAAgB,WAAW,OAAO,GACnC,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC,GAC1E,gBAAgB,QAAQ,IAAI;IACpC;;;AAGV,SAAS,IAAI,OAAO;AAChB,QAAO,iBAAiB,KAAK,WAAW,IAAI,IAAI,OAAO,CAAC,CAAC,iBAAiB,MAAM,MAAM,CAAC"}
|