@fncts/schema 0.0.16 → 0.0.17

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.
Files changed (151) hide show
  1. package/AST.d.ts +19 -6
  2. package/ASTAnnotation.d.ts +10 -2
  3. package/ParseError/ParseError.d.ts +231 -0
  4. package/ParseError/ParseErrorFormatter.d.ts +2 -0
  5. package/ParseError/PathFormatter.d.ts +13 -0
  6. package/ParseError/TreeFormatter.d.ts +14 -0
  7. package/ParseError.d.ts +4 -144
  8. package/ParseResult.d.ts +1 -8
  9. package/Parser/interpreter.d.ts +0 -1
  10. package/Schema/api/conc.d.ts +0 -2
  11. package/Schema/api/hashMap.d.ts +0 -1
  12. package/Schema/api/hashSet.d.ts +0 -1
  13. package/Schema/api/immutableArray.d.ts +0 -1
  14. package/Schema/api/list.d.ts +1 -2
  15. package/Schema/api/map.d.ts +19 -0
  16. package/Schema/api/set.d.ts +19 -0
  17. package/Schema/api.d.ts +11 -1
  18. package/Schema.d.ts +2 -0
  19. package/Show.d.ts +7 -3
  20. package/_cjs/AST.cjs +180 -113
  21. package/_cjs/AST.cjs.map +1 -1
  22. package/_cjs/ASTAnnotation.cjs +6 -1
  23. package/_cjs/ASTAnnotation.cjs.map +1 -1
  24. package/_cjs/Gen.cjs +24 -24
  25. package/_cjs/Gen.cjs.map +1 -1
  26. package/_cjs/ParseError/ParseError.cjs +260 -0
  27. package/_cjs/ParseError/ParseError.cjs.map +1 -0
  28. package/_cjs/ParseError/ParseErrorFormatter.cjs +6 -0
  29. package/_cjs/ParseError/ParseErrorFormatter.cjs.map +1 -0
  30. package/_cjs/ParseError/PathFormatter.cjs +94 -0
  31. package/_cjs/ParseError/PathFormatter.cjs.map +1 -0
  32. package/_cjs/ParseError/TreeFormatter.cjs +123 -0
  33. package/_cjs/ParseError/TreeFormatter.cjs.map +1 -0
  34. package/_cjs/ParseError.cjs +43 -289
  35. package/_cjs/ParseError.cjs.map +1 -1
  36. package/_cjs/ParseResult.cjs +1 -10
  37. package/_cjs/ParseResult.cjs.map +1 -1
  38. package/_cjs/Parser/api.cjs +2 -2
  39. package/_cjs/Parser/api.cjs.map +1 -1
  40. package/_cjs/Parser/definition.cjs +1 -1
  41. package/_cjs/Parser/interpreter.cjs +121 -117
  42. package/_cjs/Parser/interpreter.cjs.map +1 -1
  43. package/_cjs/Schema/api/conc.cjs +35 -45
  44. package/_cjs/Schema/api/conc.cjs.map +1 -1
  45. package/_cjs/Schema/api/either.cjs +24 -30
  46. package/_cjs/Schema/api/either.cjs.map +1 -1
  47. package/_cjs/Schema/api/hashMap.cjs +41 -101
  48. package/_cjs/Schema/api/hashMap.cjs.map +1 -1
  49. package/_cjs/Schema/api/hashSet.cjs +46 -106
  50. package/_cjs/Schema/api/hashSet.cjs.map +1 -1
  51. package/_cjs/Schema/api/immutableArray.cjs +22 -48
  52. package/_cjs/Schema/api/immutableArray.cjs.map +1 -1
  53. package/_cjs/Schema/api/list.cjs +35 -52
  54. package/_cjs/Schema/api/list.cjs.map +1 -1
  55. package/_cjs/Schema/api/map.cjs +97 -0
  56. package/_cjs/Schema/api/map.cjs.map +1 -0
  57. package/_cjs/Schema/api/maybe.cjs +24 -35
  58. package/_cjs/Schema/api/maybe.cjs.map +1 -1
  59. package/_cjs/Schema/api/set.cjs +76 -0
  60. package/_cjs/Schema/api/set.cjs.map +1 -0
  61. package/_cjs/Schema/api.cjs +20 -2
  62. package/_cjs/Schema/api.cjs.map +1 -1
  63. package/_cjs/Schema.cjs +22 -0
  64. package/_cjs/Schema.cjs.map +1 -1
  65. package/_cjs/Show.cjs +106 -89
  66. package/_cjs/Show.cjs.map +1 -1
  67. package/_cjs/utils.cjs +5 -0
  68. package/_cjs/utils.cjs.map +1 -1
  69. package/_mjs/AST.mjs +177 -112
  70. package/_mjs/AST.mjs.map +1 -1
  71. package/_mjs/ASTAnnotation.mjs +5 -0
  72. package/_mjs/ASTAnnotation.mjs.map +1 -1
  73. package/_mjs/Gen.mjs +24 -24
  74. package/_mjs/Gen.mjs.map +1 -1
  75. package/_mjs/ParseError/ParseError.mjs +228 -0
  76. package/_mjs/ParseError/ParseError.mjs.map +1 -0
  77. package/_mjs/ParseError/ParseErrorFormatter.mjs +2 -0
  78. package/_mjs/ParseError/ParseErrorFormatter.mjs.map +1 -0
  79. package/_mjs/ParseError/PathFormatter.mjs +86 -0
  80. package/_mjs/ParseError/PathFormatter.mjs.map +1 -0
  81. package/_mjs/ParseError/TreeFormatter.mjs +113 -0
  82. package/_mjs/ParseError/TreeFormatter.mjs.map +1 -0
  83. package/_mjs/ParseError.mjs +6 -270
  84. package/_mjs/ParseError.mjs.map +1 -1
  85. package/_mjs/ParseResult.mjs +1 -9
  86. package/_mjs/ParseResult.mjs.map +1 -1
  87. package/_mjs/Parser/api.mjs +2 -2
  88. package/_mjs/Parser/api.mjs.map +1 -1
  89. package/_mjs/Parser/definition.mjs +1 -1
  90. package/_mjs/Parser/interpreter.mjs +121 -117
  91. package/_mjs/Parser/interpreter.mjs.map +1 -1
  92. package/_mjs/Schema/api/conc.mjs +35 -44
  93. package/_mjs/Schema/api/conc.mjs.map +1 -1
  94. package/_mjs/Schema/api/either.mjs +24 -30
  95. package/_mjs/Schema/api/either.mjs.map +1 -1
  96. package/_mjs/Schema/api/hashMap.mjs +41 -101
  97. package/_mjs/Schema/api/hashMap.mjs.map +1 -1
  98. package/_mjs/Schema/api/hashSet.mjs +46 -106
  99. package/_mjs/Schema/api/hashSet.mjs.map +1 -1
  100. package/_mjs/Schema/api/immutableArray.mjs +23 -49
  101. package/_mjs/Schema/api/immutableArray.mjs.map +1 -1
  102. package/_mjs/Schema/api/list.mjs +35 -52
  103. package/_mjs/Schema/api/list.mjs.map +1 -1
  104. package/_mjs/Schema/api/map.mjs +88 -0
  105. package/_mjs/Schema/api/map.mjs.map +1 -0
  106. package/_mjs/Schema/api/maybe.mjs +24 -35
  107. package/_mjs/Schema/api/maybe.mjs.map +1 -1
  108. package/_mjs/Schema/api/set.mjs +67 -0
  109. package/_mjs/Schema/api/set.mjs.map +1 -0
  110. package/_mjs/Schema/api.mjs +18 -2
  111. package/_mjs/Schema/api.mjs.map +1 -1
  112. package/_mjs/Schema.mjs +2 -0
  113. package/_mjs/Schema.mjs.map +1 -1
  114. package/_mjs/Show.mjs +106 -90
  115. package/_mjs/Show.mjs.map +1 -1
  116. package/_mjs/utils.mjs +4 -0
  117. package/_mjs/utils.mjs.map +1 -1
  118. package/_src/AST.ts +144 -43
  119. package/_src/ASTAnnotation.ts +8 -1
  120. package/_src/Gen.ts +12 -9
  121. package/_src/ParseError/ParseError.ts +304 -0
  122. package/_src/ParseError/ParseErrorFormatter.ts +1 -0
  123. package/_src/ParseError/PathFormatter.ts +117 -0
  124. package/_src/ParseError/TreeFormatter.ts +127 -0
  125. package/_src/ParseError.ts +7 -331
  126. package/_src/ParseResult.ts +2 -9
  127. package/_src/Parser/api.ts +1 -1
  128. package/_src/Parser/interpreter.ts +98 -75
  129. package/_src/Schema/api/conc.ts +33 -42
  130. package/_src/Schema/api/either.ts +20 -30
  131. package/_src/Schema/api/hashMap.ts +40 -124
  132. package/_src/Schema/api/hashSet.ts +31 -117
  133. package/_src/Schema/api/immutableArray.ts +15 -45
  134. package/_src/Schema/api/list.ts +32 -55
  135. package/_src/Schema/api/map.ts +93 -0
  136. package/_src/Schema/api/maybe.ts +19 -34
  137. package/_src/Schema/api/set.ts +74 -0
  138. package/_src/Schema/api.ts +20 -2
  139. package/_src/Schema.ts +2 -0
  140. package/_src/Show.ts +156 -128
  141. package/_src/global.ts +0 -4
  142. package/_src/utils.ts +5 -0
  143. package/global.d.ts +0 -4
  144. package/package.json +2 -2
  145. package/utils.d.ts +1 -0
  146. package/ParseFailure.d.ts +0 -18
  147. package/_cjs/ParseFailure.cjs +0 -28
  148. package/_cjs/ParseFailure.cjs.map +0 -1
  149. package/_mjs/ParseFailure.mjs +0 -20
  150. package/_mjs/ParseFailure.mjs.map +0 -1
  151. package/_src/ParseFailure.ts +0 -18
@@ -1,19 +1,17 @@
1
1
  const fileName_1 = "(@fncts/schema) src/Schema/api/maybe.ts";
2
- import * as tsplus_module_1 from "@fncts/base/collection/immutable/Vector/api";
3
- import * as tsplus_module_2 from "@fncts/schema/ASTAnnotation";
4
- import * as tsplus_module_3 from "@fncts/schema/ASTAnnotationMap";
2
+ import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
3
+ import * as tsplus_module_2 from "@fncts/schema/Show";
4
+ import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
5
5
  import * as tsplus_module_4 from "@fncts/schema/Schema/api";
6
6
  import * as tsplus_module_5 from "@fncts/base/data/Maybe/constructors";
7
7
  import * as tsplus_module_6 from "@fncts/base/data/Maybe/api";
8
8
  import * as tsplus_module_7 from "@fncts/base/data/function/api";
