typia 4.0.0-dev.20230517 → 4.0.0-dev.20230519

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 (472) hide show
  1. package/lib/TypeGuardError.js +6 -2
  2. package/lib/TypeGuardError.js.map +1 -1
  3. package/lib/executable/TypiaGenerateWizard.js +24 -23
  4. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  5. package/lib/executable/TypiaSetupWizard.js +27 -20
  6. package/lib/executable/TypiaSetupWizard.js.map +1 -1
  7. package/lib/executable/setup/ArgumentParser.js +5 -5
  8. package/lib/executable/setup/ArgumentParser.js.map +1 -1
  9. package/lib/executable/setup/PackageManager.js +8 -8
  10. package/lib/executable/setup/PackageManager.js.map +1 -1
  11. package/lib/executable/setup/PluginConfigurator.js +5 -4
  12. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  13. package/lib/executable/typia.js +17 -17
  14. package/lib/executable/typia.js.map +1 -1
  15. package/lib/factories/CommentFactory.js +3 -0
  16. package/lib/factories/CommentFactory.js.map +1 -1
  17. package/lib/factories/ExpressionFactory.d.ts +6 -6
  18. package/lib/factories/ExpressionFactory.js +34 -28
  19. package/lib/factories/ExpressionFactory.js.map +1 -1
  20. package/lib/factories/IdentifierFactory.d.ts +4 -8
  21. package/lib/factories/IdentifierFactory.js +23 -26
  22. package/lib/factories/IdentifierFactory.js.map +1 -1
  23. package/lib/factories/LiteralFactory.d.ts +2 -2
  24. package/lib/factories/LiteralFactory.js +42 -36
  25. package/lib/factories/LiteralFactory.js.map +1 -1
  26. package/lib/factories/MetadataCollection.d.ts +3 -2
  27. package/lib/factories/MetadataCollection.js +10 -7
  28. package/lib/factories/MetadataCollection.js.map +1 -1
  29. package/lib/factories/MetadataFactory.d.ts +3 -6
  30. package/lib/factories/MetadataFactory.js +5 -3
  31. package/lib/factories/MetadataFactory.js.map +1 -1
  32. package/lib/factories/MetadataTagFactory.js +19 -2
  33. package/lib/factories/MetadataTagFactory.js.map +1 -1
  34. package/lib/factories/StatementFactory.d.ts +2 -3
  35. package/lib/factories/StatementFactory.js +5 -13
  36. package/lib/factories/StatementFactory.js.map +1 -1
  37. package/lib/factories/TemplateFactory.d.ts +2 -2
  38. package/lib/factories/TemplateFactory.js +37 -35
  39. package/lib/factories/TemplateFactory.js.map +1 -1
  40. package/lib/factories/TypeFactory.d.ts +7 -6
  41. package/lib/factories/TypeFactory.js +65 -51
  42. package/lib/factories/TypeFactory.js.map +1 -1
  43. package/lib/factories/ValueFactory.d.ts +6 -6
  44. package/lib/factories/ValueFactory.js +14 -14
  45. package/lib/factories/ValueFactory.js.map +1 -1
  46. package/lib/factories/internal/metadata/emplace_metadata_object.d.ts +3 -2
  47. package/lib/factories/internal/metadata/emplace_metadata_object.js +40 -27
  48. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  49. package/lib/factories/internal/metadata/explore_metadata.d.ts +3 -2
  50. package/lib/factories/internal/metadata/explore_metadata.js +69 -60
  51. package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
  52. package/lib/factories/internal/metadata/iterate_metadata.d.ts +3 -2
  53. package/lib/factories/internal/metadata/iterate_metadata.js +23 -17
  54. package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
  55. package/lib/factories/internal/metadata/iterate_metadata_array.d.ts +3 -2
  56. package/lib/factories/internal/metadata/iterate_metadata_array.js +11 -13
  57. package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
  58. package/lib/factories/internal/metadata/iterate_metadata_atomic.d.ts +2 -2
  59. package/lib/factories/internal/metadata/iterate_metadata_atomic.js +25 -23
  60. package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
  61. package/lib/factories/internal/metadata/iterate_metadata_coalesce.d.ts +2 -2
  62. package/lib/factories/internal/metadata/iterate_metadata_coalesce.js +26 -26
  63. package/lib/factories/internal/metadata/iterate_metadata_coalesce.js.map +1 -1
  64. package/lib/factories/internal/metadata/iterate_metadata_constant.d.ts +3 -2
  65. package/lib/factories/internal/metadata/iterate_metadata_constant.js +28 -29
  66. package/lib/factories/internal/metadata/iterate_metadata_constant.js.map +1 -1
  67. package/lib/factories/internal/metadata/iterate_metadata_map.d.ts +3 -2
  68. package/lib/factories/internal/metadata/iterate_metadata_map.js +18 -16
  69. package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
  70. package/lib/factories/internal/metadata/iterate_metadata_native.d.ts +3 -2
  71. package/lib/factories/internal/metadata/iterate_metadata_native.js +39 -37
  72. package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
  73. package/lib/factories/internal/metadata/iterate_metadata_object.d.ts +3 -2
  74. package/lib/factories/internal/metadata/iterate_metadata_object.js +24 -23
  75. package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
  76. package/lib/factories/internal/metadata/iterate_metadata_resolve.d.ts +3 -2
  77. package/lib/factories/internal/metadata/iterate_metadata_resolve.js +15 -10
  78. package/lib/factories/internal/metadata/iterate_metadata_resolve.js.map +1 -1
  79. package/lib/factories/internal/metadata/iterate_metadata_set.d.ts +3 -2
  80. package/lib/factories/internal/metadata/iterate_metadata_set.js +14 -12
  81. package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
  82. package/lib/factories/internal/metadata/iterate_metadata_template.d.ts +3 -2
  83. package/lib/factories/internal/metadata/iterate_metadata_template.js +21 -20
  84. package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
  85. package/lib/factories/internal/metadata/iterate_metadata_tuple.d.ts +3 -2
  86. package/lib/factories/internal/metadata/iterate_metadata_tuple.js +26 -25
  87. package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
  88. package/lib/factories/internal/metadata/iterate_metadata_union.d.ts +3 -2
  89. package/lib/factories/internal/metadata/iterate_metadata_union.js +54 -54
  90. package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
  91. package/lib/functional/$dictionary.js +3 -0
  92. package/lib/functional/$dictionary.js.map +1 -1
  93. package/lib/functional/$guard.js +20 -0
  94. package/lib/functional/$guard.js.map +1 -1
  95. package/lib/functional/$string.js +5 -0
  96. package/lib/functional/$string.js.map +1 -1
  97. package/lib/functional/$tail.js +3 -0
  98. package/lib/functional/$tail.js.map +1 -1
  99. package/lib/functional/Namespace.js +5 -0
  100. package/lib/functional/Namespace.js.map +1 -1
  101. package/lib/metadata/Metadata.js +71 -1
  102. package/lib/metadata/Metadata.js.map +1 -1
  103. package/lib/metadata/MetadataObject.js +22 -1
  104. package/lib/metadata/MetadataObject.js.map +1 -1
  105. package/lib/metadata/MetadataProperty.js +13 -1
  106. package/lib/metadata/MetadataProperty.js.map +1 -1
  107. package/lib/module.js +186 -0
  108. package/lib/module.js.map +1 -1
  109. package/lib/programmers/ApplicationProgrammer.d.ts +0 -4
  110. package/lib/programmers/ApplicationProgrammer.js +3 -1
  111. package/lib/programmers/ApplicationProgrammer.js.map +1 -1
  112. package/lib/programmers/AssertCloneProgrammer.d.ts +2 -6
  113. package/lib/programmers/AssertCloneProgrammer.js +9 -18
  114. package/lib/programmers/AssertCloneProgrammer.js.map +1 -1
  115. package/lib/programmers/AssertParseProgrammer.d.ts +2 -6
  116. package/lib/programmers/AssertParseProgrammer.js +7 -16
  117. package/lib/programmers/AssertParseProgrammer.js.map +1 -1
  118. package/lib/programmers/AssertProgrammer.d.ts +2 -6
  119. package/lib/programmers/AssertProgrammer.js +102 -106
  120. package/lib/programmers/AssertProgrammer.js.map +1 -1
  121. package/lib/programmers/AssertPruneProgrammer.d.ts +2 -2
  122. package/lib/programmers/AssertPruneProgrammer.js +12 -13
  123. package/lib/programmers/AssertPruneProgrammer.js.map +1 -1
  124. package/lib/programmers/AssertStringifyProgrammer.d.ts +2 -6
  125. package/lib/programmers/AssertStringifyProgrammer.js +8 -17
  126. package/lib/programmers/AssertStringifyProgrammer.js.map +1 -1
  127. package/lib/programmers/CheckerProgrammer.d.ts +5 -5
  128. package/lib/programmers/CheckerProgrammer.js +202 -186
  129. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  130. package/lib/programmers/CloneProgrammer.d.ts +2 -6
  131. package/lib/programmers/CloneProgrammer.js +233 -209
  132. package/lib/programmers/CloneProgrammer.js.map +1 -1
  133. package/lib/programmers/FeatureProgrammer.d.ts +7 -7
  134. package/lib/programmers/FeatureProgrammer.js +114 -96
  135. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  136. package/lib/programmers/IsCloneProgrammer.d.ts +2 -6
  137. package/lib/programmers/IsCloneProgrammer.js +12 -21
  138. package/lib/programmers/IsCloneProgrammer.js.map +1 -1
  139. package/lib/programmers/IsParseProgrammer.d.ts +2 -6
  140. package/lib/programmers/IsParseProgrammer.js +7 -16
  141. package/lib/programmers/IsParseProgrammer.js.map +1 -1
  142. package/lib/programmers/IsProgrammer.d.ts +9 -9
  143. package/lib/programmers/IsProgrammer.js +98 -87
  144. package/lib/programmers/IsProgrammer.js.map +1 -1
  145. package/lib/programmers/IsPruneProgrammer.d.ts +2 -2
  146. package/lib/programmers/IsPruneProgrammer.js +12 -13
  147. package/lib/programmers/IsPruneProgrammer.js.map +1 -1
  148. package/lib/programmers/IsStringifyProgrammer.d.ts +2 -6
  149. package/lib/programmers/IsStringifyProgrammer.js +10 -19
  150. package/lib/programmers/IsStringifyProgrammer.js.map +1 -1
  151. package/lib/programmers/LiteralsProgrammer.d.ts +2 -2
  152. package/lib/programmers/LiteralsProgrammer.js +12 -13
  153. package/lib/programmers/LiteralsProgrammer.js.map +1 -1
  154. package/lib/programmers/PruneProgrammer.d.ts +2 -2
  155. package/lib/programmers/PruneProgrammer.js +99 -80
  156. package/lib/programmers/PruneProgrammer.js.map +1 -1
  157. package/lib/programmers/RandomProgrammer.d.ts +2 -6
  158. package/lib/programmers/RandomProgrammer.js +271 -253
  159. package/lib/programmers/RandomProgrammer.js.map +1 -1
  160. package/lib/programmers/StringifyProgrammer.d.ts +2 -6
  161. package/lib/programmers/StringifyProgrammer.js +397 -355
  162. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  163. package/lib/programmers/TypiaProgrammer.js +45 -41
  164. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  165. package/lib/programmers/ValidateCloneProgrammer.d.ts +2 -2
  166. package/lib/programmers/ValidateCloneProgrammer.js +12 -13
  167. package/lib/programmers/ValidateCloneProgrammer.js.map +1 -1
  168. package/lib/programmers/ValidateParseProgrammer.d.ts +2 -2
  169. package/lib/programmers/ValidateParseProgrammer.js +11 -12
  170. package/lib/programmers/ValidateParseProgrammer.js.map +1 -1
  171. package/lib/programmers/ValidateProgrammer.d.ts +2 -2
  172. package/lib/programmers/ValidateProgrammer.js +97 -92
  173. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  174. package/lib/programmers/ValidatePruneProgrammer.d.ts +2 -2
  175. package/lib/programmers/ValidatePruneProgrammer.js +12 -13
  176. package/lib/programmers/ValidatePruneProgrammer.js.map +1 -1
  177. package/lib/programmers/ValidateStringifyProgrammer.d.ts +2 -2
  178. package/lib/programmers/ValidateStringifyProgrammer.js +12 -13
  179. package/lib/programmers/ValidateStringifyProgrammer.js.map +1 -1
  180. package/lib/programmers/helpers/CloneJoiner.d.ts +4 -4
  181. package/lib/programmers/helpers/CloneJoiner.js +43 -43
  182. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  183. package/lib/programmers/helpers/FunctionImporeter.d.ts +3 -1
  184. package/lib/programmers/helpers/FunctionImporeter.js +6 -8
  185. package/lib/programmers/helpers/FunctionImporeter.js.map +1 -1
  186. package/lib/programmers/helpers/ICheckEntry.d.ts +1 -1
  187. package/lib/programmers/helpers/IExpressionEntry.d.ts +1 -1
  188. package/lib/programmers/helpers/PruneJoiner.d.ts +4 -4
  189. package/lib/programmers/helpers/PruneJoiner.js +54 -47
  190. package/lib/programmers/helpers/PruneJoiner.js.map +1 -1
  191. package/lib/programmers/helpers/RandomJoiner.d.ts +4 -4
  192. package/lib/programmers/helpers/RandomJoiner.js +65 -59
  193. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  194. package/lib/programmers/helpers/RandomRanger.d.ts +3 -3
  195. package/lib/programmers/helpers/RandomRanger.js +91 -81
  196. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  197. package/lib/programmers/helpers/StringifyJoinder.d.ts +4 -4
  198. package/lib/programmers/helpers/StringifyJoinder.js +62 -54
  199. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  200. package/lib/programmers/helpers/UnionExplorer.d.ts +7 -7
  201. package/lib/programmers/helpers/UnionExplorer.js +103 -64
  202. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  203. package/lib/programmers/helpers/UnionPredicator.js +5 -0
  204. package/lib/programmers/helpers/UnionPredicator.js.map +1 -1
  205. package/lib/programmers/internal/application_array.js +5 -0
  206. package/lib/programmers/internal/application_array.js.map +1 -1
  207. package/lib/programmers/internal/application_boolean.js +3 -0
  208. package/lib/programmers/internal/application_boolean.js.map +1 -1
  209. package/lib/programmers/internal/application_constant.js +3 -0
  210. package/lib/programmers/internal/application_constant.js.map +1 -1
  211. package/lib/programmers/internal/application_default.js +3 -0
  212. package/lib/programmers/internal/application_default.js.map +1 -1
  213. package/lib/programmers/internal/application_default_string.js +5 -0
  214. package/lib/programmers/internal/application_default_string.js.map +1 -1
  215. package/lib/programmers/internal/application_native.js +3 -0
  216. package/lib/programmers/internal/application_native.js.map +1 -1
  217. package/lib/programmers/internal/application_number.js +9 -0
  218. package/lib/programmers/internal/application_number.js.map +1 -1
  219. package/lib/programmers/internal/application_object.js +9 -0
  220. package/lib/programmers/internal/application_object.js.map +1 -1
  221. package/lib/programmers/internal/application_schema.js +23 -0
  222. package/lib/programmers/internal/application_schema.js.map +1 -1
  223. package/lib/programmers/internal/application_string.js +9 -0
  224. package/lib/programmers/internal/application_string.js.map +1 -1
  225. package/lib/programmers/internal/application_templates.js +6 -0
  226. package/lib/programmers/internal/application_templates.js.map +1 -1
  227. package/lib/programmers/internal/application_tuple.js +3 -0
  228. package/lib/programmers/internal/application_tuple.js.map +1 -1
  229. package/lib/programmers/internal/check_array.js +12 -7
  230. package/lib/programmers/internal/check_array.js.map +1 -1
  231. package/lib/programmers/internal/check_array_length.js +8 -9
  232. package/lib/programmers/internal/check_array_length.js.map +1 -1
  233. package/lib/programmers/internal/check_bigint.js +71 -70
  234. package/lib/programmers/internal/check_bigint.js.map +1 -1
  235. package/lib/programmers/internal/check_custom.js +20 -19
  236. package/lib/programmers/internal/check_custom.js.map +1 -1
  237. package/lib/programmers/internal/check_dynamic_properties.js +82 -69
  238. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  239. package/lib/programmers/internal/check_everything.js +9 -10
  240. package/lib/programmers/internal/check_everything.js.map +1 -1
  241. package/lib/programmers/internal/check_native.js +7 -8
  242. package/lib/programmers/internal/check_native.js.map +1 -1
  243. package/lib/programmers/internal/check_number.js +27 -22
  244. package/lib/programmers/internal/check_number.js.map +1 -1
  245. package/lib/programmers/internal/check_object.js +32 -19
  246. package/lib/programmers/internal/check_object.js.map +1 -1
  247. package/lib/programmers/internal/check_string.js +12 -11
  248. package/lib/programmers/internal/check_string.js.map +1 -1
  249. package/lib/programmers/internal/check_string_tags.js +51 -50
  250. package/lib/programmers/internal/check_string_tags.js.map +1 -1
  251. package/lib/programmers/internal/check_template.js +27 -23
  252. package/lib/programmers/internal/check_template.js.map +1 -1
  253. package/lib/programmers/internal/check_union_array_like.js +61 -45
  254. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  255. package/lib/programmers/internal/check_union_tuple.js +4 -0
  256. package/lib/programmers/internal/check_union_tuple.js.map +1 -1
  257. package/lib/programmers/internal/decode_union_object.js +24 -21
  258. package/lib/programmers/internal/decode_union_object.js.map +1 -1
  259. package/lib/programmers/internal/feature_object_entries.js +33 -32
  260. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  261. package/lib/programmers/internal/get_comment_tags.js +3 -0
  262. package/lib/programmers/internal/get_comment_tags.js.map +1 -1
  263. package/lib/programmers/internal/metadata_to_pattern.js +3 -0
  264. package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
  265. package/lib/programmers/internal/prune_object_properties.js +15 -14
  266. package/lib/programmers/internal/prune_object_properties.js.map +1 -1
  267. package/lib/programmers/internal/random_custom.js +10 -9
  268. package/lib/programmers/internal/random_custom.js.map +1 -1
  269. package/lib/programmers/internal/stringify_dynamic_properties.js +65 -54
  270. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  271. package/lib/programmers/internal/stringify_native.js +5 -6
  272. package/lib/programmers/internal/stringify_native.js.map +1 -1
  273. package/lib/programmers/internal/stringify_regular_properties.js +46 -41
  274. package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
  275. package/lib/programmers/internal/template_to_pattern.js +3 -0
  276. package/lib/programmers/internal/template_to_pattern.js.map +1 -1
  277. package/lib/schemas/IJsonSchema.d.ts +1 -1
  278. package/lib/transform.d.ts +1 -1
  279. package/lib/transform.js +1 -0
  280. package/lib/transform.js.map +1 -1
  281. package/lib/transformers/CallExpressionTransformer.d.ts +1 -1
  282. package/lib/transformers/CallExpressionTransformer.js +29 -2
  283. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  284. package/lib/transformers/FileTransformer.d.ts +1 -1
  285. package/lib/transformers/FileTransformer.js +4 -8
  286. package/lib/transformers/FileTransformer.js.map +1 -1
  287. package/lib/transformers/IProject.d.ts +8 -1
  288. package/lib/transformers/ImportTransformer.d.ts +2 -2
  289. package/lib/transformers/ImportTransformer.js +45 -34
  290. package/lib/transformers/ImportTransformer.js.map +1 -1
  291. package/lib/transformers/NodeTransformer.d.ts +1 -1
  292. package/lib/transformers/NodeTransformer.js +1 -5
  293. package/lib/transformers/NodeTransformer.js.map +1 -1
  294. package/lib/transformers/features/miscellaneous/ApplicationTransformer.d.ts +2 -2
  295. package/lib/transformers/features/miscellaneous/ApplicationTransformer.js +27 -18
  296. package/lib/transformers/features/miscellaneous/ApplicationTransformer.js.map +1 -1
  297. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.d.ts +1 -1
  298. package/lib/transformers/features/miscellaneous/AssertPruneTransformer.d.ts +1 -1
  299. package/lib/transformers/features/miscellaneous/CloneTransformer.d.ts +1 -1
  300. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.d.ts +1 -1
  301. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.d.ts +1 -1
  302. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.d.ts +1 -1
  303. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.d.ts +1 -1
  304. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.d.ts +1 -1
  305. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.d.ts +1 -1
  306. package/lib/transformers/features/miscellaneous/CreateRandomTransformer.d.ts +2 -2
  307. package/lib/transformers/features/miscellaneous/CreateRandomTransformer.js +7 -4
  308. package/lib/transformers/features/miscellaneous/CreateRandomTransformer.js.map +1 -1
  309. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.d.ts +1 -1
  310. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.d.ts +1 -1
  311. package/lib/transformers/features/miscellaneous/IsCloneTransformer.d.ts +1 -1
  312. package/lib/transformers/features/miscellaneous/IsPruneTransformer.d.ts +1 -1
  313. package/lib/transformers/features/miscellaneous/LiteralsTransformer.d.ts +2 -2
  314. package/lib/transformers/features/miscellaneous/LiteralsTransformer.js +7 -4
  315. package/lib/transformers/features/miscellaneous/LiteralsTransformer.js.map +1 -1
  316. package/lib/transformers/features/miscellaneous/MetadataTransformer.d.ts +2 -2
  317. package/lib/transformers/features/miscellaneous/MetadataTransformer.js +13 -14
  318. package/lib/transformers/features/miscellaneous/MetadataTransformer.js.map +1 -1
  319. package/lib/transformers/features/miscellaneous/PruneTransformer.d.ts +1 -1
  320. package/lib/transformers/features/miscellaneous/RandomTransformer.d.ts +2 -2
  321. package/lib/transformers/features/miscellaneous/RandomTransformer.js +7 -8
  322. package/lib/transformers/features/miscellaneous/RandomTransformer.js.map +1 -1
  323. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.d.ts +1 -1
  324. package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.d.ts +1 -1
  325. package/lib/transformers/features/parsers/AssertParseTransformer.d.ts +1 -1
  326. package/lib/transformers/features/parsers/CreateAssertParseTransformer.d.ts +1 -1
  327. package/lib/transformers/features/parsers/CreateIsParseTransformer.d.ts +1 -1
  328. package/lib/transformers/features/parsers/CreateValidateParseTransformer.d.ts +1 -1
  329. package/lib/transformers/features/parsers/IsParseTransformer.d.ts +1 -1
  330. package/lib/transformers/features/parsers/ValidateParseTransformer.d.ts +1 -1
  331. package/lib/transformers/features/stringifiers/AssertStringifyTransformer.d.ts +1 -1
  332. package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.d.ts +1 -1
  333. package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.d.ts +1 -1
  334. package/lib/transformers/features/stringifiers/CreateStringifyTransformer.d.ts +1 -1
  335. package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.d.ts +1 -1
  336. package/lib/transformers/features/stringifiers/IsStringifyTransformer.d.ts +1 -1
  337. package/lib/transformers/features/stringifiers/StringifyTransformer.d.ts +1 -1
  338. package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.d.ts +1 -1
  339. package/lib/transformers/features/validators/AssertTransformer.d.ts +1 -1
  340. package/lib/transformers/features/validators/CreateAssertTransformer.d.ts +1 -1
  341. package/lib/transformers/features/validators/CreateIsTransformer.d.ts +1 -1
  342. package/lib/transformers/features/validators/CreateValidateTransformer.d.ts +1 -1
  343. package/lib/transformers/features/validators/IsTransformer.d.ts +1 -1
  344. package/lib/transformers/features/validators/ValidateTransformer.d.ts +1 -1
  345. package/lib/transformers/internal/GenericTransformer.d.ts +3 -3
  346. package/lib/transformers/internal/GenericTransformer.js +19 -17
  347. package/lib/transformers/internal/GenericTransformer.js.map +1 -1
  348. package/lib/utils/RandomGenerator.js +9 -0
  349. package/lib/utils/RandomGenerator.js.map +1 -1
  350. package/lib/utils/Singleton.js +1 -1
  351. package/lib/utils/TsNodeUtil.d.ts +3 -3
  352. package/lib/utils/TsNodeUtil.js +7 -9
  353. package/lib/utils/TsNodeUtil.js.map +1 -1
  354. package/lib/utils/TsSymbolUtil.d.ts +3 -3
  355. package/lib/utils/TsSymbolUtil.js +137 -33
  356. package/lib/utils/TsSymbolUtil.js.map +1 -1
  357. package/lib/utils/TsTypeUtil.d.ts +7 -7
  358. package/lib/utils/TsTypeUtil.js +27 -19
  359. package/lib/utils/TsTypeUtil.js.map +1 -1
  360. package/package.json +128 -129
  361. package/src/factories/CommentFactory.ts +14 -14
  362. package/src/factories/ExpressionFactory.ts +77 -70
  363. package/src/factories/IdentifierFactory.ts +62 -63
  364. package/src/factories/LiteralFactory.ts +57 -39
  365. package/src/factories/MetadataCollection.ts +123 -121
  366. package/src/factories/MetadataFactory.ts +53 -62
  367. package/src/factories/MetadataTagFactory.ts +295 -295
  368. package/src/factories/StatementFactory.ts +20 -25
  369. package/src/factories/TemplateFactory.ts +64 -58
  370. package/src/factories/TypeFactory.ts +145 -136
  371. package/src/factories/ValueFactory.ts +15 -12
  372. package/src/factories/internal/metadata/emplace_metadata_object.ts +152 -148
  373. package/src/factories/internal/metadata/explore_metadata.ts +93 -92
  374. package/src/factories/internal/metadata/iterate_metadata.ts +63 -69
  375. package/src/factories/internal/metadata/iterate_metadata_array.ts +32 -30
  376. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
  377. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
  378. package/src/factories/internal/metadata/iterate_metadata_constant.ts +62 -59
  379. package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
  380. package/src/factories/internal/metadata/iterate_metadata_native.ts +217 -219
  381. package/src/factories/internal/metadata/iterate_metadata_object.ts +51 -49
  382. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +30 -27
  383. package/src/factories/internal/metadata/iterate_metadata_set.ts +36 -33
  384. package/src/factories/internal/metadata/iterate_metadata_template.ts +40 -38
  385. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +51 -48
  386. package/src/factories/internal/metadata/iterate_metadata_union.ts +59 -59
  387. package/src/module.ts +2038 -2038
  388. package/src/programmers/ApplicationProgrammer.ts +48 -56
  389. package/src/programmers/AssertCloneProgrammer.ts +68 -79
  390. package/src/programmers/AssertParseProgrammer.ts +66 -74
  391. package/src/programmers/AssertProgrammer.ts +274 -285
  392. package/src/programmers/AssertPruneProgrammer.ts +73 -76
  393. package/src/programmers/AssertStringifyProgrammer.ts +66 -74
  394. package/src/programmers/CheckerProgrammer.ts +897 -902
  395. package/src/programmers/CloneProgrammer.ts +387 -389
  396. package/src/programmers/FeatureProgrammer.ts +510 -501
  397. package/src/programmers/IsCloneProgrammer.ts +79 -86
  398. package/src/programmers/IsParseProgrammer.ts +72 -80
  399. package/src/programmers/IsProgrammer.ts +223 -216
  400. package/src/programmers/IsPruneProgrammer.ts +83 -81
  401. package/src/programmers/IsStringifyProgrammer.ts +77 -84
  402. package/src/programmers/LiteralsProgrammer.ts +65 -65
  403. package/src/programmers/PruneProgrammer.ts +348 -347
  404. package/src/programmers/RandomProgrammer.ts +444 -423
  405. package/src/programmers/StringifyProgrammer.ts +758 -798
  406. package/src/programmers/TypiaProgrammer.ts +141 -136
  407. package/src/programmers/ValidateCloneProgrammer.ts +93 -93
  408. package/src/programmers/ValidateParseProgrammer.ts +78 -78
  409. package/src/programmers/ValidateProgrammer.ts +317 -316
  410. package/src/programmers/ValidatePruneProgrammer.ts +86 -86
  411. package/src/programmers/ValidateStringifyProgrammer.ts +93 -92
  412. package/src/programmers/helpers/CloneJoiner.ts +138 -131
  413. package/src/programmers/helpers/FunctionImporeter.ts +56 -54
  414. package/src/programmers/helpers/ICheckEntry.ts +12 -12
  415. package/src/programmers/helpers/IExpressionEntry.ts +12 -12
  416. package/src/programmers/helpers/PruneJoiner.ts +156 -144
  417. package/src/programmers/helpers/RandomJoiner.ts +165 -161
  418. package/src/programmers/helpers/RandomRanger.ts +218 -216
  419. package/src/programmers/helpers/StringifyJoinder.ts +118 -113
  420. package/src/programmers/helpers/UnionExplorer.ts +281 -276
  421. package/src/programmers/helpers/disable_function_importer_declare.ts +21 -21
  422. package/src/programmers/internal/JSON_SCHEMA_PREFIX.ts +1 -1
  423. package/src/programmers/internal/application_array.ts +32 -32
  424. package/src/programmers/internal/application_boolean.ts +15 -15
  425. package/src/programmers/internal/application_constant.ts +26 -26
  426. package/src/programmers/internal/application_default.ts +17 -17
  427. package/src/programmers/internal/application_native.ts +36 -36
  428. package/src/programmers/internal/application_number.ts +71 -71
  429. package/src/programmers/internal/application_object.ts +162 -162
  430. package/src/programmers/internal/application_schema.ts +198 -198
  431. package/src/programmers/internal/application_string.ts +44 -44
  432. package/src/programmers/internal/application_templates.ts +25 -25
  433. package/src/programmers/internal/application_tuple.ts +27 -27
  434. package/src/programmers/internal/check_array.ts +31 -30
  435. package/src/programmers/internal/check_array_length.ts +35 -35
  436. package/src/programmers/internal/check_bigint.ts +95 -82
  437. package/src/programmers/internal/check_custom.ts +32 -31
  438. package/src/programmers/internal/check_dynamic_properties.ts +198 -194
  439. package/src/programmers/internal/check_everything.ts +28 -28
  440. package/src/programmers/internal/check_native.ts +22 -21
  441. package/src/programmers/internal/check_number.ts +177 -177
  442. package/src/programmers/internal/check_object.ts +65 -55
  443. package/src/programmers/internal/check_string.ts +27 -26
  444. package/src/programmers/internal/check_string_tags.ts +68 -67
  445. package/src/programmers/internal/check_template.ts +57 -56
  446. package/src/programmers/internal/check_union_array_like.ts +273 -272
  447. package/src/programmers/internal/check_union_tuple.ts +34 -34
  448. package/src/programmers/internal/decode_union_object.ts +75 -73
  449. package/src/programmers/internal/feature_object_entries.ts +64 -63
  450. package/src/programmers/internal/prune_object_properties.ts +63 -60
  451. package/src/programmers/internal/random_custom.ts +30 -29
  452. package/src/programmers/internal/stringify_dynamic_properties.ts +173 -167
  453. package/src/programmers/internal/stringify_native.ts +7 -7
  454. package/src/programmers/internal/stringify_regular_properties.ts +89 -83
  455. package/src/schemas/IJsonApplication.ts +13 -13
  456. package/src/schemas/IJsonComponents.ts +33 -33
  457. package/src/schemas/IJsonSchema.ts +134 -134
  458. package/src/transform.ts +4 -5
  459. package/src/transformers/CallExpressionTransformer.ts +183 -180
  460. package/src/transformers/FileTransformer.ts +50 -50
  461. package/src/transformers/IProject.ts +18 -11
  462. package/src/transformers/ImportTransformer.ts +74 -68
  463. package/src/transformers/NodeTransformer.ts +13 -13
  464. package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +107 -105
  465. package/src/transformers/features/miscellaneous/CreateRandomTransformer.ts +43 -43
  466. package/src/transformers/features/miscellaneous/LiteralsTransformer.ts +31 -31
  467. package/src/transformers/features/miscellaneous/MetadataTransformer.ts +56 -54
  468. package/src/transformers/features/miscellaneous/RandomTransformer.ts +46 -46
  469. package/src/transformers/internal/GenericTransformer.ts +101 -103
  470. package/src/utils/TsNodeUtil.ts +17 -12
  471. package/src/utils/TsSymbolUtil.ts +146 -41
  472. package/src/utils/TsTypeUtil.ts +38 -30
