typia 3.6.0-dev.20230219 → 3.6.0-dev.20230225

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 (291) hide show
  1. package/README.md +2 -2
  2. package/lib/IRandomGenerator.d.ts +8 -8
  3. package/lib/Primitive.d.ts +2 -1
  4. package/lib/executable/TypiaGenerateWizard.js +4 -4
  5. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  6. package/lib/executable/setup/ArgumentParser.js +3 -26
  7. package/lib/executable/setup/ArgumentParser.js.map +1 -1
  8. package/lib/executable/setup/FileRetriever.d.ts +5 -0
  9. package/lib/executable/setup/FileRetriever.js +109 -0
  10. package/lib/executable/setup/FileRetriever.js.map +1 -0
  11. package/lib/executable/setup/PackageManager.js +3 -17
  12. package/lib/executable/setup/PackageManager.js.map +1 -1
  13. package/lib/executable/setup/PluginConfigurator.js +2 -25
  14. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  15. package/lib/executable/typia.js +1 -1
  16. package/lib/executable/typia.js.map +1 -1
  17. package/lib/factories/TypeFactory.js +2 -1
  18. package/lib/factories/TypeFactory.js.map +1 -1
  19. package/lib/factories/TypiaFileFactory.d.ts +8 -0
  20. package/lib/{generate/TypiaGenerator.js → factories/TypiaFileFactory.js} +96 -71
  21. package/lib/factories/TypiaFileFactory.js.map +1 -0
  22. package/lib/module.d.ts +7 -7
  23. package/lib/programmers/AssertCloneProgrammer.js +2 -5
  24. package/lib/programmers/AssertCloneProgrammer.js.map +1 -1
  25. package/lib/programmers/AssertParseProgrammer.js +1 -4
  26. package/lib/programmers/AssertParseProgrammer.js.map +1 -1
  27. package/lib/programmers/AssertProgrammer.js +13 -12
  28. package/lib/programmers/AssertProgrammer.js.map +1 -1
  29. package/lib/programmers/AssertPruneProgrammer.js +1 -2
  30. package/lib/programmers/AssertPruneProgrammer.js.map +1 -1
  31. package/lib/programmers/AssertStringifyProgrammer.js +1 -2
  32. package/lib/programmers/AssertStringifyProgrammer.js.map +1 -1
  33. package/lib/programmers/CheckerProgrammer.d.ts +2 -2
  34. package/lib/programmers/CheckerProgrammer.js +16 -16
  35. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  36. package/lib/programmers/CloneProgrammer.d.ts +1 -1
  37. package/lib/programmers/CloneProgrammer.js +26 -18
  38. package/lib/programmers/CloneProgrammer.js.map +1 -1
  39. package/lib/programmers/FeatureProgrammer.d.ts +9 -5
  40. package/lib/programmers/FeatureProgrammer.js +39 -32
  41. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  42. package/lib/programmers/IsCloneProgrammer.js +1 -4
  43. package/lib/programmers/IsCloneProgrammer.js.map +1 -1
  44. package/lib/programmers/IsParseProgrammer.js +1 -4
  45. package/lib/programmers/IsParseProgrammer.js.map +1 -1
  46. package/lib/programmers/IsProgrammer.d.ts +1 -1
  47. package/lib/programmers/IsProgrammer.js +1 -1
  48. package/lib/programmers/IsProgrammer.js.map +1 -1
  49. package/lib/programmers/IsPruneProgrammer.js +1 -2
  50. package/lib/programmers/IsPruneProgrammer.js.map +1 -1
  51. package/lib/programmers/IsStringifyProgrammer.js +1 -2
  52. package/lib/programmers/IsStringifyProgrammer.js.map +1 -1
  53. package/lib/programmers/PruneProgrammer.d.ts +1 -1
  54. package/lib/programmers/PruneProgrammer.js +17 -12
  55. package/lib/programmers/PruneProgrammer.js.map +1 -1
  56. package/lib/programmers/RandomProgrammer.js +64 -58
  57. package/lib/programmers/RandomProgrammer.js.map +1 -1
  58. package/lib/programmers/StringifyProgrammer.d.ts +1 -1
  59. package/lib/programmers/StringifyProgrammer.js +17 -12
  60. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  61. package/lib/programmers/ValidateCloneProgrammer.js +1 -6
  62. package/lib/programmers/ValidateCloneProgrammer.js.map +1 -1
  63. package/lib/programmers/ValidateParseProgrammer.js +1 -6
  64. package/lib/programmers/ValidateParseProgrammer.js.map +1 -1
  65. package/lib/programmers/ValidateProgrammer.js +10 -15
  66. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  67. package/lib/programmers/ValidatePruneProgrammer.js +1 -4
  68. package/lib/programmers/ValidatePruneProgrammer.js.map +1 -1
  69. package/lib/programmers/ValidateStringifyProgrammer.js +2 -5
  70. package/lib/programmers/ValidateStringifyProgrammer.js.map +1 -1
  71. package/lib/programmers/helpers/CloneJoiner.js +5 -4
  72. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  73. package/lib/programmers/helpers/FunctionImporeter.d.ts +4 -0
  74. package/lib/programmers/helpers/FunctionImporeter.js +12 -0
  75. package/lib/programmers/helpers/FunctionImporeter.js.map +1 -1
  76. package/lib/programmers/helpers/RandomJoiner.d.ts +2 -2
  77. package/lib/programmers/helpers/RandomJoiner.js +60 -49
  78. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  79. package/lib/programmers/helpers/RandomRanger.d.ts +1 -1
  80. package/lib/programmers/helpers/RandomRanger.js +22 -20
  81. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  82. package/lib/programmers/internal/check_union_array_like.js +6 -2
  83. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  84. package/lib/programmers/internal/stringify_dynamic_properties.js +1 -1
  85. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  86. package/lib/transformers/ImportTransformer.d.ts +4 -0
  87. package/lib/transformers/ImportTransformer.js +51 -0
  88. package/lib/transformers/ImportTransformer.js.map +1 -0
  89. package/package.json +2 -2
  90. package/src/IRandomGenerator.ts +16 -16
  91. package/src/IValidation.ts +21 -21
  92. package/src/Primitive.ts +104 -82
  93. package/src/TypeGuardError.ts +36 -36
  94. package/src/executable/TypiaGenerateWizard.ts +87 -86
  95. package/src/executable/TypiaSetupWizard.ts +142 -142
  96. package/src/executable/setup/ArgumentParser.ts +91 -89
  97. package/src/executable/setup/CommandExecutor.ts +8 -8
  98. package/src/executable/setup/FileRetriever.ts +33 -0
  99. package/src/executable/setup/PackageManager.ts +92 -99
  100. package/src/executable/setup/PluginConfigurator.ts +99 -97
  101. package/src/executable/typia.ts +38 -38
  102. package/src/factories/CommentFactory.ts +10 -10
  103. package/src/factories/ExpressionFactory.ts +77 -77
  104. package/src/factories/IdentifierFactory.ts +73 -73
  105. package/src/factories/LiteralFactory.ts +44 -44
  106. package/src/factories/MetadataCollection.ts +122 -122
  107. package/src/factories/MetadataFactory.ts +51 -51
  108. package/src/factories/MetadataTagFactory.ts +265 -265
  109. package/src/factories/StatementFactory.ts +60 -60
  110. package/src/factories/TemplateFactory.ts +56 -56
  111. package/src/factories/TypeFactory.ts +129 -129
  112. package/src/factories/TypiaFileFactory.ts +117 -0
  113. package/src/factories/ValueFactory.ts +12 -12
  114. package/src/factories/internal/metadata/MetadataHelper.ts +12 -12
  115. package/src/factories/internal/metadata/emplace_metadata_object.ts +140 -140
  116. package/src/factories/internal/metadata/explore_metadata.ts +92 -92
  117. package/src/factories/internal/metadata/iterate_metadata.ts +80 -80
  118. package/src/factories/internal/metadata/iterate_metadata_array.ts +29 -29
  119. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
  120. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
  121. package/src/factories/internal/metadata/iterate_metadata_constant.ts +58 -58
  122. package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
  123. package/src/factories/internal/metadata/iterate_metadata_native.ts +222 -222
  124. package/src/factories/internal/metadata/iterate_metadata_object.ts +48 -48
  125. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +27 -27
  126. package/src/factories/internal/metadata/iterate_metadata_set.ts +33 -33
  127. package/src/factories/internal/metadata/iterate_metadata_template.ts +38 -38
  128. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +45 -45
  129. package/src/factories/internal/metadata/iterate_metadata_union.ts +59 -59
  130. package/src/functional/$any.ts +3 -3
  131. package/src/functional/$every.ts +11 -11
  132. package/src/functional/$guard.ts +35 -35
  133. package/src/functional/$is_between.ts +7 -7
  134. package/src/functional/$is_email.ts +5 -5
  135. package/src/functional/$is_ipv4.ts +5 -5
  136. package/src/functional/$is_ipv6.ts +5 -5
  137. package/src/functional/$is_url.ts +5 -5
  138. package/src/functional/$is_uuid.ts +5 -5
  139. package/src/functional/$join.ts +50 -50
  140. package/src/functional/$number.ts +12 -12
  141. package/src/functional/$report.ts +15 -15
  142. package/src/functional/$rest.ts +3 -3
  143. package/src/functional/$string.ts +37 -37
  144. package/src/functional/$tail.ts +6 -6
  145. package/src/functional/Namespace.ts +121 -121
  146. package/src/index.ts +4 -4
  147. package/src/metadata/IJsDocTagInfo.ts +10 -10
  148. package/src/metadata/IMetadata.ts +25 -25
  149. package/src/metadata/IMetadataApplication.ts +7 -7
  150. package/src/metadata/IMetadataConstant.ts +16 -16
  151. package/src/metadata/IMetadataEntry.ts +6 -6
  152. package/src/metadata/IMetadataObject.ts +29 -29
  153. package/src/metadata/IMetadataProperty.ts +11 -11
  154. package/src/metadata/IMetadataTag.ts +113 -113
  155. package/src/metadata/Metadata.ts +534 -534
  156. package/src/metadata/MetadataConstant.ts +3 -3
  157. package/src/metadata/MetadataObject.ts +131 -131
  158. package/src/metadata/MetadataProperty.ts +64 -64
  159. package/src/module.ts +1946 -1946
  160. package/src/programmers/ApplicationProgrammer.ts +55 -55
  161. package/src/programmers/AssertCloneProgrammer.ts +71 -79
  162. package/src/programmers/AssertParseProgrammer.ts +66 -67
  163. package/src/programmers/AssertProgrammer.ts +232 -248
  164. package/src/programmers/AssertPruneProgrammer.ts +67 -66
  165. package/src/programmers/AssertStringifyProgrammer.ts +71 -75
  166. package/src/programmers/CheckerProgrammer.ts +892 -883
  167. package/src/programmers/CloneProgrammer.ts +387 -365
  168. package/src/programmers/FeatureProgrammer.ts +505 -490
  169. package/src/programmers/IsCloneProgrammer.ts +80 -81
  170. package/src/programmers/IsParseProgrammer.ts +75 -76
  171. package/src/programmers/IsProgrammer.ts +200 -200
  172. package/src/programmers/IsPruneProgrammer.ts +75 -77
  173. package/src/programmers/IsStringifyProgrammer.ts +80 -82
  174. package/src/programmers/PruneProgrammer.ts +341 -330
  175. package/src/programmers/RandomProgrammer.ts +392 -381
  176. package/src/programmers/StringifyProgrammer.ts +795 -784
  177. package/src/programmers/ValidateCloneProgrammer.ts +91 -94
  178. package/src/programmers/ValidateParseProgrammer.ts +70 -73
  179. package/src/programmers/ValidateProgrammer.ts +267 -277
  180. package/src/programmers/ValidatePruneProgrammer.ts +84 -85
  181. package/src/programmers/ValidateStringifyProgrammer.ts +88 -92
  182. package/src/programmers/helpers/AtomicPredicator.ts +31 -31
  183. package/src/programmers/helpers/CloneJoiner.ts +134 -124
  184. package/src/programmers/helpers/FunctionImporeter.ts +55 -40
  185. package/src/programmers/helpers/IExpressionEntry.ts +12 -12
  186. package/src/programmers/helpers/OptionPredicator.ts +19 -19
  187. package/src/programmers/helpers/PruneJoiner.ts +52 -52
  188. package/src/programmers/helpers/RandomJoiner.ts +149 -140
  189. package/src/programmers/helpers/RandomRanger.ts +216 -215
  190. package/src/programmers/helpers/StringifyJoinder.ts +114 -114
  191. package/src/programmers/helpers/StringifyPredicator.ts +18 -18
  192. package/src/programmers/helpers/UnionExplorer.ts +274 -274
  193. package/src/programmers/helpers/UnionPredicator.ts +81 -81
  194. package/src/programmers/internal/application_array.ts +37 -37
  195. package/src/programmers/internal/application_boolean.ts +17 -17
  196. package/src/programmers/internal/application_constant.ts +29 -29
  197. package/src/programmers/internal/application_default.ts +17 -17
  198. package/src/programmers/internal/application_default_string.ts +32 -32
  199. package/src/programmers/internal/application_native.ts +29 -29
  200. package/src/programmers/internal/application_number.ts +70 -70
  201. package/src/programmers/internal/application_object.ts +153 -153
  202. package/src/programmers/internal/application_schema.ts +184 -184
  203. package/src/programmers/internal/application_string.ts +41 -41
  204. package/src/programmers/internal/application_templates.ts +27 -27
  205. package/src/programmers/internal/application_tuple.ts +29 -29
  206. package/src/programmers/internal/check_array.ts +22 -22
  207. package/src/programmers/internal/check_array_length.ts +44 -44
  208. package/src/programmers/internal/check_bigint.ts +64 -64
  209. package/src/programmers/internal/check_dynamic_properties.ts +197 -197
  210. package/src/programmers/internal/check_everything.ts +28 -28
  211. package/src/programmers/internal/check_native.ts +21 -21
  212. package/src/programmers/internal/check_number.ts +145 -145
  213. package/src/programmers/internal/check_object.ts +48 -48
  214. package/src/programmers/internal/check_string.ts +24 -24
  215. package/src/programmers/internal/check_string_tags.ts +63 -63
  216. package/src/programmers/internal/check_template.ts +50 -50
  217. package/src/programmers/internal/check_union_array_like.ts +260 -250
  218. package/src/programmers/internal/check_union_tuple.ts +33 -33
  219. package/src/programmers/internal/decode_union_object.ts +73 -73
  220. package/src/programmers/internal/feature_object_entries.ts +59 -59
  221. package/src/programmers/internal/metadata_to_pattern.ts +31 -31
  222. package/src/programmers/internal/prune_object_properties.ts +60 -60
  223. package/src/programmers/internal/stringify_dynamic_properties.ts +165 -164
  224. package/src/programmers/internal/stringify_native.ts +8 -8
  225. package/src/programmers/internal/stringify_regular_properties.ts +81 -81
  226. package/src/programmers/internal/template_to_pattern.ts +15 -15
  227. package/src/schemas/IJsonApplication.ts +9 -9
  228. package/src/schemas/IJsonComponents.ts +26 -26
  229. package/src/schemas/IJsonSchema.ts +127 -127
  230. package/src/transform.ts +21 -21
  231. package/src/transformers/CallExpressionTransformer.ts +172 -172
  232. package/src/transformers/ExpressionWithArgumentTransformer.ts +66 -66
  233. package/src/transformers/FileTransformer.ts +49 -49
  234. package/src/transformers/IProject.ts +11 -11
  235. package/src/transformers/ITransformOptions.ts +62 -62
  236. package/src/transformers/ImportTransformer.ts +60 -0
  237. package/src/transformers/NodeTransformer.ts +19 -19
  238. package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +120 -120
  239. package/src/transformers/features/miscellaneous/AssertCloneTransformer.ts +38 -38
  240. package/src/transformers/features/miscellaneous/AssertPruneTransformer.ts +38 -38
  241. package/src/transformers/features/miscellaneous/CloneTransformer.ts +46 -46
  242. package/src/transformers/features/miscellaneous/CreateAssertCloneTransformer.ts +32 -32
  243. package/src/transformers/features/miscellaneous/CreateAssertPruneTransformer.ts +32 -32
  244. package/src/transformers/features/miscellaneous/CreateCloneTransformer.ts +31 -31
  245. package/src/transformers/features/miscellaneous/CreateIsCloneTransformer.ts +32 -32
  246. package/src/transformers/features/miscellaneous/CreateIsPruneTransformer.ts +32 -32
  247. package/src/transformers/features/miscellaneous/CreatePruneTransformer.ts +31 -31
  248. package/src/transformers/features/miscellaneous/CreateRandomGenerator.ts +39 -39
  249. package/src/transformers/features/miscellaneous/CreateValidateCloneTransformer.ts +32 -32
  250. package/src/transformers/features/miscellaneous/CreateValidatePruneTransformer.ts +32 -32
  251. package/src/transformers/features/miscellaneous/IsCloneTransformer.ts +38 -38
  252. package/src/transformers/features/miscellaneous/IsPruneTransformer.ts +38 -38
  253. package/src/transformers/features/miscellaneous/MetadataTransformer.ts +55 -55
  254. package/src/transformers/features/miscellaneous/PruneTransformer.ts +46 -46
  255. package/src/transformers/features/miscellaneous/RandomTransformer.ts +45 -45
  256. package/src/transformers/features/miscellaneous/ValidateCloneTransformer.ts +38 -38
  257. package/src/transformers/features/miscellaneous/ValidatePruneTransformer.ts +38 -38
  258. package/src/transformers/features/parsers/AssertParseTransformer.ts +36 -36
  259. package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +32 -32
  260. package/src/transformers/features/parsers/CreateIsParseTransformer.ts +32 -32
  261. package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +32 -32
  262. package/src/transformers/features/parsers/IsParseTransformer.ts +36 -36
  263. package/src/transformers/features/parsers/ValidateParseTransformer.ts +36 -36
  264. package/src/transformers/features/stringifiers/AssertStringifyTransformer.ts +38 -38
  265. package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +32 -32
  266. package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +32 -32
  267. package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +31 -31
  268. package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +32 -32
  269. package/src/transformers/features/stringifiers/IsStringifyTransformer.ts +38 -38
  270. package/src/transformers/features/stringifiers/StringifyTransformer.ts +46 -46
  271. package/src/transformers/features/stringifiers/ValidateStringifyTransformer.ts +38 -38
  272. package/src/transformers/features/validators/AssertTransformer.ts +43 -43
  273. package/src/transformers/features/validators/CreateAssertTransformer.ts +35 -35
  274. package/src/transformers/features/validators/CreateIsTransformer.ts +35 -35
  275. package/src/transformers/features/validators/CreateValidateTransformer.ts +35 -35
  276. package/src/transformers/features/validators/IsTransformer.ts +43 -43
  277. package/src/transformers/features/validators/ValidateTransformer.ts +43 -43
  278. package/src/typings/Atomic.ts +17 -17
  279. package/src/typings/ClassProperties.ts +5 -5
  280. package/src/typings/OmitNever.ts +3 -3
  281. package/src/typings/SpecialFields.ts +3 -3
  282. package/src/typings/Writable.ts +11 -11
  283. package/src/utils/ArrayUtil.ts +49 -49
  284. package/src/utils/Escaper.ts +50 -50
  285. package/src/utils/MapUtil.ts +14 -14
  286. package/src/utils/PatternUtil.ts +30 -30
  287. package/src/utils/RandomGenerator.ts +90 -90
  288. package/src/utils/Singleton.ts +17 -17
  289. package/lib/generate/TypiaGenerator.d.ts +0 -8
  290. package/lib/generate/TypiaGenerator.js.map +0 -1
  291. package/src/generate/TypiaGenerator.ts +0 -126
