typia 7.0.0-dev.20241112 → 7.0.0-dev.20241114

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 (890) hide show
  1. package/lib/TypeGuardError.js +12 -31
  2. package/lib/TypeGuardError.js.map +1 -1
  3. package/lib/executable/TypiaGenerateWizard.js +52 -159
  4. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  5. package/lib/executable/TypiaPatchWizard.js +26 -78
  6. package/lib/executable/TypiaPatchWizard.js.map +1 -1
  7. package/lib/executable/TypiaSetupWizard.js +115 -250
  8. package/lib/executable/TypiaSetupWizard.js.map +1 -1
  9. package/lib/executable/setup/ArgumentParser.js +16 -60
  10. package/lib/executable/setup/ArgumentParser.js.map +1 -1
  11. package/lib/executable/setup/CommandExecutor.js +3 -3
  12. package/lib/executable/setup/CommandExecutor.js.map +1 -1
  13. package/lib/executable/setup/FileRetriever.js +4 -4
  14. package/lib/executable/setup/FileRetriever.js.map +1 -1
  15. package/lib/executable/setup/PackageManager.js +41 -97
  16. package/lib/executable/setup/PackageManager.js.map +1 -1
  17. package/lib/executable/setup/PluginConfigurator.js +36 -72
  18. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  19. package/lib/executable/typia.js +48 -95
  20. package/lib/executable/typia.js.map +1 -1
  21. package/lib/factories/CommentFactory.js +41 -103
  22. package/lib/factories/CommentFactory.js.map +1 -1
  23. package/lib/factories/ExpressionFactory.d.ts +6 -1
  24. package/lib/factories/ExpressionFactory.js +72 -65
  25. package/lib/factories/ExpressionFactory.js.map +1 -1
  26. package/lib/factories/IdentifierFactory.js +16 -20
  27. package/lib/factories/IdentifierFactory.js.map +1 -1
  28. package/lib/factories/JsonMetadataFactory.js +19 -44
  29. package/lib/factories/JsonMetadataFactory.js.map +1 -1
  30. package/lib/factories/LiteralFactory.js +12 -43
  31. package/lib/factories/LiteralFactory.js.map +1 -1
  32. package/lib/factories/MetadataCollection.js +96 -171
  33. package/lib/factories/MetadataCollection.js.map +1 -1
  34. package/lib/factories/MetadataCommentTagFactory.js +264 -383
  35. package/lib/factories/MetadataCommentTagFactory.js.map +1 -1
  36. package/lib/factories/MetadataFactory.js +81 -273
  37. package/lib/factories/MetadataFactory.js.map +1 -1
  38. package/lib/factories/MetadataTypeTagFactory.js +116 -188
  39. package/lib/factories/MetadataTypeTagFactory.js.map +1 -1
  40. package/lib/factories/MetadataTypeTagSchemaFactory.js +30 -54
  41. package/lib/factories/MetadataTypeTagSchemaFactory.js.map +1 -1
  42. package/lib/factories/NumericRangeFactory.js +14 -30
  43. package/lib/factories/NumericRangeFactory.js.map +1 -1
  44. package/lib/factories/ProtobufFactory.js +432 -1111
  45. package/lib/factories/ProtobufFactory.js.map +1 -1
  46. package/lib/factories/StatementFactory.js +24 -34
  47. package/lib/factories/StatementFactory.js.map +1 -1
  48. package/lib/factories/TemplateFactory.js +18 -20
  49. package/lib/factories/TemplateFactory.js.map +1 -1
  50. package/lib/factories/TypeFactory.js +32 -40
  51. package/lib/factories/TypeFactory.js.map +1 -1
  52. package/lib/factories/ValueFactory.js +6 -13
  53. package/lib/factories/ValueFactory.js.map +1 -1
  54. package/lib/factories/internal/metadata/MetadataHelper.js +5 -5
  55. package/lib/factories/internal/metadata/MetadataHelper.js.map +1 -1
  56. package/lib/factories/internal/metadata/emend_metadata_atomics.js +14 -41
  57. package/lib/factories/internal/metadata/emend_metadata_atomics.js.map +1 -1
  58. package/lib/factories/internal/metadata/emplace_metadata_alias.js +5 -32
  59. package/lib/factories/internal/metadata/emplace_metadata_alias.js.map +1 -1
  60. package/lib/factories/internal/metadata/emplace_metadata_array_type.js +5 -32
  61. package/lib/factories/internal/metadata/emplace_metadata_array_type.js.map +1 -1
  62. package/lib/factories/internal/metadata/emplace_metadata_object.js +100 -172
  63. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  64. package/lib/factories/internal/metadata/emplace_metadata_tuple.js +13 -40
  65. package/lib/factories/internal/metadata/emplace_metadata_tuple.js.map +1 -1
  66. package/lib/factories/internal/metadata/explore_metadata.js +6 -17
  67. package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
  68. package/lib/factories/internal/metadata/iterate_metadata.js +18 -29
  69. package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
  70. package/lib/factories/internal/metadata/iterate_metadata_alias.js +10 -12
  71. package/lib/factories/internal/metadata/iterate_metadata_alias.js.map +1 -1
  72. package/lib/factories/internal/metadata/iterate_metadata_array.js +18 -52
  73. package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
  74. package/lib/factories/internal/metadata/iterate_metadata_atomic.js +12 -12
  75. package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
  76. package/lib/factories/internal/metadata/iterate_metadata_coalesce.js +4 -4
  77. package/lib/factories/internal/metadata/iterate_metadata_coalesce.js.map +1 -1
  78. package/lib/factories/internal/metadata/iterate_metadata_collection.js +47 -120
  79. package/lib/factories/internal/metadata/iterate_metadata_collection.js.map +1 -1
  80. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js +20 -42
  81. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js.map +1 -1
  82. package/lib/factories/internal/metadata/iterate_metadata_constant.js +21 -36
  83. package/lib/factories/internal/metadata/iterate_metadata_constant.js.map +1 -1
  84. package/lib/factories/internal/metadata/iterate_metadata_escape.js +9 -20
  85. package/lib/factories/internal/metadata/iterate_metadata_escape.js.map +1 -1
  86. package/lib/factories/internal/metadata/iterate_metadata_function.js +18 -45
  87. package/lib/factories/internal/metadata/iterate_metadata_function.js.map +1 -1
  88. package/lib/factories/internal/metadata/iterate_metadata_intersection.js +94 -262
  89. package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
  90. package/lib/factories/internal/metadata/iterate_metadata_map.js +14 -25
  91. package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
  92. package/lib/factories/internal/metadata/iterate_metadata_native.js +87 -136
  93. package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
  94. package/lib/factories/internal/metadata/iterate_metadata_object.js +8 -9
  95. package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
  96. package/lib/factories/internal/metadata/iterate_metadata_set.js +14 -27
  97. package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
  98. package/lib/factories/internal/metadata/iterate_metadata_sort.js +47 -169
  99. package/lib/factories/internal/metadata/iterate_metadata_sort.js.map +1 -1
  100. package/lib/factories/internal/metadata/iterate_metadata_template.js +12 -23
  101. package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
  102. package/lib/factories/internal/metadata/iterate_metadata_tuple.js +6 -6
  103. package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
  104. package/lib/factories/internal/metadata/iterate_metadata_union.js +3 -16
  105. package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
  106. package/lib/functional.js +1 -1
  107. package/lib/functional.js.map +1 -1
  108. package/lib/http.js +1 -1
  109. package/lib/http.js.map +1 -1
  110. package/lib/index.js +1 -1
  111. package/lib/index.js.map +1 -1
  112. package/lib/internal/_ProtobufReader.js +54 -55
  113. package/lib/internal/_ProtobufReader.js.map +1 -1
  114. package/lib/internal/_ProtobufSizer.js +41 -43
  115. package/lib/internal/_ProtobufSizer.js.map +1 -1
  116. package/lib/internal/_ProtobufWriter.js +49 -50
  117. package/lib/internal/_ProtobufWriter.js.map +1 -1
  118. package/lib/internal/_accessExpressionAsString.js +4 -8
  119. package/lib/internal/_accessExpressionAsString.js.map +1 -1
  120. package/lib/internal/_assertGuard.js +2 -2
  121. package/lib/internal/_assertGuard.js.map +1 -1
  122. package/lib/internal/_functionalTypeGuardErrorFactory.js +2 -4
  123. package/lib/internal/_functionalTypeGuardErrorFactory.js.map +1 -1
  124. package/lib/internal/_httpFormDataReadArray.js +1 -1
  125. package/lib/internal/_httpFormDataReadArray.js.map +1 -1
  126. package/lib/internal/_httpFormDataReadBigint.js +8 -10
  127. package/lib/internal/_httpFormDataReadBigint.js.map +1 -1
  128. package/lib/internal/_httpFormDataReadBlob.js +7 -9
  129. package/lib/internal/_httpFormDataReadBlob.js.map +1 -1
  130. package/lib/internal/_httpFormDataReadBoolean.js +12 -14
  131. package/lib/internal/_httpFormDataReadBoolean.js.map +1 -1
  132. package/lib/internal/_httpFormDataReadFile.js +7 -9
  133. package/lib/internal/_httpFormDataReadFile.js.map +1 -1
  134. package/lib/internal/_httpFormDataReadNumber.js +9 -11
  135. package/lib/internal/_httpFormDataReadNumber.js.map +1 -1
  136. package/lib/internal/_httpFormDataReadString.js +7 -9
  137. package/lib/internal/_httpFormDataReadString.js.map +1 -1
  138. package/lib/internal/_httpHeaderReadBigint.js +2 -4
  139. package/lib/internal/_httpHeaderReadBigint.js.map +1 -1
  140. package/lib/internal/_httpHeaderReadBoolean.js +7 -9
  141. package/lib/internal/_httpHeaderReadBoolean.js.map +1 -1
  142. package/lib/internal/_httpHeaderReadNumber.js +3 -5
  143. package/lib/internal/_httpHeaderReadNumber.js.map +1 -1
  144. package/lib/internal/_httpParameterReadBigint.js +2 -4
  145. package/lib/internal/_httpParameterReadBigint.js.map +1 -1
  146. package/lib/internal/_httpParameterReadBoolean.js +7 -9
  147. package/lib/internal/_httpParameterReadBoolean.js.map +1 -1
  148. package/lib/internal/_httpParameterReadNumber.js +3 -5
  149. package/lib/internal/_httpParameterReadNumber.js.map +1 -1
  150. package/lib/internal/_httpParameterReadString.js +1 -3
  151. package/lib/internal/_httpParameterReadString.js.map +1 -1
  152. package/lib/internal/_httpQueryParseURLSearchParams.js +2 -2
  153. package/lib/internal/_httpQueryParseURLSearchParams.js.map +1 -1
  154. package/lib/internal/_httpQueryReadArray.js +1 -1
  155. package/lib/internal/_httpQueryReadArray.js.map +1 -1
  156. package/lib/internal/_httpQueryReadBigint.js +2 -4
  157. package/lib/internal/_httpQueryReadBigint.js.map +1 -1
  158. package/lib/internal/_httpQueryReadBoolean.js +10 -12
  159. package/lib/internal/_httpQueryReadBoolean.js.map +1 -1
  160. package/lib/internal/_httpQueryReadNumber.js +3 -5
  161. package/lib/internal/_httpQueryReadNumber.js.map +1 -1
  162. package/lib/internal/_httpQueryReadString.js +1 -3
  163. package/lib/internal/_httpQueryReadString.js.map +1 -1
  164. package/lib/internal/_isBetween.js +1 -3
  165. package/lib/internal/_isBetween.js.map +1 -1
  166. package/lib/internal/_isBigintString.js +1 -1
  167. package/lib/internal/_isBigintString.js.map +1 -1
  168. package/lib/internal/_isFormatByte.d.ts +1 -0
  169. package/lib/internal/_isFormatByte.js +10 -0
  170. package/lib/internal/_isFormatByte.js.map +1 -0
  171. package/lib/internal/_isFormatDate.d.ts +1 -0
  172. package/lib/internal/_isFormatDate.js +7 -0
  173. package/lib/internal/_isFormatDate.js.map +1 -0
  174. package/lib/internal/_isFormatDateTime.d.ts +1 -0
  175. package/lib/internal/_isFormatDateTime.js +7 -0
  176. package/lib/internal/_isFormatDateTime.js.map +1 -0
  177. package/lib/internal/_isFormatDuration.d.ts +1 -0
  178. package/lib/internal/_isFormatDuration.js +7 -0
  179. package/lib/internal/_isFormatDuration.js.map +1 -0
  180. package/lib/internal/_isFormatEmail.d.ts +1 -0
  181. package/lib/internal/_isFormatEmail.js +7 -0
  182. package/lib/internal/_isFormatEmail.js.map +1 -0
  183. package/lib/internal/_isFormatHostname.d.ts +1 -0
  184. package/lib/internal/_isFormatHostname.js +7 -0
  185. package/lib/internal/_isFormatHostname.js.map +1 -0
  186. package/lib/internal/_isFormatIdnEmail.d.ts +1 -0
  187. package/lib/internal/_isFormatIdnEmail.js +7 -0
  188. package/lib/internal/_isFormatIdnEmail.js.map +1 -0
  189. package/lib/internal/_isFormatIdnHostname.d.ts +1 -0
  190. package/lib/internal/_isFormatIdnHostname.js +7 -0
  191. package/lib/internal/_isFormatIdnHostname.js.map +1 -0
  192. package/lib/internal/_isFormatIpv4.d.ts +1 -0
  193. package/lib/internal/_isFormatIpv4.js +7 -0
  194. package/lib/internal/_isFormatIpv4.js.map +1 -0
  195. package/lib/internal/_isFormatIpv6.d.ts +1 -0
  196. package/lib/internal/_isFormatIpv6.js +7 -0
  197. package/lib/internal/_isFormatIpv6.js.map +1 -0
  198. package/lib/internal/_isFormatIri.d.ts +1 -0
  199. package/lib/internal/_isFormatIri.js +7 -0
  200. package/lib/internal/_isFormatIri.js.map +1 -0
  201. package/lib/internal/_isFormatIriReference.d.ts +1 -0
  202. package/lib/internal/_isFormatIriReference.js +7 -0
  203. package/lib/internal/_isFormatIriReference.js.map +1 -0
  204. package/lib/internal/_isFormatJsonPointer.d.ts +1 -0
  205. package/lib/internal/_isFormatJsonPointer.js +7 -0
  206. package/lib/internal/_isFormatJsonPointer.js.map +1 -0
  207. package/lib/internal/_isFormatPassword.d.ts +1 -0
  208. package/lib/internal/_isFormatPassword.js +6 -0
  209. package/lib/internal/_isFormatPassword.js.map +1 -0
  210. package/lib/internal/_isFormatRegex.d.ts +1 -0
  211. package/lib/internal/_isFormatRegex.js +14 -0
  212. package/lib/internal/_isFormatRegex.js.map +1 -0
  213. package/lib/internal/_isFormatRelativeJsonPointer.d.ts +1 -0
  214. package/lib/internal/_isFormatRelativeJsonPointer.js +7 -0
  215. package/lib/internal/_isFormatRelativeJsonPointer.js.map +1 -0
  216. package/lib/internal/_isFormatTime.d.ts +1 -0
  217. package/lib/internal/_isFormatTime.js +7 -0
  218. package/lib/internal/_isFormatTime.js.map +1 -0
  219. package/lib/internal/_isFormatUri.d.ts +1 -0
  220. package/lib/internal/_isFormatUri.js +8 -0
  221. package/lib/internal/_isFormatUri.js.map +1 -0
  222. package/lib/internal/_isFormatUriReference.d.ts +1 -0
  223. package/lib/internal/_isFormatUriReference.js +7 -0
  224. package/lib/internal/_isFormatUriReference.js.map +1 -0
  225. package/lib/internal/_isFormatUriTemplate.d.ts +1 -0
  226. package/lib/internal/_isFormatUriTemplate.js +7 -0
  227. package/lib/internal/_isFormatUriTemplate.js.map +1 -0
  228. package/lib/internal/_isFormatUrl.d.ts +1 -0
  229. package/lib/internal/_isFormatUrl.js +7 -0
  230. package/lib/internal/_isFormatUrl.js.map +1 -0
  231. package/lib/internal/_isFormatUuid.d.ts +1 -0
  232. package/lib/internal/_isFormatUuid.js +7 -0
  233. package/lib/internal/_isFormatUuid.js.map +1 -0
  234. package/lib/internal/_isTypeFloat.d.ts +1 -0
  235. package/lib/internal/_isTypeFloat.js +8 -0
  236. package/lib/internal/_isTypeFloat.js.map +1 -0
  237. package/lib/internal/_isTypeInt32.d.ts +1 -0
  238. package/lib/internal/_isTypeInt32.js +8 -0
  239. package/lib/internal/_isTypeInt32.js.map +1 -0
  240. package/lib/internal/_isTypeInt64.d.ts +1 -0
  241. package/lib/internal/_isTypeInt64.js +8 -0
  242. package/lib/internal/_isTypeInt64.js.map +1 -0
  243. package/lib/internal/_isTypeUint32.d.ts +1 -0
  244. package/lib/internal/_isTypeUint32.js +8 -0
  245. package/lib/internal/_isTypeUint32.js.map +1 -0
  246. package/lib/internal/_isTypeUint64.d.ts +1 -0
  247. package/lib/internal/_isTypeUint64.js +8 -0
  248. package/lib/internal/_isTypeUint64.js.map +1 -0
  249. package/lib/internal/_jsonStringifyNumber.js +3 -3
  250. package/lib/internal/_jsonStringifyNumber.js.map +1 -1
  251. package/lib/internal/_jsonStringifyRest.js +1 -1
  252. package/lib/internal/_jsonStringifyRest.js.map +1 -1
  253. package/lib/internal/_jsonStringifyString.js +5 -5
  254. package/lib/internal/_jsonStringifyString.js.map +1 -1
  255. package/lib/internal/_jsonStringifyTail.js +1 -3
  256. package/lib/internal/_jsonStringifyTail.js.map +1 -1
  257. package/lib/internal/_llmApplicationFinalize.js +10 -33
  258. package/lib/internal/_llmApplicationFinalize.js.map +1 -1
  259. package/lib/internal/_miscCloneAny.js +6 -42
  260. package/lib/internal/_miscCloneAny.js.map +1 -1
  261. package/lib/internal/_notationAny.js +3 -24
  262. package/lib/internal/_notationAny.js.map +1 -1
  263. package/lib/internal/_notationCamel.js +8 -12
  264. package/lib/internal/_notationCamel.js.map +1 -1
  265. package/lib/internal/_notationPascal.js +3 -5
  266. package/lib/internal/_notationPascal.js.map +1 -1
  267. package/lib/internal/_notationSnake.js +16 -16
  268. package/lib/internal/_notationSnake.js.map +1 -1
  269. package/lib/internal/_randomArray.js +5 -5
  270. package/lib/internal/_randomArray.js.map +1 -1
  271. package/lib/internal/_randomBigint.js +2 -4
  272. package/lib/internal/_randomBigint.js.map +1 -1
  273. package/lib/internal/_randomBoolean.js +1 -1
  274. package/lib/internal/_randomBoolean.js.map +1 -1
  275. package/lib/internal/_randomFormatByte.js +2 -2
  276. package/lib/internal/_randomFormatByte.js.map +1 -1
  277. package/lib/internal/_randomFormatDate.js +2 -2
  278. package/lib/internal/_randomFormatDate.js.map +1 -1
  279. package/lib/internal/_randomFormatDatetime.js +2 -2
  280. package/lib/internal/_randomFormatDatetime.js.map +1 -1
  281. package/lib/internal/_randomFormatDuration.js +14 -40
  282. package/lib/internal/_randomFormatDuration.js.map +1 -1
  283. package/lib/internal/_randomFormatEmail.js +7 -11
  284. package/lib/internal/_randomFormatEmail.js.map +1 -1
  285. package/lib/internal/_randomFormatHostname.js +3 -5
  286. package/lib/internal/_randomFormatHostname.js.map +1 -1
  287. package/lib/internal/_randomFormatIdnEmail.js +2 -2
  288. package/lib/internal/_randomFormatIdnEmail.js.map +1 -1
  289. package/lib/internal/_randomFormatIdnHostname.js +2 -2
  290. package/lib/internal/_randomFormatIdnHostname.js.map +1 -1
  291. package/lib/internal/_randomFormatIpv4.js +7 -11
  292. package/lib/internal/_randomFormatIpv4.js.map +1 -1
  293. package/lib/internal/_randomFormatIpv6.js +7 -11
  294. package/lib/internal/_randomFormatIpv6.js.map +1 -1
  295. package/lib/internal/_randomFormatIri.js +2 -2
  296. package/lib/internal/_randomFormatIri.js.map +1 -1
  297. package/lib/internal/_randomFormatIriReference.js +2 -2
  298. package/lib/internal/_randomFormatIriReference.js.map +1 -1
  299. package/lib/internal/_randomFormatJsonPointer.js +3 -7
  300. package/lib/internal/_randomFormatJsonPointer.js.map +1 -1
  301. package/lib/internal/_randomFormatPassword.js +6 -8
  302. package/lib/internal/_randomFormatPassword.js.map +1 -1
  303. package/lib/internal/_randomFormatRegex.js +2 -2
  304. package/lib/internal/_randomFormatRegex.js.map +1 -1
  305. package/lib/internal/_randomFormatRelativeJsonPointer.js +6 -8
  306. package/lib/internal/_randomFormatRelativeJsonPointer.js.map +1 -1
  307. package/lib/internal/_randomFormatTime.js +9 -11
  308. package/lib/internal/_randomFormatTime.js.map +1 -1
  309. package/lib/internal/_randomFormatUri.js +2 -2
  310. package/lib/internal/_randomFormatUri.js.map +1 -1
  311. package/lib/internal/_randomFormatUriReference.js +2 -2
  312. package/lib/internal/_randomFormatUriReference.js.map +1 -1
  313. package/lib/internal/_randomFormatUriTemplate.js +2 -2
  314. package/lib/internal/_randomFormatUriTemplate.js.map +1 -1
  315. package/lib/internal/_randomFormatUrl.js +7 -11
  316. package/lib/internal/_randomFormatUrl.js.map +1 -1
  317. package/lib/internal/_randomFormatUuid.js +5 -7
  318. package/lib/internal/_randomFormatUuid.js.map +1 -1
  319. package/lib/internal/_randomInteger.js +14 -16
  320. package/lib/internal/_randomInteger.js.map +1 -1
  321. package/lib/internal/_randomNumber.js +15 -15
  322. package/lib/internal/_randomNumber.js.map +1 -1
  323. package/lib/internal/_randomPattern.js +5 -5
  324. package/lib/internal/_randomPattern.js.map +1 -1
  325. package/lib/internal/_randomPick.js +7 -9
  326. package/lib/internal/_randomPick.js.map +1 -1
  327. package/lib/internal/_randomString.js +10 -12
  328. package/lib/internal/_randomString.js.map +1 -1
  329. package/lib/internal/_throwTypeGuardError.js +2 -2
  330. package/lib/internal/_throwTypeGuardError.js.map +1 -1
  331. package/lib/internal/_validateReport.js +4 -4
  332. package/lib/internal/_validateReport.js.map +1 -1
  333. package/lib/internal/private/__notationCapitalize.js +1 -3
  334. package/lib/internal/private/__notationCapitalize.js.map +1 -1
  335. package/lib/internal/private/__notationUnsnake.js +20 -22
  336. package/lib/internal/private/__notationUnsnake.js.map +1 -1
  337. package/lib/json.js +1 -1
  338. package/lib/json.js.map +1 -1
  339. package/lib/llm.js +1 -1
  340. package/lib/llm.js.map +1 -1
  341. package/lib/misc.js +1 -1
  342. package/lib/misc.js.map +1 -1
  343. package/lib/module.js +1 -1
  344. package/lib/module.js.map +1 -1
  345. package/lib/notations.js +1 -1
  346. package/lib/notations.js.map +1 -1
  347. package/lib/programmers/AssertProgrammer.js +142 -200
  348. package/lib/programmers/AssertProgrammer.js.map +1 -1
  349. package/lib/programmers/CheckerProgrammer.js +595 -801
  350. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  351. package/lib/programmers/FeatureProgrammer.js +104 -155
  352. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  353. package/lib/programmers/ImportProgrammer.js +51 -99
  354. package/lib/programmers/ImportProgrammer.js.map +1 -1
  355. package/lib/programmers/IsProgrammer.js +84 -137
  356. package/lib/programmers/IsProgrammer.js.map +1 -1
  357. package/lib/programmers/RandomProgrammer.js +403 -608
  358. package/lib/programmers/RandomProgrammer.js.map +1 -1
  359. package/lib/programmers/TypiaProgrammer.js +115 -285
  360. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  361. package/lib/programmers/ValidateProgrammer.js +120 -179
  362. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  363. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js +33 -58
  364. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js.map +1 -1
  365. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js +41 -71
  366. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js.map +1 -1
  367. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js +19 -46
  368. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js.map +1 -1
  369. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js +13 -36
  370. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js.map +1 -1
  371. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js +26 -51
  372. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js.map +1 -1
  373. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js +21 -58
  374. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js.map +1 -1
  375. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js +20 -45
  376. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js.map +1 -1
  377. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js +33 -71
  378. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js.map +1 -1
  379. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js +21 -58
  380. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js.map +1 -1
  381. package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.js +6 -6
  382. package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.js.map +1 -1
  383. package/lib/programmers/helpers/AtomicPredicator.js +6 -12
  384. package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
  385. package/lib/programmers/helpers/CloneJoiner.js +25 -56
  386. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  387. package/lib/programmers/helpers/FunctionProgrammer.js +31 -64
  388. package/lib/programmers/helpers/FunctionProgrammer.js.map +1 -1
  389. package/lib/programmers/helpers/HttpMetadataUtil.js +12 -37
  390. package/lib/programmers/helpers/HttpMetadataUtil.js.map +1 -1
  391. package/lib/programmers/helpers/NotationJoiner.js +25 -56
  392. package/lib/programmers/helpers/NotationJoiner.js.map +1 -1
  393. package/lib/programmers/helpers/OptionPredicator.js +4 -12
  394. package/lib/programmers/helpers/OptionPredicator.js.map +1 -1
  395. package/lib/programmers/helpers/ProtobufUtil.js +119 -309
  396. package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
  397. package/lib/programmers/helpers/PruneJoiner.js +36 -72
  398. package/lib/programmers/helpers/PruneJoiner.js.map +1 -1
  399. package/lib/programmers/helpers/RandomJoiner.js +43 -86
  400. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  401. package/lib/programmers/helpers/StringifyJoinder.js +35 -59
  402. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  403. package/lib/programmers/helpers/StringifyPredicator.js +5 -9
  404. package/lib/programmers/helpers/StringifyPredicator.js.map +1 -1
  405. package/lib/programmers/helpers/UnionExplorer.js +138 -194
  406. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  407. package/lib/programmers/helpers/UnionPredicator.js +26 -83
  408. package/lib/programmers/helpers/UnionPredicator.js.map +1 -1
  409. package/lib/programmers/helpers/disable_function_programmer_declare.js +10 -10
  410. package/lib/programmers/helpers/disable_function_programmer_declare.js.map +1 -1
  411. package/lib/programmers/http/HttpAssertFormDataProgrammer.js +21 -55
  412. package/lib/programmers/http/HttpAssertFormDataProgrammer.js.map +1 -1
  413. package/lib/programmers/http/HttpAssertHeadersProgrammer.js +21 -55
  414. package/lib/programmers/http/HttpAssertHeadersProgrammer.js.map +1 -1
  415. package/lib/programmers/http/HttpAssertQueryProgrammer.js +21 -55
  416. package/lib/programmers/http/HttpAssertQueryProgrammer.js.map +1 -1
  417. package/lib/programmers/http/HttpFormDataProgrammer.js +62 -93
  418. package/lib/programmers/http/HttpFormDataProgrammer.js.map +1 -1
  419. package/lib/programmers/http/HttpHeadersProgrammer.js +80 -149
  420. package/lib/programmers/http/HttpHeadersProgrammer.js.map +1 -1
  421. package/lib/programmers/http/HttpIsFormDataProgrammer.js +20 -54
  422. package/lib/programmers/http/HttpIsFormDataProgrammer.js.map +1 -1
  423. package/lib/programmers/http/HttpIsHeadersProgrammer.js +20 -54
  424. package/lib/programmers/http/HttpIsHeadersProgrammer.js.map +1 -1
  425. package/lib/programmers/http/HttpIsQueryProgrammer.js +20 -54
  426. package/lib/programmers/http/HttpIsQueryProgrammer.js.map +1 -1
  427. package/lib/programmers/http/HttpParameterProgrammer.js +22 -58
  428. package/lib/programmers/http/HttpParameterProgrammer.js.map +1 -1
  429. package/lib/programmers/http/HttpQueryProgrammer.js +60 -94
  430. package/lib/programmers/http/HttpQueryProgrammer.js.map +1 -1
  431. package/lib/programmers/http/HttpValidateFormDataProgrammer.js +19 -54
  432. package/lib/programmers/http/HttpValidateFormDataProgrammer.js.map +1 -1
  433. package/lib/programmers/http/HttpValidateHeadersProgrammer.js +19 -54
  434. package/lib/programmers/http/HttpValidateHeadersProgrammer.js.map +1 -1
  435. package/lib/programmers/http/HttpValidateQueryProgrammer.js +19 -54
  436. package/lib/programmers/http/HttpValidateQueryProgrammer.js.map +1 -1
  437. package/lib/programmers/internal/check_array_length.js +17 -17
  438. package/lib/programmers/internal/check_array_length.js.map +1 -1
  439. package/lib/programmers/internal/check_bigint.js +18 -18
  440. package/lib/programmers/internal/check_bigint.js.map +1 -1
  441. package/lib/programmers/internal/check_dynamic_key.js +57 -141
  442. package/lib/programmers/internal/check_dynamic_key.js.map +1 -1
  443. package/lib/programmers/internal/check_dynamic_properties.js +46 -96
  444. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  445. package/lib/programmers/internal/check_everything.js +6 -8
  446. package/lib/programmers/internal/check_everything.js.map +1 -1
  447. package/lib/programmers/internal/check_native.js +5 -5
  448. package/lib/programmers/internal/check_native.js.map +1 -1
  449. package/lib/programmers/internal/check_number.js +35 -63
  450. package/lib/programmers/internal/check_number.js.map +1 -1
  451. package/lib/programmers/internal/check_object.js +12 -14
  452. package/lib/programmers/internal/check_object.js.map +1 -1
  453. package/lib/programmers/internal/check_string.js +18 -18
  454. package/lib/programmers/internal/check_string.js.map +1 -1
  455. package/lib/programmers/internal/check_template.js +11 -13
  456. package/lib/programmers/internal/check_template.js.map +1 -1
  457. package/lib/programmers/internal/check_union_array_like.js +42 -57
  458. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  459. package/lib/programmers/internal/decode_union_object.js +33 -63
  460. package/lib/programmers/internal/decode_union_object.js.map +1 -1
  461. package/lib/programmers/internal/feature_object_entries.js +34 -36
  462. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  463. package/lib/programmers/internal/json_schema_alias.js +9 -9
  464. package/lib/programmers/internal/json_schema_alias.js.map +1 -1
  465. package/lib/programmers/internal/json_schema_array.js +20 -22
  466. package/lib/programmers/internal/json_schema_array.js.map +1 -1
  467. package/lib/programmers/internal/json_schema_bigint.js +7 -9
  468. package/lib/programmers/internal/json_schema_bigint.js.map +1 -1
  469. package/lib/programmers/internal/json_schema_boolean.js +7 -9
  470. package/lib/programmers/internal/json_schema_boolean.js.map +1 -1
  471. package/lib/programmers/internal/json_schema_constant.js +18 -20
  472. package/lib/programmers/internal/json_schema_constant.js.map +1 -1
  473. package/lib/programmers/internal/json_schema_description.js +2 -2
  474. package/lib/programmers/internal/json_schema_description.js.map +1 -1
  475. package/lib/programmers/internal/json_schema_discriminator.js +10 -10
  476. package/lib/programmers/internal/json_schema_discriminator.js.map +1 -1
  477. package/lib/programmers/internal/json_schema_escaped.js +19 -27
  478. package/lib/programmers/internal/json_schema_escaped.js.map +1 -1
  479. package/lib/programmers/internal/json_schema_native.js +3 -3
  480. package/lib/programmers/internal/json_schema_native.js.map +1 -1
  481. package/lib/programmers/internal/json_schema_number.js +7 -9
  482. package/lib/programmers/internal/json_schema_number.js.map +1 -1
  483. package/lib/programmers/internal/json_schema_object.js +68 -92
  484. package/lib/programmers/internal/json_schema_object.js.map +1 -1
  485. package/lib/programmers/internal/json_schema_plugin.js +8 -42
  486. package/lib/programmers/internal/json_schema_plugin.js.map +1 -1
  487. package/lib/programmers/internal/json_schema_station.js +75 -178
  488. package/lib/programmers/internal/json_schema_station.js.map +1 -1
  489. package/lib/programmers/internal/json_schema_string.js +7 -9
  490. package/lib/programmers/internal/json_schema_string.js.map +1 -1
  491. package/lib/programmers/internal/json_schema_template.js +22 -85
  492. package/lib/programmers/internal/json_schema_template.js.map +1 -1
  493. package/lib/programmers/internal/json_schema_title.js +5 -5
  494. package/lib/programmers/internal/json_schema_title.js.map +1 -1
  495. package/lib/programmers/internal/json_schema_tuple.js +10 -12
  496. package/lib/programmers/internal/json_schema_tuple.js.map +1 -1
  497. package/lib/programmers/internal/metadata_to_pattern.js +21 -57
  498. package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
  499. package/lib/programmers/internal/postfix_of_tuple.js +1 -3
  500. package/lib/programmers/internal/postfix_of_tuple.js.map +1 -1
  501. package/lib/programmers/internal/prune_object_properties.js +11 -11
  502. package/lib/programmers/internal/prune_object_properties.js.map +1 -1
  503. package/lib/programmers/internal/stringify_dynamic_properties.js +25 -49
  504. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  505. package/lib/programmers/internal/stringify_native.js +2 -4
  506. package/lib/programmers/internal/stringify_native.js.map +1 -1
  507. package/lib/programmers/internal/stringify_regular_properties.js +17 -44
  508. package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
  509. package/lib/programmers/internal/template_to_pattern.js +8 -10
  510. package/lib/programmers/internal/template_to_pattern.js.map +1 -1
  511. package/lib/programmers/internal/wrap_metadata_rest_tuple.js +6 -6
  512. package/lib/programmers/internal/wrap_metadata_rest_tuple.js.map +1 -1
  513. package/lib/programmers/json/JsonApplicationProgrammer.js +81 -143
  514. package/lib/programmers/json/JsonApplicationProgrammer.js.map +1 -1
  515. package/lib/programmers/json/JsonAssertParseProgrammer.js +18 -53
  516. package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
  517. package/lib/programmers/json/JsonAssertStringifyProgrammer.js +22 -56
  518. package/lib/programmers/json/JsonAssertStringifyProgrammer.js.map +1 -1
  519. package/lib/programmers/json/JsonIsParseProgrammer.js +18 -53
  520. package/lib/programmers/json/JsonIsParseProgrammer.js.map +1 -1
  521. package/lib/programmers/json/JsonIsStringifyProgrammer.js +21 -55
  522. package/lib/programmers/json/JsonIsStringifyProgrammer.js.map +1 -1
  523. package/lib/programmers/json/JsonSchemasProgrammer.js +35 -64
  524. package/lib/programmers/json/JsonSchemasProgrammer.js.map +1 -1
  525. package/lib/programmers/json/JsonStringifyProgrammer.js +363 -581
  526. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  527. package/lib/programmers/json/JsonValidateParseProgrammer.js +18 -53
  528. package/lib/programmers/json/JsonValidateParseProgrammer.js.map +1 -1
  529. package/lib/programmers/json/JsonValidateStringifyProgrammer.js +22 -56
  530. package/lib/programmers/json/JsonValidateStringifyProgrammer.js.map +1 -1
  531. package/lib/programmers/llm/LlmApplicationProgrammer.js +70 -131
  532. package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -1
  533. package/lib/programmers/llm/LlmSchemaProgrammer.js +65 -100
  534. package/lib/programmers/llm/LlmSchemaProgrammer.js.map +1 -1
  535. package/lib/programmers/misc/MiscAssertCloneProgrammer.js +21 -55
  536. package/lib/programmers/misc/MiscAssertCloneProgrammer.js.map +1 -1
  537. package/lib/programmers/misc/MiscAssertPruneProgrammer.js +21 -55
  538. package/lib/programmers/misc/MiscAssertPruneProgrammer.js.map +1 -1
  539. package/lib/programmers/misc/MiscCloneProgrammer.js +414 -582
  540. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  541. package/lib/programmers/misc/MiscIsCloneProgrammer.js +21 -55
  542. package/lib/programmers/misc/MiscIsCloneProgrammer.js.map +1 -1
  543. package/lib/programmers/misc/MiscIsPruneProgrammer.js +21 -55
  544. package/lib/programmers/misc/MiscIsPruneProgrammer.js.map +1 -1
  545. package/lib/programmers/misc/MiscLiteralsProgrammer.js +32 -55
  546. package/lib/programmers/misc/MiscLiteralsProgrammer.js.map +1 -1
  547. package/lib/programmers/misc/MiscPruneProgrammer.js +291 -441
  548. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  549. package/lib/programmers/misc/MiscValidateCloneProgrammer.js +21 -55
  550. package/lib/programmers/misc/MiscValidateCloneProgrammer.js.map +1 -1
  551. package/lib/programmers/misc/MiscValidatePruneProgrammer.js +21 -55
  552. package/lib/programmers/misc/MiscValidatePruneProgrammer.js.map +1 -1
  553. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js +21 -55
  554. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js.map +1 -1
  555. package/lib/programmers/notations/NotationGeneralProgrammer.js +371 -534
  556. package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
  557. package/lib/programmers/notations/NotationIsGeneralProgrammer.js +21 -55
  558. package/lib/programmers/notations/NotationIsGeneralProgrammer.js.map +1 -1
  559. package/lib/programmers/notations/NotationValidateGeneralProgrammer.js +21 -55
  560. package/lib/programmers/notations/NotationValidateGeneralProgrammer.js.map +1 -1
  561. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js +22 -55
  562. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js.map +1 -1
  563. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js +21 -55
  564. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js.map +1 -1
  565. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +156 -222
  566. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  567. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +279 -402
  568. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  569. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js +20 -54
  570. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js.map +1 -1
  571. package/lib/programmers/protobuf/ProtobufIsEncodeProgrammer.js +21 -55
  572. package/lib/programmers/protobuf/ProtobufIsEncodeProgrammer.js.map +1 -1
  573. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +68 -117
  574. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  575. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.js +19 -54
  576. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.js.map +1 -1
  577. package/lib/programmers/protobuf/ProtobufValidateEncodeProgrammer.js +21 -55
  578. package/lib/programmers/protobuf/ProtobufValidateEncodeProgrammer.js.map +1 -1
  579. package/lib/protobuf.js +1 -1
  580. package/lib/protobuf.js.map +1 -1
  581. package/lib/reflect.js +1 -1
  582. package/lib/reflect.js.map +1 -1
  583. package/lib/schemas/metadata/Metadata.js +248 -625
  584. package/lib/schemas/metadata/Metadata.js.map +1 -1
  585. package/lib/schemas/metadata/MetadataAlias.js +22 -48
  586. package/lib/schemas/metadata/MetadataAlias.js.map +1 -1
  587. package/lib/schemas/metadata/MetadataAliasType.js +9 -10
  588. package/lib/schemas/metadata/MetadataAliasType.js.map +1 -1
  589. package/lib/schemas/metadata/MetadataApplication.js +15 -18
  590. package/lib/schemas/metadata/MetadataApplication.js.map +1 -1
  591. package/lib/schemas/metadata/MetadataArray.js +23 -49
  592. package/lib/schemas/metadata/MetadataArray.js.map +1 -1
  593. package/lib/schemas/metadata/MetadataArrayType.js +9 -10
  594. package/lib/schemas/metadata/MetadataArrayType.js.map +1 -1
  595. package/lib/schemas/metadata/MetadataAtomic.js +46 -76
  596. package/lib/schemas/metadata/MetadataAtomic.js.map +1 -1
  597. package/lib/schemas/metadata/MetadataComponents.js +44 -128
  598. package/lib/schemas/metadata/MetadataComponents.js.map +1 -1
  599. package/lib/schemas/metadata/MetadataConstant.js +11 -12
  600. package/lib/schemas/metadata/MetadataConstant.js.map +1 -1
  601. package/lib/schemas/metadata/MetadataConstantValue.js +17 -18
  602. package/lib/schemas/metadata/MetadataConstantValue.js.map +1 -1
  603. package/lib/schemas/metadata/MetadataEscaped.js +12 -13
  604. package/lib/schemas/metadata/MetadataEscaped.js.map +1 -1
  605. package/lib/schemas/metadata/MetadataFunction.js +13 -14
  606. package/lib/schemas/metadata/MetadataFunction.js.map +1 -1
  607. package/lib/schemas/metadata/MetadataMap.js +19 -46
  608. package/lib/schemas/metadata/MetadataMap.js.map +1 -1
  609. package/lib/schemas/metadata/MetadataNative.js +22 -48
  610. package/lib/schemas/metadata/MetadataNative.js.map +1 -1
  611. package/lib/schemas/metadata/MetadataObject.js +23 -49
  612. package/lib/schemas/metadata/MetadataObject.js.map +1 -1
  613. package/lib/schemas/metadata/MetadataObjectType.js +32 -45
  614. package/lib/schemas/metadata/MetadataObjectType.js.map +1 -1
  615. package/lib/schemas/metadata/MetadataParameter.js +10 -11
  616. package/lib/schemas/metadata/MetadataParameter.js.map +1 -1
  617. package/lib/schemas/metadata/MetadataProperty.js +10 -11
  618. package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
  619. package/lib/schemas/metadata/MetadataSet.js +19 -46
  620. package/lib/schemas/metadata/MetadataSet.js.map +1 -1
  621. package/lib/schemas/metadata/MetadataTemplate.js +27 -55
  622. package/lib/schemas/metadata/MetadataTemplate.js.map +1 -1
  623. package/lib/schemas/metadata/MetadataTuple.js +8 -9
  624. package/lib/schemas/metadata/MetadataTuple.js.map +1 -1
  625. package/lib/schemas/metadata/MetadataTupleType.js +12 -13
  626. package/lib/schemas/metadata/MetadataTupleType.js.map +1 -1
  627. package/lib/tags/Format.d.ts +6 -4
  628. package/lib/tags/Type.d.ts +4 -4
  629. package/lib/tags/internal/FormatCheatSheet.js +23 -25
  630. package/lib/tags/internal/FormatCheatSheet.js.map +1 -1
  631. package/lib/transform.js +8 -8
  632. package/lib/transform.js.map +1 -1
  633. package/lib/transformers/CallExpressionTransformer.js +370 -480
  634. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  635. package/lib/transformers/FileTransformer.js +40 -85
  636. package/lib/transformers/FileTransformer.js.map +1 -1
  637. package/lib/transformers/ImportTransformer.js +25 -33
  638. package/lib/transformers/ImportTransformer.js.map +1 -1
  639. package/lib/transformers/NodeTransformer.js +8 -10
  640. package/lib/transformers/NodeTransformer.js.map +1 -1
  641. package/lib/transformers/TransformerError.js +25 -44
  642. package/lib/transformers/TransformerError.js.map +1 -1
  643. package/lib/transformers/features/AssertTransformer.js +9 -24
  644. package/lib/transformers/features/AssertTransformer.js.map +1 -1
  645. package/lib/transformers/features/CreateAssertTransformer.js +9 -24
  646. package/lib/transformers/features/CreateAssertTransformer.js.map +1 -1
  647. package/lib/transformers/features/CreateIsTransformer.js +3 -18
  648. package/lib/transformers/features/CreateIsTransformer.js.map +1 -1
  649. package/lib/transformers/features/CreateRandomTransformer.js +7 -18
  650. package/lib/transformers/features/CreateRandomTransformer.js.map +1 -1
  651. package/lib/transformers/features/CreateValidateTransformer.js +3 -18
  652. package/lib/transformers/features/CreateValidateTransformer.js.map +1 -1
  653. package/lib/transformers/features/IsTransformer.js +3 -18
  654. package/lib/transformers/features/IsTransformer.js.map +1 -1
  655. package/lib/transformers/features/RandomTransformer.js +9 -9
  656. package/lib/transformers/features/RandomTransformer.js.map +1 -1
  657. package/lib/transformers/features/ValidateTransformer.js +3 -18
  658. package/lib/transformers/features/ValidateTransformer.js.map +1 -1
  659. package/lib/transformers/features/functional/FunctionalGenericTransformer.js +19 -32
  660. package/lib/transformers/features/functional/FunctionalGenericTransformer.js.map +1 -1
  661. package/lib/transformers/features/http/CreateHttpAssertFormDataTransformer.js +3 -16
  662. package/lib/transformers/features/http/CreateHttpAssertFormDataTransformer.js.map +1 -1
  663. package/lib/transformers/features/http/CreateHttpAssertHeadersTransformer.js +3 -16
  664. package/lib/transformers/features/http/CreateHttpAssertHeadersTransformer.js.map +1 -1
  665. package/lib/transformers/features/http/CreateHttpAssertQueryTransformer.js +3 -16
  666. package/lib/transformers/features/http/CreateHttpAssertQueryTransformer.js.map +1 -1
  667. package/lib/transformers/features/http/CreateHttpFormDataTransformer.js +3 -16
  668. package/lib/transformers/features/http/CreateHttpFormDataTransformer.js.map +1 -1
  669. package/lib/transformers/features/http/CreateHttpHeadersTransformer.js +3 -16
  670. package/lib/transformers/features/http/CreateHttpHeadersTransformer.js.map +1 -1
  671. package/lib/transformers/features/http/CreateHttpIsFormDataTransformer.js +3 -16
  672. package/lib/transformers/features/http/CreateHttpIsFormDataTransformer.js.map +1 -1
  673. package/lib/transformers/features/http/CreateHttpIsHeadersTransformer.js +3 -16
  674. package/lib/transformers/features/http/CreateHttpIsHeadersTransformer.js.map +1 -1
  675. package/lib/transformers/features/http/CreateHttpIsQueryTransformer.js +3 -16
  676. package/lib/transformers/features/http/CreateHttpIsQueryTransformer.js.map +1 -1
  677. package/lib/transformers/features/http/CreateHttpParameterTransformer.js +3 -16
  678. package/lib/transformers/features/http/CreateHttpParameterTransformer.js.map +1 -1
  679. package/lib/transformers/features/http/CreateHttpQueryTransformer.js +3 -16
  680. package/lib/transformers/features/http/CreateHttpQueryTransformer.js.map +1 -1
  681. package/lib/transformers/features/http/CreateHttpValidateFormDataTransformer.js +3 -16
  682. package/lib/transformers/features/http/CreateHttpValidateFormDataTransformer.js.map +1 -1
  683. package/lib/transformers/features/http/CreateHttpValidateHeadersTransformer.js +3 -16
  684. package/lib/transformers/features/http/CreateHttpValidateHeadersTransformer.js.map +1 -1
  685. package/lib/transformers/features/http/CreateHttpValidateQueryTransformer.js +3 -16
  686. package/lib/transformers/features/http/CreateHttpValidateQueryTransformer.js.map +1 -1
  687. package/lib/transformers/features/http/HttpAssertFormDataTransformer.js +3 -16
  688. package/lib/transformers/features/http/HttpAssertFormDataTransformer.js.map +1 -1
  689. package/lib/transformers/features/http/HttpAssertHeadersTransformer.js +3 -16
  690. package/lib/transformers/features/http/HttpAssertHeadersTransformer.js.map +1 -1
  691. package/lib/transformers/features/http/HttpAssertQueryTransformer.js +3 -16
  692. package/lib/transformers/features/http/HttpAssertQueryTransformer.js.map +1 -1
  693. package/lib/transformers/features/http/HttpFormDataTransformer.js +3 -16
  694. package/lib/transformers/features/http/HttpFormDataTransformer.js.map +1 -1
  695. package/lib/transformers/features/http/HttpHeadersTransformer.js +3 -16
  696. package/lib/transformers/features/http/HttpHeadersTransformer.js.map +1 -1
  697. package/lib/transformers/features/http/HttpIsFormDataTransformer.js +3 -16
  698. package/lib/transformers/features/http/HttpIsFormDataTransformer.js.map +1 -1
  699. package/lib/transformers/features/http/HttpIsHeadersTransformer.js +3 -16
  700. package/lib/transformers/features/http/HttpIsHeadersTransformer.js.map +1 -1
  701. package/lib/transformers/features/http/HttpIsQueryTransformer.js +3 -16
  702. package/lib/transformers/features/http/HttpIsQueryTransformer.js.map +1 -1
  703. package/lib/transformers/features/http/HttpParameterTransformer.js +3 -16
  704. package/lib/transformers/features/http/HttpParameterTransformer.js.map +1 -1
  705. package/lib/transformers/features/http/HttpQueryTransformer.js +3 -16
  706. package/lib/transformers/features/http/HttpQueryTransformer.js.map +1 -1
  707. package/lib/transformers/features/http/HttpValidateFormDataTransformer.js +3 -16
  708. package/lib/transformers/features/http/HttpValidateFormDataTransformer.js.map +1 -1
  709. package/lib/transformers/features/http/HttpValidateHeadersTransformer.js +3 -16
  710. package/lib/transformers/features/http/HttpValidateHeadersTransformer.js.map +1 -1
  711. package/lib/transformers/features/http/HttpValidateQueryTransformer.js +3 -16
  712. package/lib/transformers/features/http/HttpValidateQueryTransformer.js.map +1 -1
  713. package/lib/transformers/features/json/JsonApplicationTransformer.js +41 -43
  714. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  715. package/lib/transformers/features/json/JsonAssertParseTransformer.js +3 -16
  716. package/lib/transformers/features/json/JsonAssertParseTransformer.js.map +1 -1
  717. package/lib/transformers/features/json/JsonAssertStringifyTransformer.js +3 -16
  718. package/lib/transformers/features/json/JsonAssertStringifyTransformer.js.map +1 -1
  719. package/lib/transformers/features/json/JsonCreateAssertParseTransformer.js +3 -16
  720. package/lib/transformers/features/json/JsonCreateAssertParseTransformer.js.map +1 -1
  721. package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.js +3 -16
  722. package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.js.map +1 -1
  723. package/lib/transformers/features/json/JsonCreateIsParseTransformer.js +3 -16
  724. package/lib/transformers/features/json/JsonCreateIsParseTransformer.js.map +1 -1
  725. package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.js +3 -16
  726. package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.js.map +1 -1
  727. package/lib/transformers/features/json/JsonCreateStringifyTransformer.js +3 -16
  728. package/lib/transformers/features/json/JsonCreateStringifyTransformer.js.map +1 -1
  729. package/lib/transformers/features/json/JsonCreateValidateParseTransformer.js +3 -16
  730. package/lib/transformers/features/json/JsonCreateValidateParseTransformer.js.map +1 -1
  731. package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.js +3 -16
  732. package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.js.map +1 -1
  733. package/lib/transformers/features/json/JsonIsParseTransformer.js +3 -16
  734. package/lib/transformers/features/json/JsonIsParseTransformer.js.map +1 -1
  735. package/lib/transformers/features/json/JsonIsStringifyTransformer.js +3 -16
  736. package/lib/transformers/features/json/JsonIsStringifyTransformer.js.map +1 -1
  737. package/lib/transformers/features/json/JsonSchemasTransformer.js +62 -115
  738. package/lib/transformers/features/json/JsonSchemasTransformer.js.map +1 -1
  739. package/lib/transformers/features/json/JsonStringifyTransformer.js +3 -16
  740. package/lib/transformers/features/json/JsonStringifyTransformer.js.map +1 -1
  741. package/lib/transformers/features/json/JsonValidateParseTransformer.js +3 -16
  742. package/lib/transformers/features/json/JsonValidateParseTransformer.js.map +1 -1
  743. package/lib/transformers/features/json/JsonValidateStringifyTransformer.js +3 -16
  744. package/lib/transformers/features/json/JsonValidateStringifyTransformer.js.map +1 -1
  745. package/lib/transformers/features/llm/LlmApplicationTransformer.js +52 -80
  746. package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
  747. package/lib/transformers/features/llm/LlmSchemaTransformer.js +43 -47
  748. package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
  749. package/lib/transformers/features/misc/MiscAssertCloneTransformer.js +3 -16
  750. package/lib/transformers/features/misc/MiscAssertCloneTransformer.js.map +1 -1
  751. package/lib/transformers/features/misc/MiscAssertPruneTransformer.js +3 -16
  752. package/lib/transformers/features/misc/MiscAssertPruneTransformer.js.map +1 -1
  753. package/lib/transformers/features/misc/MiscCloneTransformer.js +3 -16
  754. package/lib/transformers/features/misc/MiscCloneTransformer.js.map +1 -1
  755. package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.js +3 -16
  756. package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.js.map +1 -1
  757. package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.js +3 -16
  758. package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.js.map +1 -1
  759. package/lib/transformers/features/misc/MiscCreateCloneTransformer.js +3 -16
  760. package/lib/transformers/features/misc/MiscCreateCloneTransformer.js.map +1 -1
  761. package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.js +3 -16
  762. package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.js.map +1 -1
  763. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js +3 -16
  764. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js.map +1 -1
  765. package/lib/transformers/features/misc/MiscCreatePruneTransformer.js +3 -16
  766. package/lib/transformers/features/misc/MiscCreatePruneTransformer.js.map +1 -1
  767. package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.js +3 -16
  768. package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.js.map +1 -1
  769. package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.js +3 -16
  770. package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.js.map +1 -1
  771. package/lib/transformers/features/misc/MiscIsCloneTransformer.js +3 -16
  772. package/lib/transformers/features/misc/MiscIsCloneTransformer.js.map +1 -1
  773. package/lib/transformers/features/misc/MiscIsPruneTransformer.js +3 -16
  774. package/lib/transformers/features/misc/MiscIsPruneTransformer.js.map +1 -1
  775. package/lib/transformers/features/misc/MiscLiteralsTransformer.js +6 -6
  776. package/lib/transformers/features/misc/MiscLiteralsTransformer.js.map +1 -1
  777. package/lib/transformers/features/misc/MiscPruneTransformer.js +3 -16
  778. package/lib/transformers/features/misc/MiscPruneTransformer.js.map +1 -1
  779. package/lib/transformers/features/misc/MiscValidateCloneTransformer.js +3 -16
  780. package/lib/transformers/features/misc/MiscValidateCloneTransformer.js.map +1 -1
  781. package/lib/transformers/features/misc/MiscValidatePruneTransformer.js +3 -16
  782. package/lib/transformers/features/misc/MiscValidatePruneTransformer.js.map +1 -1
  783. package/lib/transformers/features/notations/NotationAssertGeneralTransformer.js +4 -19
  784. package/lib/transformers/features/notations/NotationAssertGeneralTransformer.js.map +1 -1
  785. package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.js +4 -19
  786. package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.js.map +1 -1
  787. package/lib/transformers/features/notations/NotationCreateGeneralTransformer.js +4 -19
  788. package/lib/transformers/features/notations/NotationCreateGeneralTransformer.js.map +1 -1
  789. package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.js +4 -19
  790. package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.js.map +1 -1
  791. package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.js +4 -19
  792. package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.js.map +1 -1
  793. package/lib/transformers/features/notations/NotationGeneralTransformer.js +3 -18
  794. package/lib/transformers/features/notations/NotationGeneralTransformer.js.map +1 -1
  795. package/lib/transformers/features/notations/NotationIsGeneralTransformer.js +4 -19
  796. package/lib/transformers/features/notations/NotationIsGeneralTransformer.js.map +1 -1
  797. package/lib/transformers/features/notations/NotationValidateGeneralTransformer.js +4 -19
  798. package/lib/transformers/features/notations/NotationValidateGeneralTransformer.js.map +1 -1
  799. package/lib/transformers/features/protobuf/ProtobufAssertDecodeTransformer.js +3 -16
  800. package/lib/transformers/features/protobuf/ProtobufAssertDecodeTransformer.js.map +1 -1
  801. package/lib/transformers/features/protobuf/ProtobufAssertEncodeTransformer.js +3 -16
  802. package/lib/transformers/features/protobuf/ProtobufAssertEncodeTransformer.js.map +1 -1
  803. package/lib/transformers/features/protobuf/ProtobufCreateAssertDecodeTransformer.js +3 -16
  804. package/lib/transformers/features/protobuf/ProtobufCreateAssertDecodeTransformer.js.map +1 -1
  805. package/lib/transformers/features/protobuf/ProtobufCreateAssertEncodeTransformer.js +3 -16
  806. package/lib/transformers/features/protobuf/ProtobufCreateAssertEncodeTransformer.js.map +1 -1
  807. package/lib/transformers/features/protobuf/ProtobufCreateDecodeTransformer.js +3 -16
  808. package/lib/transformers/features/protobuf/ProtobufCreateDecodeTransformer.js.map +1 -1
  809. package/lib/transformers/features/protobuf/ProtobufCreateEncodeTransformer.js +3 -16
  810. package/lib/transformers/features/protobuf/ProtobufCreateEncodeTransformer.js.map +1 -1
  811. package/lib/transformers/features/protobuf/ProtobufCreateIsDecodeTransformer.js +3 -16
  812. package/lib/transformers/features/protobuf/ProtobufCreateIsDecodeTransformer.js.map +1 -1
  813. package/lib/transformers/features/protobuf/ProtobufCreateIsEncodeTransformer.js +3 -16
  814. package/lib/transformers/features/protobuf/ProtobufCreateIsEncodeTransformer.js.map +1 -1
  815. package/lib/transformers/features/protobuf/ProtobufCreateValidateDecodeTransformer.js +3 -16
  816. package/lib/transformers/features/protobuf/ProtobufCreateValidateDecodeTransformer.js.map +1 -1
  817. package/lib/transformers/features/protobuf/ProtobufCreateValidateEncodeTransformer.js +3 -16
  818. package/lib/transformers/features/protobuf/ProtobufCreateValidateEncodeTransformer.js.map +1 -1
  819. package/lib/transformers/features/protobuf/ProtobufDecodeTransformer.js +3 -16
  820. package/lib/transformers/features/protobuf/ProtobufDecodeTransformer.js.map +1 -1
  821. package/lib/transformers/features/protobuf/ProtobufEncodeTransformer.js +3 -16
  822. package/lib/transformers/features/protobuf/ProtobufEncodeTransformer.js.map +1 -1
  823. package/lib/transformers/features/protobuf/ProtobufIsDecodeTransformer.js +3 -16
  824. package/lib/transformers/features/protobuf/ProtobufIsDecodeTransformer.js.map +1 -1
  825. package/lib/transformers/features/protobuf/ProtobufIsEncodeTransformer.js +3 -16
  826. package/lib/transformers/features/protobuf/ProtobufIsEncodeTransformer.js.map +1 -1
  827. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js +5 -5
  828. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js.map +1 -1
  829. package/lib/transformers/features/protobuf/ProtobufValidateDecodeTransformer.js +3 -16
  830. package/lib/transformers/features/protobuf/ProtobufValidateDecodeTransformer.js.map +1 -1
  831. package/lib/transformers/features/protobuf/ProtobufValidateEncodeTransformer.js +3 -16
  832. package/lib/transformers/features/protobuf/ProtobufValidateEncodeTransformer.js.map +1 -1
  833. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js +17 -19
  834. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js.map +1 -1
  835. package/lib/transformers/features/reflect/ReflectNameTransformer.js +15 -15
  836. package/lib/transformers/features/reflect/ReflectNameTransformer.js.map +1 -1
  837. package/lib/transformers/internal/GenericTransformer.js +21 -39
  838. package/lib/transformers/internal/GenericTransformer.js.map +1 -1
  839. package/lib/utils/ArrayUtil.js +9 -12
  840. package/lib/utils/ArrayUtil.js.map +1 -1
  841. package/lib/utils/Escaper.js +3 -5
  842. package/lib/utils/Escaper.js.map +1 -1
  843. package/lib/utils/MapUtil.js +3 -3
  844. package/lib/utils/MapUtil.js.map +1 -1
  845. package/lib/utils/NamingConvention.js +43 -51
  846. package/lib/utils/NamingConvention.js.map +1 -1
  847. package/lib/utils/PatternUtil.js +9 -34
  848. package/lib/utils/PatternUtil.js.map +1 -1
  849. package/lib/utils/ProtobufNameEncoder.js +8 -59
  850. package/lib/utils/ProtobufNameEncoder.js.map +1 -1
  851. package/lib/utils/Singleton.js +7 -37
  852. package/lib/utils/Singleton.js.map +1 -1
  853. package/lib/utils/StringUtil.js +3 -5
  854. package/lib/utils/StringUtil.js.map +1 -1
  855. package/package.json +1 -1
  856. package/src/factories/ExpressionFactory.ts +62 -8
  857. package/src/factories/MetadataFactory.ts +17 -20
  858. package/src/internal/_isFormatByte.ts +7 -0
  859. package/src/internal/_isFormatDate.ts +3 -0
  860. package/src/internal/_isFormatDateTime.ts +4 -0
  861. package/src/internal/_isFormatDuration.ts +4 -0
  862. package/src/internal/_isFormatEmail.ts +4 -0
  863. package/src/internal/_isFormatHostname.ts +4 -0
  864. package/src/internal/_isFormatIdnEmail.ts +4 -0
  865. package/src/internal/_isFormatIdnHostname.ts +4 -0
  866. package/src/internal/_isFormatIpv4.ts +4 -0
  867. package/src/internal/_isFormatIpv6.ts +4 -0
  868. package/src/internal/_isFormatIri.ts +3 -0
  869. package/src/internal/_isFormatIriReference.ts +4 -0
  870. package/src/internal/_isFormatJsonPointer.ts +3 -0
  871. package/src/internal/_isFormatPassword.ts +1 -0
  872. package/src/internal/_isFormatRegex.ts +8 -0
  873. package/src/internal/_isFormatRelativeJsonPointer.ts +4 -0
  874. package/src/internal/_isFormatTime.ts +4 -0
  875. package/src/internal/_isFormatUri.ts +6 -0
  876. package/src/internal/_isFormatUriReference.ts +5 -0
  877. package/src/internal/_isFormatUriTemplate.ts +4 -0
  878. package/src/internal/_isFormatUrl.ts +4 -0
  879. package/src/internal/_isFormatUuid.ts +3 -0
  880. package/src/internal/_isTypeFloat.ts +5 -0
  881. package/src/internal/_isTypeInt32.ts +5 -0
  882. package/src/internal/_isTypeInt64.ts +5 -0
  883. package/src/internal/_isTypeUint32.ts +5 -0
  884. package/src/internal/_isTypeUint64.ts +5 -0
  885. package/src/programmers/internal/check_array_length.ts +5 -4
  886. package/src/programmers/internal/check_bigint.ts +5 -4
  887. package/src/programmers/internal/check_number.ts +5 -4
  888. package/src/programmers/internal/check_string.ts +5 -4
  889. package/src/tags/Format.ts +38 -4
  890. package/src/tags/Type.ts +5 -5