9
- import * as tsplus_module_8 from "@fncts/base/data/Maybe/definition";
10
- import * as tsplus_module_9 from "@fncts/schema/ParseError";
11
- import * as tsplus_module_10 from "@fncts/schema/ParseResult";
12
- import * as tsplus_module_11 from "@fncts/schema/Parser/api";
9
+ import * as tsplus_module_8 from "@fncts/schema/Parser/api";
10
+ import * as tsplus_module_9 from "@fncts/base/data/Maybe/definition";
11
+ import * as tsplus_module_10 from "@fncts/schema/ParseError/ParseError";
12
+ import * as tsplus_module_11 from "@fncts/schema/ParseResult";
13
13
  import * as tsplus_module_12 from "@fncts/base/data/Either/api";
14
14
  import * as tsplus_module_13 from "@fncts/schema/Parser/definition";
15
- import * as tsplus_module_14 from "@fncts/base/data/Equatable/definition";
16
- import * as tsplus_module_15 from "@fncts/base/data/Hashable/definition";
17
15
  export const maybe = maybe_1;
18
16
  export const maybeFromNullable = maybeFromNullable_1;
19
17
  /**
@@ -21,7 +19,7 @@ export const maybeFromNullable = maybeFromNullable_1;
21
19
  * @tsplus getter fncts.schema.Schema maybe
22
20
  */
23
21
  function maybe_1(value) {
24
- return tsplus_module_4.declaration(tsplus_module_1.vector(value), maybeInline(value), maybeParser, tsplus_module_3.ASTAnnotationMap.empty.annotate(tsplus_module_2.Identifier, "Maybe"));
22
+ 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)));
25
23
  }
