typia 13.0.0-dev.20260430 → 13.0.0-dev.20260502-2

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 (364) hide show
  1. package/lib/executable/TypiaGenerateWizard.js +55 -8
  2. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  3. package/lib/executable/TypiaGenerateWizard2.mjs +55 -8
  4. package/lib/executable/TypiaGenerateWizard2.mjs.map +1 -1
  5. package/lib/executable/generate/ttsc.js.map +1 -1
  6. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  7. package/lib/internal/_randomInteger.js.map +1 -1
  8. package/lib/internal/_validateReport.js.map +1 -1
  9. package/lib/transform.d.ts +2 -13
  10. package/lib/transform.js +4 -11
  11. package/lib/transform.js.map +1 -1
  12. package/lib/transform2.mjs +6 -14
  13. package/lib/transform2.mjs.map +1 -1
  14. package/native/adapter/adapter.go +128 -128
  15. package/native/adapter/cleanup.go +155 -172
  16. package/native/adapter/imports.go +80 -80
  17. package/native/adapter/visit.go +142 -142
  18. package/native/cmd/ttsc-typia/build.go +223 -223
  19. package/native/cmd/ttsc-typia/main.go +57 -57
  20. package/native/cmd/ttsc-typia/transform.go +421 -254
  21. package/native/cmd/ttsc-typia/transform_test.go +40 -0
  22. package/native/core/context/IProgrammerProps.go +7 -7
  23. package/native/core/context/ITransformOptions.go +5 -5
  24. package/native/core/context/ITypiaContext.go +13 -13
  25. package/native/core/context/TransformerError.go +81 -81
  26. package/native/core/factories/CommentFactory.go +9 -9
  27. package/native/core/factories/ExpressionFactory.go +254 -254
  28. package/native/core/factories/FormatCheatSheet.go +23 -23
  29. package/native/core/factories/IdentifierFactory.go +130 -130
  30. package/native/core/factories/JsonMetadataFactory.go +129 -129
  31. package/native/core/factories/LiteralFactory.go +195 -182
  32. package/native/core/factories/MetadataCommentTagFactory.go +379 -379
  33. package/native/core/factories/MetadataFactory.go +462 -462
  34. package/native/core/factories/MetadataTypeTagFactory.go +498 -498
  35. package/native/core/factories/MetadataTypeTagSchemaFactory.go +102 -102
  36. package/native/core/factories/NumericRangeFactory.go +84 -84
  37. package/native/core/factories/ProtobufFactory.go +933 -933
  38. package/native/core/factories/StatementFactory.go +72 -72
  39. package/native/core/factories/TemplateFactory.go +57 -57
  40. package/native/core/factories/TypeFactory.go +125 -125
  41. package/native/core/factories/ValueFactory.go +12 -12
  42. package/native/core/factories/internal/metadata/IMetadataIteratorProps.go +35 -35
  43. package/native/core/factories/internal/metadata/MetadataHelper.go +176 -176
  44. package/native/core/factories/internal/metadata/emend_metadata_atomics.go +69 -69
  45. package/native/core/factories/internal/metadata/emplace_metadata_alias.go +27 -27
  46. package/native/core/factories/internal/metadata/emplace_metadata_array_type.go +33 -33
  47. package/native/core/factories/internal/metadata/emplace_metadata_object.go +209 -209
  48. package/native/core/factories/internal/metadata/emplace_metadata_tuple.go +50 -50
  49. package/native/core/factories/internal/metadata/explore_metadata.go +29 -29
  50. package/native/core/factories/internal/metadata/iterate_metadata.go +46 -46
  51. package/native/core/factories/internal/metadata/iterate_metadata_alias.go +25 -25
  52. package/native/core/factories/internal/metadata/iterate_metadata_array.go +65 -65
  53. package/native/core/factories/internal/metadata/iterate_metadata_atomic.go +49 -49
  54. package/native/core/factories/internal/metadata/iterate_metadata_coalesce.go +22 -22
  55. package/native/core/factories/internal/metadata/iterate_metadata_collection.go +228 -228
  56. package/native/core/factories/internal/metadata/iterate_metadata_comment_tags.go +12 -12
  57. package/native/core/factories/internal/metadata/iterate_metadata_constant.go +71 -71
  58. package/native/core/factories/internal/metadata/iterate_metadata_escape.go +48 -48
  59. package/native/core/factories/internal/metadata/iterate_metadata_function.go +82 -82
  60. package/native/core/factories/internal/metadata/iterate_metadata_intersection.go +319 -319
  61. package/native/core/factories/internal/metadata/iterate_metadata_map.go +51 -51
  62. package/native/core/factories/internal/metadata/iterate_metadata_native.go +85 -85
  63. package/native/core/factories/internal/metadata/iterate_metadata_object.go +27 -27
  64. package/native/core/factories/internal/metadata/iterate_metadata_set.go +37 -37
  65. package/native/core/factories/internal/metadata/iterate_metadata_sort.go +137 -137
  66. package/native/core/factories/internal/metadata/iterate_metadata_template.go +33 -33
  67. package/native/core/factories/internal/metadata/iterate_metadata_tuple.go +16 -16
  68. package/native/core/factories/internal/metadata/iterate_metadata_union.go +18 -18
  69. package/native/core/programmers/AssertProgrammer.go +389 -389
  70. package/native/core/programmers/ImportProgrammer.go +196 -196
  71. package/native/core/programmers/IsProgrammer.go +293 -293
  72. package/native/core/programmers/RandomProgrammer.go +1094 -1094
  73. package/native/core/programmers/ValidateProgrammer.go +369 -369
  74. package/native/core/programmers/functional/FunctionalAssertFunctionProgrammer.go +133 -133
  75. package/native/core/programmers/functional/FunctionalAssertParametersProgrammer.go +104 -104
  76. package/native/core/programmers/functional/FunctionalAssertReturnProgrammer.go +100 -100
  77. package/native/core/programmers/functional/FunctionalIsFunctionProgrammer.go +79 -79
  78. package/native/core/programmers/functional/FunctionalIsParametersProgrammer.go +159 -159
  79. package/native/core/programmers/functional/FunctionalIsReturnProgrammer.go +99 -99
  80. package/native/core/programmers/functional/FunctionalValidateFunctionProgrammer.go +138 -138
  81. package/native/core/programmers/functional/FunctionalValidateParametersProgrammer.go +222 -222
  82. package/native/core/programmers/functional/FunctionalValidateReturnProgrammer.go +116 -116
  83. package/native/core/programmers/functional/internal/FunctionalGeneralProgrammer.go +36 -36
  84. package/native/core/programmers/helpers/AtomicPredicator.go +35 -35
  85. package/native/core/programmers/helpers/CloneJoiner.go +217 -217
  86. package/native/core/programmers/helpers/FunctionProgrammer.go +79 -79
  87. package/native/core/programmers/helpers/HttpMetadataUtil.go +17 -17
  88. package/native/core/programmers/helpers/ICheckEntry.go +5 -5
  89. package/native/core/programmers/helpers/IExpressionEntry.go +6 -6
  90. package/native/core/programmers/helpers/NotationJoiner.go +159 -159
  91. package/native/core/programmers/helpers/OptionPredicator.go +4 -4
  92. package/native/core/programmers/helpers/ProtobufUtil.go +231 -231
  93. package/native/core/programmers/helpers/ProtobufWire.go +6 -6
  94. package/native/core/programmers/helpers/PruneJoiner.go +227 -227
  95. package/native/core/programmers/helpers/RandomJoiner.go +155 -155
  96. package/native/core/programmers/helpers/StringifyJoinder.go +331 -331
  97. package/native/core/programmers/helpers/StringifyPredicator.go +10 -10
  98. package/native/core/programmers/helpers/UnionExplorer.go +835 -835
  99. package/native/core/programmers/helpers/UnionPredicator.go +78 -78
  100. package/native/core/programmers/helpers/disable_function_programmer_declare.go +6 -6
  101. package/native/core/programmers/http/HttpAssertFormDataProgrammer.go +93 -93
  102. package/native/core/programmers/http/HttpAssertHeadersProgrammer.go +42 -42
  103. package/native/core/programmers/http/HttpAssertQueryProgrammer.go +51 -51
  104. package/native/core/programmers/http/HttpFormDataProgrammer.go +351 -351
  105. package/native/core/programmers/http/HttpHeadersProgrammer.go +370 -370
  106. package/native/core/programmers/http/HttpIsFormDataProgrammer.go +109 -109
  107. package/native/core/programmers/http/HttpIsHeadersProgrammer.go +36 -36
  108. package/native/core/programmers/http/HttpIsQueryProgrammer.go +45 -45
  109. package/native/core/programmers/http/HttpParameterProgrammer.go +158 -158
  110. package/native/core/programmers/http/HttpQueryProgrammer.go +422 -422
  111. package/native/core/programmers/http/HttpValidateFormDataProgrammer.go +87 -87
  112. package/native/core/programmers/http/HttpValidateHeadersProgrammer.go +39 -39
  113. package/native/core/programmers/http/HttpValidateQueryProgrammer.go +48 -48
  114. package/native/core/programmers/internal/CheckerProgrammer.go +1490 -1490
  115. package/native/core/programmers/internal/FeatureProgrammer.go +589 -589
  116. package/native/core/programmers/iterate/check_array_length.go +46 -46
  117. package/native/core/programmers/iterate/check_bigint.go +52 -52
  118. package/native/core/programmers/iterate/check_dynamic_key.go +220 -220
  119. package/native/core/programmers/iterate/check_dynamic_properties.go +245 -245
  120. package/native/core/programmers/iterate/check_everything.go +21 -21
  121. package/native/core/programmers/iterate/check_native.go +25 -25
  122. package/native/core/programmers/iterate/check_number.go +135 -135
  123. package/native/core/programmers/iterate/check_object.go +66 -66
  124. package/native/core/programmers/iterate/check_string.go +52 -52
  125. package/native/core/programmers/iterate/check_template.go +57 -57
  126. package/native/core/programmers/iterate/check_union_array_like.go +372 -372
  127. package/native/core/programmers/iterate/decode_union_object.go +118 -118
  128. package/native/core/programmers/iterate/feature_object_entries.go +134 -134
  129. package/native/core/programmers/iterate/json_schema_alias.go +52 -52
  130. package/native/core/programmers/iterate/json_schema_array.go +52 -52
  131. package/native/core/programmers/iterate/json_schema_bigint.go +8 -8
  132. package/native/core/programmers/iterate/json_schema_boolean.go +8 -8
  133. package/native/core/programmers/iterate/json_schema_constant.go +38 -38
  134. package/native/core/programmers/iterate/json_schema_description.go +12 -12
  135. package/native/core/programmers/iterate/json_schema_discriminator.go +47 -47
  136. package/native/core/programmers/iterate/json_schema_escaped.go +58 -58
  137. package/native/core/programmers/iterate/json_schema_jsDocTags.go +34 -34
  138. package/native/core/programmers/iterate/json_schema_native.go +43 -43
  139. package/native/core/programmers/iterate/json_schema_number.go +8 -8
  140. package/native/core/programmers/iterate/json_schema_object.go +149 -149
  141. package/native/core/programmers/iterate/json_schema_plugin.go +35 -35
  142. package/native/core/programmers/iterate/json_schema_station.go +211 -211
  143. package/native/core/programmers/iterate/json_schema_string.go +8 -8
  144. package/native/core/programmers/iterate/json_schema_template.go +53 -53
  145. package/native/core/programmers/iterate/json_schema_title.go +16 -16
  146. package/native/core/programmers/iterate/json_schema_tuple.go +34 -34
  147. package/native/core/programmers/iterate/metadata_to_pattern.go +53 -53
  148. package/native/core/programmers/iterate/postfix_of_tuple.go +5 -5
  149. package/native/core/programmers/iterate/prune_object_properties.go +85 -85
  150. package/native/core/programmers/iterate/stringify_dynamic_properties.go +193 -193
  151. package/native/core/programmers/iterate/stringify_native.go +1 -1
  152. package/native/core/programmers/iterate/stringify_regular_properties.go +84 -84
  153. package/native/core/programmers/iterate/template_to_pattern.go +20 -20
  154. package/native/core/programmers/iterate/wrap_metadata_rest_tuple.go +13 -13
  155. package/native/core/programmers/json/JsonApplicationProgrammer.go +323 -323
  156. package/native/core/programmers/json/JsonAssertParseProgrammer.go +100 -100
  157. package/native/core/programmers/json/JsonAssertStringifyProgrammer.go +88 -88
  158. package/native/core/programmers/json/JsonIsParseProgrammer.go +130 -130
  159. package/native/core/programmers/json/JsonIsStringifyProgrammer.go +92 -92
  160. package/native/core/programmers/json/JsonSchemaProgrammer.go +65 -65
  161. package/native/core/programmers/json/JsonSchemasProgrammer.go +116 -116
  162. package/native/core/programmers/json/JsonStringifyProgrammer.go +1245 -1245
  163. package/native/core/programmers/json/JsonValidateParseProgrammer.go +89 -89
  164. package/native/core/programmers/json/JsonValidateStringifyProgrammer.go +106 -106
  165. package/native/core/programmers/llm/LlmApplicationProgrammer.go +449 -437
  166. package/native/core/programmers/llm/LlmCoerceProgrammer.go +79 -79
  167. package/native/core/programmers/llm/LlmControllerProgrammer.go +35 -35
  168. package/native/core/programmers/llm/LlmMetadataFactory.go +74 -74
  169. package/native/core/programmers/llm/LlmParametersProgrammer.go +105 -132
  170. package/native/core/programmers/llm/LlmParseProgrammer.go +88 -88
  171. package/native/core/programmers/llm/LlmSchemaProgrammer.go +780 -423
  172. package/native/core/programmers/llm/LlmStructuredOutputProgrammer.go +123 -123
  173. package/native/core/programmers/misc/MiscAssertCloneProgrammer.go +82 -82
  174. package/native/core/programmers/misc/MiscAssertPruneProgrammer.go +97 -97
  175. package/native/core/programmers/misc/MiscCloneProgrammer.go +1056 -1056
  176. package/native/core/programmers/misc/MiscIsCloneProgrammer.go +94 -94
  177. package/native/core/programmers/misc/MiscIsPruneProgrammer.go +86 -86
  178. package/native/core/programmers/misc/MiscLiteralsProgrammer.go +99 -99
  179. package/native/core/programmers/misc/MiscPruneProgrammer.go +700 -700
  180. package/native/core/programmers/misc/MiscValidateCloneProgrammer.go +103 -103
  181. package/native/core/programmers/misc/MiscValidatePruneProgrammer.go +94 -94
  182. package/native/core/programmers/notations/NotationAssertGeneralProgrammer.go +85 -85
  183. package/native/core/programmers/notations/NotationGeneralProgrammer.go +1188 -1188
  184. package/native/core/programmers/notations/NotationIsGeneralProgrammer.go +90 -90
  185. package/native/core/programmers/notations/NotationValidateGeneralProgrammer.go +109 -109
  186. package/native/core/programmers/protobuf/ProtobufAssertDecodeProgrammer.go +99 -99
  187. package/native/core/programmers/protobuf/ProtobufAssertEncodeProgrammer.go +114 -114
  188. package/native/core/programmers/protobuf/ProtobufDecodeProgrammer.go +697 -697
  189. package/native/core/programmers/protobuf/ProtobufEncodeProgrammer.go +1039 -1039
  190. package/native/core/programmers/protobuf/ProtobufIsDecodeProgrammer.go +99 -99
  191. package/native/core/programmers/protobuf/ProtobufIsEncodeProgrammer.go +93 -93
  192. package/native/core/programmers/protobuf/ProtobufMessageProgrammer.go +228 -228
  193. package/native/core/programmers/protobuf/ProtobufValidateDecodeProgrammer.go +88 -88
  194. package/native/core/programmers/protobuf/ProtobufValidateEncodeProgrammer.go +120 -120
  195. package/native/core/schemas/metadata/IMetadataDictionary.go +4 -4
  196. package/native/core/schemas/metadata/MetadataAlias.go +15 -15
  197. package/native/core/schemas/metadata/MetadataAliasType.go +36 -36
  198. package/native/core/schemas/metadata/MetadataApplication.go +25 -25
  199. package/native/core/schemas/metadata/MetadataArray.go +15 -15
  200. package/native/core/schemas/metadata/MetadataArrayType.go +31 -31
  201. package/native/core/schemas/metadata/MetadataAtomic.go +45 -45
  202. package/native/core/schemas/metadata/MetadataCollection.go +380 -380
  203. package/native/core/schemas/metadata/MetadataComponents.go +95 -95
  204. package/native/core/schemas/metadata/MetadataConstant.go +31 -31
  205. package/native/core/schemas/metadata/MetadataConstantValue.go +63 -63
  206. package/native/core/schemas/metadata/MetadataEscaped.go +17 -17
  207. package/native/core/schemas/metadata/MetadataFunction.go +30 -30
  208. package/native/core/schemas/metadata/MetadataMap.go +21 -21
  209. package/native/core/schemas/metadata/MetadataNative.go +48 -48
  210. package/native/core/schemas/metadata/MetadataObject.go +15 -15
  211. package/native/core/schemas/metadata/MetadataObjectType.go +116 -116
  212. package/native/core/schemas/metadata/MetadataParameter.go +28 -28
  213. package/native/core/schemas/metadata/MetadataProperty.go +32 -32
  214. package/native/core/schemas/metadata/MetadataSchema.go +766 -766
  215. package/native/core/schemas/metadata/MetadataSet.go +17 -17
  216. package/native/core/schemas/metadata/MetadataTemplate.go +43 -43
  217. package/native/core/schemas/metadata/MetadataTuple.go +10 -10
  218. package/native/core/schemas/metadata/MetadataTupleType.go +38 -38
  219. package/native/core/schemas/protobuf/IProtobufProperty.go +2 -2
  220. package/native/core/schemas/protobuf/IProtobufPropertyType.go +18 -18
  221. package/native/core/schemas/protobuf/IProtobufSchema.go +17 -17
  222. package/native/core/typings/Writable.go +1 -1
  223. package/native/core/utils/PatternUtil.go +38 -38
  224. package/native/core/utils/ProtobufNameEncoder.go +28 -28
  225. package/native/shim/printer/shim.go +213 -213
  226. package/native/third_party/ttsc/driver/host.go +7 -7
  227. package/native/third_party/ttsc/driver/program.go +275 -275
  228. package/native/third_party/ttsc/driver/rewrite.go +219 -219
  229. package/native/third_party/ttsc/shim/ast/lint.go +171 -171
  230. package/native/third_party/ttsc/shim/ast/shim.go +83 -83
  231. package/native/third_party/ttsc/shim/bundled/shim.go +5 -1
  232. package/native/third_party/ttsc/shim/checker/shim.go +79 -79
  233. package/native/third_party/ttsc/shim/compiler/shim.go +16 -1
  234. package/native/third_party/ttsc/shim/core/shim.go +10 -10
  235. package/native/third_party/ttsc/shim/diagnosticwriter/lint.go +79 -79
  236. package/native/third_party/ttsc/shim/diagnosticwriter/shim.go +19 -19
  237. package/native/third_party/ttsc/shim/parser/shim.go +7 -1
  238. package/native/third_party/ttsc/shim/scanner/shim.go +39 -1
  239. package/native/third_party/ttsc/shim/tsoptions/shim.go +51 -1
  240. package/native/third_party/ttsc/shim/tspath/shim.go +72 -1
  241. package/native/third_party/ttsc/shim/vfs/cachedvfs/shim.go +1 -1
  242. package/native/third_party/ttsc/shim/vfs/osvfs/shim.go +1 -1
  243. package/native/third_party/ttsc/shim/vfs/shim.go +4 -1
  244. package/native/transform/CallExpressionTransformer.go +556 -556
  245. package/native/transform/FileTransformer.go +123 -123
  246. package/native/transform/ImportTransformer.go +224 -224
  247. package/native/transform/NodeTransformer.go +11 -11
  248. package/native/transform/TypiaGenerator.go +136 -136
  249. package/native/transform/features/AssertTransformer.go +28 -28
  250. package/native/transform/features/CreateAssertTransformer.go +28 -28
  251. package/native/transform/features/CreateIsTransformer.go +24 -24
  252. package/native/transform/features/CreateRandomTransformer.go +35 -35
  253. package/native/transform/features/CreateValidateTransformer.go +24 -24
  254. package/native/transform/features/IsTransformer.go +24 -24
  255. package/native/transform/features/RandomTransformer.go +37 -37
  256. package/native/transform/features/ValidateTransformer.go +24 -24
  257. package/native/transform/features/functional/FunctionalGenericTransformer.go +48 -48
  258. package/native/transform/features/http/CreateHttpAssertFormDataTransformer.go +11 -11
  259. package/native/transform/features/http/CreateHttpAssertHeadersTransformer.go +11 -11
  260. package/native/transform/features/http/CreateHttpAssertQueryTransformer.go +17 -17
  261. package/native/transform/features/http/CreateHttpFormDataTransformer.go +11 -11
  262. package/native/transform/features/http/CreateHttpHeadersTransformer.go +11 -11
  263. package/native/transform/features/http/CreateHttpIsFormDataTransformer.go +11 -11
  264. package/native/transform/features/http/CreateHttpIsHeadersTransformer.go +11 -11
  265. package/native/transform/features/http/CreateHttpIsQueryTransformer.go +17 -17
  266. package/native/transform/features/http/CreateHttpParameterTransformer.go +11 -11
  267. package/native/transform/features/http/CreateHttpQueryTransformer.go +17 -17
  268. package/native/transform/features/http/CreateHttpValidateFormDataTransformer.go +11 -11
  269. package/native/transform/features/http/CreateHttpValidateHeadersTransformer.go +11 -11
  270. package/native/transform/features/http/CreateHttpValidateQueryTransformer.go +17 -17
  271. package/native/transform/features/http/HttpAssertFormDataTransformer.go +11 -11
  272. package/native/transform/features/http/HttpAssertHeadersTransformer.go +11 -11
  273. package/native/transform/features/http/HttpAssertQueryTransformer.go +17 -17
  274. package/native/transform/features/http/HttpFormDataTransformer.go +11 -11
  275. package/native/transform/features/http/HttpHeadersTransformer.go +11 -11
  276. package/native/transform/features/http/HttpIsFormDataTransformer.go +11 -11
  277. package/native/transform/features/http/HttpIsHeadersTransformer.go +11 -11
  278. package/native/transform/features/http/HttpIsQueryTransformer.go +17 -17
  279. package/native/transform/features/http/HttpParameterTransformer.go +11 -11
  280. package/native/transform/features/http/HttpQueryTransformer.go +17 -17
  281. package/native/transform/features/http/HttpValidateFormDataTransformer.go +11 -11
  282. package/native/transform/features/http/HttpValidateHeadersTransformer.go +11 -11
  283. package/native/transform/features/http/HttpValidateQueryTransformer.go +17 -17
  284. package/native/transform/features/json/JsonApplicationTransformer.go +61 -61
  285. package/native/transform/features/json/JsonAssertParseTransformer.go +11 -11
  286. package/native/transform/features/json/JsonAssertStringifyTransformer.go +11 -11
  287. package/native/transform/features/json/JsonCreateAssertParseTransformer.go +11 -11
  288. package/native/transform/features/json/JsonCreateAssertStringifyTransformer.go +11 -11
  289. package/native/transform/features/json/JsonCreateIsParseTransformer.go +11 -11
  290. package/native/transform/features/json/JsonCreateIsStringifyTransformer.go +11 -11
  291. package/native/transform/features/json/JsonCreateStringifyTransformer.go +11 -11
  292. package/native/transform/features/json/JsonCreateValidateParseTransformer.go +11 -11
  293. package/native/transform/features/json/JsonCreateValidateStringifyProgrammer.go +11 -11
  294. package/native/transform/features/json/JsonIsParseTransformer.go +11 -11
  295. package/native/transform/features/json/JsonIsStringifyTransformer.go +11 -11
  296. package/native/transform/features/json/JsonSchemaTransformer.go +148 -148
  297. package/native/transform/features/json/JsonSchemasTransformer.go +94 -94
  298. package/native/transform/features/json/JsonStringifyTransformer.go +11 -11
  299. package/native/transform/features/json/JsonValidateParseTransformer.go +11 -11
  300. package/native/transform/features/json/JsonValidateStringifyTransformer.go +11 -11
  301. package/native/transform/features/llm/LlmApplicationTransformer.go +43 -43
  302. package/native/transform/features/llm/LlmCoerceTransformer.go +50 -50
  303. package/native/transform/features/llm/LlmControllerTransformer.go +48 -48
  304. package/native/transform/features/llm/LlmCreateCoerceTransformer.go +43 -43
  305. package/native/transform/features/llm/LlmCreateParseTransformer.go +43 -43
  306. package/native/transform/features/llm/LlmParametersTransformer.go +38 -38
  307. package/native/transform/features/llm/LlmParseTransformer.go +50 -50
  308. package/native/transform/features/llm/LlmSchemaTransformer.go +129 -129
  309. package/native/transform/features/llm/LlmStructuredOutputTransformer.go +44 -44
  310. package/native/transform/features/misc/MiscAssertCloneTransformer.go +11 -11
  311. package/native/transform/features/misc/MiscAssertPruneTransformer.go +11 -11
  312. package/native/transform/features/misc/MiscCloneTransformer.go +11 -11
  313. package/native/transform/features/misc/MiscCreateAssertCloneTransformer.go +11 -11
  314. package/native/transform/features/misc/MiscCreateAssertPruneTransformer.go +11 -11
  315. package/native/transform/features/misc/MiscCreateCloneTransformer.go +11 -11
  316. package/native/transform/features/misc/MiscCreateIsCloneTransformer.go +11 -11
  317. package/native/transform/features/misc/MiscCreateIsPruneTransformer.go +11 -11
  318. package/native/transform/features/misc/MiscCreatePruneTransformer.go +11 -11
  319. package/native/transform/features/misc/MiscCreateValidateCloneTransformer.go +11 -11
  320. package/native/transform/features/misc/MiscCreateValidatePruneTransformer.go +11 -11
  321. package/native/transform/features/misc/MiscIsCloneTransformer.go +11 -11
  322. package/native/transform/features/misc/MiscIsPruneTransformer.go +11 -11
  323. package/native/transform/features/misc/MiscLiteralsTransformer.go +21 -21
  324. package/native/transform/features/misc/MiscPruneTransformer.go +11 -11
  325. package/native/transform/features/misc/MiscValidateCloneTransformer.go +11 -11
  326. package/native/transform/features/misc/MiscValidatePruneTransformer.go +11 -11
  327. package/native/transform/features/notations/NotationAssertGeneralTransformer.go +16 -16
  328. package/native/transform/features/notations/NotationCreateAssertGeneralTransformer.go +16 -16
  329. package/native/transform/features/notations/NotationCreateGeneralTransformer.go +16 -16
  330. package/native/transform/features/notations/NotationCreateIsGeneralTransformer.go +16 -16
  331. package/native/transform/features/notations/NotationCreateValidateGeneralTransformer.go +16 -16
  332. package/native/transform/features/notations/NotationGeneralTransformer.go +21 -21
  333. package/native/transform/features/notations/NotationIsGeneralTransformer.go +16 -16
  334. package/native/transform/features/notations/NotationValidateGeneralTransformer.go +16 -16
  335. package/native/transform/features/protobuf/ProtobufAssertDecodeTransformer.go +11 -11
  336. package/native/transform/features/protobuf/ProtobufAssertEncodeTransformer.go +11 -11
  337. package/native/transform/features/protobuf/ProtobufCreateAssertDecodeTransformer.go +11 -11
  338. package/native/transform/features/protobuf/ProtobufCreateAssertEncodeTransformer.go +11 -11
  339. package/native/transform/features/protobuf/ProtobufCreateDecodeTransformer.go +11 -11
  340. package/native/transform/features/protobuf/ProtobufCreateEncodeTransformer.go +11 -11
  341. package/native/transform/features/protobuf/ProtobufCreateIsDecodeTransformer.go +11 -11
  342. package/native/transform/features/protobuf/ProtobufCreateIsEncodeTransformer.go +11 -11
  343. package/native/transform/features/protobuf/ProtobufCreateValidateDecodeTransformer.go +11 -11
  344. package/native/transform/features/protobuf/ProtobufCreateValidateEncodeTransformer.go +11 -11
  345. package/native/transform/features/protobuf/ProtobufDecodeTransformer.go +11 -11
  346. package/native/transform/features/protobuf/ProtobufEncodeTransformer.go +11 -11
  347. package/native/transform/features/protobuf/ProtobufIsDecodeTransformer.go +11 -11
  348. package/native/transform/features/protobuf/ProtobufIsEncodeTransformer.go +11 -11
  349. package/native/transform/features/protobuf/ProtobufMessageTransformer.go +20 -20
  350. package/native/transform/features/protobuf/ProtobufValidateDecodeTransformer.go +11 -11
  351. package/native/transform/features/protobuf/ProtobufValidateEncodeTransformer.go +11 -11
  352. package/native/transform/features/reflect/ReflectMetadataTransformer.go +59 -59
  353. package/native/transform/features/reflect/ReflectNameTransformer.go +78 -78
  354. package/native/transform/features/reflect/ReflectSchemaTransformer.go +121 -121
  355. package/native/transform/features/reflect/ReflectSchemasTransformer.go +55 -55
  356. package/native/transform/internal/GenericTransformer.go +173 -173
  357. package/native/transform/transform.go +32 -32
  358. package/package.json +4 -4
  359. package/src/executable/TypiaGenerateWizard.ts +78 -9
  360. package/src/executable/generate/ttsc.ts +2 -3
  361. package/src/executable/setup/PluginConfigurator.ts +2 -3
  362. package/src/internal/_randomInteger.ts +5 -5
  363. package/src/internal/_validateReport.ts +1 -2
  364. package/src/transform.ts +6 -11