@@ -1,144 +1,111 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __values = (this && this.__values) || function(o) {
14
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
15
- if (m) return m.call(o);
16
- if (o && typeof o.length === "number") return {
17
- next: function () {
18
- if (o && i >= o.length) o = void 0;
19
- return { value: o && o[i++], done: !o };
20
- }
21
- };
22
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
23
- };
24
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
25
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
26
4
  };
27
5
  Object.defineProperty(exports, "__esModule", { value: true });
28
6
  exports.MiscCloneProgrammer = void 0;
29
- var typescript_1 = __importDefault(require("typescript"));
30
- var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
31
- var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
32
- var MetadataCollection_1 = require("../../factories/MetadataCollection");
33
- var MetadataFactory_1 = require("../../factories/MetadataFactory");
34
- var StatementFactory_1 = require("../../factories/StatementFactory");
35
- var TypeFactory_1 = require("../../factories/TypeFactory");
36
- var Metadata_1 = require("../../schemas/metadata/Metadata");
37
- var MetadataArray_1 = require("../../schemas/metadata/MetadataArray");
38
- var TransformerError_1 = require("../../transformers/TransformerError");
39
- var FeatureProgrammer_1 = require("../FeatureProgrammer");
40
- var IsProgrammer_1 = require("../IsProgrammer");
41
- var CloneJoiner_1 = require("../helpers/CloneJoiner");
42
- var FunctionProgrammer_1 = require("../helpers/FunctionProgrammer");
43
- var UnionExplorer_1 = require("../helpers/UnionExplorer");
44
- var decode_union_object_1 = require("../internal/decode_union_object");
45
- var postfix_of_tuple_1 = require("../internal/postfix_of_tuple");
46
- var wrap_metadata_rest_tuple_1 = require("../internal/wrap_metadata_rest_tuple");
7
+ const typescript_1 = __importDefault(require("typescript"));
8
+ const ExpressionFactory_1 = require("../../factories/ExpressionFactory");
9
+ const IdentifierFactory_1 = require("../../factories/IdentifierFactory");
10
+ const MetadataCollection_1 = require("../../factories/MetadataCollection");
11
+ const MetadataFactory_1 = require("../../factories/MetadataFactory");
12
+ const StatementFactory_1 = require("../../factories/StatementFactory");
13
+ const TypeFactory_1 = require("../../factories/TypeFactory");
14
+ const Metadata_1 = require("../../schemas/metadata/Metadata");
15
+ const MetadataArray_1 = require("../../schemas/metadata/MetadataArray");
16
+ const TransformerError_1 = require("../../transformers/TransformerError");
17
+ const FeatureProgrammer_1 = require("../FeatureProgrammer");
18
+ const IsProgrammer_1 = require("../IsProgrammer");
19
+ const CloneJoiner_1 = require("../helpers/CloneJoiner");
20
+ const FunctionProgrammer_1 = require("../helpers/FunctionProgrammer");
21
+ const UnionExplorer_1 = require("../helpers/UnionExplorer");
22
+ const decode_union_object_1 = require("../internal/decode_union_object");
23
+ const postfix_of_tuple_1 = require("../internal/postfix_of_tuple");
24
+ const wrap_metadata_rest_tuple_1 = require("../internal/wrap_metadata_rest_tuple");
47
25
  var MiscCloneProgrammer;