@@ -1 +1 @@
1
- {"version":3,"file":"StringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/StringifyProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/StringifyProgrammer.ts"],"names":[],"mappings":"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"}
@@ -25,14 +25,9 @@ var ValidateCloneProgrammer;
25
25
  (function (ValidateCloneProgrammer) {
26
26
  ValidateCloneProgrammer.generate = function (project, modulo) {
27
27
  return function (type) {
28
- var _a;
29
28
  return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
30
29
  IdentifierFactory_1.IdentifierFactory.parameter("input", TypeFactory_1.TypeFactory.keyword("any")),
31
- ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation", [
32
- typescript_1.default.factory.createTypeReferenceNode("typia.Primitive", [
33
- (_a = project.checker.typeToTypeNode(type, undefined, undefined)) !== null && _a !== void 0 ? _a : TypeFactory_1.TypeFactory.keyword("any"),
34
- ]),
35
- ]), undefined, typescript_1.default.factory.createBlock([
30
+ ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation<typia.Primitive<".concat(TypeFactory_1.TypeFactory.getFullName(project.checker, type), ">>")), undefined, typescript_1.default.factory.createBlock([
36
31
  StatementFactory_1.StatementFactory.constant("validate", ValidateProgrammer_1.ValidateProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: true }) }), modulo)(type)),