@@ -1,12 +1,12 @@
1
1
  package helpers
2
2
 
3
3
  import (
4
- "fmt"
5
- "math"
6
- "strconv"
7
- "strings"
4
+ "fmt"
5
+ "math"
6
+ "strconv"
7
+ "strings"
8
8
 
9
- nativemetadata "github.com/samchon/typia/packages/typia/native/core/schemas/metadata"
9
+ nativemetadata "github.com/samchon/typia/packages/typia/native/core/schemas/metadata"
10
10
  )
11
11
 
12
12
  type protobufUtilNamespace struct{}
@@ -14,284 +14,284 @@ type protobufUtilNamespace struct{}
14
14
  var ProtobufUtil = protobufUtilNamespace{}
15
15
 
16
16
  func (protobufUtilNamespace) IsStaticObject(obj *nativemetadata.MetadataObjectType) bool {
17
- if len(obj.Properties) == 0 {
18
- return false
19
- }
20
- for _, property := range obj.Properties {
21
- if property.Key.IsSoleLiteral() == false {
22
- return false
23
- }
24
- }
25
- return true
17
+ if len(obj.Properties) == 0 {
18
+ return false
19
+ }
20
+ for _, property := range obj.Properties {
21
+ if property.Key.IsSoleLiteral() == false {
22
+ return false
23
+ }
24
+ }
25
+ return true
26
26
  }