48
26
  (function (MiscCloneProgrammer) {
49
- MiscCloneProgrammer.decompose = function (props) {
50
- var config = configure(props);
27
+ MiscCloneProgrammer.decompose = (props) => {
28
+ const config = configure(props);
51
29
  if (props.validated === false)
52
- config.addition = function (collection) {
53
- return IsProgrammer_1.IsProgrammer.write_function_statements({
54
- context: props.context,
55
- functor: props.functor,
56
- collection: collection,
57
- });
58
- };
59
- var composed = FeatureProgrammer_1.FeatureProgrammer.compose(__assign(__assign({}, props), { config: config }));
30
+ config.addition = (collection) => IsProgrammer_1.IsProgrammer.write_function_statements({
31
+ context: props.context,
32
+ functor: props.functor,
33
+ collection,
34
+ });
35
+ const composed = FeatureProgrammer_1.FeatureProgrammer.compose(Object.assign(Object.assign({}, props), { config }));
60
36
  return {
61
37
  functions: composed.functions,
62
38
  statements: composed.statements,
63
39
  arrow: typescript_1.default.factory.createArrowFunction(undefined, undefined, composed.parameters, composed.response, undefined, composed.body),
64
40
  };
65
41
  };
66
- MiscCloneProgrammer.write = function (props) {
67
- var functor = new FunctionProgrammer_1.FunctionProgrammer(props.modulo.getText());
68
- var result = MiscCloneProgrammer.decompose(__assign(__assign({}, props), { validated: false, functor: functor }));
42
+ MiscCloneProgrammer.write = (props) => {
43
+ const functor = new FunctionProgrammer_1.FunctionProgrammer(props.modulo.getText());
44
+ const result = MiscCloneProgrammer.decompose(Object.assign(Object.assign({}, props), { validated: false, functor }));
69
45
  return FeatureProgrammer_1.FeatureProgrammer.writeDecomposed({
70
46
  modulo: props.modulo,
71
- functor: functor,
72
- result: result,
73
- });
74
- };
75
- var write_array_functions = function (props) {
76
- return props.collection
77
- .arrays()
78
- .filter(function (a) { return a.recursive; })
79
- .map(function (type, i) {
80
- return StatementFactory_1.StatementFactory.constant({
81
- name: "".concat(props.config.prefix, "a").concat(i),
82
- value: typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
83
- config: props.config,
84
- type: TypeFactory_1.TypeFactory.keyword("any"),
85
- input: typescript_1.default.factory.createIdentifier("input"),
86
- }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_array_inline({
87
- config: props.config,
88
- functor: props.functor,
89
- input: typescript_1.default.factory.createIdentifier("input"),
90
- array: MetadataArray_1.MetadataArray.create({
91
- type: type,
92
- tags: [],
93
- }),
94
- explore: {
95
- tracable: props.config.trace,
96
- source: "function",
97
- from: "array",
98
- postfix: "",
99
- },
100
- })),
101
- });
102
- });
103
- };
104
- var write_tuple_functions = function (props) {
105
- return props.collection
106
- .tuples()
107
- .filter(function (t) { return t.recursive; })
108
- .map(function (tuple, i) {
109
- return StatementFactory_1.StatementFactory.constant({
110
- name: "".concat(props.config.prefix, "t").concat(i),
111
- value: typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
112
- config: props.config,
113
- type: TypeFactory_1.TypeFactory.keyword("any"),
114
- input: typescript_1.default.factory.createIdentifier("input"),
115
- }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_tuple_inline({
116
- config: props.config,
117
- context: props.context,
118
- functor: props.functor,
119
- input: typescript_1.default.factory.createIdentifier("input"),
120
- tuple: tuple,
121
- explore: {
122
- tracable: props.config.trace,
123
- source: "function",
124
- from: "array",
125
- postfix: "",
126
- },
127
- })),
128
- });
47
+ functor,
48
+ result,
129
49
  });
130
50
  };