37
32
  StatementFactory_1.StatementFactory.constant("clone", CloneProgrammer_1.CloneProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }), modulo)(type)),
38
33
  StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createAsExpression(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("validate"), undefined, [typescript_1.default.factory.createIdentifier("input")]), TypeFactory_1.TypeFactory.keyword("any"))),
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateCloneProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateCloneProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,qDAAoD;AACpD,2DAA0D;AAE1D,IAAiB,uBAAuB,CAkFvC;AAlFD,WAAiB,uBAAuB;IACvB,gCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,mBAAmB,EAAE;gBACpD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,iBAAiB,EAAE;oBAClD,MAAA,OAAO,CAAC,OAAO,CAAC,cAAc,CAC1B,IAAI,EACJ,SAAS,EACT,SAAS,CACZ,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC;iBAClC,CAAC;aACL,CAAC,EACF,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,OAAO,EACP,iCAAe,CAAC,QAAQ,uBAEb,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,EACD,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL,CAAA;SAAA;IA9EL,CA8EK,CAAC;AACd,CAAC,EAlFgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAkFvC"}
1
+ {"version":3,"file":"ValidateCloneProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateCloneProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,qDAAoD;AACpD,2DAA0D;AAE1D,IAAiB,uBAAuB,CA+EvC;AA/ED,WAAiB,uBAAuB;IACvB,gCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,4CAAqC,yBAAW,CAAC,WAAW,CACxD,OAAO,CAAC,OAAO,EACf,IAAI,CACP,OAAI,CACR,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,OAAO,EACP,iCAAe,CAAC,QAAQ,uBAEb,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,EACD,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL;QA1ED,CA0EC;IA3EL,CA2EK,CAAC;AACd,CAAC,EA/EgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QA+EvC"}
@@ -24,14 +24,9 @@ var ValidateParseProgrammer;
24
24
  (function (ValidateParseProgrammer) {
25
25
  ValidateParseProgrammer.generate = function (project, modulo) {
26
26
  return function (type) {
27
- var _a;
28
27
  return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
29
28
  IdentifierFactory_1.IdentifierFactory.parameter("input", TypeFactory_1.TypeFactory.keyword("string")),
30
- ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation", [
31
- typescript_1.default.factory.createTypeReferenceNode("typia.Primitive", [
32
- (_a = project.checker.typeToTypeNode(type, undefined, undefined)) !== null && _a !== void 0 ? _a : TypeFactory_1.TypeFactory.keyword("any"),
33
- ]),
34
- ]), undefined, typescript_1.default.factory.createBlock([
29
+ ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation<typia.Primitive<".concat(TypeFactory_1.TypeFactory.getFullName(project.checker, type), ">>")), undefined, typescript_1.default.factory.createBlock([
35
30
  StatementFactory_1.StatementFactory.constant("validate", ValidateProgrammer_1.ValidateProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }), modulo)(type)),
36
31
  typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier("input"), typescript_1.default.SyntaxKind.EqualsToken, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("JSON.parse"), undefined, [typescript_1.default.factory.createIdentifier("input")]))),