27
27
 
28
28
  func (protobufUtilNamespace) Size(meta *nativemetadata.MetadataSchema) int {
29
- return len(ProtobufUtil.GetAtomics(meta)) +
30
- len(meta.Arrays) +
31
- len(meta.Tuples) +
32
- len(meta.Natives) +
33
- len(meta.Objects) +
34
- len(meta.Maps)
29
+ return len(ProtobufUtil.GetAtomics(meta)) +
30
+ len(meta.Arrays) +
31
+ len(meta.Tuples) +
32
+ len(meta.Natives) +
33
+ len(meta.Objects) +
34
+ len(meta.Maps)
35
35
  }
36
36
 
37
37
  func (protobufUtilNamespace) GetSequence(tags []nativemetadata.IMetadataTypeTag) *int {
38
- for _, tag := range tags {
39
- if tag.Kind != "sequence" {
40
- continue
41
- }
42
- schema, ok := tag.Schema.(map[string]any)
43
- if ok == false {
44
- continue
45
- }
46
- value, ok := schema["x-protobuf-sequence"]
47
- if ok == false {
48
- continue
49
- }
50
- if parsed, ok := protobufUtil_toInt(value); ok {
51
- return &parsed
52
- }
53
- }
54
- return nil
38
+ for _, tag := range tags {
39
+ if tag.Kind != "sequence" {
40
+ continue
41
+ }
42
+ schema, ok := tag.Schema.(map[string]any)
43
+ if ok == false {
44
+ continue
45
+ }
46
+ value, ok := schema["x-protobuf-sequence"]
47
+ if ok == false {
48
+ continue
49
+ }
50
+ if parsed, ok := protobufUtil_toInt(value); ok {
51
+ return &parsed
52
+ }
53
+ }
54
+ return nil
55
55
  }