51
+ const write_array_functions = (props) => props.collection
52
+ .arrays()
53
+ .filter((a) => a.recursive)
54
+ .map((type, i) => StatementFactory_1.StatementFactory.constant({
55
+ name: `${props.config.prefix}a${i}`,
56
+ value: typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
57
+ config: props.config,
58
+ type: TypeFactory_1.TypeFactory.keyword("any"),
59
+ input: typescript_1.default.factory.createIdentifier("input"),
60
+ }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_array_inline({
61
+ config: props.config,
62
+ functor: props.functor,
63
+ input: typescript_1.default.factory.createIdentifier("input"),
64
+ array: MetadataArray_1.MetadataArray.create({
65
+ type,
66
+ tags: [],
67
+ }),
68
+ explore: {
69
+ tracable: props.config.trace,
70
+ source: "function",
71
+ from: "array",
72
+ postfix: "",
73
+ },
74
+ })),
75
+ }));
76
+ const write_tuple_functions = (props) => props.collection
77
+ .tuples()
78
+ .filter((t) => t.recursive)
79
+ .map((tuple, i) => StatementFactory_1.StatementFactory.constant({
80
+ name: `${props.config.prefix}t${i}`,
81
+ value: typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
82
+ config: props.config,
83
+ type: TypeFactory_1.TypeFactory.keyword("any"),
84
+ input: typescript_1.default.factory.createIdentifier("input"),
85
+ }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_tuple_inline({
86
+ config: props.config,
87
+ context: props.context,
88
+ functor: props.functor,
89
+ input: typescript_1.default.factory.createIdentifier("input"),
90
+ tuple,
91
+ explore: {
92
+ tracable: props.config.trace,
93
+ source: "function",
94
+ from: "array",
95
+ postfix: "",
96
+ },
97
+ })),
98
+ }));
131
99
  /* -----------------------------------------------------------
132
100
  DECODERS
133
101
  ----------------------------------------------------------- */
