typia 7.0.0-dev.20240928 → 7.0.0-dev.20240930

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 (40) hide show
  1. package/lib/factories/internal/metadata/emplace_metadata_object.js +2 -1
  2. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  3. package/lib/programmers/AssertProgrammer.js +14 -10
  4. package/lib/programmers/AssertProgrammer.js.map +1 -1
  5. package/lib/programmers/CheckerProgrammer.d.ts +5 -1
  6. package/lib/programmers/CheckerProgrammer.js +161 -135
  7. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  8. package/lib/programmers/FeatureProgrammer.d.ts +91 -28
  9. package/lib/programmers/FeatureProgrammer.js +158 -139
  10. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  11. package/lib/programmers/IsProgrammer.d.ts +5 -1
  12. package/lib/programmers/IsProgrammer.js +70 -67
  13. package/lib/programmers/IsProgrammer.js.map +1 -1
  14. package/lib/programmers/ValidateProgrammer.js +7 -3
  15. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  16. package/lib/programmers/helpers/UnionExplorer.js +31 -6
  17. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  18. package/lib/programmers/internal/feature_object_entries.js +18 -14
  19. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  20. package/lib/programmers/json/JsonStringifyProgrammer.js +101 -62
  21. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  22. package/lib/programmers/misc/MiscCloneProgrammer.js +101 -62
  23. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  24. package/lib/programmers/misc/MiscPruneProgrammer.js +97 -62
  25. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  26. package/lib/programmers/notations/NotationGeneralProgrammer.js +118 -60
  27. package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
  28. package/package.json +1 -1
  29. package/src/factories/internal/metadata/emplace_metadata_object.ts +2 -1
  30. package/src/programmers/AssertProgrammer.ts +14 -10
  31. package/src/programmers/CheckerProgrammer.ts +139 -134
  32. package/src/programmers/FeatureProgrammer.ts +324 -266
  33. package/src/programmers/IsProgrammer.ts +80 -77
  34. package/src/programmers/ValidateProgrammer.ts +7 -3
  35. package/src/programmers/helpers/UnionExplorer.ts +33 -12
  36. package/src/programmers/internal/feature_object_entries.ts +18 -15
  37. package/src/programmers/json/JsonStringifyProgrammer.ts +103 -76
  38. package/src/programmers/misc/MiscCloneProgrammer.ts +122 -95
  39. package/src/programmers/misc/MiscPruneProgrammer.ts +111 -90
  40. package/src/programmers/notations/NotationGeneralProgrammer.ts +138 -91
@@ -212,7 +212,8 @@ var significant = function (functional) {
212
212
  typescript_1.default.isPropertyDeclaration(node) ||
213
213
  typescript_1.default.isPropertyAssignment(node) ||
214
214
  typescript_1.default.isPropertySignature(node) ||
215
- typescript_1.default.isTypeLiteralNode(node);
215
+ typescript_1.default.isTypeLiteralNode(node) ||
216
+ typescript_1.default.isShorthandPropertyAssignment(node);
216
217
  };
217
218
  };
218
219
  var iterate_optional_coalesce = function (props) {
@@ -1 +1 @@
1
- {"version":3,"file":"emplace_metadata_object.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/emplace_metadata_object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emplace_metadata_object.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/emplace_metadata_object.ts"],"names":[],"mappings":"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"}
@@ -147,17 +147,21 @@ var AssertProgrammer;
147
147
  return function (next) {
148
148
  if (next.explore.tracable === false)
149
149
  return IsProgrammer_1.IsProgrammer.configure({
150
- object: function (v) {
151
- return assert_object({
152
- config: props.config,
153
- context: props.context,
154
- importer: props.importer,
155
- entries: v.entries,
156
- input: v.input,
157
- });
150
+ options: {
151
+ object: function (v) {
152
+ return assert_object({
153
+ config: props.config,
154
+ context: props.context,
155
+ importer: props.importer,
156
+ entries: v.entries,
157
+ input: v.input,
158
+ });
159
+ },
160
+ numeric: true,
158
161
  },
159
- numeric: true,
160
- })(props.context)(props.importer).combiner(next);
162
+ context: props.context,
163
+ importer: props.importer,
164
+ }).combiner(next);
161
165
  var path = next.explore.postfix
162
166
  ? "_path + ".concat(next.explore.postfix)
163
167
  : "_path";