56
56
 
57
57
  func (protobufUtilNamespace) IsUnion(meta *nativemetadata.MetadataSchema) bool {
58
- return ProtobufUtil.Size(meta) > 1
58
+ return ProtobufUtil.Size(meta) > 1
59
59
  }
60
60
 
61
61
  func (protobufUtilNamespace) GetAtomics(meta *nativemetadata.MetadataSchema, union ...map[string]*int) map[string]*int {
62
- output := protobufUtil_map(union...)
63
- for _, constant := range meta.Constants {
64
- if constant.Type == "boolean" {
65
- output["bool"] = ProtobufUtil.GetSequence(protobufUtil_firstTags(constant.Values))
66
- } else if constant.Type == "bigint" {
67
- init := protobufUtil_deduce_bigint_type(protobufUtil_values(constant.Values))
68
- for _, value := range constant.Values {
69
- protobufUtil_decode_bigint(output, value.Tags, init)
70
- }
71
- } else if constant.Type == "number" {
72
- init := protobufUtil_deduce_numeric_type(protobufUtil_values(constant.Values))
73
- for _, value := range constant.Values {
74
- protobufUtil_decode_number(output, value.Tags, init)
75
- }
76
- } else if constant.Type == "string" {
77
- output["string"] = ProtobufUtil.GetSequence(protobufUtil_firstTags(constant.Values))
78
- }
79
- }
80
- if len(meta.Templates) != 0 {
81
- output["string"] = ProtobufUtil.GetSequence(protobufUtil_firstTagRow(meta.Templates[0].Tags))
82
- }
83
- for _, atomic := range meta.Atomics {
84
- if atomic.Type == "boolean" {
85
- output["bool"] = ProtobufUtil.GetSequence(protobufUtil_firstTagRow(atomic.Tags))
86
- } else if atomic.Type == "bigint" {
87
- protobufUtil_decode_bigint(output, atomic.Tags, "int64")
88
- } else if atomic.Type == "number" {
89
- protobufUtil_decode_number(output, atomic.Tags, "double")
90
- } else if atomic.Type == "string" {
91
- output["string"] = ProtobufUtil.GetSequence(protobufUtil_firstTagRow(atomic.Tags))
92
- }
93
- }
94
- return output
62
+ output := protobufUtil_map(union...)
63
+ for _, constant := range meta.Constants {
64
+ if constant.Type == "boolean" {
65
+ output["bool"] = ProtobufUtil.GetSequence(protobufUtil_firstTags(constant.Values))
66
+ } else if constant.Type == "bigint" {
67
+ init := protobufUtil_deduce_bigint_type(protobufUtil_values(constant.Values))
68
+ for _, value := range constant.Values {
69
+ protobufUtil_decode_bigint(output, value.Tags, init)
70
+ }
71
+ } else if constant.Type == "number" {
72
+ init := protobufUtil_deduce_numeric_type(protobufUtil_values(constant.Values))
73
+ for _, value := range constant.Values {
74
+ protobufUtil_decode_number(output, value.Tags, init)
75
+ }
76
+ } else if constant.Type == "string" {
77
+ output["string"] = ProtobufUtil.GetSequence(protobufUtil_firstTags(constant.Values))
78
+ }
79
+ }
80
+ if len(meta.Templates) != 0 {
81
+ output["string"] = ProtobufUtil.GetSequence(protobufUtil_firstTagRow(meta.Templates[0].Tags))
82
+ }
83
+ for _, atomic := range meta.Atomics {
84
+ if atomic.Type == "boolean" {
85
+ output["bool"] = ProtobufUtil.GetSequence(protobufUtil_firstTagRow(atomic.Tags))
86
+ } else if atomic.Type == "bigint" {
87
+ protobufUtil_decode_bigint(output, atomic.Tags, "int64")
88
+ } else if atomic.Type == "number" {
89
+ protobufUtil_decode_number(output, atomic.Tags, "double")
90
+ } else if atomic.Type == "string" {
91
+ output["string"] = ProtobufUtil.GetSequence(protobufUtil_firstTagRow(atomic.Tags))
92
+ }
93
+ }
94
+ return output
95
95
  }