134
- var decode = function (props) {
135
- var e_1, _a, e_2, _b, e_3, _c;
102
+ const decode = (props) => {
136
103
  // ANY TYPE
137
104
  if (props.metadata.any ||
138
- props.metadata.arrays.some(function (a) { return a.type.value.any; }) ||
139
- props.metadata.tuples.some(function (t) { return !!t.type.elements.length && t.type.elements.every(function (e) { return e.any; }); }))
105
+ props.metadata.arrays.some((a) => a.type.value.any) ||
106
+ props.metadata.tuples.some((t) => !!t.type.elements.length && t.type.elements.every((e) => e.any)))
140
107
  return typescript_1.default.factory.createCallExpression(props.context.importer.internal("miscCloneAny"), undefined, [props.input]);
141
- var unions = [];
108
+ const unions = [];
142
109
  //----
143
110
  // LIST UP UNION TYPES
144
111
  //----
@@ -146,199 +113,132 @@ var MiscCloneProgrammer;
146
113
  if (props.metadata.functions.length)
147
114
  unions.push({
148
115
  type: "functional",
149
- is: function () {
150
- return typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("function"), typescript_1.default.factory.createTypeOfExpression(props.input));
151
- },
152
- value: function () { return typescript_1.default.factory.createIdentifier("undefined"); },
116
+ is: () => typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("function"), typescript_1.default.factory.createTypeOfExpression(props.input)),
117
+ value: () => typescript_1.default.factory.createIdentifier("undefined"),
153
118
  });
