typia 13.0.0-dev.20260501 → 13.0.0-dev.20260506

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