96
96
 
97
97
  func (protobufUtilNamespace) GetNumbers(meta *nativemetadata.MetadataSchema, union ...map[string]*int) map[string]*int {
98
- output := protobufUtil_map(union...)
99
- for _, constant := range meta.Constants {
100
- if constant.Type == "number" {
101
- init := protobufUtil_deduce_numeric_type(protobufUtil_values(constant.Values))
102
- for _, value := range constant.Values {
103
- protobufUtil_decode_number(output, value.Tags, init)
104
- }
105
- }
106
- }
107
- for _, atomic := range meta.Atomics {
108
- if atomic.Type == "number" {
109
- protobufUtil_decode_number(output, atomic.Tags, "double")
110
- }
111
- }
112
- return output
98
+ output := protobufUtil_map(union...)
99
+ for _, constant := range meta.Constants {
100
+ if constant.Type == "number" {
101
+ init := protobufUtil_deduce_numeric_type(protobufUtil_values(constant.Values))
102
+ for _, value := range constant.Values {
103
+ protobufUtil_decode_number(output, value.Tags, init)
104
+ }
105
+ }
106
+ }
107
+ for _, atomic := range meta.Atomics {
108
+ if atomic.Type == "number" {
109
+ protobufUtil_decode_number(output, atomic.Tags, "double")
110
+ }
111
+ }
112
+ return output
113
113
  }