154
- var _loop_1 = function (tuple) {
119
+ // TUPLES
120
+ for (const tuple of props.metadata.tuples)
155
121
  unions.push({
156
122
  type: "tuple",
157
- is: function () {
158
- return IsProgrammer_1.IsProgrammer.decode(__assign(__assign({}, props), { metadata: (function () {
159
- var partial = Metadata_1.Metadata.initialize();
160
- partial.tuples.push(tuple);
161
- return partial;
162
- })() }));
163
- },
164
- value: function () {
165
- return decode_tuple(__assign(__assign({}, props), { tuple: tuple }));
166
- },
123
+ is: () => IsProgrammer_1.IsProgrammer.decode(Object.assign(Object.assign({}, props), { metadata: (() => {
124
+ const partial = Metadata_1.Metadata.initialize();
125
+ partial.tuples.push(tuple);
126
+ return partial;
127
+ })() })),
128
+ value: () => decode_tuple(Object.assign(Object.assign({}, props), { tuple })),
167
129
  });
168
- };
169
- try {
170
- // TUPLES
171
- for (var _d = __values(props.metadata.tuples), _e = _d.next(); !_e.done; _e = _d.next()) {
172
- var tuple = _e.value;
173
- _loop_1(tuple);
174
- }
175
- }
176
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
177
- finally {
178
- try {
179
- if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
180
- }
181
- finally { if (e_1) throw e_1.error; }
182
- }
183
130
  // ARRAYS
184
131
  if (props.metadata.arrays.length)
185
132
  unions.push({
186
133
  type: "array",
187
- is: function () { return ExpressionFactory_1.ExpressionFactory.isArray(props.input); },
188
- value: function () {
189
- return explore_arrays(__assign(__assign({}, props), { arrays: props.metadata.arrays, explore: __assign(__assign({}, props.explore), { from: "array" }) }));
190
- },
134
+ is: () => ExpressionFactory_1.ExpressionFactory.isArray(props.input),
135
+ value: () => explore_arrays(Object.assign(Object.assign({}, props), { arrays: props.metadata.arrays, explore: Object.assign(Object.assign({}, props.explore), { from: "array" }) })),
191
136
  });
192
137
  // NATIVE TYPES
193
138
  if (props.metadata.sets.length)
194
139
  unions.push({
195
140
  type: "set",
196
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Set", props.input); },
197
- value: function () {
198
- return explore_sets(__assign(__assign({}, props), { sets: props.metadata.sets, explore: __assign(__assign({}, props.explore), { from: "array" }) }));
199
- },
141
+ is: () => ExpressionFactory_1.ExpressionFactory.isInstanceOf("Set", props.input),
142
+ value: () => explore_sets(Object.assign(Object.assign({}, props), { sets: props.metadata.sets, explore: Object.assign(Object.assign({}, props.explore), { from: "array" }) })),
200
143
  });
201
144
  if (props.metadata.maps.length)
202
145
  unions.push({
203
146
  type: "map",
204
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Map", props.input); },
205
- value: function () {
206
- return explore_maps(__assign(__assign({}, props), { maps: props.metadata.maps, explore: __assign(__assign({}, props.explore), { from: "array" }) }));
207
- },
147
+ is: () => ExpressionFactory_1.ExpressionFactory.isInstanceOf("Map", props.input),
148
+ value: () => explore_maps(Object.assign(Object.assign({}, props), { maps: props.metadata.maps, explore: Object.assign(Object.assign({}, props.explore), { from: "array" }) })),
208
149
  });
209
- var _loop_2 = function (native) {
150
+ for (const native of props.metadata.natives)
210
151
  unions.push({
211
152
  type: "native",
212
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf(native.name, props.input); },
213
- value: function () {
214
- return native.name === "Boolean" ||
215
- native.name === "Number" ||
216
- native.name === "String"
217
- ? typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(props.input, "valueOf"), undefined, undefined)
218
- : decode_native({
219
- type: native.name,
220
- input: props.input,
221
- });
222
- },
153
+ is: () => ExpressionFactory_1.ExpressionFactory.isInstanceOf(native.name, props.input),
154
+ value: () => native.name === "Boolean" ||
155
+ native.name === "Number" ||
156
+ native.name === "String"
157
+ ? typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(props.input, "valueOf"), undefined, undefined)
158
+ : decode_native({
159
+ type: native.name,
160
+ input: props.input,
161
+ }),
223
162
  });
224
- };
225
- try {
226
- for (var _f = __values(props.metadata.natives), _g = _f.next(); !_g.done; _g = _f.next()) {
227
- var native = _g.value;
228
- _loop_2(native);
229
- }
230
- }
231
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
232
- finally {
233
- try {
234
- if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
235
- }
236
- finally { if (e_2) throw e_2.error; }
237
- }
238
163
  // OBJECTS
239
164
  if (props.metadata.objects.length)
240
165
  unions.push({
241
166
  type: "object",
242
- is: function () {
243
- return ExpressionFactory_1.ExpressionFactory.isObject({
244
- checkNull: true,
245
- checkArray: false,
246
- input: props.input,
247
- });
248
- },
249
- value: function () {
250
- return explore_objects(__assign(__assign({}, props), { explore: __assign(__assign({}, props.explore), { from: "object" }) }));
251
- },
167
+ is: () => ExpressionFactory_1.ExpressionFactory.isObject({
168
+ checkNull: true,
169
+ checkArray: false,
170
+ input: props.input,
171
+ }),
172
+ value: () => explore_objects(Object.assign(Object.assign({}, props), { explore: Object.assign(Object.assign({}, props.explore), { from: "object" }) })),
252
173
  });
253
174
  // COMPOSITION
254
175
  if (unions.length === 0)
255
176
  return props.input;
256
177
  else if (unions.length === 1 && props.metadata.size() === 1) {
257
- var value = (props.metadata.nullable || props.metadata.isRequired() === false) &&
178
+ const value = (props.metadata.nullable || props.metadata.isRequired() === false) &&
258
179
  is_instance(props.metadata)
259
180
  ? typescript_1.default.factory.createConditionalExpression(props.input, undefined, unions[0].value(), undefined, props.input)
260
181
  : unions[0].value();
261
182
  return typescript_1.default.factory.createAsExpression(value, TypeFactory_1.TypeFactory.keyword("any"));
262
183
  }
263
184
  else {
264
- var last = props.input;
265
- try {
266
- for (var _h = __values(unions.reverse()), _j = _h.next(); !_j.done; _j = _h.next()) {
267
- var u = _j.value;
268
- last = typescript_1.default.factory.createConditionalExpression(u.is(), undefined, u.value(), undefined, last);
269
- }
270
- }
271
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
272
- finally {
273
- try {
274
- if (_j && !_j.done && (_c = _h.return)) _c.call(_h);
275
- }
276
- finally { if (e_3) throw e_3.error; }
277
- }
185
+ let last = props.input;
186
+ for (const u of unions.reverse())
187
+ last = typescript_1.default.factory.createConditionalExpression(u.is(), undefined, u.value(), undefined, last);
278
188
  return typescript_1.default.factory.createAsExpression(last, TypeFactory_1.TypeFactory.keyword("any"));
279
189
  }
280
190
  };
281
- var decode_object = function (props) {
282
- return FeatureProgrammer_1.FeatureProgrammer.decode_object({
283
- config: {
284
- trace: false,
285
- path: false,
286
- prefix: PREFIX,
287
- },
288
- functor: props.functor,
191
+ const decode_object = (props) => FeatureProgrammer_1.FeatureProgrammer.decode_object({
192
+ config: {
193
+ trace: false,
194
+ path: false,
195
+ prefix: PREFIX,
196
+ },
197
+ functor: props.functor,
198
+ input: props.input,
199
+ object: props.object,
200
+ explore: props.explore,
201
+ });
202
+ const decode_array = (props) => props.array.type.recursive
203
+ ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal(`${props.config.prefix}a${props.array.type.index}`)), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
204
+ config: props.config,
205
+ explore: Object.assign(Object.assign({}, props.explore), { source: "function", from: "array" }),
289
206
  input: props.input,
290
- object: props.object,
291
- explore: props.explore,
292
- });
293
- };
294
- var decode_array = function (props) {
295
- return props.array.type.recursive
296
- ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal("".concat(props.config.prefix, "a").concat(props.array.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
297
- config: props.config,
298
- explore: __assign(__assign({}, props.explore), { source: "function", from: "array" }),
299
- input: props.input,
300
- }))
301
- : decode_array_inline(props);
302
- };
303
- var decode_array_inline = function (props) {
304
- return FeatureProgrammer_1.FeatureProgrammer.decode_array({
207
+ }))
208
+ : decode_array_inline(props);
209
+ const decode_array_inline = (props) => FeatureProgrammer_1.FeatureProgrammer.decode_array({
210
+ config: props.config,
211
+ functor: props.functor,
212
+ combiner: CloneJoiner_1.CloneJoiner.array,
213
+ array: props.array,
214
+ input: props.input,
215
+ explore: props.explore,
216
+ });
217
+ const decode_tuple = (props) => props.tuple.type.recursive
218
+ ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal(`${props.config.prefix}t${props.tuple.type.index}`)), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
305
219
  config: props.config,