37
32
  StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("validate"), undefined, [typescript_1.default.factory.createIdentifier("input")])),
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateParseProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateParseProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,2DAA0D;AAE1D,IAAiB,uBAAuB,CA8DvC;AA9DD,WAAiB,uBAAuB;IACvB,gCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAChC;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,mBAAmB,EAAE;gBACpD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,iBAAiB,EAAE;oBAClD,MAAA,OAAO,CAAC,OAAO,CAAC,cAAc,CAC1B,IAAI,EACJ,SAAS,EACT,SAAS,CACZ,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC;iBAClC,CAAC;aACL,CAAC,EACF,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC,EACzC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL,CAAA;SAAA;IA1DL,CA0DK,CAAC;AACd,CAAC,EA9DgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QA8DvC"}
1
+ {"version":3,"file":"ValidateParseProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateParseProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,2DAA0D;AAE1D,IAAiB,uBAAuB,CA2DvC;AA3DD,WAAiB,uBAAuB;IACvB,gCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAChC;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,4CAAqC,yBAAW,CAAC,WAAW,CACxD,OAAO,CAAC,OAAO,EACf,IAAI,CACP,OAAI,CACR,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC,EACzC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL;QAtDD,CAsDC;IAvDL,CAuDK,CAAC;AACd,CAAC,EA3DgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QA2DvC"}
@@ -44,7 +44,6 @@ var ValidateProgrammer;
44
44
  ValidateProgrammer.generate = function (project, modulo, equals) {
45
45
  if (equals === void 0) { equals = false; }
46
46
  return function (type) {
47
- var _a, _b;
48
47
  var importer = new FunctionImporeter_1.FunctionImporter();
49
48
  var program = CheckerProgrammer_1.CheckerProgrammer.generate(project, {
50
49
  functors: "$vo",
@@ -59,9 +58,7 @@ var ValidateProgrammer;
59
58
  }, importer)(type);
60
59
  return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
61
60
  IdentifierFactory_1.IdentifierFactory.parameter("input", TypeFactory_1.TypeFactory.keyword("any")),
62
- ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation", [
63
- (_a = project.checker.typeToTypeNode(type, undefined, undefined)) !== null && _a !== void 0 ? _a : TypeFactory_1.TypeFactory.keyword("any"),
64
- ]), undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([
61
+ ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation<".concat(TypeFactory_1.TypeFactory.getFullName(project.checker, type), ">")), undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([
65
62
  StatementFactory_1.StatementFactory.constant("errors", typescript_1.default.factory.createAsExpression(typescript_1.default.factory.createArrayLiteralExpression([]), typescript_1.default.factory.createArrayTypeNode(TypeFactory_1.TypeFactory.keyword("any")))),
66
63
  StatementFactory_1.StatementFactory.constant("$report", typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createParenthesizedExpression(typescript_1.default.factory.createAsExpression(modulo, TypeFactory_1.TypeFactory.keyword("any"))), "report"), [], [typescript_1.default.factory.createIdentifier("errors")]))
67
64
  ], __read(importer.declare(modulo)), false), [
@@ -71,9 +68,7 @@ var ValidateProgrammer;
71
68
  typescript_1.default.factory.createTrue(),
72
69
  ])),
73
70
  StatementFactory_1.StatementFactory.constant("success", typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createNumericLiteral(0), typescript_1.default.factory.createIdentifier("errors.length"))),
74
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createAsExpression(create_output(), typescript_1.default.factory.createTypeReferenceNode("typia.IValidation", [
75
- (_b = project.checker.typeToTypeNode(type, undefined, undefined)) !== null && _b !== void 0 ? _b : TypeFactory_1.TypeFactory.keyword("any"),
76
- ]))),
71
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createAsExpression(create_output(), TypeFactory_1.TypeFactory.keyword("any"))),
77
72
  ], false), true));
78
73
  };
79
74
  };
@@ -87,8 +82,8 @@ var combine = function (equals) {
87
82
  numeric: true,
88
83
  })(importer).combiner(explore);
89
84
  var path = explore.postfix
90
- ? "path + ".concat(explore.postfix)
91
- : "path";
85
+ ? "_path + ".concat(explore.postfix)
86
+ : "_path";
92
87
  return function (logic) { return function (input, binaries, expected) {
93
88
  return logic === "and"
94
89
  ? binaries
@@ -97,14 +92,14 @@ var combine = function (equals) {
97
92
  ? binary.expression
98
93
  : typescript_1.default.factory.createLogicalOr(binary.expression, create_report_call(explore.source === "top"
99
94
  ? typescript_1.default.factory.createTrue()
100
- : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
95
+ : typescript_1.default.factory.createIdentifier("_exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
101
96
  })
102
97
  .reduce(typescript_1.default.factory.createLogicalAnd)
103
98
  : typescript_1.default.factory.createLogicalOr(binaries
104
99
  .map(function (binary) { return binary.expression; })
105
100
  .reduce(typescript_1.default.factory.createLogicalOr), create_report_call(explore.source === "top"
106
101
  ? typescript_1.default.factory.createTrue()
107
- : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
102
+ : typescript_1.default.factory.createIdentifier("_exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
108
103
  }; };
109
104
  };
110
105
  };
@@ -117,10 +112,10 @@ var validate_object = function (equals) { return function (importer) {
117
112
  reduce: typescript_1.default.factory.createLogicalAnd,
118
113
  positive: typescript_1.default.factory.createTrue(),
119
114
  superfluous: function (value) {
120
- return create_report_call()(typescript_1.default.factory.createAdd(typescript_1.default.factory.createIdentifier("path"), typescript_1.default.factory.createCallExpression(importer.use("join"), undefined, [typescript_1.default.factory.createIdentifier("key")])), "undefined", value);
115
+ return create_report_call()(typescript_1.default.factory.createAdd(typescript_1.default.factory.createIdentifier("_path"), typescript_1.default.factory.createCallExpression(importer.use("join"), undefined, [typescript_1.default.factory.createIdentifier("key")])), "undefined", value);
121
116
  },
122
117
  halt: function (expr) {
123
- return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createFalse(), typescript_1.default.factory.createIdentifier("exceptionable")), expr);
118
+ return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createFalse(), typescript_1.default.factory.createIdentifier("_exceptionable")), expr);
124
119
  },
125
120
  })(importer);