114
114
 
115
115
  func (protobufUtilNamespace) GetBigints(meta *nativemetadata.MetadataSchema, union ...map[string]*int) map[string]*int {
116
- output := protobufUtil_map(union...)
117
- for _, constant := range meta.Constants {
118
- if constant.Type == "bigint" {
119
- init := protobufUtil_deduce_bigint_type(protobufUtil_values(constant.Values))
120
- for _, value := range constant.Values {
121
- protobufUtil_decode_bigint(output, value.Tags, init)
122
- }
123
- }
124
- }
125
- for _, atomic := range meta.Atomics {
126
- if atomic.Type == "bigint" {
127
- protobufUtil_decode_bigint(output, atomic.Tags, "int64")
128
- }
129
- }
130
- return output
116
+ output := protobufUtil_map(union...)
117
+ for _, constant := range meta.Constants {
118
+ if constant.Type == "bigint" {
119
+ init := protobufUtil_deduce_bigint_type(protobufUtil_values(constant.Values))
120
+ for _, value := range constant.Values {
121
+ protobufUtil_decode_bigint(output, value.Tags, init)
122
+ }
123
+ }
124
+ }
125
+ for _, atomic := range meta.Atomics {
126
+ if atomic.Type == "bigint" {
127
+ protobufUtil_decode_bigint(output, atomic.Tags, "int64")
128
+ }
129
+ }
130
+ return output
131
131
  }