306
- functor: props.functor,
307
- combiner: CloneJoiner_1.CloneJoiner.array,
308
- array: props.array,
220
+ explore: Object.assign(Object.assign({}, props.explore), { source: "function" }),
309
221
  input: props.input,
310
- explore: props.explore,
311
- });
312
- };
313
- var decode_tuple = function (props) {
314
- return props.tuple.type.recursive
315
- ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal("".concat(props.config.prefix, "t").concat(props.tuple.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
316
- config: props.config,
317
- explore: __assign(__assign({}, props.explore), { source: "function" }),
318
- input: props.input,
319
- }))
320
- : decode_tuple_inline(__assign(__assign({}, props), { tuple: props.tuple.type }));
321
- };
322
- var decode_tuple_inline = function (props) {
323
- var elements = props.tuple.elements
324
- .filter(function (m) { return m.rest === null; })
325
- .map(function (elem, index) {
326
- return decode({
327
- context: props.context,
328
- config: props.config,
329
- functor: props.functor,
330
- input: typescript_1.default.factory.createElementAccessExpression(props.input, index),
331
- metadata: elem,
332
- explore: __assign(__assign({}, props.explore), { from: "array", postfix: props.explore.postfix.length
333
- ? "".concat((0, postfix_of_tuple_1.postfix_of_tuple)(props.explore.postfix), "[").concat(index, "]\"")
334
- : "\"[".concat(index, "]\"") }),
335
- });
336
- });
337
- var rest = (function () {
222
+ }))
223
+ : decode_tuple_inline(Object.assign(Object.assign({}, props), { tuple: props.tuple.type }));
224
+ const decode_tuple_inline = (props) => {
225
+ const elements = props.tuple.elements
226
+ .filter((m) => m.rest === null)
227
+ .map((elem, index) => decode({
228
+ context: props.context,
229
+ config: props.config,
230
+ functor: props.functor,
231
+ input: typescript_1.default.factory.createElementAccessExpression(props.input, index),
232
+ metadata: elem,
233
+ explore: Object.assign(Object.assign({}, props.explore), { from: "array", postfix: props.explore.postfix.length
234
+ ? `${(0, postfix_of_tuple_1.postfix_of_tuple)(props.explore.postfix)}[${index}]"`
235
+ : `"[${index}]"` }),
236
+ }));
237
+ const rest = (() => {
338
238
  if (props.tuple.elements.length === 0)
339
239
  return null;
340
- var last = props.tuple.elements.at(-1);
341
- var rest = last.rest;
240
+ const last = props.tuple.elements.at(-1);
241
+ const rest = last.rest;
342
242
  if (rest === null)
343
243
  return null;
344
244
  return decode({
@@ -347,222 +247,182 @@ var MiscCloneProgrammer;
347
247
  functor: props.functor,
348
248
  input: typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(props.input, "slice"), undefined, [ExpressionFactory_1.ExpressionFactory.number(props.tuple.elements.length - 1)]),
349
249
  metadata: (0, wrap_metadata_rest_tuple_1.wrap_metadata_rest_tuple)(props.tuple.elements.at(-1).rest),
350
- explore: __assign(__assign({}, props.explore), { start: props.tuple.elements.length - 1 }),
250
+ explore: Object.assign(Object.assign({}, props.explore), { start: props.tuple.elements.length - 1 }),
351
251
  });
352
252
  })();
353
253
  return CloneJoiner_1.CloneJoiner.tuple({
354
- elements: elements,
355
- rest: rest,
254
+ elements,
255
+ rest,
356
256
  });
357
257
  };
358
258
  /* -----------------------------------------------------------
359
259
  NATIVE CLASSES
360
260
  ----------------------------------------------------------- */
361
- var decode_native = function (props) {
362
- return props.type === "Date" ||
363
- props.type === "Uint8Array" ||
364
- props.type === "Uint8ClampedArray" ||
365
- props.type === "Uint16Array" ||
366
- props.type === "Uint32Array" ||
367
- props.type === "BigUint64Array" ||
368
- props.type === "Int8Array" ||
369
- props.type === "Int16Array" ||
370
- props.type === "Int32Array" ||
371
- props.type === "BigInt64Array" ||
372
- props.type === "Float32Array" ||
373
- props.type === "Float64Array" ||
374
- props.type === "RegExp"
375
- ? decode_native_copyable(props)
376
- : props.type === "ArrayBuffer" || props.type === "SharedArrayBuffer"
377
- ? decode_native_buffer({
378
- type: props.type,
379
- input: props.input,
380
- })
381
- : props.type === "DataView"
382
- ? decode_native_data_view(props.input)
383
- : typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.type), undefined, []);
384
- };
385
- var decode_native_copyable = function (props) {
386
- return typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier(props.type), undefined, [props.input]);
387
- };
388
- var decode_native_buffer = function (props) {
389
- return ExpressionFactory_1.ExpressionFactory.selfCall(typescript_1.default.factory.createBlock([
390
- StatementFactory_1.StatementFactory.constant({
391
- name: "buffer",
392
- value: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier(props.type), undefined, [IdentifierFactory_1.IdentifierFactory.access(props.input, "byteLength")]),
393
- }),
394
- typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Uint8Array"), undefined, [typescript_1.default.factory.createIdentifier("buffer")]), "set"), undefined, [
395
- typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Uint8Array"), undefined, [props.input]),
396
- ])),
397
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("buffer")),
398
- ], true));
399
- };
400
- var decode_native_data_view = function (input) {
401
- return typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("DataView"), undefined, [IdentifierFactory_1.IdentifierFactory.access(input, "buffer")]);
402
- };
261
+ const decode_native = (props) => props.type === "Date" ||
262
+ props.type === "Uint8Array" ||
263
+ props.type === "Uint8ClampedArray" ||
264
+ props.type === "Uint16Array" ||
265
+ props.type === "Uint32Array" ||
266
+ props.type === "BigUint64Array" ||
267
+ props.type === "Int8Array" ||
268
+ props.type === "Int16Array" ||
269
+ props.type === "Int32Array" ||
270
+ props.type === "BigInt64Array" ||
271
+ props.type === "Float32Array" ||
272
+ props.type === "Float64Array" ||
273
+ props.type === "RegExp"
274
+ ? decode_native_copyable(props)
275
+ : props.type === "ArrayBuffer" || props.type === "SharedArrayBuffer"
276
+ ? decode_native_buffer({
277
+ type: props.type,
278
+ input: props.input,
279
+ })
280
+ : props.type === "DataView"
281
+ ? decode_native_data_view(props.input)
282
+ : typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.type), undefined, []);
283
+ const decode_native_copyable = (props) => typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier(props.type), undefined, [props.input]);
284
+ const decode_native_buffer = (props) => ExpressionFactory_1.ExpressionFactory.selfCall(typescript_1.default.factory.createBlock([
285
+ StatementFactory_1.StatementFactory.constant({
286
+ name: "buffer",
287
+ value: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier(props.type), undefined, [IdentifierFactory_1.IdentifierFactory.access(props.input, "byteLength")]),
288
+ }),
289
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Uint8Array"), undefined, [typescript_1.default.factory.createIdentifier("buffer")]), "set"), undefined, [
290
+ typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Uint8Array"), undefined, [props.input]),
291
+ ])),
292
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("buffer")),
293
+ ], true));
294
+ const decode_native_data_view = (input) => typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("DataView"), undefined, [IdentifierFactory_1.IdentifierFactory.access(input, "buffer")]);
403
295
  /* -----------------------------------------------------------
404
296
  EXPLORERS FOR UNION TYPES
405
297
  ----------------------------------------------------------- */
406
- var explore_sets = function (props) {
407
- return typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.set({
408
- config: {
409
- checker: function (v) {
410
- return IsProgrammer_1.IsProgrammer.decode({
411
- context: props.context,
412
- functor: props.functor,
413
- input: v.input,
414
- metadata: v.definition,
415
- explore: v.explore,
416
- });
417
- },
418
- decoder: function (v) {
419
- return typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], [
420
- decode_array({
421
- config: props.config,
422
- functor: props.functor,
423
- input: v.input,
424
- array: v.definition,
425
- explore: v.explore,
426
- }),
427
- ]);
428
- },
429
- empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], []),
430
- success: typescript_1.default.factory.createTrue(),
431
- failure: function (v) {
432
- return create_throw_error({
433
- context: props.context,
434
- functor: props.functor,
435
- expected: v.expected,
436
- input: v.input,
437
- });
438
- },
439
- },
440
- parameters: [],
441
- input: props.input,
442
- sets: props.sets,
443
- explore: props.explore,
444
- }), undefined, undefined);
445
- };
446
- var explore_maps = function (props) {
447
- return typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.map({
298
+ const explore_sets = (props) => typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.set({
299
+ config: {
300
+ checker: (v) => IsProgrammer_1.IsProgrammer.decode({
301
+ context: props.context,
302
+ functor: props.functor,
303
+ input: v.input,
304
+ metadata: v.definition,
305
+ explore: v.explore,
306
+ }),
307
+ decoder: (v) => typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], [
308
+ decode_array({
309
+ config: props.config,
310
+ functor: props.functor,
311
+ input: v.input,
312
+ array: v.definition,
313
+ explore: v.explore,
314
+ }),
315
+ ]),
316
+ empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], []),
317
+ success: typescript_1.default.factory.createTrue(),
318
+ failure: (v) => create_throw_error({
319
+ context: props.context,
320
+ functor: props.functor,
321
+ expected: v.expected,
322
+ input: v.input,
323
+ }),
324
+ },
325
+ parameters: [],
326
+ input: props.input,
327
+ sets: props.sets,
328
+ explore: props.explore,
329
+ }), undefined, undefined);
330
+ const explore_maps = (props) => typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.map({
331
+ config: {
332
+ checker: (v) => typescript_1.default.factory.createLogicalAnd(IsProgrammer_1.IsProgrammer.decode({
333
+ context: props.context,
334
+ functor: props.functor,
335
+ input: typescript_1.default.factory.createElementAccessExpression(v.input, 0),
336
+ metadata: v.definition[0],
337
+ explore: Object.assign(Object.assign({}, v.explore), { postfix: `${v.explore.postfix}[0]` }),
338
+ }), IsProgrammer_1.IsProgrammer.decode({
339
+ context: props.context,
340
+ functor: props.functor,
341
+ input: typescript_1.default.factory.createElementAccessExpression(v.input, 1),
342
+ metadata: v.definition[1],
343
+ explore: Object.assign(Object.assign({}, v.explore), { postfix: `${v.explore.postfix}[1]` }),
344
+ })),
345
+ decoder: (v) => typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [TypeFactory_1.TypeFactory.keyword("any"), TypeFactory_1.TypeFactory.keyword("any")], [
346
+ decode_array({
347
+ config: props.config,
348
+ functor: props.functor,
349
+ input: v.input,
350
+ array: v.definition,
351
+ explore: v.explore,
352
+ }),
353
+ ]),
354
+ empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [TypeFactory_1.TypeFactory.keyword("any"), TypeFactory_1.TypeFactory.keyword("any")], []),
355
+ success: typescript_1.default.factory.createTrue(),
356
+ failure: (v) => create_throw_error({
357
+ context: props.context,
358
+ functor: props.functor,
359
+ expected: v.expected,
360
+ input: v.input,
361
+ }),
362
+ },
363
+ parameters: [],
364
+ input: props.input,
365
+ maps: props.maps,
366
+ explore: props.explore,
367
+ }),
368
+ // ([])(props.input, props.maps, props.explore),
369
+ undefined, undefined);
370
+ const explore_objects = (props) => props.metadata.objects.length === 1
371
+ ? decode_object(Object.assign(Object.assign({}, props), { object: props.metadata.objects[0].type }))
372
+ : typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal(`${PREFIX}u${props.metadata.union_index}`)), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props));
373
+ const explore_arrays = (props) => explore_array_like_union_types(Object.assign(Object.assign({}, props), { definitions: props.arrays, factory: (next) => UnionExplorer_1.UnionExplorer.array({
448
374
  config: {
449
- checker: function (v) {
450
- return typescript_1.default.factory.createLogicalAnd(IsProgrammer_1.IsProgrammer.decode({
451
- context: props.context,
452
- functor: props.functor,
453
- input: typescript_1.default.factory.createElementAccessExpression(v.input, 0),
454
- metadata: v.definition[0],
455
- explore: __assign(__assign({}, v.explore), { postfix: "".concat(v.explore.postfix, "[0]") }),
456
- }), IsProgrammer_1.IsProgrammer.decode({
457
- context: props.context,
458
- functor: props.functor,
459
- input: typescript_1.default.factory.createElementAccessExpression(v.input, 1),
460
- metadata: v.definition[1],
461
- explore: __assign(__assign({}, v.explore), { postfix: "".concat(v.explore.postfix, "[1]") }),
462
- }));
463
- },
464
- decoder: function (v) {
465
- return typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [TypeFactory_1.TypeFactory.keyword("any"), TypeFactory_1.TypeFactory.keyword("any")], [
466
- decode_array({
467
- config: props.config,
468
- functor: props.functor,
469
- input: v.input,
470
- array: v.definition,
471
- explore: v.explore,
472
- }),
473
- ]);
474
- },
475
- empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [TypeFactory_1.TypeFactory.keyword("any"), TypeFactory_1.TypeFactory.keyword("any")], []),
375
+ checker: (v) => IsProgrammer_1.IsProgrammer.decode({
376
+ context: props.context,
377
+ functor: props.functor,
378
+ input: v.input,
379
+ metadata: v.definition,
380
+ explore: v.explore,
381
+ }),
382
+ decoder: (v) => decode_array({
383
+ config: props.config,
384
+ functor: props.functor,
385
+ input: v.input,
386
+ array: v.definition,
387
+ explore: v.explore,
388
+ }),
389
+ empty: typescript_1.default.factory.createIdentifier("[]"),
476
390
  success: typescript_1.default.factory.createTrue(),
477
- failure: function (v) {
478
- return create_throw_error({
479
- context: props.context,
480
- functor: props.functor,
481
- expected: v.expected,
482
- input: v.input,
483
- });
484
- },
391
+ failure: (v) => create_throw_error({
392
+ context: props.context,
393
+ functor: props.functor,
394
+ expected: v.expected,
395
+ input: v.input,
396
+ }),
485
397
  },
486
- parameters: [],
487
- input: props.input,
488
- maps: props.maps,
489
- explore: props.explore,
490
- }),
491
- // ([])(props.input, props.maps, props.explore),
492
- undefined, undefined);
493
- };
494
- var explore_objects = function (props) {
495
- return props.metadata.objects.length === 1
496
- ? decode_object(__assign(__assign({}, props), { object: props.metadata.objects[0].type }))
497
- : typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal("".concat(PREFIX, "u").concat(props.metadata.union_index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props));
498
- };
499
- var explore_arrays = function (props) {
500
- return explore_array_like_union_types(__assign(__assign({}, props), { definitions: props.arrays, factory: function (next) {
501
- return UnionExplorer_1.UnionExplorer.array({
502
- config: {
503
- checker: function (v) {
504
- return IsProgrammer_1.IsProgrammer.decode({
505
- context: props.context,
506
- functor: props.functor,
507
- input: v.input,
508
- metadata: v.definition,
509
- explore: v.explore,
510
- });
511
- },
512
- decoder: function (v) {
513
- return decode_array({
514
- config: props.config,
515
- functor: props.functor,
516
- input: v.input,
517
- array: v.definition,
518
- explore: v.explore,
519
- });
520
- },
521
- empty: typescript_1.default.factory.createIdentifier("[]"),
522
- success: typescript_1.default.factory.createTrue(),
523
- failure: function (v) {
524
- return create_throw_error({
525
- context: props.context,
526
- functor: props.functor,
527
- expected: v.expected,
528
- input: v.input,
529
- });
530
- },
531
- },
532
- parameters: next.parameters,
533
- arrays: next.definitions,
534
- input: next.input,
535
- explore: next.explore,
536
- });
537
- } }));
538
- };
539
- var explore_array_like_union_types = function (props) {
540
- var arrow = function (next) {
541
- return props.factory({
542
- definitions: props.definitions,
543
- parameters: next.parameters,
544
- input: next.input,
545
- explore: next.explore,
546
- });
547
- };
548
- if (props.definitions.every(function (e) { return e.type.recursive === false; }))
398
+ parameters: next.parameters,
399
+ arrays: next.definitions,
400
+ input: next.input,
401
+ explore: next.explore,
402
+ }) }));
403
+ const explore_array_like_union_types = (props) => {
404
+ const arrow = (next) => props.factory({
405
+ definitions: props.definitions,
406
+ parameters: next.parameters,
407
+ input: next.input,
408
+ explore: next.explore,
409
+ });
410
+ if (props.definitions.every((e) => e.type.recursive === false))
549
411
  typescript_1.default.factory.createCallExpression(arrow({
550
412
  parameters: [],
551
413
  explore: props.explore,
552
414
  input: props.input,
553
415
  }), undefined, []);
554
- var arrayExplore = __assign(__assign({}, props.explore), { source: "function", from: "array" });
555
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.emplaceUnion(props.config.prefix, props.definitions.map(function (e) { return e.type.name; }).join(" | "), function () {
556
- return arrow({
557
- parameters: FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
558
- config: props.config,
559
- type: TypeFactory_1.TypeFactory.keyword("any"),
560
- input: typescript_1.default.factory.createIdentifier("input"),
561
- }),
562
- explore: __assign(__assign({}, arrayExplore), { postfix: "" }),
416
+ const arrayExplore = Object.assign(Object.assign({}, props.explore), { source: "function", from: "array" });
417
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.emplaceUnion(props.config.prefix, props.definitions.map((e) => e.type.name).join(" | "), () => arrow({
418
+ parameters: FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
419
+ config: props.config,
420
+ type: TypeFactory_1.TypeFactory.keyword("any"),
563
421
  input: typescript_1.default.factory.createIdentifier("input"),
564
- });
565
- })), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
422
+ }),
423
+ explore: Object.assign(Object.assign({}, arrayExplore), { postfix: "" }),
424
+ input: typescript_1.default.factory.createIdentifier("input"),
425
+ }))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
566
426
  config: props.config,