126
121
  }; };
@@ -133,7 +128,7 @@ var joiner = function (equals) {
133
128
  failure: function (value, expected, explore) {
134
129
  return create_report_call((explore === null || explore === void 0 ? void 0 : explore.from) === "top"
135
130
  ? typescript_1.default.factory.createTrue()
136
- : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier((explore === null || explore === void 0 ? void 0 : explore.postfix) ? "path + ".concat(explore.postfix) : "path"), expected, value);
131
+ : typescript_1.default.factory.createIdentifier("_exceptionable"))(typescript_1.default.factory.createIdentifier((explore === null || explore === void 0 ? void 0 : explore.postfix) ? "_path + ".concat(explore.postfix) : "_path"), expected, value);
137
132
  },
138
133
  tuple: function (binaries) {
139
134
  return (0, check_everything_1.check_everything)(typescript_1.default.factory.createArrayLiteralExpression(binaries, true));
@@ -150,7 +145,7 @@ function create_output() {
150
145
  var create_report_call = function (exceptionable) {
151
146
  return function (path, expected, value) {
152
147
  return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("$report"), undefined, [
153
- exceptionable || typescript_1.default.factory.createIdentifier("exceptionable"),
148
+ exceptionable !== null && exceptionable !== void 0 ? exceptionable : typescript_1.default.factory.createIdentifier("_exceptionable"),
154
149
  typescript_1.default.factory.createObjectLiteralExpression([
155
150
  typescript_1.default.factory.createPropertyAssignment("path", path),
156
151
  typescript_1.default.factory.createPropertyAssignment("expected", typescript_1.default.factory.createStringLiteral(expected)),
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,yDAAwD;AACxD,+CAA8C;AAC9C,iEAA+D;AAC/D,+DAA8D;AAC9D,gEAA+D;AAC/D,wDAAuD;AAEvD,IAAiB,kBAAkB,CA4GlC;AA5GD,WAAiB,kBAAkB;IAClB,2BAAQ,GACjB,UACI,OAAiB,EACjB,MAAiC,EACjC,MAAuB;QAAvB,uBAAA,EAAA,cAAuB;QAE3B,OAAA,UAAC,IAAa;;YACV,IAAM,QAAQ,GAAqB,IAAI,oCAAgB,EAAE,CAAC;YAC1D,IAAM,OAAO,GAAqB,qCAAiB,CAAC,QAAQ,CACxD,OAAO,EACP;gBACI,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,KAAK;gBACf,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,mCAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;gBAClD,MAAM,QAAA;gBACN,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;gBACnC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;gBAChC,OAAO,EAAE,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;aACnC,EACD,QAAQ,CACX,CAAC,IAAI,CAAC,CAAC;YAER,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CACjC,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,mBAAmB,EAAE;gBACpD,MAAA,OAAO,CAAC,OAAO,CAAC,cAAc,CAC1B,IAAI,EACJ,SAAS,EACT,SAAS,CACZ,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aAClC,CAAC,EACF,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW;gBAEd,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,EAAE,CAAC,EAC3C,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ,CACJ;gBACD,mCAAgB,CAAC,QAAQ,CACrB,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,qCAAiB,CAAC,IAAI,CAClB,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,MAAM,EACN,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ,EACD,QAAQ,CACX,EACD,EAAE,EACF,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAC1C,CACJ;sBACE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC3B,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,OAAO,EACP,SAAS,EACT;oBACI,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;oBACpC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC;oBACxC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;iBAC1B,CACJ,CACJ;gBACD,mCAAgB,CAAC,QAAQ,CACrB,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAClC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAC/C,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,aAAa,EAAE,EACf,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,mBAAmB,EACnB;oBACI,MAAA,OAAO,CAAC,OAAO,CAAC,cAAc,CAC1B,IAAI,EACJ,SAAS,EACT,SAAS,CACZ,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC;iBAClC,CACJ,CACJ,CACJ;uBAEL,IAAI,CACP,CACJ,CAAC;QACN,CAAC;IApGD,CAoGC,CAAC;AACV,CAAC,EA5GgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QA4GlC;AAED,IAAM,OAAO,GACT,UAAC,MAAe;IAChB,OAAA,UAAC,QAA0B;QAC3B,OAAA,UAAC,OAAmC;YAChC,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK;gBAC1B,OAAO,2BAAY,CAAC,MAAM,CAAC;oBACvB,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;oBACzC,OAAO,EAAE,IAAI;iBAChB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAEnC,IAAM,IAAI,GAAW,OAAO,CAAC,OAAO;gBAChC,CAAC,CAAC,iBAAU,OAAO,CAAC,OAAO,CAAE;gBAC7B,CAAC,CAAC,MAAM,CAAC;YACb,OAAO,UAAC,KAAK,IAAK,OAAA,UAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ;gBACxC,OAAA,KAAK,KAAK,KAAK;oBACX,CAAC,CAAC,QAAQ;yBACH,GAAG,CAAC,UAAC,MAAM;wBACR,OAAA,MAAM,CAAC,QAAQ;4BACX,CAAC,CAAC,MAAM,CAAC,UAAU;4BACnB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACtB,MAAM,CAAC,UAAU,EACjB,kBAAkB,CACd,OAAO,CAAC,MAAM,KAAK,KAAK;gCACpB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;gCACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACvB,eAAe,CAClB,CACV,CACG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACjC,QAAQ,EACR,KAAK,CACR,CACJ;oBAfP,CAeO,CACV;yBACA,MAAM,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC;oBAC1C,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACtB,QAAQ;yBACH,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,UAAU,EAAjB,CAAiB,CAAC;yBAClC,MAAM,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CAAC,EACvC,kBAAkB,CACd,OAAO,CAAC,MAAM,KAAK,KAAK;wBACpB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;wBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CACrD,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CACxD;YA9BP,CA8BO,EA/BO,CA+BP,CAAC;QAChB,CAAC;IA1CD,CA0CC;AA3CD,CA2CC,CAAC;AAEN,IAAM,eAAe,GAAG,UAAC,MAAe,IAAK,OAAA,UAAC,QAA0B;IACpE,OAAA,IAAA,2BAAY,EAAC;QACT,MAAM,QAAA;QACN,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,oBAAE,CAAC,OAAO,CAAC,gBAAgB;QACnC,QAAQ,EAAE,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;QACjC,WAAW,EAAE,UAAC,KAAK;YACf,OAAA,kBAAkB,EAAE,CAChB,oBAAE,CAAC,OAAO,CAAC,SAAS,CAChB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,EACnC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EACpB,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CACvC,CACJ,EACD,WAAW,EACX,KAAK,CACR;QAXD,CAWC;QACL,IAAI,EAAE,UAAC,IAAI;YACP,OAAA,oBAAE,CAAC,OAAO,CAAC,eAAe,CACtB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAC/C,EACD,IAAI,CACP;QAND,CAMC;KACR,CAAC,CAAC,QAAQ,CAAC;AA3BZ,CA2BY,EA5B6B,CA4B7B,CAAC;AAEjB,IAAM,MAAM,GACR,UAAC,MAAe;IAChB,OAAA,UAAC,QAA0B,IAAwC,OAAA,CAAC;QAChE,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;QACzC,KAAK,EAAE,UAAC,KAAK,EAAE,KAAK;YAChB,OAAA,IAAA,mCAAgB,EACZ,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,qCAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EACpC,SAAS,EACT,CAAC,KAAK,CAAC,CACV,CACJ;QAND,CAMC;QACL,OAAO,EAAE,UAAC,KAAK,EAAE,QAAQ,EAAE,OAAO;YAC9B,OAAA,kBAAkB,CACd,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,MAAK,KAAK;gBACnB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE;gBACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CACrD,CACG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACvB,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,EAAC,CAAC,CAAC,iBAAU,OAAO,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC,MAAM,CAC1D,EACD,QAAQ,EACR,KAAK,CACR;QAVD,CAUC;QACL,KAAK,EAAE,UAAC,QAAQ;YACZ,OAAA,IAAA,mCAAgB,EACZ,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,QAAQ,EAAE,IAAI,CAAC,CAC1D;QAFD,CAEC;KACR,CAAC,EA1BiE,CA0BjE;AA1BF,CA0BE,CAAC;AAEP,SAAS,aAAa;IAClB,OAAO,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CAC3C;QACI,oBAAE,CAAC,OAAO,CAAC,iCAAiC,CAAC,SAAS,CAAC;QACvD,oBAAE,CAAC,OAAO,CAAC,iCAAiC,CAAC,QAAQ,CAAC;QACtD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CAC/B,MAAM,EACN,oBAAE,CAAC,OAAO,CAAC,2BAA2B,CAClC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACtC,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAC3C,CACJ;KACJ,EACD,IAAI,CACP,CAAC;AACN,CAAC;AAED,IAAM,kBAAkB,GACpB,UAAC,aAA6B;IAC9B,OAAA,UACI,IAAmB,EACnB,QAAgB,EAChB,KAAoB;QAEpB,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACtC,SAAS,EACT;YACI,aAAa,IAAI,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC;YAC7D,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC;gBACI,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC;gBACjD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CAC/B,UAAU,EACV,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAC3C;gBACD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,OAAO,EAAE,KAAK,CAAC;aACtD,EACD,IAAI,CACP;SACJ,CACJ;IAjBD,CAiBC;AAtBL,CAsBK,CAAC"}
1
+ {"version":3,"file":"ValidateProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateProgrammer.ts"],"names":[],"mappings":"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"}
@@ -25,12 +25,9 @@ var ValidatePruneProgrammer;
25
25
  (function (ValidatePruneProgrammer) {
26
26
  ValidatePruneProgrammer.generate = function (project, modulo) {
27
27
  return function (type) {
28
- var _a;
29
28
  return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
30
29
  IdentifierFactory_1.IdentifierFactory.parameter("input", TypeFactory_1.TypeFactory.keyword("any")),
31
- ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation", [
32
- (_a = project.checker.typeToTypeNode(type, undefined, undefined)) !== null && _a !== void 0 ? _a : TypeFactory_1.TypeFactory.keyword("any"),
33
- ]), undefined, typescript_1.default.factory.createBlock([
30
+ ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation<".concat(TypeFactory_1.TypeFactory.getFullName(project.checker, type), ">")), undefined, typescript_1.default.factory.createBlock([
34
31
  StatementFactory_1.StatementFactory.constant("validate", ValidateProgrammer_1.ValidateProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: true }) }), modulo)(type)),
35
32
  StatementFactory_1.StatementFactory.constant("prune", PruneProgrammer_1.PruneProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }), modulo)(type)),
36
33
  StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("validate"), undefined, [typescript_1.default.factory.createIdentifier("input")])),