@@ -46,12 +46,8 @@ var __values = (this && this.__values) || function(o) {
46
46
  };
47
47
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
48
48
  };
49
- var __importDefault = (this && this.__importDefault) || function (mod) {
50
- return (mod && mod.__esModule) ? mod : { "default": mod };
51
- };
52
49
  Object.defineProperty(exports, "__esModule", { value: true });
53
50
  exports.PruneProgrammer = void 0;
54
- var tsclibrary_1 = __importDefault(require("typescript/lib/tsclibrary"));
55
51
  var ExpressionFactory_1 = require("../factories/ExpressionFactory");
56
52
  var IdentifierFactory_1 = require("../factories/IdentifierFactory");
57
53
  var MetadataCollection_1 = require("../factories/MetadataCollection");
@@ -66,16 +62,19 @@ var UnionExplorer_1 = require("./helpers/UnionExplorer");
66
62
  var decode_union_object_1 = require("./internal/decode_union_object");
67
63
  var PruneProgrammer;
68
64
  (function (PruneProgrammer) {
65
+ /**
66
+ * @deprecated Use `write()` function instead
67
+ */
69
68
  PruneProgrammer.generate = function (project, modulo) {
70
69
  return function (type, name) {
71
70
  return PruneProgrammer.write(project)(modulo)(type, name);
72
71
  };
73
72
  };
74
- PruneProgrammer.write = function (project) { return function (modulo) {
75
- var importer = new FunctionImporeter_1.FunctionImporter();
76
- return FeatureProgrammer_1.FeatureProgrammer.analyze(project)(__assign(__assign({}, configure(project)(importer)), { addition: function (collection) {
77
- var isFunctors = IsProgrammer_1.IsProgrammer.write_functors(project)(importer)(collection);
78
- var isUnioners = IsProgrammer_1.IsProgrammer.write_unioners(project)(importer)(collection);
73
+ PruneProgrammer.write = function (p) { return function (modulo) {
74
+ var importer = new FunctionImporeter_1.FunctionImporter(p.tsc);
75
+ return FeatureProgrammer_1.FeatureProgrammer.analyze(p)(__assign(__assign({}, configure(p)(importer)), { addition: function (collection) {
76
+ var isFunctors = IsProgrammer_1.IsProgrammer.write_functors(p)(importer)(collection);
77
+ var isUnioners = IsProgrammer_1.IsProgrammer.write_unioners(p)(importer)(collection);
79
78
  return __spreadArray(__spreadArray(__spreadArray([], __read(importer.declare(modulo)), false), __read(isFunctors.filter(function (_, i) {
80
79
  return importer.hasLocal("$io".concat(i));
81
80
  })), false), __read(isUnioners.filter(function (_, i) {
@@ -83,29 +82,37 @@ var PruneProgrammer;
83
82
  })), false);
84
83
  } }))(importer);
85
84
  }; };
86
- var decode = function (project) {
85
+ /* -----------------------------------------------------------
86
+ DECODERS
87
+ ----------------------------------------------------------- */
88
+ var decode = function (p) {
87
89
  return function (importer) {
88
90
  return function (input, meta, explore) {
89
91
  var e_1, _a, e_2, _b;
92
+ var tsc = p.tsc;
90
93
  if (filter(meta) === false)
91
- return tsclibrary_1.default.factory.createBlock([]);
94
+ return tsc.factory.createBlock([]);
92
95
  var unions = [];
93
96
  var _loop_1 = function (tuple) {
94
97
  unions.push({
95
98
  type: "tuple",
96
99
  is: function () {
97
- return IsProgrammer_1.IsProgrammer.decode(project, importer)(input, (function () {
100
+ return IsProgrammer_1.IsProgrammer.decode(p)(importer)(input, (function () {
98
101
  var partial = Metadata_1.Metadata.initialize();
99
102
  partial.tuples.push(tuple);
100
103
  return partial;
101
104
  })(), explore, [], []);
102
105
  },
103
106
  value: function () {
104
- return decode_tuple(project)(importer)(input, tuple, explore);
107
+ return decode_tuple(p)(importer)(input, tuple, explore);
105
108
  },
106
109
  });
107
110
  };
108
111
  try {
112
+ //----
113
+ // LIST UP UNION TYPES
114
+ //----
115
+ // TUPLES
109
116
  for (var _c = __values(meta.tuples.filter(function (t) {
110
117
  return t.some(function (e) { var _a; return filter((_a = e.rest) !== null && _a !== void 0 ? _a : e); });
111
118
  })), _d = _c.next(); !_d.done; _d = _c.next()) {
@@ -120,20 +127,24 @@ var PruneProgrammer;
120
127
  }
121
128
  finally { if (e_1) throw e_1.error; }
122
129
  }
130
+ // ARRAYS
123
131
  if (meta.arrays.filter(filter).length)
124
132
  unions.push({
125
133
  type: "array",
126
- is: function () { return ExpressionFactory_1.ExpressionFactory.isArray(input); },
134
+ is: function () { return ExpressionFactory_1.ExpressionFactory.isArray(tsc)(input); },
127
135
  value: function () {
128
- return explore_arrays(project)(importer)(input, meta.arrays, __assign(__assign({}, explore), { from: "array" }), [], []);
136
+ return explore_arrays(p)(importer)(input, meta.arrays, __assign(__assign({}, explore), { from: "array" }), [], []);
129
137
  },
130
138
  });
139
+ // BUILT-IN CLASSES
131
140
  if (meta.natives.length) {
132
141
  var _loop_2 = function (native) {
133
142
  unions.push({
134
143
  type: "native",
135
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf(native)(input); },
136
- value: function () { return tsclibrary_1.default.factory.createReturnStatement(); },
144
+ is: function () {
145
+ return ExpressionFactory_1.ExpressionFactory.isInstanceOf(tsc)(native)(input);
146
+ },
147
+ value: function () { return tsc.factory.createReturnStatement(); },
137
148
  });
138
149
  };
139
150
  try {
@@ -153,41 +164,45 @@ var PruneProgrammer;
153
164
  if (meta.sets.length)
154
165
  unions.push({
155
166
  type: "set",
156
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Set")(input); },
157
- value: function () { return tsclibrary_1.default.factory.createReturnStatement(); },
167
+ is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf(tsc)("Set")(input); },
168
+ value: function () { return tsc.factory.createReturnStatement(); },
158
169
  });
159
170
  if (meta.maps.length)
160
171
  unions.push({
161
172
  type: "map",
162
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Map")(input); },
163
- value: function () { return tsclibrary_1.default.factory.createReturnStatement(); },
173
+ is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf(tsc)("Map")(input); },
174
+ value: function () { return tsc.factory.createReturnStatement(); },
164
175
  });
176
+ // OBJECTS
165
177
  if (meta.objects.length)
166
178
  unions.push({
167
179
  type: "object",
168
180
  is: function () {
169
- return ExpressionFactory_1.ExpressionFactory.isObject({
181
+ return ExpressionFactory_1.ExpressionFactory.isObject(tsc)({
170
182
  checkNull: true,
171
183
  checkArray: false,
172
184
  })(input);
173
185
  },
174
186
  value: function () {
175
- return explore_objects(importer)(input, meta, __assign(__assign({}, explore), { from: "object" }));
187
+ return explore_objects(tsc)(importer)(input, meta, __assign(__assign({}, explore), { from: "object" }));
176
188
  },
177
189
  });
190
+ //----
191
+ // STATEMENTS
192
+ //----
178
193
  var converter = function (v) {
179
- return tsclibrary_1.default.isReturnStatement(v) || tsclibrary_1.default.isBlock(v)
194
+ return tsc.isReturnStatement(v) || tsc.isBlock(v)
180
195
  ? v
181
- : tsclibrary_1.default.factory.createExpressionStatement(v);
196
+ : tsc.factory.createExpressionStatement(v);
182
197
  };
183
198
  var statements = unions.map(function (u) {
184
- return tsclibrary_1.default.factory.createIfStatement(u.is(), converter(u.value()));
199
+ return tsc.factory.createIfStatement(u.is(), converter(u.value()));
185
200
  });
186
- return tsclibrary_1.default.factory.createBlock(statements, true);
201
+ return tsc.factory.createBlock(statements, true);
187
202
  };
188
203
  };
189
204
  };
190
- var decode_tuple = function (project) {
205
+ var decode_tuple = function (p) {
191
206
  return function (importer) {
192
207
  return function (input, tuple, explore) {
193
208
  var children = tuple
@@ -198,7 +213,7 @@ var PruneProgrammer;
198
213
  })
199
214
  .map(function (_a) {
200
215
  var _b = __read(_a, 2), elem = _b[0], index = _b[1];
201
- return decode(project)(importer)(tsclibrary_1.default.factory.createElementAccessExpression(input, index), elem, __assign(__assign({}, explore), { from: "array" }));
216
+ return decode(p)(importer)(p.tsc.factory.createElementAccessExpression(input, index), elem, __assign(__assign({}, explore), { from: "array" }));
202
217
  });
203
218
  var rest = (function () {
204
219
  if (tuple.length === 0)
@@ -207,42 +222,44 @@ var PruneProgrammer;
207
222
  var rest = last.rest;
208
223
  if (rest === null || filter(rest) === false)
209
224
  return null;
210
- return decode(project)(importer)(tsclibrary_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(input)("slice"), undefined, [tsclibrary_1.default.factory.createNumericLiteral(tuple.length - 1)]), (function () {
225
+ return decode(p)(importer)(p.tsc.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(p.tsc)(input)("slice"), undefined, [p.tsc.factory.createNumericLiteral(tuple.length - 1)]), (function () {
211
226
  var wrapper = Metadata_1.Metadata.initialize();
212
227
  wrapper.arrays.push(rest);
213
228
  return wrapper;
214
229
  })(), __assign(__assign({}, explore), { start: tuple.length - 1 }));
215
230
  })();
216
- return PruneJoiner_1.PruneJoiner.tuple(children, rest);
231
+ return PruneJoiner_1.PruneJoiner.tuple(p.tsc)(children, rest);
217
232
  };
218
233
  };
219
234
  };
220
- var decode_array = function (project) { return function (importer) {
221
- return FeatureProgrammer_1.FeatureProgrammer.decode_array(configure(project)(importer))(importer)(PruneJoiner_1.PruneJoiner.array);
235
+ var decode_array = function (p) { return function (importer) {
236
+ return FeatureProgrammer_1.FeatureProgrammer.decode_array(p.tsc)(configure(p)(importer))(importer)(PruneJoiner_1.PruneJoiner.array(p.tsc));
222
237
  }; };
223
- var decode_object = function (importer) {
224
- return FeatureProgrammer_1.FeatureProgrammer.decode_object({
238
+ var decode_object = function (tsc) { return function (importer) {
239
+ return FeatureProgrammer_1.FeatureProgrammer.decode_object(tsc)({
225
240
  trace: false,
226
241
  path: false,
227
242
  functors: FUNCTORS,
228
243
  })(importer);
229
- };
230
- var explore_arrays = function (project) { return function (importer) {
231
- return UnionExplorer_1.UnionExplorer.array({
232
- checker: IsProgrammer_1.IsProgrammer.decode(project, importer),
233
- decoder: decode_array(project)(importer),
234
- empty: tsclibrary_1.default.factory.createReturnStatement(),
235
- success: tsclibrary_1.default.factory.createTrue(),
244
+ }; };
245
+ var explore_arrays = function (p) { return function (importer) {
246
+ return UnionExplorer_1.UnionExplorer.array(p.tsc)({
247
+ checker: IsProgrammer_1.IsProgrammer.decode(p)(importer),
248
+ decoder: decode_array(p)(importer),
249
+ empty: p.tsc.factory.createReturnStatement(),
250
+ success: p.tsc.factory.createTrue(),
236
251
  failure: function (input, expected) {
237
- return create_throw_error(importer)(expected)(input);
252
+ return create_throw_error(p.tsc)(importer)(expected)(input);
238
253
  },
239
254
  });
240
255
  }; };
241
- var explore_objects = function (importer) {
242
- return function (input, meta, explore) {
243
- if (meta.objects.length === 1)
244
- return decode_object(importer)(input, meta.objects[0], explore);
245
- return tsclibrary_1.default.factory.createCallExpression(tsclibrary_1.default.factory.createIdentifier("".concat(UNIONERS).concat(meta.union_index)), undefined, [input]);
256
+ var explore_objects = function (tsc) {
257
+ return function (importer) {
258
+ return function (input, meta, explore) {
259
+ if (meta.objects.length === 1)
260
+ return decode_object(tsc)(importer)(input, meta.objects[0], explore);
261
+ return tsc.factory.createCallExpression(tsc.factory.createIdentifier("".concat(UNIONERS).concat(meta.union_index)), undefined, [input]);
262
+ };
246
263
  };
247
264
  };
248
265
  var filter = function (meta) {
@@ -251,58 +268,60 @@ var PruneProgrammer;
251
268
  meta.tuples.some(function (t) { return t.some(function (e) { var _a; return filter((_a = e.rest) !== null && _a !== void 0 ? _a : e); }); }) ||
252
269
  meta.arrays.some(function (e) { return filter(e); }));
253
270
  };
271
+ /* -----------------------------------------------------------
272
+ CONFIGURATIONS
273
+ ----------------------------------------------------------- */
254
274
  var FUNCTORS = "$po";
255
275
  var UNIONERS = "$pu";
256
- var configure = function (project) {
276
+ var configure = function (p) {
257
277
  return function (importer) { return ({
258
278
  types: {
259
279
  input: function (type, name) {
260
- return tsclibrary_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(project.checker)(type));
280
+ return p.tsc.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(p)(type));
261
281
  },
262
- output: function () { return TypeFactory_1.TypeFactory.keyword("void"); },
282
+ output: function () { return TypeFactory_1.TypeFactory.keyword(p.tsc)("void"); },
263
283
  },
264
284
  functors: FUNCTORS,
265
285
  unioners: UNIONERS,
266
286
  trace: false,
267
287
  path: false,
268
288
  initializer: initializer,
269
- decoder: decode(project)(importer),
270
- objector: objector(project)(importer),
289
+ decoder: decode(p)(importer),
290
+ objector: objector(p)(importer),
271
291
  }); };
272
292
  };
273
- var objector = function (project) {
293
+ var objector = function (p) {
274
294
  return function (importer) { return ({
275
- checker: IsProgrammer_1.IsProgrammer.decode(project, importer),
276
- decoder: decode_object(importer),
277
- joiner: PruneJoiner_1.PruneJoiner.object,
278
- unionizer: (0, decode_union_object_1.decode_union_object)(IsProgrammer_1.IsProgrammer.decode_object(importer))(decode_object(importer))(function (exp) { return exp; })(function (value, expected) {
279
- return create_throw_error(importer)(expected)(value);
295
+ checker: IsProgrammer_1.IsProgrammer.decode(p)(importer),
296
+ decoder: decode_object(p.tsc)(importer),
297
+ joiner: PruneJoiner_1.PruneJoiner.object(p.tsc),
298
+ unionizer: (0, decode_union_object_1.decode_union_object)(p.tsc)(IsProgrammer_1.IsProgrammer.decode_object(p.tsc)(importer))(decode_object(p.tsc)(importer))(function (exp) { return exp; })(function (value, expected) {
299
+ return create_throw_error(p.tsc)(importer)(expected)(value);
280
300
  }),
281
301
  failure: function (input, expected) {
282
- return create_throw_error(importer)(expected)(input);
302
+ return create_throw_error(p.tsc)(importer)(expected)(input);
283
303
  },
284
304
  }); };
285
305
  };
286
- var initializer = function (_a) {
287
- var checker = _a.checker;
288
- return function (type) {
289
- var collection = new MetadataCollection_1.MetadataCollection();
290
- var meta = MetadataFactory_1.MetadataFactory.analyze(checker)({
291
- resolve: false,
292
- constant: true,
293
- })(collection)(type);
294
- return [collection, meta];
295
- };
296
- };
297
- var create_throw_error = function (importer) {
298
- return function (expected) {
299
- return function (value) {
300
- return tsclibrary_1.default.factory.createExpressionStatement(tsclibrary_1.default.factory.createCallExpression(importer.use("throws"), [], [
301
- tsclibrary_1.default.factory.createObjectLiteralExpression([
302
- tsclibrary_1.default.factory.createPropertyAssignment("expected", tsclibrary_1.default.factory.createStringLiteral(expected)),
303
- tsclibrary_1.default.factory.createPropertyAssignment("value", value),
304
- ], true),
305
- ]));
306
+ var initializer = function (p) { return function (type) {
307
+ var collection = new MetadataCollection_1.MetadataCollection();
308
+ var meta = MetadataFactory_1.MetadataFactory.analyze(p)({
309
+ resolve: false,
310
+ constant: true,
311
+ })(collection)(type);
312
+ return [collection, meta];
313
+ }; };
314
+ var create_throw_error = function (tsc) {
315
+ return function (importer) {
316
+ return function (expected) {
317
+ return function (value) {
318
+ return tsc.factory.createExpressionStatement(tsc.factory.createCallExpression(importer.use("throws"), [], [
319
+ tsc.factory.createObjectLiteralExpression([
320
+ tsc.factory.createPropertyAssignment("expected", tsc.factory.createStringLiteral(expected)),
321
+ tsc.factory.createPropertyAssignment("value", value),
322
+ ], true),
323
+ ]));
324
+ };
306
325
  };
307
326
  };
308
327
  };
@@ -1 +1 @@
1
- {"version":3,"file":"PruneProgrammer.js","sourceRoot":"","sources":["../../src/programmers/PruneProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PruneProgrammer.js","sourceRoot":"","sources":["../../src/programmers/PruneProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,5 @@
1
- import ts from "typescript/lib/tsclibrary";
1
+ import type ts from "typescript/lib/tsclibrary";
2
2
  import { IProject } from "../transformers/IProject";
3
3
  export declare namespace RandomProgrammer {
4
- /**
5
- * @deprecated Use `write()` function instead
6
- */
7
- const generate: (project: IProject, modulo: ts.LeftHandSideExpression, init?: ts.Expression) => (type: ts.Type, name?: string) => ts.ArrowFunction;
8
- const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (init?: ts.Expression) => (type: ts.Type, name?: string) => ts.ArrowFunction;
4
+ const write: (p: IProject) => (modulo: ts.LeftHandSideExpression) => (init?: ts.Expression) => (type: ts.Type, name?: string) => ts.ArrowFunction;
9
5
  }