@@ -1 +1 @@
1
- {"version":3,"file":"AssertProgrammer.js","sourceRoot":"","sources":["../../src/programmers/AssertProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAKvD,yDAAwD;AACxD,yDAAwD;AACxD,+CAA8C;AAC9C,+DAA8D;AAE9D,+DAA8D;AAC9D,wDAAuD;AAEvD,IAAiB,gBAAgB,CA6ahC;AA7aD,WAAiB,gBAAgB;IASlB,0BAAS,GAAG,UAAC,KAOzB;;QACC,IAAM,EAAE,GAAkC,2BAAY,CAAC,SAAS,uBAC3D,KAAK,KACR,MAAM,EAAE;gBACN,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;aAC5B,IACD,CAAC;QACH,IAAM,QAAQ,GAAgC,qCAAiB,CAAC,OAAO,uBAClE,KAAK,KACR,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,mCAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gBACxD,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;gBAC3B,OAAO,EAAE,UAAC,IAAI;oBACZ,OAAA,uCACK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,kBACtD,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;wBACpC,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;4BAClC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,UAAC,IAAI;gCACjC,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC;oCAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oCACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK;wCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oCACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAC/B,IAAI,CAAC,OAAO,CAAC,OAAO;wCAClB,CAAC,CAAC,kBAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAE;wCACnC,CAAC,CAAC,OAAO,CACZ;oCACD,QAAQ,EAAE,IAAI,CAAC,QAAQ;oCACvB,KAAK,EAAE,IAAI,CAAC,KAAK;iCAClB,CAAC,CACH;4BAhBD,CAgBC,CACF;4BACH,CAAC,CAAC;gCACE,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,IAAI,CAAC,KAAK,CAAC,UAAU;qCAClB,GAAG,CAAC,UAAC,GAAG;oCACP,OAAA,GAAG;yCACA,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,UAAU,EAAZ,CAAY,CAAC;yCACxB,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC;wCACX,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC;oCAAjC,CAAiC,CAClC;gCAJH,CAIG,CACJ;qCACA,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,EAAhC,CAAgC,CAAC,EACrD,iBAAiB,CAAC;oCAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oCACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK;wCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oCACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAC/B,IAAI,CAAC,OAAO,CAAC,OAAO;wCAClB,CAAC,CAAC,kBAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAE;wCACnC,CAAC,CAAC,OAAO,CACZ;oCACD,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;oCAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;iCAClB,CAAC,CACH;6BACF,CAAC,UACR,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAjC,CAAiC,CAAC;gBAnDrD,CAmDqD;gBACvD,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC;gBACzB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC;gBACrB,OAAO,EAAE,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;aACjC,IACD,CAAC;QACH,IAAM,KAAK,GAAqB,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5D,SAAS,EACT,SAAS,EACT;YACE,qCAAiB,CAAC,SAAS,CAAC,OAAO,EAAE,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAChE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;SAC/B,EACD,KAAK,CAAC,MAAM,CAAC,KAAK;YAChB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EACpD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,MAAA,KAAK,CAAC,IAAI,mCACR,yBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAC7D,CACF;YACH,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,MAAA,KAAK,CAAC,IAAI,mCACR,yBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAC7D,EACL,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW;YAElB,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAC1B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,EACnC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC,CACF,EACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CACpB;gBACE,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC/B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAC5C,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EACjD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAC5C,CACF;gBACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,QAAQ,CAAC,UAAU,EACnB,SAAS,EACT,SAAS,EACT,QAAQ,CAAC,IAAI,CACd,EACD,SAAS,EACT;oBACE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;oBACpC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC;oBACxC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;iBACxB,CACF,CACF;aACF,EACD,IAAI,CACL,EACD,SAAS,CACV;kBACE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK;YAC9B,CAAC,CAAC;gBACE,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CACrC;aACF;YACH,CAAC,CAAC,EAAE,CAAC,WAET,IAAI,CACL,CACF,CAAC;QACF,OAAO;YACL,SAAS,wBACJ,EAAE,CAAC,SAAS,GACZ,QAAQ,CAAC,SAAS,CACtB;YACD,UAAU,uDACL,EAAE,CAAC,UAAU,kBACb,QAAQ,CAAC,UAAU;gBACtB,mCAAgB,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC;gBAC3C,mCAAgB,CAAC,GAAG,CAAC,eAAe,CAAC;qBACtC;YACD,KAAK,OAAA;SACN,CAAC;IACJ,CAAC,CAAC;IAEW,sBAAK,GAAG,UAAC,KAAa;QACjC,IAAM,QAAQ,GAAqB,IAAI,mCAAgB,CACrD,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CACvB,CAAC;QACF,IAAM,MAAM,GAAkC,iBAAA,SAAS,uBAClD,KAAK,KACR,QAAQ,UAAA,IACR,CAAC;QACH,OAAO,qCAAiB,CAAC,eAAe,CAAC;YACvC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,QAAQ,UAAA;YACR,MAAM,QAAA;SACP,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,IAAM,QAAQ,GACZ,UAAC,KAIA;QACD,OAAA,UAAC,IAAI;YACH,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,KAAK;gBACjC,OAAO,2BAAY,CAAC,SAAS,CAAC;oBAC5B,MAAM,EAAE,UAAC,CAAC;wBACR,OAAA,aAAa,CAAC;4BACZ,MAAM,EAAE,KAAK,CAAC,MAAM;4BACpB,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;4BACxB,OAAO,EAAE,CAAC,CAAC,OAAO;4BAClB,KAAK,EAAE,CAAC,CAAC,KAAK;yBACf,CAAC;oBANF,CAME;oBACJ,OAAO,EAAE,IAAI;iBACd,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEnD,IAAM,IAAI,GAAW,IAAI,CAAC,OAAO,CAAC,OAAO;gBACvC,CAAC,CAAC,kBAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAE;gBACnC,CAAC,CAAC,OAAO,CAAC;YACZ,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK;gBACzB,CAAC,CAAC,IAAI,CAAC,QAAQ;qBACV,GAAG,CAAC,UAAC,MAAM;oBACV,OAAA,MAAM,CAAC,QAAQ;wBACb,CAAC,CAAC,MAAM,CAAC,UAAU;wBACnB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,MAAM,CAAC,UAAU,EACjB,iBAAiB,CAAC;4BAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;4BACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK;gCAC3B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;gCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;4BACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC;4BACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,KAAK,EAAE,IAAI,CAAC,KAAK;yBAClB,CAAC,CACH;gBAdL,CAcK,CACN;qBACA,MAAM,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC;gBACxC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,IAAI,CAAC,QAAQ;qBACV,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,UAAU,EAAjB,CAAiB,CAAC;qBAClC,MAAM,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CAAC,EACrC,iBAAiB,CAAC;oBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK;wBAC3B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oBACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC;oBACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB,CAAC,CACH,CAAC;YACN,aAAa;YACb,2CAA2C;YAC3C,aAAa;YACb,8DAA8D;YAC9D,YAAY;YACZ,4BAA4B;YAC5B,gCAAgC;YAChC,yDAAyD;YACzD,6CAA6C;YAC7C,kDAAkD;YAClD,uDAAuD;YACvD,gDAAgD;YAChD,6BAA6B;YAC7B,mBAAmB;YACnB,uDAAuD;YACvD,8BAA8B;YAC9B,2BAA2B;YAC3B,mBAAmB;YACnB,gBAAgB;YAChB,UAAU;YACV,wBAAwB;YACxB,sCAAsC;YACtC,iDAAiD;YACjD,UAAU;QACZ,CAAC;IA5ED,CA4EC,CAAC;IAEJ,IAAM,aAAa,GAAG,UAAC,KAMtB;QACC,OAAA,IAAA,2BAAY,EAAC;YACX,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;YAC3B,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB;YACnC,QAAQ,EAAE,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;YACjC,WAAW,EAAE,UAAC,KAAK;gBACjB,OAAA,iBAAiB,CAAC;oBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,SAAS,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAC1B,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CACrC,CACF;oBACD,QAAQ,EAAE,WAAW;oBACrB,KAAK,OAAA;iBACN,CAAC;YAZF,CAYE;YACJ,IAAI,EAAE,UAAC,IAAI;gBACT,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAC9C,EACD,IAAI,CACL;YAND,CAMC;SACJ,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;IA/BF,CA+BE,CAAC;IAEL,IAAM,MAAM,GAAG,UAAC,KAIf,IAAwC,OAAA,CAAC;QACxC,MAAM,EAAE,UAAC,IAAI;YACX,OAAA,aAAa,CAAC;gBACZ,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC;QANF,CAME;QACJ,KAAK,EAAE,UAAC,KAAK;YACX,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAC9C,SAAS,EACT,CAAC,KAAK,CAAC,KAAK,CAAC,CACd;QAJD,CAIC;QACH,OAAO,EAAE,UAAC,IAAI;;YACZ,OAAA,iBAAiB,CAAC;gBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,aAAa,EACX,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,MAAK,KAAK;oBAC1B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;oBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;gBACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAC/B,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,EAAC,CAAC,CAAC,kBAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC,OAAO,CACpE;gBACD,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAA;SAAA;QACJ,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;YACvB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,UAAC,IAAI;gBACH,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,IAAI,CAAC,SAAS,EACd,iBAAiB,CAAC;oBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK;wBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oBACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;oBAC1C,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB,CAAC,CACH;YAZD,CAYC;KACR,CAAC,EA5CuC,CA4CvC,CAAC;IAEH,IAAM,iBAAiB,GAAG,UAAC,KAM1B;;QACC,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE;YACtE,MAAA,KAAK,CAAC,aAAa,mCAAI,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;YACpE,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC;gBACE,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;gBACvD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,UAAU,EACV,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAC/C;gBACD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;aAC1D,EACD,IAAI,CACL;YACD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC;SAC7C,CAAC,CAAA;KAAA,CAAC;IAEL,IAAiB,QAAQ,CAqCxB;IArCD,WAAiB,QAAQ;QACV,mBAAU,GAAG,cAAM,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAA3C,CAA2C,CAAC;QAC/D,kBAAS,GAAG,UAAC,IAA+B;YACvD,OAAA,qCAAiB,CAAC,SAAS,CACzB,cAAc,EACd,SAAA,IAAI,EAAE,EACN,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAC5D;QAJD,CAIC,CAAC;QACS,aAAI,GAAG;YAClB,OAAA,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC/B,SAAS,EACT;gBACE,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CACnC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAChC,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CACxC,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACtC,EACD,SAAS,EACT,KAAK,CACN,EACD,SAAS,CACV;aACF,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,CACV,CACF;QA3BD,CA2BC,CAAC;IACN,CAAC,EArCgB,QAAQ,GAAR,yBAAQ,KAAR,yBAAQ,QAqCxB;AACH,CAAC,EA7agB,gBAAgB,gCAAhB,gBAAgB,QA6ahC"}
1
+ {"version":3,"file":"AssertProgrammer.js","sourceRoot":"","sources":["../../src/programmers/AssertProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAKvD,yDAAwD;AACxD,yDAAwD;AACxD,+CAA8C;AAC9C,+DAA8D;AAE9D,+DAA8D;AAC9D,wDAAuD;AAEvD,IAAiB,gBAAgB,CAibhC;AAjbD,WAAiB,gBAAgB;IASlB,0BAAS,GAAG,UAAC,KAOzB;;QACC,IAAM,EAAE,GAAkC,2BAAY,CAAC,SAAS,uBAC3D,KAAK,KACR,MAAM,EAAE;gBACN,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;aAC5B,IACD,CAAC;QACH,IAAM,QAAQ,GAAgC,qCAAiB,CAAC,OAAO,uBAClE,KAAK,KACR,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,mCAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gBACxD,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;gBAC3B,OAAO,EAAE,UAAC,IAAI;oBACZ,OAAA,uCACK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,kBACtD,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;wBACpC,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;4BAClC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,UAAC,IAAI;gCACjC,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC;oCAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oCACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK;wCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oCACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAC/B,IAAI,CAAC,OAAO,CAAC,OAAO;wCAClB,CAAC,CAAC,kBAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAE;wCACnC,CAAC,CAAC,OAAO,CACZ;oCACD,QAAQ,EAAE,IAAI,CAAC,QAAQ;oCACvB,KAAK,EAAE,IAAI,CAAC,KAAK;iCAClB,CAAC,CACH;4BAhBD,CAgBC,CACF;4BACH,CAAC,CAAC;gCACE,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,IAAI,CAAC,KAAK,CAAC,UAAU;qCAClB,GAAG,CAAC,UAAC,GAAG;oCACP,OAAA,GAAG;yCACA,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,UAAU,EAAZ,CAAY,CAAC;yCACxB,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC;wCACX,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC;oCAAjC,CAAiC,CAClC;gCAJH,CAIG,CACJ;qCACA,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,EAAhC,CAAgC,CAAC,EACrD,iBAAiB,CAAC;oCAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oCACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK;wCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oCACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAC/B,IAAI,CAAC,OAAO,CAAC,OAAO;wCAClB,CAAC,CAAC,kBAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAE;wCACnC,CAAC,CAAC,OAAO,CACZ;oCACD,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;oCAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;iCAClB,CAAC,CACH;6BACF,CAAC,UACR,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAjC,CAAiC,CAAC;gBAnDrD,CAmDqD;gBACvD,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC;gBACzB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC;gBACrB,OAAO,EAAE,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;aACjC,IACD,CAAC;QACH,IAAM,KAAK,GAAqB,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5D,SAAS,EACT,SAAS,EACT;YACE,qCAAiB,CAAC,SAAS,CAAC,OAAO,EAAE,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAChE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;SAC/B,EACD,KAAK,CAAC,MAAM,CAAC,KAAK;YAChB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EACpD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,MAAA,KAAK,CAAC,IAAI,mCACR,yBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAC7D,CACF;YACH,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,MAAA,KAAK,CAAC,IAAI,mCACR,yBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAC7D,EACL,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW;YAElB,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAC1B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,EACnC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC,CACF,EACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CACpB;gBACE,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC/B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAC5C,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EACjD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAC5C,CACF;gBACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAClC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,QAAQ,CAAC,UAAU,EACnB,SAAS,EACT,SAAS,EACT,QAAQ,CAAC,IAAI,CACd,EACD,SAAS,EACT;oBACE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;oBACpC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC;oBACxC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;iBACxB,CACF,CACF;aACF,EACD,IAAI,CACL,EACD,SAAS,CACV;kBACE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK;YAC9B,CAAC,CAAC;gBACE,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CACrC;aACF;YACH,CAAC,CAAC,EAAE,CAAC,WAET,IAAI,CACL,CACF,CAAC;QACF,OAAO;YACL,SAAS,wBACJ,EAAE,CAAC,SAAS,GACZ,QAAQ,CAAC,SAAS,CACtB;YACD,UAAU,uDACL,EAAE,CAAC,UAAU,kBACb,QAAQ,CAAC,UAAU;gBACtB,mCAAgB,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC;gBAC3C,mCAAgB,CAAC,GAAG,CAAC,eAAe,CAAC;qBACtC;YACD,KAAK,OAAA;SACN,CAAC;IACJ,CAAC,CAAC;IAEW,sBAAK,GAAG,UAAC,KAAa;QACjC,IAAM,QAAQ,GAAqB,IAAI,mCAAgB,CACrD,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CACvB,CAAC;QACF,IAAM,MAAM,GAAkC,iBAAA,SAAS,uBAClD,KAAK,KACR,QAAQ,UAAA,IACR,CAAC;QACH,OAAO,qCAAiB,CAAC,eAAe,CAAC;YACvC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,QAAQ,UAAA;YACR,MAAM,QAAA;SACP,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,IAAM,QAAQ,GACZ,UAAC,KAIA;QACD,OAAA,UAAC,IAAI;YACH,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,KAAK;gBACjC,OAAO,2BAAY,CAAC,SAAS,CAAC;oBAC5B,OAAO,EAAE;wBACP,MAAM,EAAE,UAAC,CAAC;4BACR,OAAA,aAAa,CAAC;gCACZ,MAAM,EAAE,KAAK,CAAC,MAAM;gCACpB,OAAO,EAAE,KAAK,CAAC,OAAO;gCACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gCACxB,OAAO,EAAE,CAAC,CAAC,OAAO;gCAClB,KAAK,EAAE,CAAC,CAAC,KAAK;6BACf,CAAC;wBANF,CAME;wBACJ,OAAO,EAAE,IAAI;qBACd;oBACD,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;iBACzB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEpB,IAAM,IAAI,GAAW,IAAI,CAAC,OAAO,CAAC,OAAO;gBACvC,CAAC,CAAC,kBAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAE;gBACnC,CAAC,CAAC,OAAO,CAAC;YACZ,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK;gBACzB,CAAC,CAAC,IAAI,CAAC,QAAQ;qBACV,GAAG,CAAC,UAAC,MAAM;oBACV,OAAA,MAAM,CAAC,QAAQ;wBACb,CAAC,CAAC,MAAM,CAAC,UAAU;wBACnB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,MAAM,CAAC,UAAU,EACjB,iBAAiB,CAAC;4BAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;4BACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK;gCAC3B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;gCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;4BACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC;4BACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,KAAK,EAAE,IAAI,CAAC,KAAK;yBAClB,CAAC,CACH;gBAdL,CAcK,CACN;qBACA,MAAM,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC;gBACxC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,IAAI,CAAC,QAAQ;qBACV,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,UAAU,EAAjB,CAAiB,CAAC;qBAClC,MAAM,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CAAC,EACrC,iBAAiB,CAAC;oBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK;wBAC3B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oBACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC;oBACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB,CAAC,CACH,CAAC;YACN,aAAa;YACb,2CAA2C;YAC3C,aAAa;YACb,8DAA8D;YAC9D,YAAY;YACZ,4BAA4B;YAC5B,gCAAgC;YAChC,yDAAyD;YACzD,6CAA6C;YAC7C,kDAAkD;YAClD,uDAAuD;YACvD,gDAAgD;YAChD,6BAA6B;YAC7B,mBAAmB;YACnB,uDAAuD;YACvD,8BAA8B;YAC9B,2BAA2B;YAC3B,mBAAmB;YACnB,gBAAgB;YAChB,UAAU;YACV,wBAAwB;YACxB,sCAAsC;YACtC,iDAAiD;YACjD,UAAU;QACZ,CAAC;IAhFD,CAgFC,CAAC;IAEJ,IAAM,aAAa,GAAG,UAAC,KAMtB;QACC,OAAA,IAAA,2BAAY,EAAC;YACX,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;YAC3B,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB;YACnC,QAAQ,EAAE,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;YACjC,WAAW,EAAE,UAAC,KAAK;gBACjB,OAAA,iBAAiB,CAAC;oBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,SAAS,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAC1B,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CACrC,CACF;oBACD,QAAQ,EAAE,WAAW;oBACrB,KAAK,OAAA;iBACN,CAAC;YAZF,CAYE;YACJ,IAAI,EAAE,UAAC,IAAI;gBACT,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAC9C,EACD,IAAI,CACL;YAND,CAMC;SACJ,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;IA/BF,CA+BE,CAAC;IAEL,IAAM,MAAM,GAAG,UAAC,KAIf,IAAwC,OAAA,CAAC;QACxC,MAAM,EAAE,UAAC,IAAI;YACX,OAAA,aAAa,CAAC;gBACZ,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC;QANF,CAME;QACJ,KAAK,EAAE,UAAC,KAAK;YACX,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAC9C,SAAS,EACT,CAAC,KAAK,CAAC,KAAK,CAAC,CACd;QAJD,CAIC;QACH,OAAO,EAAE,UAAC,IAAI;;YACZ,OAAA,iBAAiB,CAAC;gBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,aAAa,EACX,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,MAAK,KAAK;oBAC1B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;oBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;gBACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAC/B,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,EAAC,CAAC,CAAC,kBAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC,OAAO,CACpE;gBACD,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAA;SAAA;QACJ,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;YACvB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,UAAC,IAAI;gBACH,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,IAAI,CAAC,SAAS,EACd,iBAAiB,CAAC;oBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,aAAa,EACX,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK;wBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oBACnD,IAAI,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;oBAC1C,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB,CAAC,CACH;YAZD,CAYC;KACR,CAAC,EA5CuC,CA4CvC,CAAC;IAEH,IAAM,iBAAiB,GAAG,UAAC,KAM1B;;QACC,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE;YACtE,MAAA,KAAK,CAAC,aAAa,mCAAI,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;YACpE,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC;gBACE,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;gBACvD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,UAAU,EACV,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAC/C;gBACD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;aAC1D,EACD,IAAI,CACL;YACD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC;SAC7C,CAAC,CAAA;KAAA,CAAC;IAEL,IAAiB,QAAQ,CAqCxB;IArCD,WAAiB,QAAQ;QACV,mBAAU,GAAG,cAAM,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAA3C,CAA2C,CAAC;QAC/D,kBAAS,GAAG,UAAC,IAA+B;YACvD,OAAA,qCAAiB,CAAC,SAAS,CACzB,cAAc,EACd,SAAA,IAAI,EAAE,EACN,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAC5D;QAJD,CAIC,CAAC;QACS,aAAI,GAAG;YAClB,OAAA,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC/B,SAAS,EACT;gBACE,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CACnC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAChC,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CACxC,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACtC,EACD,SAAS,EACT,KAAK,CACN,EACD,SAAS,CACV;aACF,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,CACV,CACF;QA3BD,CA2BC,CAAC;IACN,CAAC,EArCgB,QAAQ,GAAR,yBAAQ,KAAR,yBAAQ,QAqCxB;AACH,CAAC,EAjbgB,gBAAgB,gCAAhB,gBAAgB,QAibhC"}
@@ -15,7 +15,11 @@ export declare namespace CheckerProgrammer {
15
15
  equals: boolean;
16
16
  numeric: boolean;
17
17
  addition?: () => ts.Statement[];
18
- decoder?: () => FeatureProgrammer.Decoder<Metadata, ts.Expression>;
18
+ decoder?: (props: {
19
+ metadata: Metadata;
20
+ input: ts.Expression;
21
+ explore: IExplore;
22
+ }) => ts.Expression;
19
23
  combiner: IConfig.Combiner;
20
24
  atomist: (props: {
21
25
  entry: ICheckEntry;
@@ -85,7 +85,13 @@ var CheckerProgrammer;
85
85
  return FeatureProgrammer_1.FeatureProgrammer.compose(__assign(__assign({}, props), { config: configure(props) }));
86
86
  };
87
87
  CheckerProgrammer.write = function (props) {
88
- return FeatureProgrammer_1.FeatureProgrammer.write(props.context)(configure(props))(props.importer)(props.type, props.name);
88
+ return FeatureProgrammer_1.FeatureProgrammer.write({
89
+ config: configure(props),
90
+ context: props.context,
91
+ importer: props.importer,
92
+ type: props.type,
93
+ name: props.name,
94
+ });
89
95
  };
90
96
  CheckerProgrammer.write_object_functions = function (props) {
91
97
  return FeatureProgrammer_1.FeatureProgrammer.write_object_functions({
@@ -95,18 +101,25 @@ var CheckerProgrammer;
95
101
  });
96
102
  };
97
103
  CheckerProgrammer.write_union_functions = function (props) {
98
- return FeatureProgrammer_1.FeatureProgrammer.write_union_functions(configure({
99
- context: props.context,
100
- config: __assign(__assign({}, props.config), { numeric: false }),
101
- importer: props.importer,
102
- }))(props.collection);
104
+ return FeatureProgrammer_1.FeatureProgrammer.write_union_functions({
105
+ config: configure({
106
+ context: props.context,
107
+ config: __assign(__assign({}, props.config), { numeric: false }),
108
+ importer: props.importer,
109
+ }),
110
+ collection: props.collection,
111
+ });
103
112
  };
104
113
  CheckerProgrammer.write_array_functions = function (props) {
105
114
  return props.collection
106
115
  .arrays()
107
116
  .filter(function (a) { return a.recursive; })
108
117
  .map(function (type, i) {
109
- return StatementFactory_1.StatementFactory.constant("".concat(props.config.prefix, "a").concat(i), typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations(props.config)(TypeFactory_1.TypeFactory.keyword("any"))(typescript_1.default.factory.createIdentifier("input")), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_array_inline(__assign(__assign({}, props), { input: typescript_1.default.factory.createIdentifier("input"), array: MetadataArray_1.MetadataArray.create({
118
+ return StatementFactory_1.StatementFactory.constant("".concat(props.config.prefix, "a").concat(i), typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
119
+ config: props.config,
120
+ type: TypeFactory_1.TypeFactory.keyword("any"),
121
+ input: typescript_1.default.factory.createIdentifier("input"),
122
+ }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_array_inline(__assign(__assign({}, props), { input: typescript_1.default.factory.createIdentifier("input"), array: MetadataArray_1.MetadataArray.create({
110
123
  type: type,
111
124
  tags: [],
112
125
  }), explore: {
@@ -122,7 +135,11 @@ var CheckerProgrammer;
122
135
  .tuples()
123
136
  .filter(function (t) { return t.recursive; })
124
137
  .map(function (tuple, i) {
125
- return StatementFactory_1.StatementFactory.constant("".concat(props.config.prefix, "t").concat(i), typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations(props.config)(TypeFactory_1.TypeFactory.keyword("any"))(typescript_1.default.factory.createIdentifier("input")), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_tuple_inline({
138
+ return StatementFactory_1.StatementFactory.constant("".concat(props.config.prefix, "t").concat(i), typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
139
+ config: props.config,
140
+ type: TypeFactory_1.TypeFactory.keyword("any"),
141
+ input: typescript_1.default.factory.createIdentifier("input"),
142
+ }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_tuple_inline({
126
143
  config: props.config,
127
144
  context: props.context,
128
145
  importer: props.importer,
@@ -137,76 +154,73 @@ var CheckerProgrammer;
137
154
  })));
138
155
  });
139
156
  };
140
- var configure = function (props) {
141
- var _a;
142
- return ({
143
- types: {
144
- input: function () { return TypeFactory_1.TypeFactory.keyword("any"); },
145
- output: function (type, name) {
146
- return typescript_1.default.factory.createTypePredicateNode(undefined, "input", typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(props.context.checker)(type)));
147
- },
157
+ var configure = function (props) { return ({
158
+ types: {
159
+ input: function () { return TypeFactory_1.TypeFactory.keyword("any"); },
160
+ output: function (type, name) {
161
+ return typescript_1.default.factory.createTypePredicateNode(undefined, "input", typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(props.context.checker)(type)));
148
162
  },
149
- trace: props.config.trace,
150
- path: props.config.path,
151
- prefix: props.config.prefix,
152
- initializer: function (context) { return function (importer) { return function (type) {
153
- var collection = new MetadataCollection_1.MetadataCollection();
154
- var result = MetadataFactory_1.MetadataFactory.analyze({
155
- checker: context.checker,
156
- transformer: context.transformer,
157
- options: {
158
- escape: false,
159
- constant: true,
160
- absorb: true,
161
- },
162
- collection: collection,
163
- type: type,
163
+ },
164
+ trace: props.config.trace,
165
+ path: props.config.path,
166
+ prefix: props.config.prefix,
167
+ initializer: function (next) {
168
+ var collection = new MetadataCollection_1.MetadataCollection();
169
+ var result = MetadataFactory_1.MetadataFactory.analyze({
170
+ checker: next.context.checker,
171
+ transformer: next.context.transformer,
172
+ options: {
173
+ escape: false,
174
+ constant: true,
175
+ absorb: true,
176
+ },
177
+ collection: collection,
178
+ type: next.type,
179
+ });
180
+ if (result.success === false)
181
+ throw TransformerError_1.TransformerError.from("typia.".concat(next.importer.method))(result.errors);
182
+ return [collection, result.data];
183
+ },
184
+ addition: props.config.addition,
185
+ decoder: props.config.decoder
186
+ ? function (next) { return props.config.decoder(next); }
187
+ : function (next) {
188
+ return CheckerProgrammer.decode({
189
+ context: props.context,
190
+ config: props.config,
191
+ importer: props.importer,
192
+ input: next.input,
193
+ metadata: next.metadata,
194
+ explore: next.explore,
164
195
  });
165
- if (result.success === false)
166
- throw TransformerError_1.TransformerError.from("typia.".concat(importer.method))(result.errors);
167
- return [collection, result.data];
168
- }; }; },
169
- addition: props.config.addition,
170
- decoder: function () {
171
- return props.config.decoder
172
- ? function (input, metadata, explore) {
173
- return props.config.decoder()(input, metadata, explore);
174
- }
175
- : function (input, metadata, explore) {
176
- return CheckerProgrammer.decode({
177
- context: props.context,
178
- config: props.config,
179
- importer: props.importer,
180
- input: input,
181
- metadata: metadata,
182
- explore: explore,
183
- });
184
- };
185
196
  },
186
- objector: {
187
- checker: function () { return function (input, metadata, explore) {
188
- var _a, _b, _c;
189
- return (_c = (_b = (_a = props.config).decoder) === null || _b === void 0 ? void 0 : _b.call(_a)(input, metadata, explore)) !== null && _c !== void 0 ? _c : CheckerProgrammer.decode({
197
+ objector: {
198
+ checker: props.config.decoder
199
+ ? function (next) { return props.config.decoder(next); }
200
+ : function (next) {
201
+ return CheckerProgrammer.decode({
190
202
  context: props.context,
191
203
  config: props.config,
192
204
  importer: props.importer,
193
- input: input,
194
- metadata: metadata,
195
- explore: explore,
196
- });
197
- }; },
198
- decoder: function () { return function (input, object, explore) {
199
- return CheckerProgrammer.decode_object({
200
- config: props.config,
201
- importer: props.importer,
202
- input: input,
203
- object: object,
204
- explore: explore,
205
+ input: next.input,
206
+ metadata: next.metadata,
207
+ explore: next.explore,
205
208
  });
206
- }; },
207
- joiner: props.config.joiner.object,
208
- unionizer: props.config.equals
209
- ? (0, decode_union_object_1.decode_union_object)(function (input, object, explore) {
209
+ },
210
+ decoder: function (next) {
211
+ return CheckerProgrammer.decode_object({
212
+ config: props.config,
213
+ importer: props.importer,
214
+ input: next.input,
215
+ object: next.object,
216
+ explore: next.explore,
217
+ });
218
+ },
219
+ joiner: props.config.joiner.object,
220
+ unionizer: props.config.equals
221
+ ? function (next) {
222
+ var _a;
223
+ return (0, decode_union_object_1.decode_union_object)(function (input, object, explore) {
210
224
  return CheckerProgrammer.decode_object({
211
225
  config: props.config,
212
226
  importer: props.importer,
@@ -227,60 +241,53 @@ var CheckerProgrammer;
227
241
  input: input,
228
242
  expected: expected,
229
243
  }));
230
- })
231
- : function (input, targets, explore) {
232
- return props.config.combiner({
233
- explore: explore,
234
- logic: "or",
235
- input: input,
236
- binaries: targets.map(function (object) { return ({
237
- expression: CheckerProgrammer.decode_object({
238
- config: props.config,
239
- importer: props.importer,
240
- input: input,
241
- object: object,
242
- explore: explore,
243
- }),
244
- combined: true,
245
- }); }),
246
- expected: "(".concat(targets.map(function (t) { return t.name; }).join(" | "), ")"),
247
- });
248
- },
249
- failure: function (input, expected) {
250
- return typescript_1.default.factory.createReturnStatement(props.config.joiner.failure({
251
- input: input,
252
- expected: expected,
253
- }));
244
+ })(next.input, next.objects, next.explore);
245
+ }
246
+ : function (next) {
247
+ return props.config.combiner({
248
+ logic: "or",
249
+ explore: next.explore,
250
+ input: next.input,
251
+ binaries: next.objects.map(function (object) { return ({
252
+ expression: CheckerProgrammer.decode_object({
253
+ config: props.config,
254
+ importer: props.importer,
255
+ object: object,
256
+ input: next.input,
257
+ explore: next.explore,
258
+ }),
259
+ combined: true,
260
+ }); }),
261
+ expected: "(".concat(next.objects.map(function (t) { return t.name; }).join(" | "), ")"),
262
+ });
254
263
  },
255
- is: props.config.joiner.is,
256
- required: props.config.joiner.required,
257
- full: props.config.joiner.full
258
- ? function (condition) { return function (input, expected, explore) {
259
- return props.config.joiner.full({
260
- condition: condition,
261
- input: input,
262
- expected: expected,
263
- explore: explore,
264
- });
265
- }; }
266
- : undefined,
267
- type: TypeFactory_1.TypeFactory.keyword("boolean"),
264
+ failure: function (next) {
265
+ return typescript_1.default.factory.createReturnStatement(props.config.joiner.failure(next));
268
266
  },
269
- generator: {
270
- unions: props.config.numeric
271
- ? function () {
272
- return FeatureProgrammer_1.FeatureProgrammer.write_union_functions(configure(__assign(__assign({}, props), { config: __assign(__assign({}, props.config), { numeric: false }) })));
273
- }
274
- : undefined,
275
- arrays: function () { return function (collection) {
276
- return CheckerProgrammer.write_array_functions(__assign(__assign({}, props), { collection: collection }));
277
- }; },
278
- tuples: function () { return function (collection) {
279
- return CheckerProgrammer.write_tuple_functions(__assign(__assign({}, props), { collection: collection }));
280
- }; },
267
+ is: props.config.joiner.is,
268
+ required: props.config.joiner.required,
269
+ full: props.config.joiner.full
270
+ ? function (next) { return props.config.joiner.full(next); }
271
+ : undefined,
272
+ type: TypeFactory_1.TypeFactory.keyword("boolean"),
273
+ },
274
+ generator: {
275
+ unions: props.config.numeric
276
+ ? function (collection) {
277
+ return FeatureProgrammer_1.FeatureProgrammer.write_union_functions({
278
+ config: configure(__assign(__assign({}, props), { config: __assign(__assign({}, props.config), { numeric: false }) })),
279
+ collection: collection,
280
+ });
281
+ }
282
+ : undefined,
283
+ arrays: function (collection) {
284
+ return CheckerProgrammer.write_array_functions(__assign(__assign({}, props), { collection: collection }));
281
285
  },
282
- });
283
- };
286
+ tuples: function (collection) {
287
+ return CheckerProgrammer.write_tuple_functions(__assign(__assign({}, props), { collection: collection }));
288
+ },
289
+ },
290
+ }); };
284
291
  /* -----------------------------------------------------------
285
292
  DECODERS
286
293
  ----------------------------------------------------------- */
@@ -739,13 +746,17 @@ var CheckerProgrammer;
739
746
  CheckerProgrammer.decode_object = function (props) {
740
747
  var _a;
741
748
  (_a = props.object).validated || (_a.validated = true);
742
- return FeatureProgrammer_1.FeatureProgrammer.decode_object(props.config)(props.importer)(props.input, props.object, props.explore);
749
+ return FeatureProgrammer_1.FeatureProgrammer.decode_object(props);
743
750
  };
744
751
  var decode_array = function (props) {
745
752
  if (props.array.type.recursive === false)
746
753
  return decode_array_inline(props);
747
754
  var arrayExplore = __assign(__assign({}, props.explore), { source: "function", from: "array" });
748
- return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.importer.useLocal("".concat(props.config.prefix, "a").concat(props.array.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props.config)(__assign(__assign({}, arrayExplore), { source: "function", from: "array" }))(props.input)), props.config.joiner.failure({
755
+ return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.importer.useLocal("".concat(props.config.prefix, "a").concat(props.array.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
756
+ config: props.config,
757
+ explore: __assign(__assign({}, arrayExplore), { source: "function", from: "array" }),
758
+ input: props.input,
759
+ })), props.config.joiner.failure({
749
760
  input: props.input,
750
761
  expected: props.array.type.name,
751
762
  explore: arrayExplore,
@@ -754,13 +765,20 @@ var CheckerProgrammer;
754
765
  var decode_array_inline = function (props) {
755
766
  var length = (0, check_array_length_1.check_array_length)(props.context)(props.array)(props.input);
756
767
  var main = FeatureProgrammer_1.FeatureProgrammer.decode_array({
757
- prefix: props.config.prefix,
758
- trace: props.config.trace,
759
- path: props.config.path,
760
- decoder: function () { return function (input, metadata, explore) {
761
- return CheckerProgrammer.decode(__assign(__assign({}, props), { input: input, metadata: metadata, explore: explore }));
762
- }; },
763
- })(props.importer)(props.config.joiner.array)(props.input, props.array, props.explore);
768
+ config: {
769
+ prefix: props.config.prefix,
770
+ trace: props.config.trace,
771
+ path: props.config.path,
772
+ decoder: function (next) {
773
+ return CheckerProgrammer.decode(__assign(__assign({}, props), next));
774
+ },
775
+ },
776
+ importer: props.importer,
777
+ combiner: props.config.joiner.array,
778
+ array: props.array,
779
+ input: props.input,
780
+ explore: props.explore,
781
+ });
764
782
  return length.expression === null && length.conditions.length === 0
765
783
  ? main
766
784
  : typescript_1.default.factory.createLogicalAnd(props.config.atomist({
@@ -773,7 +791,11 @@ var CheckerProgrammer;
773
791
  if (props.tuple.type.recursive === false)
774
792
  return decode_tuple_inline(__assign(__assign({}, props), { tuple: props.tuple.type }));
775
793
  var arrayExplore = __assign(__assign({}, props.explore), { source: "function", from: "array" });
776
- return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.importer.useLocal("".concat(props.config.prefix, "t").concat(props.tuple.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props.config)(__assign(__assign({}, arrayExplore), { source: "function" }))(props.input)), props.config.joiner.failure({
794
+ return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.importer.useLocal("".concat(props.config.prefix, "t").concat(props.tuple.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
795
+ config: props.config,
796
+ explore: __assign(__assign({}, arrayExplore), { source: "function" }),
797
+ input: props.input,
798
+ })), props.config.joiner.failure({
777
799
  input: props.input,
778
800
  expected: props.tuple.type.name,
779
801
  explore: arrayExplore,
@@ -1091,11 +1113,15 @@ var CheckerProgrammer;
1091
1113
  var arrayExplore = __assign(__assign({}, props.explore), { source: "function", from: "array" });
1092
1114
  return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.importer.emplaceUnion(props.config.prefix, props.definitions.map(function (e) { return e.type.name; }).join(" | "), function () {
1093
1115
  return arrow({
1094
- parameters: FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations(props.config)(TypeFactory_1.TypeFactory.keyword("any"))(typescript_1.default.factory.createIdentifier("input")),
1116
+ parameters: FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
1117
+ config: props.config,
1118
+ type: TypeFactory_1.TypeFactory.keyword("any"),
1119
+ input: typescript_1.default.factory.createIdentifier("input"),
1120
+ }),
1095
1121
  explore: __assign(__assign({}, arrayExplore), { postfix: "" }),
1096
1122
  input: typescript_1.default.factory.createIdentifier("input"),
1097
1123
  });
1098
- })), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props.config)(arrayExplore)(props.input)), props.config.joiner.failure({
1124
+ })), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props)), props.config.joiner.failure({
1099
1125
  input: props.input,
1100
1126
  expected: props.definitions.map(function (e) { return e.type.name; }).join(" | "),
1101
1127
  explore: arrayExplore,
@@ -1110,7 +1136,7 @@ var CheckerProgrammer;
1110
1136
  input: props.input,
1111
1137
  explore: props.explore,
1112
1138
  })
1113
- : typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.importer.useLocal("".concat(props.config.prefix, "u").concat(props.metadata.union_index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props.config)(props.explore)(props.input));
1139
+ : typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.importer.useLocal("".concat(props.config.prefix, "u").concat(props.metadata.union_index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props));
1114
1140
  };
1115
1141
  })(CheckerProgrammer || (exports.CheckerProgrammer = CheckerProgrammer = {}));
1116
1142
  var create_add = function (props) {