@@ -1 +1 @@
1
- {"version":3,"file":"ValidatePruneProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidatePruneProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,qDAAoD;AACpD,2DAA0D;AAE1D,IAAiB,uBAAuB,CAyEvC;AAzED,WAAiB,uBAAuB;IACvB,gCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,mBAAmB,EAAE;gBACpD,MAAA,OAAO,CAAC,OAAO,CAAC,cAAc,CAC1B,IAAI,EACJ,SAAS,EACT,SAAS,CACZ,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aAClC,CAAC,EACF,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,OAAO,EACP,iCAAe,CAAC,QAAQ,uBAEb,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL,CAAA;SAAA;IArEL,CAqEK,CAAC;AACd,CAAC,EAzEgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAyEvC"}
1
+ {"version":3,"file":"ValidatePruneProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidatePruneProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,qDAAoD;AACpD,2DAA0D;AAE1D,IAAiB,uBAAuB,CAwEvC;AAxED,WAAiB,uBAAuB;IACvB,gCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,4BAAqB,yBAAW,CAAC,WAAW,CACxC,OAAO,CAAC,OAAO,EACf,IAAI,CACP,MAAG,CACP,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,OAAO,EACP,iCAAe,CAAC,QAAQ,uBAEb,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL;QAnED,CAmEC;IApEL,CAoEK,CAAC;AACd,CAAC,EAxEgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAwEvC"}
@@ -25,12 +25,9 @@ var ValidateStringifyProgrammer;
25
25
  (function (ValidateStringifyProgrammer) {
26
26
  ValidateStringifyProgrammer.generate = function (project, modulo) {
27
27
  return function (type) {
28
- var _a;
29
28
  return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
30
- IdentifierFactory_1.IdentifierFactory.parameter("input", (_a = project.checker.typeToTypeNode(type, undefined, undefined)) !== null && _a !== void 0 ? _a : TypeFactory_1.TypeFactory.keyword("any")),
31
- ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation", [
32
- TypeFactory_1.TypeFactory.keyword("string"),
33
- ]), undefined, typescript_1.default.factory.createBlock([
29
+ IdentifierFactory_1.IdentifierFactory.parameter("input", typescript_1.default.factory.createTypeReferenceNode(TypeFactory_1.TypeFactory.getFullName(project.checker, type))),
30
+ ], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation<string>"), undefined, typescript_1.default.factory.createBlock([
34
31
  StatementFactory_1.StatementFactory.constant("validate", ValidateProgrammer_1.ValidateProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: true }) }), modulo)(type)),
35
32
  StatementFactory_1.StatementFactory.constant("stringify", StringifyProgrammer_1.StringifyProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }), modulo)(type)),
36
33
  StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createAsExpression(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("validate"), undefined, [typescript_1.default.factory.createIdentifier("input")]), TypeFactory_1.TypeFactory.keyword("any"))),
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateStringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateStringifyProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,6DAA4D;AAC5D,2DAA0D;AAE1D,IAAiB,2BAA2B,CAgF3C;AAhFD,WAAiB,2BAA2B;IAC3B,oCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,MAAA,OAAO,CAAC,OAAO,CAAC,cAAc,CAC1B,IAAI,EACJ,SAAS,EACT,SAAS,CACZ,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAClC;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,mBAAmB,EAAE;gBACpD,yBAAW,CAAC,OAAO,CAAC,QAAQ,CAAC;aAChC,CAAC,EACF,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,WAAW,EACX,yCAAmB,CAAC,QAAQ,uBAEjB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,EACD,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL,CAAA;SAAA;IA5EL,CA4EK,CAAC;AACd,CAAC,EAhFgB,2BAA2B,GAA3B,mCAA2B,KAA3B,mCAA2B,QAgF3C"}
1
+ {"version":3,"file":"ValidateStringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateStringifyProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AACjE,wDAAuD;AAIvD,6DAA4D;AAC5D,2DAA0D;AAE1D,IAAiB,2BAA2B,CA4E3C;AA5ED,WAAiB,2BAA2B;IAC3B,oCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;gBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,yBAAW,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CACjD,CACJ;aACJ,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,2BAA2B,CAAC,EAC/D,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,WAAW,EACX,yCAAmB,CAAC,QAAQ,uBAEjB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,EACD,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL;QAvED,CAuEC;IAxEL,CAwEK,CAAC;AACd,CAAC,EA5EgB,2BAA2B,GAA3B,mCAA2B,KAA3B,mCAA2B,QA4E3C"}
@@ -31,6 +31,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
31
31
  exports.CloneJoiner = void 0;