132
132
 
133
133
  func (protobufUtilNamespace) Compare(x string, y string) int {
134
- return protobufUtil_atomicOrder[x] - protobufUtil_atomicOrder[y]
134
+ return protobufUtil_atomicOrder[x] - protobufUtil_atomicOrder[y]
135
135
  }
136
136
 
137
137
  var protobufUtil_atomicOrder = map[string]int{
138
- "bool": 0,
139
- "int32": 1,
140
- "uint32": 2,
141
- "int64": 3,
142
- "uint64": 4,
143
- "float": 5,
144
- "double": 6,
145
- "string": 7,
138
+ "bool": 0,
139
+ "int32": 1,
140
+ "uint32": 2,
141
+ "int64": 3,
142
+ "uint64": 4,
143
+ "float": 5,
144
+ "double": 6,
145
+ "string": 7,
146
146
  }
147
147
 
148
148
  func protobufUtil_map(union ...map[string]*int) map[string]*int {
149
- if len(union) != 0 && union[0] != nil {
150
- return union[0]
151
- }
152
- return map[string]*int{}
149
+ if len(union) != 0 && union[0] != nil {
150
+ return union[0]
151
+ }
152
+ return map[string]*int{}
153
153
  }
154
154
 
155
155
  func protobufUtil_firstTags(values []*nativemetadata.MetadataConstantValue) []nativemetadata.IMetadataTypeTag {
156
- if len(values) == 0 || len(values[0].Tags) == 0 {
157
- return []nativemetadata.IMetadataTypeTag{}
158
- }
159
- return values[0].Tags[0]
156
+ if len(values) == 0 || len(values[0].Tags) == 0 {
157
+ return []nativemetadata.IMetadataTypeTag{}
158
+ }
159
+ return values[0].Tags[0]
160
160
  }
161
161
 
162
162
  func protobufUtil_firstTagRow(tags [][]nativemetadata.IMetadataTypeTag) []nativemetadata.IMetadataTypeTag {
163
- if len(tags) == 0 {
164
- return []nativemetadata.IMetadataTypeTag{}
165
- }
166
- return tags[0]
163
+ if len(tags) == 0 {
164
+ return []nativemetadata.IMetadataTypeTag{}
165
+ }
166
+ return tags[0]
167
167
  }
168
168
 
169
169
  func protobufUtil_values(values []*nativemetadata.MetadataConstantValue) []any {
170
- output := make([]any, 0, len(values))
171
- for _, value := range values {
172
- output = append(output, value.Value)
173
- }
174
- return output
170
+ output := make([]any, 0, len(values))
171
+ for _, value := range values {
172
+ output = append(output, value.Value)
173
+ }
174
+ return output
175
175
  }
176
176
 
177
177
  func protobufUtil_deduce_bigint_type(values []any) string {
178
- for _, value := range values {
179
- if strings.HasPrefix(fmt.Sprint(value), "-") {
180
- return "int64"
181
- }
182
- }
183
- return "uint64"
178
+ for _, value := range values {
179
+ if strings.HasPrefix(fmt.Sprint(value), "-") {
180
+ return "int64"
181
+ }
182
+ }
183
+ return "uint64"
184
184
  }
185
185
 
186
186
  func protobufUtil_deduce_numeric_type(values []any) string {
187
- integers := true
188
- int32s := true
189
- for _, value := range values {
190
- number := protobufUtil_toFloat(value)
191
- if math.Floor(number) != number {
192
- integers = false
193
- break
194
- }
195
- if -2147483648 <= number && number <= 2147483647 {
196
- continue
197
- }
198
- int32s = false
199
- }
200
- if integers == false {
201
- return "double"
202
- }
203
- if int32s {
204
- return "int32"
205
- }
206
- return "int64"
187
+ integers := true
188
+ int32s := true
189
+ for _, value := range values {
190
+ number := protobufUtil_toFloat(value)
191
+ if math.Floor(number) != number {
192
+ integers = false
193
+ break
194
+ }
195
+ if -2147483648 <= number && number <= 2147483647 {
196
+ continue
197
+ }
198
+ int32s = false
199
+ }
200
+ if integers == false {
201
+ return "double"
202
+ }
203
+ if int32s {
204
+ return "int32"
205
+ }
206
+ return "int64"
207
207
  }