567
427
  input: props.input,
568
428
  explore: arrayExplore,
@@ -571,140 +431,116 @@ var MiscCloneProgrammer;
571
431
  /* -----------------------------------------------------------
572
432
  CONFIGURATIONS
573
433
  ----------------------------------------------------------- */
574
- var PREFIX = "_c";
575
- var configure = function (props) {
576
- var config = {
434
+ const PREFIX = "_c";
435
+ const configure = (props) => {
436
+ const config = {
577
437
  types: {
578
- input: function (type, name) {
579
- return typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName({ checker: props.context.checker, type: type }));
580
- },
581
- output: function (type, name) {
582
- return props.context.importer.type({
583
- file: "typia",
584
- name: "Resolved",
585
- arguments: [
586
- typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName({
587
- checker: props.context.checker,
588
- type: type,
589
- })),
590
- ],
591
- });
592
- },
438
+ input: (type, name) => typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName({ checker: props.context.checker, type })),
439
+ output: (type, name) => props.context.importer.type({
440
+ file: "typia",
441
+ name: "Resolved",
442
+ arguments: [
443
+ typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName({
444
+ checker: props.context.checker,
445
+ type,
446
+ })),
447
+ ],
448
+ }),
593
449
  },
594
450
  prefix: PREFIX,
595
451
  trace: false,
596
452
  path: false,
597
- initializer: initializer,
598
- decoder: function (next) {
599
- return decode({
453
+ initializer,
454
+ decoder: (next) => decode({
455
+ context: props.context,
456
+ functor: props.functor,
457
+ config,
458
+ input: next.input,
459
+ metadata: next.metadata,
460
+ explore: next.explore,
461
+ }),
462
+ objector: {
463
+ checker: (next) => IsProgrammer_1.IsProgrammer.decode({
600
464
  context: props.context,
601
465
  functor: props.functor,
602
- config: config,
603
466
  input: next.input,
604
467
  metadata: next.metadata,
605
468
  explore: next.explore,
606
- });
607
- },
608
- objector: {
609
- checker: function (next) {
610
- return IsProgrammer_1.IsProgrammer.decode({
469
+ }),
470
+ decoder: (next) => decode_object({
471
+ functor: props.functor,
472
+ input: next.input,
473
+ object: next.object,
474
+ explore: next.explore,
475
+ }),
476
+ joiner: CloneJoiner_1.CloneJoiner.object,
477
+ unionizer: (next) => (0, decode_union_object_1.decode_union_object)({
478
+ checker: (v) => IsProgrammer_1.IsProgrammer.decode_object({
611
479
  context: props.context,
612
480
  functor: props.functor,
613
- input: next.input,
614
- metadata: next.metadata,
615
- explore: next.explore,
616
- });
617
- },
618
- decoder: function (next) {
619
- return decode_object({
481
+ input: v.input,
482
+ object: v.object,
483
+ explore: v.explore,
484
+ }),
485
+ decoder: (v) => decode_object({
620
486
  functor: props.functor,
621
- input: next.input,
622
- object: next.object,
623
- explore: next.explore,
624
- });
625
- },
626
- joiner: CloneJoiner_1.CloneJoiner.object,
627
- unionizer: function (next) {
628
- return (0, decode_union_object_1.decode_union_object)({
629
- checker: function (v) {
630
- return IsProgrammer_1.IsProgrammer.decode_object({
631
- context: props.context,
632
- functor: props.functor,
633
- input: v.input,
634
- object: v.object,
635
- explore: v.explore,
636
- });
637
- },
638
- decoder: function (v) {
639
- return decode_object({
640
- functor: props.functor,
641
- input: v.input,
642
- object: v.object,
643
- explore: v.explore,
644
- });
645
- },
646
- success: function (exp) { return exp; },
647
- escaper: function (v) {
648
- return create_throw_error({
649
- context: props.context,
650
- functor: props.functor,
651
- expected: v.expected,
652
- input: v.input,
653
- });
654
- },
655
- input: next.input,
656
- objects: next.objects,
657
- explore: next.explore,
658
- });
659
- },
660
- failure: function (next) {
661
- return create_throw_error({
487
+ input: v.input,
488
+ object: v.object,
489
+ explore: v.explore,
490
+ }),
491
+ success: (exp) => exp,
492
+ escaper: (v) => create_throw_error({
662
493
  context: props.context,
663
494
  functor: props.functor,
664
- expected: next.expected,
665
- input: next.input,
666
- });
667
- },
495
+ expected: v.expected,
496
+ input: v.input,
497
+ }),
498
+ input: next.input,
499
+ objects: next.objects,
500
+ explore: next.explore,
501
+ }),
502
+ failure: (next) => create_throw_error({
503
+ context: props.context,
504
+ functor: props.functor,
505
+ expected: next.expected,
506
+ input: next.input,
507
+ }),
668
508
  },
669
509
  generator: {
670
- arrays: function (collection) {
671
- return write_array_functions({
672
- functor: props.functor,
673
- config: config,
674
- collection: collection,
675
- });
676
- },
677
- tuples: function (collection) {
678
- return write_tuple_functions({
679
- context: props.context,
680
- functor: props.functor,
681
- config: config,
682
- collection: collection,
683
- });
684
- },
510
+ arrays: (collection) => write_array_functions({
511
+ functor: props.functor,
512
+ config,
513
+ collection,
514
+ }),
515
+ tuples: (collection) => write_tuple_functions({
516
+ context: props.context,
517
+ functor: props.functor,
518
+ config,
519
+ collection,
520
+ }),
685
521
  },
686
522
  };
687
523
  return config;
688
524
  };
689
- var initializer = function (props) {
690
- var collection = new MetadataCollection_1.MetadataCollection();
691
- var result = MetadataFactory_1.MetadataFactory.analyze({
525
+ const initializer = (props) => {
526
+ const collection = new MetadataCollection_1.MetadataCollection();
527
+ const result = MetadataFactory_1.MetadataFactory.analyze({
692
528
  checker: props.context.checker,
693
529
  transformer: props.context.transformer,
694
530
  options: {
695
531
  escape: false,
696
532
  constant: true,
697
533
  absorb: true,
698
- validate: function (metadata) {
699
- var output = [];
700
- if (metadata.natives.some(function (native) { return native.name === "WeakSet"; }))
534
+ validate: (metadata) => {
535
+ const output = [];
536
+ if (metadata.natives.some((native) => native.name === "WeakSet"))
701
537
  output.push("unable to clone WeakSet");
702
- else if (metadata.natives.some(function (native) { return native.name === "WeakMap"; }))
538
+ else if (metadata.natives.some((native) => native.name === "WeakMap"))
703
539
  output.push("unable to clone WeakMap");
704
540
  return output;
705
541
  },
706
542
  },
707
- collection: collection,
543
+ collection,
708
544
  type: props.type,
709
545
  });
710
546
  if (result.success === false)
@@ -713,27 +549,23 @@ var MiscCloneProgrammer;
713
549
  errors: result.errors,
714
550
  });
715
551
  return {
716
- collection: collection,
552
+ collection,
717
553
  metadata: result.data,
718
554
  };
719
555
  };
720
- var create_throw_error = function (props) {
721
- return typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(props.context.importer.internal("throwTypeGuardError"), [], [
722
- typescript_1.default.factory.createObjectLiteralExpression([
723
- typescript_1.default.factory.createPropertyAssignment("method", typescript_1.default.factory.createStringLiteral(props.functor.method)),
724
- typescript_1.default.factory.createPropertyAssignment("expected", typescript_1.default.factory.createStringLiteral(props.expected)),
725
- typescript_1.default.factory.createPropertyAssignment("value", props.input),
726
- ], true),
727
- ]));
728
- };
729
- var is_instance = function (metadata) {
730
- return !!metadata.objects.length ||
731
- !!metadata.arrays.length ||
732
- !!metadata.tuples.length ||
733
- !!metadata.sets.length ||
734
- !!metadata.maps.length ||
735
- !!metadata.natives.length ||
736
- (metadata.rest !== null && is_instance(metadata.rest));
737
- };
556
+ const create_throw_error = (props) => typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(props.context.importer.internal("throwTypeGuardError"), [], [
557
+ typescript_1.default.factory.createObjectLiteralExpression([
558
+ typescript_1.default.factory.createPropertyAssignment("method", typescript_1.default.factory.createStringLiteral(props.functor.method)),
559
+ typescript_1.default.factory.createPropertyAssignment("expected", typescript_1.default.factory.createStringLiteral(props.expected)),
560
+ typescript_1.default.factory.createPropertyAssignment("value", props.input),
561
+ ], true),
562
+ ]));
563
+ const is_instance = (metadata) => !!metadata.objects.length ||
564
+ !!metadata.arrays.length ||
565
+ !!metadata.tuples.length ||
566
+ !!metadata.sets.length ||
567
+ !!metadata.maps.length ||
568
+ !!metadata.natives.length ||
569
+ (metadata.rest !== null && is_instance(metadata.rest));
738
570
  })(MiscCloneProgrammer || (exports.MiscCloneProgrammer = MiscCloneProgrammer = {}));
739
571
  //# sourceMappingURL=MiscCloneProgrammer.js.map