26
24
  /**
27
25
  * @tsplus static fncts.schema.SchemaOps maybeFromNullable
@@ -36,30 +34,21 @@ function maybeFromNullable_1(value) {
36
34
  export function deriveMaybe(...[value]) {
37
35
  return maybeFromNullable_1(value);
38
36
  }
39
- function maybeParser(value) {
40
- const schema = maybe_1(value);
41
- return tsplus_module_13.make((u, options) => {
42
- if (!tsplus_module_8.isMaybe(u)) {
43
- return tsplus_module_10.fail(tsplus_module_9.typeError(schema.ast, u));
44
- }
45
- void 0;
46
- if (tsplus_module_8.isNothing(u)) {
47
- return tsplus_module_10.succeed(tsplus_module_5.nothing(fileName_1 + ":47:41"));
48
- } else {
49
- return tsplus_module_12.map(a => tsplus_module_5.just(a, fileName_1 + ":49:60"))(tsplus_module_11.decode(value)(u.value, options));
50
- }
51
- });
52
- }
53
- function maybeInline(value) {
54
- return tsplus_module_4.union(tsplus_module_4.struct({
55
- _tag: tsplus_module_4.literal("Nothing"),
56
- [tsplus_module_14.equalsSymbol]: tsplus_module_4.any,
57
- [tsplus_module_15.hashSymbol]: tsplus_module_4.any
58
- }), tsplus_module_4.struct({
59
- _tag: tsplus_module_4.literal("Just"),
60
- value,
61
- [tsplus_module_14.equalsSymbol]: tsplus_module_4.any,
62
- [tsplus_module_15.hashSymbol]: tsplus_module_4.any
63
- }));
37
+ function maybeParser(isDecoding) {
38
+ return value => {
39
+ const schema = maybe_1(value);
40
+ const parseValue = isDecoding ? tsplus_module_8.decode(value) : tsplus_module_8.encode(value);
41
+ return tsplus_module_13.make((u, options) => {
42
+ if (!tsplus_module_9.isMaybe(u)) {
43
+ return tsplus_module_11.fail(tsplus_module_10.typeError(schema.ast, u));
44
+ }
45
+ void 0;
46
+ if (tsplus_module_9.isNothing(u)) {
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
+ };
64
53
  }
65
54
  //# sourceMappingURL=maybe.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"maybe.mjs","names":["maybe","maybe_1","maybeFromNullable","maybeFromNullable_1","value","tsplus_module_4","declaration","tsplus_module_1","vector","maybeInline","maybeParser","tsplus_module_3","ASTAnnotationMap","empty","annotate","tsplus_module_2","Identifier","transform","tsplus_module_5","fromNullable","input","tsplus_module_6","getOrElse","union","_undefined","nullable","deriveMaybe","schema","tsplus_module_13","make","u","options","tsplus_module_8","isMaybe","tsplus_module_10","fail","tsplus_module_9","typeError","ast","isNothing","succeed","nothing","fileName_1","tsplus_module_12","map","a","just","tsplus_module_11","decode","struct","_tag","literal","tsplus_module_14","equalsSymbol","any","tsplus_module_15","hashSymbol"],"sources":["../../../_src/Schema/api/maybe.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;aAMgBA,KAAK,GAAAC,OAAA;aAaLC,iBAAiB,GAAAC,mBAAA;AAjBjC;;;;AAIA,SAAAF,QAAyBG,KAAgB;EACvC,OAAOC,eAAA,CAAAC,WAAA,CACLC,eAAA,CAAAC,MAAA,CAAOJ,KAAK,CAAC,EACbK,WAAW,CAACL,KAAK,CAAC,EAClBM,WAAW,EACXC,eAAA,CAAAC,gBAAgB,CAACC,KAAK,CAACC,QAAQ,CAAAC,eAAA,CAAAC,UAAA,EAA2B,OAAO,CAAC,CACnE;AACH;AAEA;;;;AAIA,SAAAb,oBAAqCC,KAAgB;EACnD,OAAOC,eAAA,CAAAY,SAAA,CAAAhB,OAAA,CAAyDG,KAAK,GAAAc,eAAA,CAAAC,YAAA,EAA6BC,KAAK,IACrGC,eAAA,CAAAC,SAAA,OAAgB,IAAI,EAApBF,KAAK,CAAgB,EADhBf,eAAA,CAAAkB,KAAA,CAAAlB,eAAA,CAAAmB,UAAA,EAAAnB,eAAA,CAAAoB,QAAA,CAA+BrB,KAAK,EAAU,CAEpD;AACH;AAEA;;;AAGA,OAAM,SAAUsB,WAAWA,CACzB,GAAG,CAACtB,KAAK,CAIA;EAET,OAAoBD,mBAAA,CAAkBC,KAAK,CAAC;AAC9C;AAEA,SAASM,WAAWA,CAAIN,KAAgB;EACtC,MAAMuB,MAAM,GAAG1B,OAAA,CAAMG,KAAK,CAAC;EAC3B,OAAOwB,gBAAA,CAAAC,IAAA,CAAY,CAACC,CAAC,EAAEC,OAAO,KAAI;IAChC,IAAI,CAACC,eAAA,CAAAC,OAAA,CAAcH,CAAC,CAAC,EAAE;MACrB,OAAOI,gBAAA,CAAAC,IAAA,CAAiBC,eAAA,CAAAC,SAAA,CAAqBV,MAAM,CAACW,GAAG,EAAER,CAAC,CAAC,CAAC;IAC9D;IACA;IACA,IAAIE,eAAA,CAAAO,SAAA,CAAAT,CAAC,CAAY,EAAE;MACjB,OAAOI,gBAAA,CAAAM,OAAA,CAAoBtB,eAAA,CAAAuB,OAAA,CAAAC,UAAA,YAAS,CAAC;IACvC,CAAC,MAAM;MACL,OAAOC,gBAAA,CAAAC,GAAA,CAAoCC,CAAC,IAAK3B,eAAA,CAAA4B,IAAA,CAAKD,CAAC,EAAAH,UAAA,YAAC,EAAjDK,gBAAA,CAAAC,MAAA,CAAA5C,KAAK,EAAQ0B,CAAC,CAAC1B,KAAK,EAAE2B,OAAO,CAAC,CAAoB;IAC3D;EACF,CAAC,CAAC;AACJ;AAEA,SAAStB,WAAWA,CAAIL,KAAgB;EACtC,OAAOC,eAAA,CAAAkB,KAAA,CACLlB,eAAA,CAAA4C,MAAA,CAAc;IACZC,IAAI,EAAE7C,eAAA,CAAA8C,OAAA,CAAe,SAAS,CAAC;IAC/B,CAAAC,gBAAA,CAAAC,YAAA,GAAehD,eAAA,CAAAiD,GAAY;IAC3B,CAAAC,gBAAA,CAAAC,UAAA,GAAanD,eAAA,CAAAiD;GACd,CAAC,EACFjD,eAAA,CAAA4C,MAAA,CAAc;IACZC,IAAI,EAAE7C,eAAA,CAAA8C,OAAA,CAAe,MAAM,CAAC;IAC5B/C,KAAK;IACL,CAAAgD,gBAAA,CAAAC,YAAA,GAAehD,eAAA,CAAAiD,GAAY;IAC3B,CAAAC,gBAAA,CAAAC,UAAA,GAAanD,eAAA,CAAAiD;GACd,CAAC,CAC4B;AAClC"}
1
+ {"version":3,"file":"maybe.mjs","names":["maybe","maybe_1","maybeFromNullable","maybeFromNullable_1","value","tsplus_module_4","annotate","tsplus_module_1","Identifier","tsplus_module_2","show","declaration","tsplus_module_3","vector","maybeParser","transform","tsplus_module_5","fromNullable","input","tsplus_module_6","getOrElse","union","_undefined","nullable","deriveMaybe","isDecoding","schema","parseValue","tsplus_module_8","decode","encode","tsplus_module_13","make","u","options","tsplus_module_9","isMaybe","tsplus_module_11","fail","tsplus_module_10","typeError","ast","isNothing","succeed","nothing","fileName_1","tsplus_module_12","map","a","just"],"sources":["../../../_src/Schema/api/maybe.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;aAMgBA,KAAK,GAAAC,OAAA;aAWLC,iBAAiB,GAAAC,mBAAA;AAfjC;;;;AAIA,SAAAF,QAAyBG,KAAgB;EACvC,OAAOC,eAAA,CAAAC,QAAA,CAAAC,eAAA,CAAAC,UAAA,EAEL,SAASC,eAAA,CAAAC,IAAA,GAAAN,KAAK,CAAO,GAAG,EAFnBC,eAAA,CAAAM,WAAA,CAAmBC,eAAA,CAAAC,MAAA,CAAOT,KAAK,CAAC,EAAEU,WAAW,CAAC,IAAI,CAAC,EAAEA,WAAW,CAAC,KAAK,CAAC,CAAC,CAG9E;AACH;AAEA;;;;AAIA,SAAAX,oBAAqCC,KAAgB;EACnD,OAAOC,eAAA,CAAAU,SAAA,CAAAd,OAAA,CAAyDG,KAAK,GAAAY,eAAA,CAAAC,YAAA,EAA6BC,KAAK,IACrGC,eAAA,CAAAC,SAAA,OAAgB,IAAI,EAApBF,KAAK,CAAgB,EADhBb,eAAA,CAAAgB,KAAA,CAAAhB,eAAA,CAAAiB,UAAA,EAAAjB,eAAA,CAAAkB,QAAA,CAA+BnB,KAAK,EAAU,CAEpD;AACH;AAEA;;;AAGA,OAAM,SAAUoB,WAAWA,CACzB,GAAG,CAACpB,KAAK,CAIA;EAET,OAAoBD,mBAAA,CAAkBC,KAAK,CAAC;AAC9C;AAEA,SAASU,WAAWA,CAACW,UAAmB;EACtC,OAAWrB,KAAgB,IAA4B;IACrD,MAAMsB,MAAM,GAAOzB,OAAA,CAAMG,KAAK,CAAC;IAC/B,MAAMuB,UAAU,GAAGF,UAAU,GAAEG,eAAA,CAAAC,MAAA,CAACzB,KAAK,IAASwB,eAAA,CAAAE,MAAA,CAAC1B,KAAK,CAAO;IAC3D,OAAO2B,gBAAA,CAAAC,IAAA,CAAY,CAACC,CAAC,EAAEC,OAAO,KAAI;MAChC,IAAI,CAACC,eAAA,CAAAC,OAAA,CAAcH,CAAC,CAAC,EAAE;QACrB,OAAOI,gBAAA,CAAAC,IAAA,CAAiBC,gBAAA,CAAAC,SAAA,CAAqBd,MAAM,CAACe,GAAG,EAAER,CAAC,CAAC,CAAC;MAC9D;MACA;MACA,IAAIE,eAAA,CAAAO,SAAA,CAAAT,CAAC,CAAY,EAAE;QACjB,OAAOI,gBAAA,CAAAM,OAAA,CAAoB3B,eAAA,CAAA4B,OAAA,CAAAC,UAAA,YAAS,CAAC;MACvC,CAAC,MAAM;QACL,OAAOC,gBAAA,CAAAC,GAAA,CAAkCC,CAAC,IAAKhC,eAAA,CAAAiC,IAAA,CAAKD,CAAC,EAAAH,UAAA,YAAC,EAA/ClB,UAAU,CAACM,CAAC,CAAC7B,KAAK,EAAE8B,OAAO,CAAC,CAAoB;MACzD;IACF,CAAC,CAAC;EACJ,CAAC;AACH"}
@@ -0,0 +1,67 @@
1
+ import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
2
+ import * as tsplus_module_2 from "@fncts/schema/Show";
3
+ import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
4
+ import * as tsplus_module_4 from "@fncts/schema/Schema/api";
5
+ import * as tsplus_module_5 from "@fncts/base/data/function/api";
6
+ import * as tsplus_module_6 from "@fncts/schema/Parser/api";
7
+ 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
+ import * as tsplus_module_10 from "@fncts/base/collection/immutable/Vector/internal";
11
+ import * as tsplus_module_11 from "@fncts/schema/Parser/definition";
12
+ import * as tsplus_module_12 from "@fncts/test/control/Gen/api";
13
+ export const set = set_1;
14
+ export const setFromArray = setFromArray_1;
15
+ /**
16
+ * @tsplus static fncts.schema.SchemaOps map
17
+ */
18
+ function set_1(value) {
19
+ 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
+ /**
22
+ * @tsplus static fncts.schema.SchemaOps mapFromRecord
23
+ */
24
+ function setFromArray_1(value) {
25
+ return tsplus_module_4.transform(set_1(value), input => {
26
+ return new Set(input);
27
+ }, input => {
28
+ return Array.from(input);
29
+ })(tsplus_module_4.array(value));
30
+ }
31
+ /**
32
+ * @tsplus derive fncts.schema.Schema[fncts.Set]<_> 10
33
+ */
34
+ export function deriveSet(...[value]) {
35
+ return setFromArray_1(value);
36
+ }
37
+ function setParser(isDecoding) {
38
+ return value => {
39
+ const schema = set_1(value);
40
+ const parseValue = isDecoding ? tsplus_module_6.decode(value) : tsplus_module_6.encode(value);
41
+ return tsplus_module_11.make((u, options) => {
42
+ if (!(u instanceof Set)) {
43
+ return tsplus_module_8.fail(tsplus_module_7.typeError(schema.ast, u));
44
+ }
45
+ const allErrors = options?.allErrors;
46
+ const errors = tsplus_module_3.emptyPushable();
47
+ const out = new Set();
48
+ for (const v of u) {
49
+ const tv = parseValue(v, options);
50
+ void 0;
51
+ if (tsplus_module_9.isLeft(tv)) {
52
+ tsplus_module_10.push(tsplus_module_7.keyError(value.ast, value, tv.left))(errors);
53
+ if (!allErrors) {
54
+ return tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors));
55
+ }
56
+ continue;
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
+ };
63
+ }
64
+ function gen(value) {
65
+ return tsplus_module_12.map(values => new Set(values))(tsplus_module_12.array(value));
66
+ }
67
+ //# sourceMappingURL=set.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set.mjs","names":["set","set_1","setFromArray","setFromArray_1","value","tsplus_module_4","annotate","tsplus_module_1","GenHook","gen","Identifier","tsplus_module_2","show","declaration","tsplus_module_3","vector","setParser","transform","input","Set","Array","from","array","deriveSet","isDecoding","schema","parseValue","tsplus_module_6","decode","encode","tsplus_module_11","make","u","options","tsplus_module_8","fail","tsplus_module_7","typeError","ast","allErrors","errors","emptyPushable","out","v","tv","tsplus_module_9","isLeft","tsplus_module_10","push","keyError","left","iterableError","add","right","isNonEmpty","succeed","tsplus_module_12","map","values"],"sources":["../../../_src/Schema/api/set.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -42,8 +42,8 @@ function annotate_1(annotation, value) {
42
42
  /**
43
43
  * @tsplus static fncts.schema.SchemaOps declaration
44
44
  */
45
- export function declaration(typeParameters, type, decode, annotations) {
46
- return make_1(tsplus_module_3.createDeclaration(tsplus_module_2.map(tp => tp.ast)(typeParameters), type.ast, (...typeParameters) => decode(...typeParameters.map(make_1)), annotations));
45
+ export function declaration(typeParameters, decode, encode, annotations) {
46
+ return make_1(tsplus_module_3.createDeclaration(tsplus_module_2.map(tp => tp.ast)(typeParameters), (...typeParameters) => decode(...typeParameters.map(make_1)), (...typeParameters) => encode(...typeParameters.map(make_1)), annotations));
47
47
  }
48
48
  function filter_1(predicate) {
49
49
  return self => {
@@ -383,4 +383,20 @@ function transform_1(to, decode, encode) {
383
383
  return transformOrFail_1(to, (input, options) => tsplus_module_5.succeed(decode(input, options)), (input, options) => tsplus_module_5.succeed(encode(input, options)))(from);
384
384
  };
385
385
  }
386
+ /**
387
+ * @tsplus pipeable fncts.schema.Schema pick
388
+ */
389
+ export function pick(...keys) {
390
+ return self => {
391
+ return make_1(tsplus_module_3.pick(tsplus_module_2.from(keys))(self.ast));
392
+ };
393
+ }
394
+ /**
395
+ * @tsplus pipeable fncts.schema.Schema omit
396
+ */
397
+ export function omit(...keys) {
398
+ return self => {
399
+ return make_1(tsplus_module_3.omit(tsplus_module_2.from(keys))(self.ast));
400
+ };
401
+ }
386
402
  //# sourceMappingURL=api.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.mjs","names":["make","make_1","annotate","annotate_1","filter","filter_1","union","union_1","isOptional","isOptional_1","isParseOptional","isParseOptional_1","enum_","enum_1","instanceOf","instanceOf_1","transformOrFail","transformOrFail_1","transform","transform_1","show","getParameter","concrete","TemplateLiteralSpan","ownKeys","ast","tsplus_module_1","Schema","annotation","value","self","clone","annotations","declaration","typeParameters","type","decode","tsplus_module_3","createDeclaration","tsplus_module_2","map","tp","predicate","createRefinement","brand","validation","validate","tsplus_module_4","Brand","vector","makeLiteral","createLiteral","literal","literals","never","neverKeyword","unknown_1","unknownKeyword","unknown","any","anyKeyword","_undefined_1","undefinedKeyword","_undefined","undefined","_null_1","_null","null","_void_1","voidKeyword","_void","void","string","stringKeyword","number","numberKeyword","boolean","booleanKeyword","bigint","bigIntKeyword","symbol","symbolKeyword","object_1","objectKeyword","object","date_1","Date","date","implicitDate","input","options","tsplus_module_5","succeed","tsplus_module_6","members","createUnion","from","m","nullable","uniqueSymbol","createUniqueSymbol","optional","Optional","tsplus_module_7","getOrElse","get","parseOptional","ParseOptional","struct","fields","parseOptionalKeys","key","createTypeLiteral","createPropertySignature","empty","isEmpty","propertySignatures","p","includes","name","isReadonly","to","isLazy","createLazy","tsplus_module_8","maybe","output","tsplus_module_9","fromNullable","tsplus_module_10","isNothing","toUndefined","tuple","elements","createTuple","schema","createElement","nothing","fileName_1","lazy","f","array","item","just","mutableArray","record","createRecord","enums","createEnum","Object","keys","enum","getTemplateLiterals","_tag","createTemplateLiteral","flatMap","types","Error","combineTemplateLiterals","a","b","isLiteral","String","head","spans","isNonEmpty","last","unsafeLast","append","slice","concat","templateLiteral","tail","span","keyof","isOverlappingPropertySignatures","x","y","some","px","py","isOverlappingIndexSignatures","ix","iy","bx","parameter","by","isStringKeyword","isSymbolKeyword","indexSignatures","extend","that","selfTypes","isUnion","thatTypes","every","isTypeLiteral","constructor","Description","encode","createTransform"],"sources":["../../_src/Schema/api.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"api.mjs","names":["make","make_1","annotate","annotate_1","filter","filter_1","union","union_1","isOptional","isOptional_1","isParseOptional","isParseOptional_1","enum_","enum_1","instanceOf","instanceOf_1","transformOrFail","transformOrFail_1","transform","transform_1","show","getParameter","concrete","TemplateLiteralSpan","ownKeys","ast","tsplus_module_1","Schema","annotation","value","self","clone","annotations","declaration","typeParameters","decode","encode","tsplus_module_3","createDeclaration","tsplus_module_2","map","tp","predicate","createRefinement","brand","validation","validate","tsplus_module_4","Brand","vector","makeLiteral","createLiteral","literal","literals","never","neverKeyword","unknown_1","unknownKeyword","unknown","any","anyKeyword","_undefined_1","undefinedKeyword","_undefined","undefined","_null_1","_null","null","_void_1","voidKeyword","_void","void","string","stringKeyword","number","numberKeyword","boolean","booleanKeyword","bigint","bigIntKeyword","symbol","symbolKeyword","object_1","objectKeyword","object","date_1","Date","date","implicitDate","input","options","tsplus_module_5","succeed","tsplus_module_6","members","createUnion","from","m","nullable","uniqueSymbol","createUniqueSymbol","optional","Optional","tsplus_module_7","getOrElse","get","parseOptional","ParseOptional","struct","fields","parseOptionalKeys","key","createTypeLiteral","createPropertySignature","empty","isEmpty","propertySignatures","p","includes","name","type","isReadonly","to","isLazy","createLazy","tsplus_module_8","maybe","output","tsplus_module_9","fromNullable","tsplus_module_10","isNothing","toUndefined","tuple","elements","createTuple","schema","createElement","nothing","fileName_1","lazy","f","array","item","just","mutableArray","record","createRecord","enums","createEnum","Object","keys","enum","getTemplateLiterals","_tag","createTemplateLiteral","flatMap","types","Error","combineTemplateLiterals","a","b","isLiteral","String","head","spans","isNonEmpty","last","unsafeLast","append","slice","concat","templateLiteral","tail","span","keyof","isOverlappingPropertySignatures","x","y","some","px","py","isOverlappingIndexSignatures","ix","iy","bx","parameter","by","isStringKeyword","isSymbolKeyword","indexSignatures","extend","that","selfTypes","isUnion","thatTypes","every","isTypeLiteral","constructor","Description","createTransform","pick","omit"],"sources":["../../_src/Schema/api.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;aAYgBA,IAAI,GAAAC,MAAA;aAOJC,QAAQ,GAAAC,UAAA;aA8BRC,MAAM,GAAAC,QAAA;aAqINC,KAAK,GAAAC,OAAA;aAkCLC,UAAU,GAAAC,YAAA;aAkBVC,eAAe,GAAAC,iBAAA;aA0IfC,KAAK,GAAAC,MAAA;aAsILC,UAAU,GAAAC,YAAA;aAWVC,eAAe,GAAAC,iBAAA;aAafC,SAAS,GAAAC,WAAA;AA/gBzB,SAASC,IAAI,QAAQ,2BAA2B;AAEhD,SAASC,YAAY,QAAQ,YAAW;AACxC,SAAiBC,QAAQ,EAAEC,mBAAmB,QAAQ,YAAW;AACjE,SAASC,OAAO,QAAQ,cAAa;AAErC;;;AAGA,SAAAvB,OAAwBwB,GAAQ;EAC9B,OAAO,IAAAC,eAAA,CAAIC,MAAM,CAACF,GAAG,CAAC;AACxB;AAEA;;;AAGA,SAAAtB,WAA4ByB,UAA4B,EAAEC,KAAQ;EAChE,OAAWC,IAAe,IAAe;IACvC,OAAO7B,MAAA,CAAe6B,IAAI,CAACL,GAAG,CAACM,KAAK,CAAC;MAAEC,WAAW,EAAEF,IAAI,CAACL,GAAG,CAACO,WAAW,CAAC9B,QAAQ,CAAC0B,UAAU,EAAEC,KAAK;IAAC,CAAE,CAAC,CAAC;EAC1G,CAAC;AACH;AAEA;;;AAGA,OAAM,SAAUI,WAAWA,CACzBC,cAAmC,EACnCC,MAAsE,EACtEC,MAAsE,EACtEJ,WAA8B;EAE9B,OAAO/B,MAAA,CACLoC,eAAA,CAAAC,iBAAA,CACEC,eAAA,CAAAC,GAAA,CAAoBC,EAAE,IAAKA,EAAE,CAAChB,GAAG,EAAjCS,cAAc,CAAoB,EAClC,CAAC,GAAGA,cAAc,KAAKC,MAAM,CAAC,GAAGD,cAAc,CAACM,GAAG,CAAAvC,MAAA,CAAgB,CAAC,EACpE,CAAC,GAAGiC,cAAc,KAAKE,MAAM,CAAC,GAAGF,cAAc,CAACM,GAAG,CAAAvC,MAAA,CAAgB,CAAC,EACpE+B,WAAW,CACZ,CACF;AACH;AAOA,SAAA3B,SAA0BqC,SAAuB;EAC/C,OAAQZ,IAAe,IAAe;IACpC,MAAML,GAAG,GAAQY,eAAA,CAAAM,gBAAA,CAAqBb,IAAI,CAACL,GAAG,EAAEiB,SAAS,CAAC;IAC1D,OAAOzC,MAAA,CAAewB,GAAG,CAAC;EAC5B,CAAC;AACH;AAEA;;;AAGA,OAAM,SAAUmB,KAAKA,CAAsBC,UAA4B;EACrE,OAAQf,IAAe,IAAmC;IACxD,MAAML,GAAG,GAAGY,eAAA,CAAAM,gBAAA,CACVb,IAAI,CAACL,GAAG,EACRoB,UAAU,CAACC,QAAQ,EACnBhB,IAAI,CAACL,GAAG,CAACO,WAAW,CAAC9B,QAAQ,CAAA6C,eAAA,CAAAC,KAAA,EAAsBT,eAAA,CAAAU,MAAA,CAAOJ,UAAU,CAAC,CAAC,CACvE;IACD,OAAO5C,MAAA,CAAewB,GAAG,CAAC;EAC5B,CAAC;AACH;AAEA,SAASyB,WAAWA,CAA+BrB,KAAc;EAC/D,OAAO5B,MAAA,CAAeoC,eAAA,CAAAc,aAAA,CAAkBtB,KAAK,CAAC,CAAC;AACjD;AAEA;;;AAGA,OAAM,SAAUuB,OAAOA,CAA+C,GAAGC,QAAkB;EACzF,OAAO9C,OAAA,CAAa,GAAG8C,QAAQ,CAACb,GAAG,CAACU,WAAW,CAAC,CAAC;AACnD;AAEA;;;;AAIA,OAAO,MAAMI,KAAK,gBAAkBrD,MAAA,CAAAoC,eAAA,CAAAkB,YAAA,CAAgC;AAEpE;;;;AAIO,MAAMC,SAAA,gBAA2BvD,MAAA,CAAAoC,eAAA,CAAAoB,cAAA,CAAkC;aAA7DC,OAAO,GAAAF,SAAA;AAEpB;;;AAGA,OAAO,MAAMG,GAAG,gBAAgB1D,MAAA,CAAAoC,eAAA,CAAAuB,UAAA,CAA8B;AAE9D;;;;AAIO,MAAMC,YAAA,gBAAgC5D,MAAA,CAAAoC,eAAA,CAAAyB,gBAAA,CAAoC;aAApEC,UAAU,GAAAF,YAAA;AAEvB,SAASA,YAAA,IAAcG,SAAS;AAEhC;;;;AAIO,MAAMC,OAAA,gBAAsBhE,MAAA,eAAeoC,eAAA,CAAAc,aAAA,CAAkB,IAAI,CAAC,CAAC;aAA7De,KAAK,GAAAD,OAAA;AAElB,SAASA,OAAA,IAASE,IAAI;AAEtB;;;;AAIO,MAAMC,OAAA,gBAAsBnE,MAAA,CAAAoC,eAAA,CAAAgC,WAAA,CAA+B;aAArDC,KAAK,GAAAF,OAAA;AAElB,SAASA,OAAA,IAASG,IAAI;AAEtB;;;;AAIA,OAAO,MAAMC,MAAM,gBAAmBvE,MAAA,CAAAoC,eAAA,CAAAoC,aAAA,CAAiC;AAEvE;;;;AAIA,OAAO,MAAMC,MAAM,gBAAmBzE,MAAA,CAAAoC,eAAA,CAAAsC,aAAA,CAAiC;AAEvE;;;;AAIA,OAAO,MAAMC,OAAO,gBAAoB3E,MAAA,CAAAoC,eAAA,CAAAwC,cAAA,CAAkC;AAE1E;;;;AAIA,OAAO,MAAMC,MAAM,gBAAmB7E,MAAA,CAAAoC,eAAA,CAAA0C,aAAA,CAAiC;AAEvE;;;;AAIA,OAAO,MAAMC,MAAM,gBAAmB/E,MAAA,CAAAoC,eAAA,CAAA4C,aAAA,CAAiC;AAEvE;;;;AAIO,MAAMC,QAAA,gBAAyBjF,MAAA,CAAAoC,eAAA,CAAA8C,aAAA,CAAiC;aAA1DC,MAAM,GAAAF,QAAA;AAEnB;;;AAGO,MAAMG,MAAA,gBAAqBtE,YAAA,CAAyBuE,IAAI,EAAAJ,QAAA,CAAC;aAAnDK,IAAI,GAAAF,MAAA;AAEjB;;;AAGA,OAAO,MAAMG,YAAY,gBAAiBvE,iBAAA,CAAAoE,MAAA,EAExC,CAACI,KAAK,EAAEC,OAAO,KAAI;EACjB,IAAI,OAAOD,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC1D,OAAOE,eAAA,CAAAC,OAAA,CAAoB,IAAIN,IAAI,CAACG,KAAK,CAAC,CAAC;EAC7C,CAAC,MAAM;IACL,OAAOI,eAAA,CAAA1D,MAAA,CAAAkD,MAAA,EAAmBI,KAAK,EAAEC,OAAO,CAAC;EAC3C;AACF,CAAC,EACAD,KAAK,IAAKE,eAAA,CAAAC,OAAA,CAAoBH,KAAK,CAAC,EAAAjC,SAAA,CACtC;AAED;;;;AAIA,SAAAjD,QACE,GAAGuF,OAEF;EAED,OAAO7F,MAAA,CAAeoC,eAAA,CAAA0D,WAAA,CAAgBxD,eAAA,CAAAyD,IAAA,CAAYF,OAAO,CAACtD,GAAG,CAAEyD,CAAC,IAAKA,CAAC,CAACxE,GAAG,CAAC,CAAC,CAAC,CAAC;AAChF;AAEA;;;AAGA,OAAM,SAAUyE,QAAQA,CAAIpE,IAAe;EACzC,OAAOvB,OAAA,CAAA0D,OAAA,EAA0BnC,IAAI,CAAC;AACxC;AAEA;;;AAGA,OAAM,SAAUqE,YAAYA,CAAmBnB,MAAS,EAAEhD,WAA8B;EACtF,OAAO/B,MAAA,CAAeoC,eAAA,CAAA+D,kBAAA,CAAuBpB,MAAM,EAAEhD,WAAW,CAAC,CAAC;AACpE;AAEA;;;AAGA,OAAM,SAAUqE,QAAQA,CAAIvE,IAAe;EACzC,OAAO7B,MAAA,CACL6B,IAAI,CAACL,GAAG,CAACM,KAAK,CAAC;IAAEC,WAAW,EAAEF,IAAI,CAACL,GAAG,CAACO,WAAW,CAAC9B,QAAQ,CAAA6C,eAAA,CAAAuD,QAAA,EAAyB,IAAI;EAAC,CAAE,CAAC,CACxE;AACxB;AAEA;;;AAGA,SAAA7F,aAA8BqB,IAAe;EAC3C,OAAOyE,eAAA,CAAAC,SAAA,OAA2D,KAAK,EAAhE1E,IAAI,CAACL,GAAG,CAACO,WAAW,CAACyE,GAAG,CAAA1D,eAAA,CAAAuD,QAAA,CAAwB,CAAiB;AAC1E;AAIA;;;AAGA,OAAM,SAAUI,aAAaA,CAAI5E,IAAe;EAC9C,OAAO7B,MAAA,CACL6B,IAAI,CAACL,GAAG,CAACM,KAAK,CAAC;IAAEC,WAAW,EAAEF,IAAI,CAACL,GAAG,CAACO,WAAW,CAAC9B,QAAQ,CAAA6C,eAAA,CAAA4D,aAAA,EAA8B,IAAI;EAAC,CAAE,CAAC,CAClG;AACH;AAEA;;;AAGA,SAAAhG,kBAAmCmB,IAAe;EAChD,OAAOyE,eAAA,CAAAC,SAAA,OAAgE,KAAK,EAArE1E,IAAI,CAACL,GAAG,CAACO,WAAW,CAACyE,GAAG,CAAA1D,eAAA,CAAA4D,aAAA,CAA6B,CAAiB;AAC/E;AAQA;;;AAGA,OAAM,SAAUC,MAAMA,CACpBC,MAAc;EAQd,MAAMC,iBAAiB,GAAwBvE,eAAA,CAAAnC,MAAA,CAAwB2G,GAAG,IAAKpG,iBAAA,CAAgBkG,MAAM,CAACE,GAAG,CAAE,CAAC,EAA7DvF,OAAO,CAACqF,MAAM,CAAC,CAA+C;EAC7G,MAAMD,MAAM,GAAG3G,MAAA,CACboC,eAAA,CAAA2E,iBAAA,CACEzE,eAAA,CAAAC,GAAA,CAAqBuE,GAAG,IAAK1E,eAAA,CAAA4E,uBAAA,CAA4BF,GAAG,EAAEF,MAAM,CAACE,GAAG,CAAE,CAACtF,GAAG,EAAEhB,YAAA,CAAWoG,MAAM,CAACE,GAAG,CAAE,CAAC,EAAE,IAAI,CAAC,EAA/GvF,OAAO,CAACqF,MAAM,CAAC,CAAiG,EAChHtE,eAAA,CAAA2E,KAAA,EAAc,CACf,CACF;EACD,IAAI3E,eAAA,CAAA4E,OAAA,CAAAL,iBAAiB,CAAU,EAAE;IAC/B,OAAOF,MAAqB;EAC9B;EACA,MAAMQ,kBAAkB,GAAIR,MAAM,CAACnF,GAAmB,CAAC2F,kBAAkB;EACzE,MAAMpB,IAAI,GAAiB/F,MAAA,CACzBoC,eAAA,CAAA2E,iBAAA,CACEzE,eAAA,CAAAC,GAAA,CAAwB6E,CAAC,IACvB9E,eAAA,CAAA+E,QAAA,CAA2BD,CAAC,CAACE,IAAI,EAAjCT,iBAAiB,CAAiB,GAC9BzE,eAAA,CAAA4E,uBAAA,CACEI,CAAC,CAACE,IAAI,EACNlF,eAAA,CAAA0D,WAAA,CAAgBxD,eAAA,CAAAU,MAAA,CAAAZ,eAAA,CAAAyB,gBAAA,EAA6BzB,eAAA,CAAAc,aAAA,CAAkB,IAAI,CAAC,EAAEkE,CAAC,CAACG,IAAI,CAAC,CAAC,EAC9E,IAAI,EACJH,CAAC,CAACI,UAAU,CACb,GACDJ,CAAC,EARPD,kBAAkB,CASjB,EACD7E,eAAA,CAAA2E,KAAA,EAAc,CACf,CACF;EACD,MAAMQ,EAAE,GAAGzH,MAAA,CACToC,eAAA,CAAA2E,iBAAA,CACEzE,eAAA,CAAAC,GAAA,CAAwB6E,CAAC,IAAI;IAC3B,IAAI9E,eAAA,CAAA+E,QAAA,CAA2BD,CAAC,CAACE,IAAI,EAAjCT,iBAAiB,CAAiB,EAAE;MACtC,IAAIzE,eAAA,CAAAsF,MAAA,CAAAd,MAAM,CAACQ,CAAC,CAACE,IAAI,CAAE,CAAC9F,GAAG,CAAS,EAAE;QAChC,OAAOY,eAAA,CAAA4E,uBAAA,CACLI,CAAC,CAACE,IAAI,EACNlF,eAAA,CAAAuF,UAAA,CAAe,MAAMC,eAAA,CAAAC,KAAA,CAAajB,MAAM,CAACQ,CAAC,CAACE,IAAI,CAAE,CAAC,CAAC9F,GAAG,CAAC,EACvD,IAAI,EACJ4F,CAAC,CAACI,UAAU,CACb;MACH;MACA,OAAOpF,eAAA,CAAA4E,uBAAA,CAA4BI,CAAC,CAACE,IAAI,EAAEM,eAAA,CAAAC,KAAA,CAAajB,MAAM,CAACQ,CAAC,CAACE,IAAI,CAAE,CAAC,CAAC9F,GAAG,EAAE,IAAI,EAAE4F,CAAC,CAACI,UAAU,CAAC;IACnG;IACA,OAAOJ,CAAC;EACV,CAAC,EAbDD,kBAAkB,CAahB,EACF7E,eAAA,CAAA2E,KAAA,EAAc,CACf,CACF;EACD,OAAO/F,WAAA,CACLuG,EAAE,EACDjC,KAAK,IAAI;IACR,MAAMsC,MAAM,GAAG;MAAE,GAAGtC;IAAK,CAAE;IAC3B,KAAK,MAAMsB,GAAG,IAAID,iBAAiB,EAAE;MACnCiB,MAAM,CAAChB,GAAG,CAAC,GAAGiB,eAAA,CAAAC,YAAA,CAAmBxC,KAAK,CAACsB,GAAG,CAAC,CAAC;IAC9C;IACA,OAAOgB,MAAM;EACf,CAAC,EACAtC,KAAK,IAAI;IACR,MAAMsC,MAAM,GAAG;MAAE,GAAGtC;IAAK,CAAE;IAC3B,KAAK,MAAMsB,GAAG,IAAID,iBAAiB,EAAE;MACnC,MAAMjF,KAAK,GAAe4D,KAAK,CAACsB,GAAG,CAAC;MACpC,IAAImB,gBAAA,CAAAC,SAAA,CAAAtG,KAAK,CAAY,EAAE;QACrB,OAAOkG,MAAM,CAAChB,GAAG,CAAC;QAClB;MACF;MACAgB,MAAM,CAAChB,GAAG,CAAC,GAAAR,eAAA,CAAA6B,WAAA,CAAGvG,KAAK,CAAM;IAC3B;IACA,OAAOkG,MAAM;EACf,CAAC,EApBI/B,IAAI,CAqBV;AACH;AAEA;;;AAGA,OAAM,SAAUqC,KAAKA,CACnB,GAAGC,QAAkB;EAErB,OAAOrI,MAAA,CACLoC,eAAA,CAAAkG,WAAA,CAAgBhG,eAAA,CAAAyD,IAAA,CAAYsC,QAAQ,CAAC9F,GAAG,CAAEgG,MAAM,IAAKnG,eAAA,CAAAoG,aAAA,CAAkBD,MAAM,CAAC/G,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAEuG,eAAA,CAAAU,OAAA,CAAAC,UAAA,cAAS,EAAE,IAAI,CAAC,CAC9G;AACH;AAEA;;;AAGA,OAAM,SAAUC,IAAIA,CAAIC,CAAkB,EAAE7G,WAA8B;EACxE,OAAO/B,MAAA,CAAeoC,eAAA,CAAAuF,UAAA,CAAe,MAAMiB,CAAC,EAAE,CAACpH,GAAG,EAAEO,WAAW,CAAC,CAAC;AACnE;AAEA;;;;AAIA,OAAM,SAAU8G,KAAKA,CAAIC,IAAe;EACtC,OAAO9I,MAAA,CAAeoC,eAAA,CAAAkG,WAAA,CAAgBhG,eAAA,CAAA2E,KAAA,EAAc,EAAEc,eAAA,CAAAgB,IAAA,CAAKzG,eAAA,CAAAU,MAAA,CAAO8F,IAAI,CAACtH,GAAG,CAAC,EAAAkH,UAAA,aAAC,EAAE,IAAI,CAAC,CAAC;AACtF;AAEA;;;;AAIA,OAAM,SAAUM,YAAYA,CAAIF,IAAe;EAC7C,OAAO9I,MAAA,CAAeoC,eAAA,CAAAkG,WAAA,CAAgBhG,eAAA,CAAA2E,KAAA,EAAc,EAAEc,eAAA,CAAAgB,IAAA,CAAKzG,eAAA,CAAAU,MAAA,CAAO8F,IAAI,CAACtH,GAAG,CAAC,EAAAkH,UAAA,aAAC,EAAE,KAAK,CAAC,CAAC;AACvF;AAEA;;;AAGA,OAAM,SAAUO,MAAMA,CACpBnC,GAAc,EACdlF,KAAgB;EAEhB,OAAO5B,MAAA,CAAeoC,eAAA,CAAA8G,YAAA,CAAiBpC,GAAG,CAACtF,GAAG,EAAEI,KAAK,CAACJ,GAAG,EAAE,IAAI,CAAC,CAAC;AACnE;AAEA;;;AAGA,SAAAZ,OAAkEuI,KAAQ;EACxE,OAAOnJ,MAAA,CACLoC,eAAA,CAAAgH,UAAA,CACE9G,eAAA,CAAAyD,IAAA,CACEsD,MAAM,CAACC,IAAI,CAACH,KAAK,CAAC,CACfhJ,MAAM,CAAE2G,GAAG,IAAK,OAAOqC,KAAK,CAACA,KAAK,CAACrC,GAAG,CAAE,CAAC,KAAK,QAAQ,CAAC,CACvDvE,GAAG,CAAEuE,GAAG,IAAK,CAACA,GAAG,EAAEqC,KAAK,CAACrC,GAAG,CAAE,CAAC,CAAC,CACpC,CACF,CACF;AACH;AAEA,SAASlG,MAAA,IAAS2I,IAAI;AAMtB,SAASC,mBAAmBA,CAAChI,GAAQ;EACnC;EACA,QAAQA,GAAG,CAACiI,IAAI;IACd;MACE,OAAOnH,eAAA,CAAAU,MAAA,CAAOxB,GAAG,CAAC;IACpB;IACA;MACE,OAAOc,eAAA,CAAAU,MAAA,CAAOZ,eAAA,CAAAsH,qBAAA,CAA0B,EAAE,EAAEpH,eAAA,CAAAU,MAAA,CAAO,IAAI1B,mBAAmB,CAACE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACxF;MACE,OAAOc,eAAA,CAAAqH,OAAA,CAAkBH,mBAAmB,EAArChI,GAAG,CAACoI,KAAK,CAA6B;IAC/C;MACE,MAAM,IAAIC,KAAK,CAAC,qCAAqC1I,IAAI,CAACK,GAAG,CAAC,EAAE,CAAC;EACrE;AACF;AAEA,SAASsI,uBAAuBA,CAC9BC,CAA4B,EAC5BC,CAA4B;EAE5B,IAAI5H,eAAA,CAAA6H,SAAA,CAAAF,CAAC,CAAY,EAAE;IACjB,OAAO3H,eAAA,CAAA6H,SAAA,CAAAD,CAAC,CAAY,GAChB5H,eAAA,CAAAc,aAAA,CAAkBgH,MAAM,CAACH,CAAC,CAAC5G,OAAO,CAAC,GAAG+G,MAAM,CAACF,CAAC,CAAC7G,OAAO,CAAC,CAAC,GACxDf,eAAA,CAAAsH,qBAAA,CAA0BQ,MAAM,CAACH,CAAC,CAAC5G,OAAO,CAAC,GAAG6G,CAAC,CAACG,IAAI,EAAEH,CAAC,CAACI,KAAK,CAAC;EACpE;EACA,IAAIhI,eAAA,CAAA6H,SAAA,CAAAD,CAAC,CAAY,EAAE;IACjB,IAAI,CAAC1H,eAAA,CAAA+H,UAAA,CAAAN,CAAC,CAACK,KAAK,CAAa,EAAE;MACzB,MAAM,IAAIP,KAAK,CAAC,0BAA0B,CAAC;IAC7C;IACA,MAAMS,IAAI,GAAGhI,eAAA,CAAAiI,UAAA,CAAAR,CAAC,CAACK,KAAK,CAAY;IAChC,OAAOhI,eAAA,CAAAsH,qBAAA,CACLK,CAAC,CAACI,IAAI,EACN7H,eAAA,CAAAkI,MAAA,CAA4B,IAAIlJ,mBAAmB,CAACgJ,IAAI,CAAC/C,IAAI,EAAE+C,IAAI,CAACnH,OAAO,GAAG+G,MAAM,CAACF,CAAC,CAAC7G,OAAO,CAAC,CAAC,EAAhGb,eAAA,CAAAmI,KAAA,CAAc,CAAC,EAAE,CAAC,CAAC,EAAnBV,CAAC,CAACK,KAAK,CAAa,CAA6E,CAClG;EACH;EACA,IAAI,CAAC9H,eAAA,CAAA+H,UAAA,CAAAN,CAAC,CAACK,KAAK,CAAa,EAAE;IACzB,MAAM,IAAIP,KAAK,CAAC,0BAA0B,CAAC;EAC7C;EACA,MAAMS,IAAI,GAAGhI,eAAA,CAAAiI,UAAA,CAAAR,CAAC,CAACK,KAAK,CAAY;EAChC,OAAOhI,eAAA,CAAAsH,qBAAA,CACLK,CAAC,CAACI,IAAI,EACN7H,eAAA,CAAAoI,MAAA,CAGUV,CAAC,CAACI,KAAK,EAHjB9H,eAAA,CAAAkI,MAAA,CAEU,IAAIlJ,mBAAmB,CAACgJ,IAAI,CAAC/C,IAAI,EAAE+C,IAAI,CAACnH,OAAO,GAAG+G,MAAM,CAACF,CAAC,CAACG,IAAI,CAAC,CAAC,EAF3E7H,eAAA,CAAAmI,KAAA,CACS,CAAC,EAAE,CAAC,CAAC,EADdV,CAAC,CAACK,KAAK,CACQ,CAC6D,CAC1D,CACnB;AACH;AAEA;;;AAGA,OAAM,SAAUO,eAAeA,CAC7B,GAAG,CAACR,IAAI,EAAE,GAAGS,IAAI,CAAI;EAErB,IAAIhB,KAAK,GAAsCJ,mBAAmB,CAACW,IAAI,CAAC3I,GAAG,CAAC;EAC5E,KAAK,MAAMqJ,IAAI,IAAID,IAAI,EAAE;IACvBhB,KAAK,GAAGtH,eAAA,CAAAqH,OAAA,CAAeI,CAAC,IAAKzH,eAAA,CAAAC,GAAA,CAAmCyH,CAAC,IAAKF,uBAAuB,CAACC,CAAC,EAAEC,CAAC,CAAC,EAAtER,mBAAmB,CAACqB,IAAI,CAACrJ,GAAG,CAAC,CAA0C,EAA5FoI,KAAK,CAAwF;EACvG;EACA,OAAO5J,MAAA,CAAeoC,eAAA,CAAA0D,WAAA,CAAgB8D,KAAK,CAAC,CAAC;AAC/C;AAEA;;;;AAIA,OAAM,SAAUkB,KAAKA,CAAIjJ,IAAe;EACtC,OAAO7B,MAAA,CAAAoC,eAAA,CAAA0I,KAAA,CAAejJ,IAAI,CAACL,GAAG,EAAO;AACvC;AAEA,SAASuJ,+BAA+BA,CAACC,CAAc,EAAEC,CAAc;EACrE,OAAO3I,eAAA,CAAA4I,IAAA,CAA2BC,EAAE,IAAK7I,eAAA,CAAA4I,IAAA,CAA2BE,EAAE,IAAKD,EAAE,CAAC7D,IAAI,KAAK8D,EAAE,CAAC9D,IAAI,EAArD2D,CAAC,CAAC9D,kBAAkB,CAAkC,EAAxF6D,CAAC,CAAC7D,kBAAkB,CAAqE;AAClG;AAEA,SAASkE,4BAA4BA,CAACL,CAAc,EAAEC,CAAc;EAClE,OAAO3I,eAAA,CAAA4I,IAAA,CAAwBI,EAAE,IAC/BhJ,eAAA,CAAA4I,IAAA,CAAwBK,EAAE,IAAI;IAC5B,MAAMC,EAAE,GAAGpK,YAAY,CAACkK,EAAE,CAACG,SAAS,CAAC;IACrC,MAAMC,EAAE,GAAGtK,YAAY,CAACmK,EAAE,CAACE,SAAS,CAAC;IACrC,OAAQrJ,eAAA,CAAAuJ,eAAA,CAAAH,EAAE,CAAkB,IAAIpJ,eAAA,CAAAuJ,eAAA,CAAAD,EAAE,CAAkB,IAAMtJ,eAAA,CAAAwJ,eAAA,CAAAJ,EAAE,CAAkB,IAAIpJ,eAAA,CAAAwJ,eAAA,CAAAF,EAAE,CAAmB;EACzG,CAAC,EAJDT,CAAC,CAACY,eAAe,CAIf,EALGb,CAAC,CAACa,eAAe,CAMvB;AACH;AAEA;;;AAGA,OAAM,SAAUC,MAAMA,CAAIC,IAAe;EACvC,OAAWlK,IAAe,IAA2B;IACnD,MAAMmK,SAAS,GAAG5J,eAAA,CAAA6J,OAAA,CAAApK,IAAI,CAACL,GAAG,CAAU,GAAGK,IAAI,CAACL,GAAG,CAACoI,KAAK,GAAGtH,eAAA,CAAAU,MAAA,CAAOnB,IAAI,CAACL,GAAG,CAAC;IACxE,MAAM0K,SAAS,GAAG9J,eAAA,CAAA6J,OAAA,CAAAF,IAAI,CAACvK,GAAG,CAAU,GAAGuK,IAAI,CAACvK,GAAG,CAACoI,KAAK,GAAGtH,eAAA,CAAAU,MAAA,CAAO+I,IAAI,CAACvK,GAAG,CAAC;IACxE,IAAIc,eAAA,CAAA6J,KAAA,CAAA/J,eAAA,CAAAgK,aAAA,EAAAJ,SAAS,CAAyB,IAAI1J,eAAA,CAAA6J,KAAA,CAAA/J,eAAA,CAAAgK,aAAA,EAAAF,SAAS,CAAyB,EAAE;MAC5E,OAAOlM,MAAA,CACLoC,eAAA,CAAA0D,WAAA,CACExD,eAAA,CAAAqH,OAAA,CAAmBqB,CAAC,IAClB1I,eAAA,CAAAC,GAAA,CAAe0I,CAAC,IAAI;QAClB,IAAIF,+BAA+B,CAACC,CAAC,EAAEC,CAAC,CAAC,EAAE;UACzC,MAAM,IAAIpB,KAAK,CAAC,wDAAwD,CAAC;QAC3E;QACA,IAAIwB,4BAA4B,CAACL,CAAC,EAAEC,CAAC,CAAC,EAAE;UACtC,MAAM,IAAIpB,KAAK,CAAC,qDAAqD,CAAC;QACxE;QACA,OAAOzH,eAAA,CAAA2E,iBAAA,CACLzE,eAAA,CAAAoI,MAAA,CAA4BO,CAAC,CAAC9D,kBAAkB,EAAhD6D,CAAC,CAAC7D,kBAAkB,CAA6B,EACjD7E,eAAA,CAAAoI,MAAA,CAAyBO,CAAC,CAACY,eAAe,EAA1Cb,CAAC,CAACa,eAAe,CAA0B,CAC5C;MACH,CAAC,EAXDK,SAAS,CAWP,EAZJF,SAAS,CAaR,CACF,CACF;IACH;IACA,MAAM,IAAInC,KAAK,CAAC,mEAAmE,CAAC;EACtF,CAAC;AACH;AAEA;;;AAGA,SAAA/I,aAAyEuL,WAAc;EACrF,OAAQxK,IAAoB,IAA6B;IACvD,OAAO3B,UAAA,CAAA4C,eAAA,CAAAwJ,WAAA,EAEgC,kBAAkBD,WAAW,CAAC/E,IAAI,EAAE,EAFpElH,QAAA,CACIwB,KAAK,IAA+BA,KAAK,YAAYyK,WAAW,EADpExK,IAAI,CACiE,CACA;EAC9E,CAAC;AACH;AAEA;;;AAGA,SAAAb,kBACEyG,EAAa,EACbvF,MAA4D,EAC5DC,MAA4D;EAE5D,OAAQ4D,IAAe,IAAe;IACpC,OAAO/F,MAAA,CAAeoC,eAAA,CAAAmK,eAAA,CAAoBxG,IAAI,CAACvE,GAAG,EAAEiG,EAAE,CAACjG,GAAG,EAAEU,MAAM,EAAEC,MAAM,CAAC,CAAC;EAC9E,CAAC;AACH;AAEA;;;AAGA,SAAAjB,YACEuG,EAAa,EACbvF,MAA+C,EAC/CC,MAA+C;EAE/C,OAAQ4D,IAAe,IAAe;IACpC,OAAO/E,iBAAA,CACLyG,EAAE,EACF,CAACjC,KAAK,EAAEC,OAAO,KAAKC,eAAA,CAAAC,OAAA,CAAoBzD,MAAM,CAACsD,KAAK,EAAEC,OAAO,CAAC,CAAC,EAC/D,CAACD,KAAK,EAAEC,OAAO,KAAKC,eAAA,CAAAC,OAAA,CAAoBxD,MAAM,CAACqD,KAAK,EAAEC,OAAO,CAAC,CAAC,EAH1DM,IAAI,CAIV;EACH,CAAC;AACH;AAEA;;;AAGA,OAAM,SAAUyG,IAAIA,CAAyC,GAAGlD,IAAU;EACxE,OAAQzH,IAAe,IAAmC;IACxD,OAAO7B,MAAA,CAAeoC,eAAA,CAAAoK,IAAA,CAAclK,eAAA,CAAAyD,IAAA,CAAYuD,IAAI,CAAC,EAA/BzH,IAAI,CAACL,GAAG,CAAwB,CAAC;EACzD,CAAC;AACH;AAEA;;;AAGA,OAAM,SAAUiL,IAAIA,CAAyC,GAAGnD,IAAU;EACxE,OAAQzH,IAAe,IAAmC;IACxD,OAAO7B,MAAA,CAAeoC,eAAA,CAAAqK,IAAA,CAAcnK,eAAA,CAAAyD,IAAA,CAAYuD,IAAI,CAAC,EAA/BzH,IAAI,CAACL,GAAG,CAAwB,CAAC;EACzD,CAAC;AACH"}
package/_mjs/Schema.mjs CHANGED
@@ -6,7 +6,9 @@ export * from "./Schema/api.mjs";
6
6
  // codegen:end
7
7
  /* eslint-disable simple-import-sort/exports */
8
8
  // codegen:start { preset: barrel, include: ./Schema/api/*.ts }
9
+ export * from "./Schema/api/set.mjs";
9
10
  export * from "./Schema/api/maybe.mjs";
11
+ export * from "./Schema/api/map.mjs";
10
12
  export * from "./Schema/api/list.mjs";
11
13
  export * from "./Schema/api/immutableArray.mjs";
12
14
  export * from "./Schema/api/hashSet.mjs";
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.mjs","names":[],"sources":["../_src/Schema.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA,cAAc,0BAAyB;AACvC,cAAc,yBAAwB;AACtC,cAAc,kBAAiB;AAC/B;AAEA;AACA;AACA,cAAc,wBAAuB;AACrC,cAAc,uBAAsB;AACpC,cAAc,iCAAgC;AAC9C,cAAc,0BAAyB;AACvC,cAAc,0BAAyB;AACvC,cAAc,yBAAwB;AACtC,cAAc,uBAAsB"}
1
+ {"version":3,"file":"Schema.mjs","names":[],"sources":["../_src/Schema.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA,cAAc,0BAAyB;AACvC,cAAc,yBAAwB;AACtC,cAAc,kBAAiB;AAC/B;AAEA;AACA;AACA,cAAc,sBAAqB;AACnC,cAAc,wBAAuB;AACrC,cAAc,sBAAqB;AACnC,cAAc,uBAAsB;AACpC,cAAc,iCAAgC;AAC9C,cAAc,0BAAyB;AACvC,cAAc,0BAAyB;AACvC,cAAc,yBAAwB;AACtC,cAAc,uBAAsB"}
package/_mjs/Show.mjs CHANGED
@@ -1,137 +1,100 @@
1
- import * as tsplus_module_1 from "@fncts/base/control/Eval/run";
2
- import * as tsplus_module_2 from "@fncts/base/control/Eval/constructors";
1
+ import * as tsplus_module_1 from "@fncts/schema/AST";
2
+ import * as tsplus_module_2 from "@fncts/base/data/Maybe/api";
3
3
  import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
4
- import * as tsplus_module_4 from "@fncts/base/control/Eval/instance";
5
- import * as tsplus_module_5 from "@fncts/base/control/Eval/api";
6
- import * as tsplus_module_6 from "@fncts/schema/ASTAnnotation";
7
- import * as tsplus_module_7 from "@fncts/base/data/Maybe/destructors";
4
+ import * as tsplus_module_4 from "@fncts/base/data/Maybe/constructors";
5
+ import * as tsplus_module_5 from "@fncts/base/data/Maybe/destructors";
8
6
  import { globalValue } from "@fncts/base/data/Global";
9
- import { memoize } from "@fncts/schema/utils";
7
+ import { formatUnknown } from "@fncts/schema/utils";
10
8
  const showMemoMap = /*#__PURE__*/globalValue( /*#__PURE__*/Symbol.for("fncts.schema.Guard.showMemoMap"), () => new WeakMap());
11
- function goMemo(ast) {
12
- const memo = showMemoMap.get(ast);
9
+ const showMemoMapVerbose = /*#__PURE__*/globalValue( /*#__PURE__*/Symbol.for("fncts.schema.Guard.showMemoMapVerbose"), () => new WeakMap());
10
+ function goMemo(ast, verbose) {
11
+ const memoMap = verbose ? showMemoMapVerbose : showMemoMap;
12
+ const memo = memoMap.get(ast);
13
13
  if (memo) {
14
14
  return memo;
15
15
  }
16
- const s = go(ast);
17
- showMemoMap.set(ast, s);
16
+ const s = go(ast, verbose);
17
+ memoMap.set(ast, s);
18
18
  return s;
19
19
  }
20
20
  /**
21
- * @tsplus getter fncts.schema.Schema show
21
+ * @tsplus pipeable fncts.schema.Schema show
22
22
  */
23
- export function show(self) {
24
- const ev = goMemo(self.ast);
25
- return tsplus_module_1.run(ev);
23
+ export function show(verbose = false) {
24
+ return self => goMemo(self.ast, verbose);
26
25
  }
27
- function go(ast) {
26
+ /**
27
+ * @tsplus pipeable fncts.schema.AST show
28
+ */
29
+ export function showAST(verbose = false) {
30
+ return self => goMemo(self, verbose);
31
+ }
32
+ function go(ast, verbose) {
28
33
  void 0;
29
34
  switch (ast._tag) {
30
35
  case 0 /* ASTTag.Declaration */:
31
36
  {
32
- return tsplus_module_7.match(() => tsplus_module_2.now("Unknown Type"), id => {
33
- return tsplus_module_5.map(ts => {
34
- if (ts.length <= 0) {
35
- return id;
36
- } else {
37
- return `${id}<${tsplus_module_3.join(", ")(ts)}>`;
38
- }
39
- })(tsplus_module_3._traverse(ast.typeParameters)(tsplus_module_4.Applicative)(goMemo));
40
- })(ast.annotations.get(tsplus_module_6.Identifier));
37
+ return tsplus_module_2.getOrElse(() => "<declaration schema>")(tsplus_module_1.getFormattedExpected(verbose)(ast));
41
38
  }
42
39
  case 1 /* ASTTag.Literal */:
43
- {
44
- if (ast.literal === null) {
45
- return tsplus_module_2.now("null");
46
- } else {
47
- return tsplus_module_2.now(ast.literal.toString());
48
- }
49
- }
40
+ return tsplus_module_2.getOrElse(() => formatUnknown(ast.literal))(tsplus_module_1.getFormattedExpected(verbose)(ast));
50
41
  case 2 /* ASTTag.UniqueSymbol */:
51
- return tsplus_module_2.now(ast.symbol.toString());
42
+ return tsplus_module_2.getOrElse(() => formatUnknown(ast.symbol))(tsplus_module_1.getFormattedExpected(verbose)(ast));
52
43
  case 3 /* ASTTag.UndefinedKeyword */:
53
- return tsplus_module_2.now("undefined");
44
+ return tsplus_module_2.getOrElse(() => "undefined")(tsplus_module_1.getFormattedExpected(verbose)(ast));
54
45
  case 4 /* ASTTag.VoidKeyword */:
55
- return tsplus_module_2.now("void");
46
+ return tsplus_module_2.getOrElse(() => "void")(tsplus_module_1.getFormattedExpected(verbose)(ast));
56
47
  case 5 /* ASTTag.NeverKeyword */:
57
- return tsplus_module_2.now("never");
48
+ return tsplus_module_2.getOrElse(() => "never")(tsplus_module_1.getFormattedExpected(verbose)(ast));
58
49
  case 6 /* ASTTag.UnknownKeyword */:
59
- return tsplus_module_2.now("unknown");
50
+ return tsplus_module_2.getOrElse(() => "unknown")(tsplus_module_1.getFormattedExpected(verbose)(ast));
60
51
  case 7 /* ASTTag.AnyKeyword */:
61
- return tsplus_module_2.now("any");
52
+ return tsplus_module_2.getOrElse(() => "any")(tsplus_module_1.getFormattedExpected(verbose)(ast));
62
53
  case 8 /* ASTTag.StringKeyword */:
63
- return tsplus_module_2.now("string");
54
+ return tsplus_module_2.getOrElse(() => "string")(tsplus_module_1.getFormattedExpected(verbose)(ast));
64
55
  case 9 /* ASTTag.NumberKeyword */:
65
- return tsplus_module_2.now("number");
56
+ return tsplus_module_2.getOrElse(() => "number")(tsplus_module_1.getFormattedExpected(verbose)(ast));
66
57
  case 10 /* ASTTag.BooleanKeyword */:
67
- return tsplus_module_2.now("boolean");
58
+ return tsplus_module_2.getOrElse(() => "boolean")(tsplus_module_1.getFormattedExpected(verbose)(ast));
68
59
  case 11 /* ASTTag.BigIntKeyword */:
69
- return tsplus_module_2.now("bigint");
60
+ return tsplus_module_2.getOrElse(() => "bigint")(tsplus_module_1.getFormattedExpected(verbose)(ast));
70
61
  case 12 /* ASTTag.SymbolKeyword */:
71
- return tsplus_module_2.now("symbol");
62
+ return tsplus_module_2.getOrElse(() => "symbol")(tsplus_module_1.getFormattedExpected(verbose)(ast));
72
63
  case 13 /* ASTTag.ObjectKeyword */:
73
- return tsplus_module_2.now("object");
64
+ return tsplus_module_2.getOrElse(() => "object")(tsplus_module_1.getFormattedExpected(verbose)(ast));
74
65
  case 15 /* ASTTag.TemplateLiteral */:
75
- return tsplus_module_2.now("`" + formatTemplateLiteral(ast) + "`");
66
+ return tsplus_module_2.getOrElse(() => formatTemplateLiteral(ast))(tsplus_module_1.getFormattedExpected(verbose)(ast));
76
67
  case 16 /* ASTTag.Tuple */:
77
- return tsplus_module_5.flatMap(elements => tsplus_module_5.flatMap(restElements => tsplus_module_2.always(() => {
78
- if (elements.length === 0 && restElements.length === 1) {
79
- if (ast.isReadonly) {
80
- return `ReadonlyArray<${tsplus_module_3.unsafeGet(0)(restElements)}>`;
81
- } else {
82
- return `Array<${tsplus_module_3.unsafeGet(0)(restElements)}>`;
83
- }
84
- }
85
- const prefix = (ast.isReadonly ? "readonly " : "") + "[" + tsplus_module_3.join(", ")(elements);
86
- const middle = restElements.length > 0 ? ", " : "";
87
- const suffix = tsplus_module_3.join(", ")(tsplus_module_3.map(s => `...${s}`)(restElements)) + "]";
88
- return prefix + middle + suffix;
89
- }))(tsplus_module_7.match(() => tsplus_module_2.now(tsplus_module_3.empty()), rest => tsplus_module_3._traverse(rest)(tsplus_module_4.Applicative)(goMemo))(ast.rest)))(tsplus_module_3._traverse(ast.elements)(tsplus_module_4.Applicative)(element => goMemo(element.type)));
68
+ {
69
+ return tsplus_module_2.getOrElse(() => formatTuple(ast, verbose))(tsplus_module_1.getFormattedExpected(verbose)(ast));
70
+ }
90
71
  case 17 /* ASTTag.TypeLiteral */:
91
- return tsplus_module_5.flatMap(propertySignatures => tsplus_module_5.map(indexSignatures => {
92
- const required = [];
93
- const optional = [];
94
- tsplus_module_3.forEachWithIndex((i, ps) => {
95
- const name = ps.name;
96
- if (!ps.isOptional) {
97
- required.push([name, tsplus_module_3.unsafeGet(i)(propertySignatures)]);
98
- } else {
99
- optional.push([name, tsplus_module_3.unsafeGet(i)(propertySignatures)]);
100
- }
101
- })(ast.propertySignatures);
102
- const prefix = "{";
103
- const properties = required.concat(optional).sort(([k1], [k2]) => k1.toLocaleString().localeCompare(k2.toLocaleString())).map(([propertyKey, type]) => `${String(propertyKey)}: ${type}`).join(", ");
104
- const index = tsplus_module_3.join(", ")(tsplus_module_3.map(([param, type]) => `[x: ${param}]: ${type}`)(indexSignatures));
105
- const suffix = "}";
106
- return prefix + " " + properties + (index.length === 0 ? "" : ", ") + index + " " + suffix;
107
- })(tsplus_module_3._traverse(ast.indexSignatures)(tsplus_module_4.Applicative)(is => tsplus_module_5.zip(goMemo(is.type))(goMemo(is.parameter)))))(tsplus_module_3._traverse(ast.propertySignatures)(tsplus_module_4.Applicative)(ps => goMemo(ps.type)));
72
+ {
73
+ return tsplus_module_2.getOrElse(() => formatTypeLiteral(ast, verbose))(tsplus_module_1.getFormattedExpected(verbose)(ast));
74
+ }
108
75
  case 18 /* ASTTag.Union */:
109
- return tsplus_module_5.map(ts => tsplus_module_3.join(" | ")(ts))(tsplus_module_3._traverse(ast.types)(tsplus_module_4.Applicative)(goMemo));
76
+ {
77
+ return tsplus_module_2.getOrElse(() => tsplus_module_3.join(" | ")(tsplus_module_3.map(ast => goMemo(ast, verbose))(ast.types)))(tsplus_module_1.getFormattedExpected(verbose)(ast));
78
+ }
110
79
  case 19 /* ASTTag.Lazy */:
111
80
  {
112
- const f = () => goMemo(ast.getAST());
113
- const get = memoize(f);
114
- return tsplus_module_2.defer(() => get());
81
+ return tsplus_module_2.getOrElse(() => "<lazy schema>")(tsplus_module_2.orElse(() => tsplus_module_2.flatMap(ast => tsplus_module_1.getFormattedExpected(verbose)(ast))(tsplus_module_4.tryCatch(ast.getAST)))(tsplus_module_1.getFormattedExpected(verbose)(ast)));
115
82
  }
116
83
  case 14 /* ASTTag.Enum */:
117
84
  {
118
- return tsplus_module_2.now(tsplus_module_3.join(" | ")(tsplus_module_3.map(([name]) => name)(ast.enums)));
85
+ return tsplus_module_2.getOrElse(() => `<enum ${ast.enums.length} values(s): ${tsplus_module_3.join(" | ")(tsplus_module_3.map(([_, value]) => JSON.stringify(value))(ast.enums))}`)(tsplus_module_1.getFormattedExpected(verbose)(ast));
119
86
  }
120
87
  case 20 /* ASTTag.Refinement */:
121
88
  {
122
- return tsplus_module_7.match(() => tsplus_module_5.map(from => `Refined<${from}>`)(goMemo(ast.from)), id => tsplus_module_2.now(id))(ast.annotations.get(tsplus_module_6.Identifier));
89
+ return tsplus_module_2.getOrElse(() => `{ ${goMemo(ast.from, verbose)} | filter }`)(tsplus_module_1.getFormattedExpected(verbose)(ast));
123
90
  }
124
91
  case 21 /* ASTTag.Transform */:
125
- return goMemo(ast.to);
92
+ {
93
+ return tsplus_module_2.getOrElse(() => `(${goMemo(ast.from, verbose)} <-> ${goMemo(ast.to, verbose)})`)(tsplus_module_1.getFormattedExpected(verbose)(ast));
94
+ }
126
95
  case 22 /* ASTTag.Validation */:
127
96
  {
128
- return tsplus_module_5.map(from => {
129
- const validationNames = tsplus_module_3.join(" & ")(tsplus_module_3.map(v => v.name)(ast.validation));
130
- if (validationNames.length <= 0) {
131
- return from;
132
- }
133
- return `${from} & ${validationNames}`;
134
- })(goMemo(ast.from));
97
+ return tsplus_module_2.getOrElse(() => `${goMemo(ast.from, verbose)} (${tsplus_module_3.join(" & ")(tsplus_module_3.map(v => v.name)(ast.validation))})`)(tsplus_module_1.getFormattedExpected(verbose)(ast));
135
98
  }
136
99
  }
137
100
  }
@@ -144,6 +107,59 @@ function formatTemplateLiteralSpan(span) {
144
107
  }
145
108
  }
146
109
  function formatTemplateLiteral(ast) {
147
- return ast.head + tsplus_module_3.join("")(tsplus_module_3.map(span => formatTemplateLiteralSpan(span) + span.literal)(ast.spans));
110
+ return "`" + ast.head + tsplus_module_3.join("")(tsplus_module_3.map(span => formatTemplateLiteralSpan(span) + span.literal)(ast.spans)) + "`";
111
+ }
112
+ function formatElement(ast, verbose) {
113
+ return goMemo(ast.type, verbose) + (ast.isOptional ? "?" : "");
114
+ }
115
+ function getParameterBase(self) {
116
+ switch (self._tag) {
117
+ case 8 /* ASTTag.StringKeyword */:
118
+ case 12 /* ASTTag.SymbolKeyword */:
119
+ case 15 /* ASTTag.TemplateLiteral */:
120
+ return self;
121
+ case 20 /* ASTTag.Refinement */:
122
+ return getParameterBase(self);
123
+ }
124
+ }
125
+ function formatTuple(ast, verbose) {
126
+ const formattedElements = tsplus_module_3.join(", ")(tsplus_module_3.map(element => formatElement(element, verbose))(ast.elements));
127
+ return tsplus_module_5.match(() => `${ast.isReadonly ? "readonly " : ""}[${formattedElements}]`, rest => {
128
+ const head = tsplus_module_3.unsafeHead(rest);
129
+ const tail = tsplus_module_3.tail(rest);
130
+ const formattedHead = goMemo(head, verbose);
131
+ const wrappedHead = formattedHead.includes(" | ") ? `(${formattedHead})` : formattedHead;
132
+ if (tail.length > 0) {
133
+ const formattedTail = tsplus_module_3.join(", ")(tsplus_module_3.map(ast => goMemo(ast, verbose))(tail));
134
+ if (ast.elements.length > 0) {
135
+ return `${ast.isReadonly ? "readonly " : " "}[${formattedElements}, ...${wrappedHead}[], ${formattedTail}]`;
136
+ } else {
137
+ return `${ast.isReadonly ? "readonly " : " "}[...${wrappedHead}[], ${formattedTail}]`;
138
+ }
139
+ } else {
140
+ if (ast.elements.length > 0) {
141
+ return `${ast.isReadonly ? "readonly " : " "}[${formattedElements}, ...${wrappedHead}[]]`;
142
+ } else {
143
+ return `${ast.isReadonly ? "Readonly" : ""}Array<${formattedHead}>`;
144
+ }
145
+ }
146
+ })(tsplus_module_2.filter(rest => tsplus_module_3.isNonEmpty(rest))(ast.rest));
147
+ }
148
+ function formatTypeLiteral(ast, verbose) {
149
+ const formattedPropertySignatures = tsplus_module_3.join("; ")(tsplus_module_3.map(ps => (ps.isReadonly ? "readonly " : "") + String(ps.name) + (ps.isOptional ? "?" : "") + ": " + goMemo(ps.type, verbose))(ast.propertySignatures));
150
+ if (ast.indexSignatures.length > 0) {
151
+ const formattedIndexSignatures = tsplus_module_3.join("; ")(tsplus_module_3.map(is => (is.isReadonly ? "readonly " : "") + `[x: ${goMemo(getParameterBase(is.parameter), verbose)}]: ${goMemo(is.type, verbose)}`)(ast.indexSignatures));
152
+ if (ast.propertySignatures.length > 0) {
153
+ return `{ ${formattedPropertySignatures}; ${formattedIndexSignatures} }`;
154
+ } else {
155
+ return `{ ${formattedIndexSignatures} }`;
156
+ }
157
+ } else {
158
+ if (ast.propertySignatures.length > 0) {
159
+ return `{ ${formattedPropertySignatures} }`;
160
+ } else {
161
+ return "{}";
162
+ }
163
+ }
148
164
  }
149
165
  //# sourceMappingURL=Show.mjs.map