208
208
 
209
209
  func protobufUtil_decode_bigint(output map[string]*int, tags [][]nativemetadata.IMetadataTypeTag, defaultType string) {
210
- if len(tags) == 0 {
211
- output[defaultType] = nil
212
- return
213
- }
214
- for _, row := range tags {
215
- value := "int64"
216
- for _, tag := range row {
217
- if tag.Kind == "type" && (tag.Value == "int64" || tag.Value == "uint64") {
218
- value = fmt.Sprint(tag.Value)
219
- break
220
- }
221
- }
222
- output[value] = ProtobufUtil.GetSequence(row)
223
- }
210
+ if len(tags) == 0 {
211
+ output[defaultType] = nil
212
+ return
213
+ }
214
+ for _, row := range tags {
215
+ value := "int64"
216
+ for _, tag := range row {
217
+ if tag.Kind == "type" && (tag.Value == "int64" || tag.Value == "uint64") {
218
+ value = fmt.Sprint(tag.Value)
219
+ break
220
+ }
221
+ }
222
+ output[value] = ProtobufUtil.GetSequence(row)
223
+ }
224
224
  }
225
225
 
226
226
  func protobufUtil_decode_number(output map[string]*int, tags [][]nativemetadata.IMetadataTypeTag, defaultType string) {
227
- if len(tags) == 0 {
228
- output[defaultType] = nil
229
- return
230
- }
231
- for _, row := range tags {
232
- value := "double"
233
- for _, tag := range row {
234
- if tag.Kind == "type" {
235
- str := fmt.Sprint(tag.Value)
236
- if str == "int32" || str == "uint32" || str == "int64" || str == "uint64" || str == "float" || str == "double" {
237
- value = str
238
- break
239
- }
240
- }
241
- }
242
- output[value] = ProtobufUtil.GetSequence(row)
243
- }
227
+ if len(tags) == 0 {
228
+ output[defaultType] = nil
229
+ return
230
+ }
231
+ for _, row := range tags {
232
+ value := "double"
233
+ for _, tag := range row {
234
+ if tag.Kind == "type" {
235
+ str := fmt.Sprint(tag.Value)
236
+ if str == "int32" || str == "uint32" || str == "int64" || str == "uint64" || str == "float" || str == "double" {
237
+ value = str
238
+ break
239
+ }
240
+ }
241
+ }
242
+ output[value] = ProtobufUtil.GetSequence(row)
243
+ }
244
244
  }
245
245
 
246
246
  func protobufUtil_toInt(value any) (int, bool) {
247
- switch v := value.(type) {
248
- case int:
249
- return v, true
250
- case int32:
251
- return int(v), true
252
- case int64:
253
- return int(v), true
254
- case uint:
255
- return int(v), true
256
- case uint32:
257
- return int(v), true
258
- case uint64:
259
- return int(v), true
260
- case float64:
261
- return int(v), true
262
- case float32:
263
- return int(v), true
264
- case string:
265
- parsed, err := strconv.Atoi(v)
266
- return parsed, err == nil
267
- default:
268
- return 0, false
269
- }
247
+ switch v := value.(type) {
248
+ case int:
249
+ return v, true
250
+ case int32:
251
+ return int(v), true
252
+ case int64:
253
+ return int(v), true
254
+ case uint:
255
+ return int(v), true
256
+ case uint32:
257
+ return int(v), true
258
+ case uint64:
259
+ return int(v), true
260
+ case float64:
261
+ return int(v), true
262
+ case float32:
263
+ return int(v), true
264
+ case string:
265
+ parsed, err := strconv.Atoi(v)
266
+ return parsed, err == nil
267
+ default:
268
+ return 0, false
269
+ }
270
270
  }
271
271
 
272
272
  func protobufUtil_toFloat(value any) float64 {
273
- switch v := value.(type) {
274
- case float64:
275
- return v
276
- case float32:
277
- return float64(v)
278
- case int:
279
- return float64(v)
280
- case int32:
281
- return float64(v)
282
- case int64:
283
- return float64(v)
284
- case uint:
285
- return float64(v)
286
- case uint32:
287
- return float64(v)
288
- case uint64:
289
- return float64(v)
290
- case string:
291
- parsed, _ := strconv.ParseFloat(v, 64)
292
- return parsed
293
- default:
294
- parsed, _ := strconv.ParseFloat(fmt.Sprint(value), 64)
295
- return parsed
296
- }
273
+ switch v := value.(type) {
274
+ case float64:
275
+ return v
276
+ case float32:
277
+ return float64(v)
278
+ case int:
279
+ return float64(v)
280
+ case int32:
281
+ return float64(v)
282
+ case int64:
283
+ return float64(v)
284
+ case uint:
285
+ return float64(v)
286
+ case uint32:
287
+ return float64(v)
288
+ case uint64:
289
+ return float64(v)
290
+ case string:
291
+ parsed, _ := strconv.ParseFloat(v, 64)
292
+ return parsed
293
+ default:
294
+ parsed, _ := strconv.ParseFloat(fmt.Sprint(value), 64)
295
+ return parsed
296
+ }
297
297
  }
@@ -3,12 +3,12 @@ package helpers
3
3
  type ProtobufWire int
4
4
 
5
5
  const (
6
- VARIANT ProtobufWire = 0
7
- I64 ProtobufWire = 1
8
- LEN ProtobufWire = 2
6
+ VARIANT ProtobufWire = 0
7
+ I64 ProtobufWire = 1
8
+ LEN ProtobufWire = 2
9
9
 
10
- START_GROUP ProtobufWire = 3
11
- END_GROUP ProtobufWire = 4
10
+ START_GROUP ProtobufWire = 3
11
+ END_GROUP ProtobufWire = 4
12
12
 
13
- I32 ProtobufWire = 5
13
+ I32 ProtobufWire = 5
14
14
  )