32
32
  var typescript_1 = __importDefault(require("typescript"));
33
33
  var StatementFactory_1 = require("../../factories/StatementFactory");
34
+ var TypeFactory_1 = require("../../factories/TypeFactory");
34
35
  var Escaper_1 = require("../../utils/Escaper");
35
36
  var metadata_to_pattern_1 = require("../internal/metadata_to_pattern");
36
37
  var CloneJoiner;
@@ -58,7 +59,7 @@ var CloneJoiner;
58
59
  ]));
59
60
  });
60
61
  return typescript_1.default.factory.createBlock([
61
- StatementFactory_1.StatementFactory.constant("output", literal),
62
+ StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createAsExpression(literal, TypeFactory_1.TypeFactory.keyword("any"))),
62
63
  typescript_1.default.factory.createForOfStatement(undefined, typescript_1.default.factory.createVariableDeclarationList([
63
64
  typescript_1.default.factory.createVariableDeclaration(typescript_1.default.factory.createArrayBindingPattern([
64
65
  typescript_1.default.factory.createBindingElement(undefined, undefined, key, undefined),
@@ -69,9 +70,9 @@ var CloneJoiner;
69
70
  ]);
70
71
  };
71
72
  CloneJoiner.tuple = function (children, rest) {
72
- if (rest === null)
73
- return typescript_1.default.factory.createArrayLiteralExpression(children, true);
74
- return typescript_1.default.factory.createArrayLiteralExpression(__spreadArray(__spreadArray([], __read(children), false), [typescript_1.default.factory.createSpreadElement(rest)], false), true);
73
+ return typescript_1.default.factory.createAsExpression(typescript_1.default.factory.createArrayLiteralExpression(rest === null
74
+ ? children
75
+ : __spreadArray(__spreadArray([], __read(children), false), [typescript_1.default.factory.createSpreadElement(rest)], false), true), TypeFactory_1.TypeFactory.keyword("any"));
75
76
  };
76
77
  CloneJoiner.array = function (input, arrow) {
77
78
  return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createPropertyAccessExpression(input, "map"), undefined, [arrow]);
@@ -1 +1 @@
1
- {"version":3,"file":"CloneJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/CloneJoiner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CloneJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/CloneJoiner.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,13 @@
1
1
  import ts from "typescript";
2
2
  export declare class FunctionImporter {
3
3
  private readonly used_;
4
+ private readonly local_;
4
5
  private sequence_;
5
6
  empty(): boolean;
6
7
  use(name: string): ts.Identifier;
8
+ useLocal(name: string): string;
9
+ hasLocal(name: string): boolean;
7
10
  declare(modulo: ts.LeftHandSideExpression): ts.Statement[];
8
11
  increment(): number;
12
+ trace(): void;
9
13
  }
@@ -36,6 +36,7 @@ var TypeFactory_1 = require("../../factories/TypeFactory");
36
36
  var FunctionImporter = (function () {
37
37
  function FunctionImporter() {
38
38
  this.used_ = new Set();
39
+ this.local_ = new Set();
39
40
  this.sequence_ = 0;
40
41
  }
41
42
  FunctionImporter.prototype.empty = function () {
@@ -45,6 +46,13 @@ var FunctionImporter = (function () {
45
46
  this.used_.add(name);
46
47
  return typescript_1.default.factory.createIdentifier("$" + name);
47
48
  };
49
+ FunctionImporter.prototype.useLocal = function (name) {
50
+ this.local_.add(name);
51
+ return name;
52
+ };
53
+ FunctionImporter.prototype.hasLocal = function (name) {
54
+ return this.local_.has(name);
55
+ };
48
56
  FunctionImporter.prototype.declare = function (modulo) {
49
57
  return __spreadArray([], __read(this.used_), false).map(function (name) {
50
58
  return StatementFactory_1.StatementFactory.constant("$" + name, IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createParenthesizedExpression(typescript_1.default.factory.createAsExpression(modulo, TypeFactory_1.TypeFactory.keyword("any"))), name));
@@ -53,6 +61,10 @@ var FunctionImporter = (function () {
53
61
  FunctionImporter.prototype.increment = function () {
54
62
  return ++this.sequence_;
55
63
  };
64
+ FunctionImporter.prototype.trace = function () {
65
+ console.log.apply(console, __spreadArray([], __read(this.used_), false));
66
+ console.log.apply(console, __spreadArray([], __read(this.local_), false));
67
+ };
56
68
  return FunctionImporter;
57
69
  }());
58
70
  exports.FunctionImporter = FunctionImporter;
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionImporeter.js","sourceRoot":"","sources":["../../../src/programmers/helpers/FunctionImporeter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,qEAAoE;AACpE,2DAA0D;AAE1D;IAAA;QACqB,UAAK,GAAgB,IAAI,GAAG,EAAE,CAAC;QACxC,cAAS,GAAW,CAAC,CAAC;IA+BlC,CAAC;IA7BU,gCAAK,GAAZ;QACI,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;IACjC,CAAC;IAEM,8BAAG,GAAV,UAAW,IAAY;QACnB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrB,OAAO,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IACnD,CAAC;IAEM,kCAAO,GAAd,UAAe,MAAiC;QAC5C,OAAO,yBAAI,IAAI,CAAC,KAAK,UAAE,GAAG,CAAC,UAAC,IAAI;YAC5B,OAAA,mCAAgB,CAAC,QAAQ,CACrB,GAAG,GAAG,IAAI,EACV,qCAAiB,CAAC,IAAI,CAClB,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,MAAM,EACN,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ,EACD,IAAI,CACP,CACJ;QAXD,CAWC,CACJ,CAAC;IACN,CAAC;IAEM,oCAAS,GAAhB;QACI,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;IAC5B,CAAC;IACL,uBAAC;AAAD,CAAC,AAjCD,IAiCC;AAjCY,4CAAgB"}
1
+ {"version":3,"file":"FunctionImporeter.js","sourceRoot":"","sources":["../../../src/programmers/helpers/FunctionImporeter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,qEAAoE;AACpE,2DAA0D;AAE1D;IAAA;QACqB,UAAK,GAAgB,IAAI,GAAG,EAAE,CAAC;QAC/B,WAAM,GAAgB,IAAI,GAAG,EAAE,CAAC;QACzC,cAAS,GAAW,CAAC,CAAC;IA6ClC,CAAC;IA3CU,gCAAK,GAAZ;QACI,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;IACjC,CAAC;IAEM,8BAAG,GAAV,UAAW,IAAY;QACnB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrB,OAAO,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IACnD,CAAC;IAEM,mCAAQ,GAAf,UAAgB,IAAY;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,mCAAQ,GAAf,UAAgB,IAAY;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAEM,kCAAO,GAAd,UAAe,MAAiC;QAC5C,OAAO,yBAAI,IAAI,CAAC,KAAK,UAAE,GAAG,CAAC,UAAC,IAAI;YAC5B,OAAA,mCAAgB,CAAC,QAAQ,CACrB,GAAG,GAAG,IAAI,EACV,qCAAiB,CAAC,IAAI,CAClB,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,MAAM,EACN,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ,EACD,IAAI,CACP,CACJ;QAXD,CAWC,CACJ,CAAC;IACN,CAAC;IAEM,oCAAS,GAAhB;QACI,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;IAC5B,CAAC;IAEM,gCAAK,GAAZ;QACI,OAAO,CAAC,GAAG,OAAX,OAAO,2BAAQ,IAAI,CAAC,KAAK,WAAE;QAC3B,OAAO,CAAC,GAAG,OAAX,OAAO,2BAAQ,IAAI,CAAC,MAAM,WAAE;IAChC,CAAC;IACL,uBAAC;AAAD,CAAC,AAhDD,IAgDC;AAhDY,4CAAgB"}
@@ -4,7 +4,7 @@ import { Metadata } from "../../metadata/Metadata";
4
4
  import { MetadataObject } from "../../metadata/MetadataObject";
5
5
  export declare namespace RandomJoiner {
6
6
  type Decoder = (meta: Metadata, tags: IMetadataTag[]) => ts.Expression;
7
- const array: (decoder: Decoder) => (item: Metadata, tags: IMetadataTag[]) => ts.CallExpression;
7
+ const array: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (item: Metadata, tags: IMetadataTag[]) => ts.CallExpression;
8
8
  const tuple: (decoder: Decoder) => (items: Metadata[], tags: IMetadataTag[]) => ts.ArrayLiteralExpression;
9
- const object: (decoder: Decoder) => (obj: MetadataObject) => ts.ConciseBody;
9
+ const object: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (obj: MetadataObject) => ts.ConciseBody;
10
10
  }
@@ -31,63 +31,74 @@ Object.defineProperty(exports, "__esModule", { value: true });
31
31
  exports.RandomJoiner = void 0;
32
32
  var typescript_1 = __importDefault(require("typescript"));
33
33
  var StatementFactory_1 = require("../../factories/StatementFactory");
34
+ var TypeFactory_1 = require("../../factories/TypeFactory");
34
35
  var Escaper_1 = require("../../utils/Escaper");
35
36
  var RandomRanger_1 = require("./RandomRanger");
36
37
  var RandomJoiner;
37
38
  (function (RandomJoiner) {
38
- RandomJoiner.array = function (decoder) { return function (item, tags) {
39
- var tail = RandomRanger_1.RandomRanger.length({
40
- minimum: 0,
41
- maximum: 3,
42
- gap: 3,
43
- })({
44
- fixed: "items",
45
- minimum: "minItems",
46
- maximum: "maxItems",
47
- })(tags);
48
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.array"), undefined, __spreadArray([
49
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decoder(item, tags))
50
- ], __read((tail ? [tail] : [])), false));
51
- }; };
39
+ RandomJoiner.array = function (coalesce) {
40
+ return function (decoder) {
41
+ return function (item, tags) {
42
+ var tail = RandomRanger_1.RandomRanger.length(coalesce)({
43
+ minimum: 0,
44
+ maximum: 3,
45
+ gap: 3,
46
+ })({
47
+ fixed: "items",
48
+ minimum: "minItems",
49
+ maximum: "maxItems",
50
+ })(tags);
51
+ return typescript_1.default.factory.createCallExpression(coalesce("array"), undefined, __spreadArray([
52
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decoder(item, tags))
53
+ ], __read((tail ? [tail] : [])), false));
54
+ };
55
+ };
56
+ };
52
57
  RandomJoiner.tuple = function (decoder) { return function (items, tags) {
53
58
  return typescript_1.default.factory.createArrayLiteralExpression(items.map(function (i) { var _a; return decoder((_a = i.rest) !== null && _a !== void 0 ? _a : i, tags); }), true);
54
59
  }; };
55
- RandomJoiner.object = function (decoder) {
56
- return function (obj) {
57
- if (obj.properties.length === 0)
58
- return typescript_1.default.factory.createIdentifier("{}");
59
- var regular = obj.properties.filter(function (p) { return p.key.isSoleLiteral(); });
60
- var dynamic = obj.properties.filter(function (p) { return !p.key.isSoleLiteral(); });
61
- var literal = typescript_1.default.factory.createObjectLiteralExpression(regular.map(function (p) {
62
- var str = p.key.getSoleLiteral();
63
- return typescript_1.default.factory.createPropertyAssignment(Escaper_1.Escaper.variable(str)
64
- ? str
65
- : typescript_1.default.factory.createStringLiteral(str), decoder(p.value, p.tags));
66
- }), true);
67
- if (dynamic.length === 0)
68
- return literal;
69
- var properties = dynamic.map(function (p) {
70
- return typescript_1.default.factory.createExpressionStatement(dynamicProperty(decoder)(p));
71
- });
72
- return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([
73
- StatementFactory_1.StatementFactory.constant("output", literal)
74
- ], __read((obj.recursive
75
- ? [
76
- typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createGreaterThanEquals(typescript_1.default.factory.createNumericLiteral(5), typescript_1.default.factory.createIdentifier("depth")), typescript_1.default.factory.createBlock(properties, true)),
77
- ]
78
- : properties)), false), [
79
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
80
- ], false), true);
60
+ RandomJoiner.object = function (coalesce) {
61
+ return function (decoder) {
62
+ return function (obj) {
63
+ if (obj.properties.length === 0)
64
+ return typescript_1.default.factory.createIdentifier("{}");
65
+ var regular = obj.properties.filter(function (p) { return p.key.isSoleLiteral(); });
66
+ var dynamic = obj.properties.filter(function (p) { return !p.key.isSoleLiteral(); });
67
+ var literal = typescript_1.default.factory.createObjectLiteralExpression(regular.map(function (p) {
68
+ var str = p.key.getSoleLiteral();
69
+ return typescript_1.default.factory.createPropertyAssignment(Escaper_1.Escaper.variable(str)
70
+ ? str
71
+ : typescript_1.default.factory.createStringLiteral(str), decoder(p.value, p.tags));
72
+ }), true);
73
+ if (dynamic.length === 0)
74
+ return literal;
75
+ var properties = dynamic.map(function (p) {
76
+ return typescript_1.default.factory.createExpressionStatement(dynamicProperty(coalesce)(decoder)(p));
77
+ });
78
+ return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([
79
+ StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createAsExpression(literal, TypeFactory_1.TypeFactory.keyword("any")))
80
+ ], __read((obj.recursive
81
+ ? [
82
+ typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createGreaterThanEquals(typescript_1.default.factory.createNumericLiteral(5), typescript_1.default.factory.createIdentifier("_depth")), typescript_1.default.factory.createBlock(properties, true)),
83
+ ]
84
+ : properties)), false), [
85
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
86
+ ], false), true);
87
+ };
88
+ };
89
+ };
90
+ var dynamicProperty = function (coalesce) {
91
+ return function (decoder) {
92
+ return function (p) {
93
+ return typescript_1.default.factory.createCallExpression(coalesce("array"), undefined, [
94
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(typescript_1.default.factory.createIdentifier("output"), decoder(p.key, [])), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), decoder(p.value, p.tags))),
95
+ typescript_1.default.factory.createCallExpression(coalesce("integer"), undefined, [
96
+ typescript_1.default.factory.createNumericLiteral(0),
97
+ typescript_1.default.factory.createNumericLiteral(3),
98
+ ]),
99
+ ]);
100
+ };
81
101
  };
82
102
  };
83
- var dynamicProperty = function (decoder) { return function (p) {
84
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.array"), undefined, [
85
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(typescript_1.default.factory.createIdentifier("output"), decoder(p.key, [])), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), decoder(p.value, p.tags))),
86
- typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.integer"), undefined, [
87
- typescript_1.default.factory.createNumericLiteral(0),
88
- typescript_1.default.factory.createNumericLiteral(3),
89
- ]),
90
- ]);
91
- }; };
92
103
  })(RandomJoiner = exports.RandomJoiner || (exports.RandomJoiner = {}));
93
104
  //# sourceMappingURL=RandomJoiner.js.map