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
@@ -1,9 +1,9 @@
1
1
  package factories
2
2
 
3
3
  import (
4
- nativechecker "github.com/microsoft/typescript-go/shim/checker"
5
- nativemetadata "github.com/samchon/typia/packages/typia/native/core/factories/internal/metadata"
6
- schemametadata "github.com/samchon/typia/packages/typia/native/core/schemas/metadata"
4
+ nativechecker "github.com/microsoft/typescript-go/shim/checker"
5
+ nativemetadata "github.com/samchon/typia/packages/typia/native/core/factories/internal/metadata"
6
+ schemametadata "github.com/samchon/typia/packages/typia/native/core/schemas/metadata"
7
7
  )
8
8
 
9
9
  type metadataFactoryNamespace struct{}
@@ -11,30 +11,30 @@ type metadataFactoryNamespace struct{}
11
11
  var MetadataFactory = metadataFactoryNamespace{}
12
12
 
13
13
  func init() {
14
- nativemetadata.MetadataTypeTagAnalyzer = func(props struct {
15
- Errors *[]nativemetadata.MetadataFactory_IError
16
- Type string
17
- Objects []*schemametadata.MetadataObjectType
18
- Explore nativemetadata.MetadataFactory_IExplore
19
- }) []schemametadata.IMetadataTypeTag {
20
- return MetadataTypeTagFactory.Analyze(struct {
21
- Errors *[]MetadataFactory_IError
22
- Type string
23
- Objects []*schemametadata.MetadataObjectType
24
- Explore MetadataFactory_IExplore
25
- }{
26
- Errors: props.Errors,
27
- Type: props.Type,
28
- Objects: props.Objects,
29
- Explore: props.Explore,
30
- })
31
- }
14
+ nativemetadata.MetadataTypeTagAnalyzer = func(props struct {
15
+ Errors *[]nativemetadata.MetadataFactory_IError
16
+ Type string
17
+ Objects []*schemametadata.MetadataObjectType
18
+ Explore nativemetadata.MetadataFactory_IExplore
19
+ }) []schemametadata.IMetadataTypeTag {
20
+ return MetadataTypeTagFactory.Analyze(struct {
21
+ Errors *[]MetadataFactory_IError
22
+ Type string
23
+ Objects []*schemametadata.MetadataObjectType
24
+ Explore MetadataFactory_IExplore
25
+ }{
26
+ Errors: props.Errors,
27
+ Type: props.Type,
28
+ Objects: props.Objects,
29
+ Explore: props.Explore,
30
+ })
31
+ }
32
32
  }
33
33
 
34
34
  type MetadataFactory_Validator = func(props struct {
35
- Metadata *schemametadata.MetadataSchema
36
- Explore MetadataFactory_IExplore
37
- Top *schemametadata.MetadataSchema
35
+ Metadata *schemametadata.MetadataSchema
36
+ Explore MetadataFactory_IExplore
37
+ Top *schemametadata.MetadataSchema
38
38
  }) []string
39
39
 
40
40
  type MetadataFactory_IOptions = nativemetadata.MetadataFactory_IOptions
@@ -42,488 +42,488 @@ type MetadataFactory_IExplore = nativemetadata.MetadataFactory_IExplore
42
42
  type MetadataFactory_IError = nativemetadata.MetadataFactory_IError
43
43
 
44
44
  type MetadataFactory_IProps struct {
45
- Checker *nativechecker.Checker
46
- Transformer any
47
- Options MetadataFactory_IOptions
48
- Components *schemametadata.MetadataCollection
49
- Type *nativechecker.Type
45
+ Checker *nativechecker.Checker
46
+ Transformer any
47
+ Options MetadataFactory_IOptions
48
+ Components *schemametadata.MetadataCollection
49
+ Type *nativechecker.Type
50
50
  }
51
51
 
52
52
  type MetadataFactory_ValidationPipe struct {
53
- Success bool
54
- Data *schemametadata.MetadataSchema
55
- Errors []MetadataFactory_IError
53
+ Success bool
54
+ Data *schemametadata.MetadataSchema
55
+ Errors []MetadataFactory_IError
56
56
  }
57
57
 
58
58
  func (metadataFactoryNamespace) Analyze(props MetadataFactory_IProps) MetadataFactory_ValidationPipe {
59
- errors := []MetadataFactory_IError{}
60
- metadata := nativemetadata.Explore_metadata(nativemetadata.Explore_metadata_IProps{
61
- Options: props.Options,
62
- Checker: props.Checker,
63
- Components: props.Components,
64
- Errors: &errors,
65
- Type: props.Type,
66
- Explore: MetadataFactory_IExplore{
67
- Top: true,
68
- Object: nil,
69
- Property: nil,
70
- Parameter: nil,
71
- Nested: nil,
72
- Aliased: false,
73
- Escaped: false,
74
- Output: false,
75
- },
76
- Intersected: false,
77
- })
78
- nativemetadata.Iterate_metadata_collection(struct {
79
- Errors *[]MetadataFactory_IError
80
- Collection *schemametadata.MetadataCollection
81
- }{
82
- Errors: &errors,
83
- Collection: props.Components,
84
- })
85
- nativemetadata.Iterate_metadata_sort(struct {
86
- Collection *schemametadata.MetadataCollection
87
- Metadata *schemametadata.MetadataSchema
88
- }{
89
- Collection: props.Components,
90
- Metadata: metadata,
91
- })
59
+ errors := []MetadataFactory_IError{}
60
+ metadata := nativemetadata.Explore_metadata(nativemetadata.Explore_metadata_IProps{
61
+ Options: props.Options,
62
+ Checker: props.Checker,
63
+ Components: props.Components,
64
+ Errors: &errors,
65
+ Type: props.Type,
66
+ Explore: MetadataFactory_IExplore{
67
+ Top: true,
68
+ Object: nil,
69
+ Property: nil,
70
+ Parameter: nil,
71
+ Nested: nil,
72
+ Aliased: false,
73
+ Escaped: false,
74
+ Output: false,
75
+ },
76
+ Intersected: false,
77
+ })
78
+ nativemetadata.Iterate_metadata_collection(struct {
79
+ Errors *[]MetadataFactory_IError
80
+ Collection *schemametadata.MetadataCollection
81
+ }{
82
+ Errors: &errors,
83
+ Collection: props.Components,
84
+ })
85
+ nativemetadata.Iterate_metadata_sort(struct {
86
+ Collection *schemametadata.MetadataCollection
87
+ Metadata *schemametadata.MetadataSchema
88
+ }{
89
+ Collection: props.Components,
90
+ Metadata: metadata,
91
+ })
92
92
 
93
- if props.Options.Validate != nil {
94
- errors = append(errors, MetadataFactory.Validate(struct {
95
- Transformer any
96
- Options MetadataFactory_IOptions
97
- Functor MetadataFactory_Validator
98
- Metadata *schemametadata.MetadataSchema
99
- }{
100
- Transformer: props.Transformer,
101
- Options: props.Options,
102
- Functor: props.Options.Validate,
103
- Metadata: metadata,
104
- })...)
105
- }
106
- if len(errors) != 0 {
107
- return MetadataFactory_ValidationPipe{
108
- Success: false,
109
- Errors: errors,
110
- }
111
- }
112
- return MetadataFactory_ValidationPipe{
113
- Success: true,
114
- Data: metadata,
115
- }
93
+ if props.Options.Validate != nil {
94
+ errors = append(errors, MetadataFactory.Validate(struct {
95
+ Transformer any
96
+ Options MetadataFactory_IOptions
97
+ Functor MetadataFactory_Validator
98
+ Metadata *schemametadata.MetadataSchema
99
+ }{
100
+ Transformer: props.Transformer,
101
+ Options: props.Options,
102
+ Functor: props.Options.Validate,
103
+ Metadata: metadata,
104
+ })...)
105
+ }
106
+ if len(errors) != 0 {
107
+ return MetadataFactory_ValidationPipe{
108
+ Success: false,
109
+ Errors: errors,
110
+ }
111
+ }
112
+ return MetadataFactory_ValidationPipe{
113
+ Success: true,
114
+ Data: metadata,
115
+ }
116
116
  }
117
117
 
118
118
  func (metadataFactoryNamespace) SoleLiteral(value string) *schemametadata.MetadataSchema {
119
- meta := schemametadata.MetadataSchema_initialize()
120
- meta.Constants = append(meta.Constants, schemametadata.MetadataConstant_create(schemametadata.MetadataConstant{
121
- Values: []*schemametadata.MetadataConstantValue{
122
- schemametadata.MetadataConstantValue_create(schemametadata.MetadataConstantValue{
123
- Value: value,
124
- Tags: [][]schemametadata.IMetadataTypeTag{},
125
- }),
126
- },
127
- Type: "string",
128
- }))
129
- return meta
119
+ meta := schemametadata.MetadataSchema_initialize()
120
+ meta.Constants = append(meta.Constants, schemametadata.MetadataConstant_create(schemametadata.MetadataConstant{
121
+ Values: []*schemametadata.MetadataConstantValue{
122
+ schemametadata.MetadataConstantValue_create(schemametadata.MetadataConstantValue{
123
+ Value: value,
124
+ Tags: [][]schemametadata.IMetadataTypeTag{},
125
+ }),
126
+ },
127
+ Type: "string",
128
+ }))
129
+ return meta
130
130
  }
131
131
 
132
132
  func (metadataFactoryNamespace) Validate(props struct {
133
- Transformer any
134
- Options MetadataFactory_IOptions
135
- Functor MetadataFactory_Validator
136
- Metadata *schemametadata.MetadataSchema
133
+ Transformer any
134
+ Options MetadataFactory_IOptions
135
+ Functor MetadataFactory_Validator
136
+ Metadata *schemametadata.MetadataSchema
137
137
  }) []MetadataFactory_IError {
138
- visitor := &metadataFactory_IValidationVisitor{
139
- Functor: props.Functor,
140
- Errors: []MetadataFactory_IError{},
141
- Objects: map[*schemametadata.MetadataObjectType]bool{},
142
- Arrays: map[*schemametadata.MetadataArrayType]bool{},
143
- Tuples: map[*schemametadata.MetadataTupleType]bool{},
144
- Aliases: map[*schemametadata.MetadataAliasType]bool{},
145
- Functions: map[*schemametadata.MetadataFunction]bool{},
146
- }
147
- MetadataFactory.validateMeta(struct {
148
- Options MetadataFactory_IOptions
149
- Visitor *metadataFactory_IValidationVisitor
150
- Metadata *schemametadata.MetadataSchema
151
- Top *schemametadata.MetadataSchema
152
- Explore MetadataFactory_IExplore
153
- }{
154
- Options: props.Options,
155
- Visitor: visitor,
156
- Metadata: props.Metadata,
157
- Top: props.Metadata,
158
- Explore: MetadataFactory_IExplore{
159
- Object: nil,
160
- Property: nil,
161
- Parameter: nil,
162
- Nested: nil,
163
- Top: true,
164
- Aliased: false,
165
- Escaped: false,
166
- Output: false,
167
- },
168
- })
169
- return visitor.Errors
138
+ visitor := &metadataFactory_IValidationVisitor{
139
+ Functor: props.Functor,
140
+ Errors: []MetadataFactory_IError{},
141
+ Objects: map[*schemametadata.MetadataObjectType]bool{},
142
+ Arrays: map[*schemametadata.MetadataArrayType]bool{},
143
+ Tuples: map[*schemametadata.MetadataTupleType]bool{},
144
+ Aliases: map[*schemametadata.MetadataAliasType]bool{},
145
+ Functions: map[*schemametadata.MetadataFunction]bool{},
146
+ }
147
+ MetadataFactory.validateMeta(struct {
148
+ Options MetadataFactory_IOptions
149
+ Visitor *metadataFactory_IValidationVisitor
150
+ Metadata *schemametadata.MetadataSchema
151
+ Top *schemametadata.MetadataSchema
152
+ Explore MetadataFactory_IExplore
153
+ }{
154
+ Options: props.Options,
155
+ Visitor: visitor,
156
+ Metadata: props.Metadata,
157
+ Top: props.Metadata,
158
+ Explore: MetadataFactory_IExplore{
159
+ Object: nil,
160
+ Property: nil,
161
+ Parameter: nil,
162
+ Nested: nil,
163
+ Top: true,
164
+ Aliased: false,
165
+ Escaped: false,
166
+ Output: false,
167
+ },
168
+ })
169
+ return visitor.Errors
170
170
  }
171
171
 
172
172
  func (metadataFactoryNamespace) validateMeta(props struct {
173
- Options MetadataFactory_IOptions
174
- Visitor *metadataFactory_IValidationVisitor
175
- Metadata *schemametadata.MetadataSchema
176
- Top *schemametadata.MetadataSchema
177
- Explore MetadataFactory_IExplore
173
+ Options MetadataFactory_IOptions
174
+ Visitor *metadataFactory_IValidationVisitor
175
+ Metadata *schemametadata.MetadataSchema
176
+ Top *schemametadata.MetadataSchema
177
+ Explore MetadataFactory_IExplore
178
178
  }) {
179
- result := []string{}
180
- if props.Visitor.Functor != nil {
181
- result = append(result, props.Visitor.Functor(struct {
182
- Metadata *schemametadata.MetadataSchema
183
- Explore MetadataFactory_IExplore
184
- Top *schemametadata.MetadataSchema
185
- }{
186
- Metadata: props.Metadata,
187
- Explore: props.Explore,
188
- Top: props.Top,
189
- })...)
190
- }
191
- if len(result) != 0 {
192
- props.Visitor.Errors = append(props.Visitor.Errors, MetadataFactory_IError{
193
- Name: props.Metadata.GetName(),
194
- Explore: props.Explore,
195
- Messages: metadataFactory_unique(result),
196
- })
197
- }
179
+ result := []string{}
180
+ if props.Visitor.Functor != nil {
181
+ result = append(result, props.Visitor.Functor(struct {
182
+ Metadata *schemametadata.MetadataSchema
183
+ Explore MetadataFactory_IExplore
184
+ Top *schemametadata.MetadataSchema
185
+ }{
186
+ Metadata: props.Metadata,
187
+ Explore: props.Explore,
188
+ Top: props.Top,
189
+ })...)
190
+ }
191
+ if len(result) != 0 {
192
+ props.Visitor.Errors = append(props.Visitor.Errors, MetadataFactory_IError{
193
+ Name: props.Metadata.GetName(),
194
+ Explore: props.Explore,
195
+ Messages: metadataFactory_unique(result),
196
+ })
197
+ }
198
198
 
199
- for _, alias := range props.Metadata.Aliases {
200
- MetadataFactory.validateAlias(struct {
201
- Options MetadataFactory_IOptions
202
- Visitor *metadataFactory_IValidationVisitor
203
- Alias *schemametadata.MetadataAliasType
204
- Explore MetadataFactory_IExplore
205
- Top *schemametadata.MetadataSchema
206
- }{
207
- Options: props.Options,
208
- Visitor: props.Visitor,
209
- Alias: alias.Type,
210
- Explore: props.Explore,
211
- Top: props.Top,
212
- })
213
- }
214
- for _, array := range props.Metadata.Arrays {
215
- MetadataFactory.validateArray(struct {
216
- Options MetadataFactory_IOptions
217
- Visitor *metadataFactory_IValidationVisitor
218
- Array *schemametadata.MetadataArrayType
219
- Explore MetadataFactory_IExplore
220
- Top *schemametadata.MetadataSchema
221
- }{
222
- Options: props.Options,
223
- Visitor: props.Visitor,
224
- Array: array.Type,
225
- Explore: props.Explore,
226
- Top: props.Top,
227
- })
228
- }
229
- for _, tuple := range props.Metadata.Tuples {
230
- MetadataFactory.validateTuple(struct {
231
- Options MetadataFactory_IOptions
232
- Visitor *metadataFactory_IValidationVisitor
233
- Tuple *schemametadata.MetadataTupleType
234
- Explore MetadataFactory_IExplore
235
- Top *schemametadata.MetadataSchema
236
- }{
237
- Options: props.Options,
238
- Visitor: props.Visitor,
239
- Tuple: tuple.Type,
240
- Explore: props.Explore,
241
- Top: props.Top,
242
- })
243
- }
244
- for _, object := range props.Metadata.Objects {
245
- MetadataFactory.validateObject(struct {
246
- Options MetadataFactory_IOptions
247
- Visitor *metadataFactory_IValidationVisitor
248
- Object *schemametadata.MetadataObjectType
249
- Top *schemametadata.MetadataSchema
250
- }{
251
- Options: props.Options,
252
- Visitor: props.Visitor,
253
- Object: object.Type,
254
- Top: props.Top,
255
- })
256
- }
257
- for _, function := range props.Metadata.Functions {
258
- MetadataFactory.validateFunction(struct {
259
- Options MetadataFactory_IOptions
260
- Visitor *metadataFactory_IValidationVisitor
261
- Function *schemametadata.MetadataFunction
262
- Explore MetadataFactory_IExplore
263
- Top *schemametadata.MetadataSchema
264
- }{
265
- Options: props.Options,
266
- Visitor: props.Visitor,
267
- Function: function,
268
- Explore: props.Explore,
269
- Top: props.Top,
270
- })
271
- }
272
- for _, set := range props.Metadata.Sets {
273
- MetadataFactory.validateMeta(struct {
274
- Options MetadataFactory_IOptions
275
- Visitor *metadataFactory_IValidationVisitor
276
- Metadata *schemametadata.MetadataSchema
277
- Top *schemametadata.MetadataSchema
278
- Explore MetadataFactory_IExplore
279
- }{
280
- Options: props.Options,
281
- Visitor: props.Visitor,
282
- Metadata: set.Value,
283
- Top: props.Top,
284
- Explore: props.Explore,
285
- })
286
- }
287
- for _, m := range props.Metadata.Maps {
288
- MetadataFactory.validateMeta(struct {
289
- Options MetadataFactory_IOptions
290
- Visitor *metadataFactory_IValidationVisitor
291
- Metadata *schemametadata.MetadataSchema
292
- Top *schemametadata.MetadataSchema
293
- Explore MetadataFactory_IExplore
294
- }{Options: props.Options, Visitor: props.Visitor, Metadata: m.Key, Top: props.Top, Explore: props.Explore})
295
- MetadataFactory.validateMeta(struct {
296
- Options MetadataFactory_IOptions
297
- Visitor *metadataFactory_IValidationVisitor
298
- Metadata *schemametadata.MetadataSchema
299
- Top *schemametadata.MetadataSchema
300
- Explore MetadataFactory_IExplore
301
- }{Options: props.Options, Visitor: props.Visitor, Metadata: m.Value, Top: props.Top, Explore: props.Explore})
302
- }
303
- if props.Options.Escape == true && props.Metadata.Escaped != nil {
304
- explore := props.Explore
305
- explore.Escaped = true
306
- MetadataFactory.validateMeta(struct {
307
- Options MetadataFactory_IOptions
308
- Visitor *metadataFactory_IValidationVisitor
309
- Metadata *schemametadata.MetadataSchema
310
- Top *schemametadata.MetadataSchema
311
- Explore MetadataFactory_IExplore
312
- }{Options: props.Options, Visitor: props.Visitor, Metadata: props.Metadata.Escaped.Returns, Top: props.Top, Explore: explore})
313
- }
199
+ for _, alias := range props.Metadata.Aliases {
200
+ MetadataFactory.validateAlias(struct {
201
+ Options MetadataFactory_IOptions
202
+ Visitor *metadataFactory_IValidationVisitor
203
+ Alias *schemametadata.MetadataAliasType
204
+ Explore MetadataFactory_IExplore
205
+ Top *schemametadata.MetadataSchema
206
+ }{
207
+ Options: props.Options,
208
+ Visitor: props.Visitor,
209
+ Alias: alias.Type,
210
+ Explore: props.Explore,
211
+ Top: props.Top,
212
+ })
213
+ }
214
+ for _, array := range props.Metadata.Arrays {
215
+ MetadataFactory.validateArray(struct {
216
+ Options MetadataFactory_IOptions
217
+ Visitor *metadataFactory_IValidationVisitor
218
+ Array *schemametadata.MetadataArrayType
219
+ Explore MetadataFactory_IExplore
220
+ Top *schemametadata.MetadataSchema
221
+ }{
222
+ Options: props.Options,
223
+ Visitor: props.Visitor,
224
+ Array: array.Type,
225
+ Explore: props.Explore,
226
+ Top: props.Top,
227
+ })
228
+ }
229
+ for _, tuple := range props.Metadata.Tuples {
230
+ MetadataFactory.validateTuple(struct {
231
+ Options MetadataFactory_IOptions
232
+ Visitor *metadataFactory_IValidationVisitor
233
+ Tuple *schemametadata.MetadataTupleType
234
+ Explore MetadataFactory_IExplore
235
+ Top *schemametadata.MetadataSchema
236
+ }{
237
+ Options: props.Options,
238
+ Visitor: props.Visitor,
239
+ Tuple: tuple.Type,
240
+ Explore: props.Explore,
241
+ Top: props.Top,
242
+ })
243
+ }
244
+ for _, object := range props.Metadata.Objects {
245
+ MetadataFactory.validateObject(struct {
246
+ Options MetadataFactory_IOptions
247
+ Visitor *metadataFactory_IValidationVisitor
248
+ Object *schemametadata.MetadataObjectType
249
+ Top *schemametadata.MetadataSchema
250
+ }{
251
+ Options: props.Options,
252
+ Visitor: props.Visitor,
253
+ Object: object.Type,
254
+ Top: props.Top,
255
+ })
256
+ }
257
+ for _, function := range props.Metadata.Functions {
258
+ MetadataFactory.validateFunction(struct {
259
+ Options MetadataFactory_IOptions
260
+ Visitor *metadataFactory_IValidationVisitor
261
+ Function *schemametadata.MetadataFunction
262
+ Explore MetadataFactory_IExplore
263
+ Top *schemametadata.MetadataSchema
264
+ }{
265
+ Options: props.Options,
266
+ Visitor: props.Visitor,
267
+ Function: function,
268
+ Explore: props.Explore,
269
+ Top: props.Top,
270
+ })
271
+ }
272
+ for _, set := range props.Metadata.Sets {
273
+ MetadataFactory.validateMeta(struct {
274
+ Options MetadataFactory_IOptions
275
+ Visitor *metadataFactory_IValidationVisitor
276
+ Metadata *schemametadata.MetadataSchema
277
+ Top *schemametadata.MetadataSchema
278
+ Explore MetadataFactory_IExplore
279
+ }{
280
+ Options: props.Options,
281
+ Visitor: props.Visitor,
282
+ Metadata: set.Value,
283
+ Top: props.Top,
284
+ Explore: props.Explore,
285
+ })
286
+ }
287
+ for _, m := range props.Metadata.Maps {
288
+ MetadataFactory.validateMeta(struct {
289
+ Options MetadataFactory_IOptions
290
+ Visitor *metadataFactory_IValidationVisitor
291
+ Metadata *schemametadata.MetadataSchema
292
+ Top *schemametadata.MetadataSchema
293
+ Explore MetadataFactory_IExplore
294
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: m.Key, Top: props.Top, Explore: props.Explore})
295
+ MetadataFactory.validateMeta(struct {
296
+ Options MetadataFactory_IOptions
297
+ Visitor *metadataFactory_IValidationVisitor
298
+ Metadata *schemametadata.MetadataSchema
299
+ Top *schemametadata.MetadataSchema
300
+ Explore MetadataFactory_IExplore
301
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: m.Value, Top: props.Top, Explore: props.Explore})
302
+ }
303
+ if props.Options.Escape == true && props.Metadata.Escaped != nil {
304
+ explore := props.Explore
305
+ explore.Escaped = true
306
+ MetadataFactory.validateMeta(struct {
307
+ Options MetadataFactory_IOptions
308
+ Visitor *metadataFactory_IValidationVisitor
309
+ Metadata *schemametadata.MetadataSchema
310
+ Top *schemametadata.MetadataSchema
311
+ Explore MetadataFactory_IExplore
312
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: props.Metadata.Escaped.Returns, Top: props.Top, Explore: explore})
313
+ }
314
314
  }
315
315
 
316
316
  func (metadataFactoryNamespace) validateAlias(props struct {
317
- Options MetadataFactory_IOptions
318
- Visitor *metadataFactory_IValidationVisitor
319
- Alias *schemametadata.MetadataAliasType
320
- Explore MetadataFactory_IExplore
321
- Top *schemametadata.MetadataSchema
317
+ Options MetadataFactory_IOptions
318
+ Visitor *metadataFactory_IValidationVisitor
319
+ Alias *schemametadata.MetadataAliasType
320
+ Explore MetadataFactory_IExplore
321
+ Top *schemametadata.MetadataSchema
322
322
  }) {
323
- if props.Visitor.Aliases[props.Alias] {
324
- return
325
- }
326
- props.Visitor.Aliases[props.Alias] = true
327
- explore := props.Explore
328
- explore.Nested = props.Alias
329
- explore.Aliased = true
330
- MetadataFactory.validateMeta(struct {
331
- Options MetadataFactory_IOptions
332
- Visitor *metadataFactory_IValidationVisitor
333
- Metadata *schemametadata.MetadataSchema
334
- Top *schemametadata.MetadataSchema
335
- Explore MetadataFactory_IExplore
336
- }{Options: props.Options, Visitor: props.Visitor, Metadata: props.Alias.Value, Top: props.Top, Explore: explore})
323
+ if props.Visitor.Aliases[props.Alias] {
324
+ return
325
+ }
326
+ props.Visitor.Aliases[props.Alias] = true
327
+ explore := props.Explore
328
+ explore.Nested = props.Alias
329
+ explore.Aliased = true
330
+ MetadataFactory.validateMeta(struct {
331
+ Options MetadataFactory_IOptions
332
+ Visitor *metadataFactory_IValidationVisitor
333
+ Metadata *schemametadata.MetadataSchema
334
+ Top *schemametadata.MetadataSchema
335
+ Explore MetadataFactory_IExplore
336
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: props.Alias.Value, Top: props.Top, Explore: explore})
337
337
  }
338
338
 
339
339
  func (metadataFactoryNamespace) validateArray(props struct {
340
- Options MetadataFactory_IOptions
341
- Visitor *metadataFactory_IValidationVisitor
342
- Array *schemametadata.MetadataArrayType
343
- Explore MetadataFactory_IExplore
344
- Top *schemametadata.MetadataSchema
340
+ Options MetadataFactory_IOptions
341
+ Visitor *metadataFactory_IValidationVisitor
342
+ Array *schemametadata.MetadataArrayType
343
+ Explore MetadataFactory_IExplore
344
+ Top *schemametadata.MetadataSchema
345
345
  }) {
346
- if props.Visitor.Arrays[props.Array] {
347
- return
348
- }
349
- props.Visitor.Arrays[props.Array] = true
350
- explore := props.Explore
351
- explore.Nested = props.Array
352
- explore.Top = false
353
- MetadataFactory.validateMeta(struct {
354
- Options MetadataFactory_IOptions
355
- Visitor *metadataFactory_IValidationVisitor
356
- Metadata *schemametadata.MetadataSchema
357
- Top *schemametadata.MetadataSchema
358
- Explore MetadataFactory_IExplore
359
- }{Options: props.Options, Visitor: props.Visitor, Metadata: props.Array.Value, Top: props.Top, Explore: explore})
346
+ if props.Visitor.Arrays[props.Array] {
347
+ return
348
+ }
349
+ props.Visitor.Arrays[props.Array] = true
350
+ explore := props.Explore
351
+ explore.Nested = props.Array
352
+ explore.Top = false
353
+ MetadataFactory.validateMeta(struct {
354
+ Options MetadataFactory_IOptions
355
+ Visitor *metadataFactory_IValidationVisitor
356
+ Metadata *schemametadata.MetadataSchema
357
+ Top *schemametadata.MetadataSchema
358
+ Explore MetadataFactory_IExplore
359
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: props.Array.Value, Top: props.Top, Explore: explore})
360
360
  }
361
361
 
362
362
  func (metadataFactoryNamespace) validateTuple(props struct {
363
- Options MetadataFactory_IOptions
364
- Visitor *metadataFactory_IValidationVisitor
365
- Tuple *schemametadata.MetadataTupleType
366
- Explore MetadataFactory_IExplore
367
- Top *schemametadata.MetadataSchema
363
+ Options MetadataFactory_IOptions
364
+ Visitor *metadataFactory_IValidationVisitor
365
+ Tuple *schemametadata.MetadataTupleType
366
+ Explore MetadataFactory_IExplore
367
+ Top *schemametadata.MetadataSchema
368
368
  }) {
369
- if props.Visitor.Tuples[props.Tuple] {
370
- return
371
- }
372
- props.Visitor.Tuples[props.Tuple] = true
373
- for _, elem := range props.Tuple.Elements {
374
- explore := props.Explore
375
- explore.Nested = props.Tuple
376
- explore.Top = false
377
- MetadataFactory.validateMeta(struct {
378
- Options MetadataFactory_IOptions
379
- Visitor *metadataFactory_IValidationVisitor
380
- Metadata *schemametadata.MetadataSchema
381
- Top *schemametadata.MetadataSchema
382
- Explore MetadataFactory_IExplore
383
- }{Options: props.Options, Visitor: props.Visitor, Metadata: elem, Top: props.Top, Explore: explore})
384
- }
369
+ if props.Visitor.Tuples[props.Tuple] {
370
+ return
371
+ }
372
+ props.Visitor.Tuples[props.Tuple] = true
373
+ for _, elem := range props.Tuple.Elements {
374
+ explore := props.Explore
375
+ explore.Nested = props.Tuple
376
+ explore.Top = false
377
+ MetadataFactory.validateMeta(struct {
378
+ Options MetadataFactory_IOptions
379
+ Visitor *metadataFactory_IValidationVisitor
380
+ Metadata *schemametadata.MetadataSchema
381
+ Top *schemametadata.MetadataSchema
382
+ Explore MetadataFactory_IExplore
383
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: elem, Top: props.Top, Explore: explore})
384
+ }
385
385
  }
386
386
 
387
387
  func (metadataFactoryNamespace) validateObject(props struct {
388
- Options MetadataFactory_IOptions
389
- Visitor *metadataFactory_IValidationVisitor
390
- Object *schemametadata.MetadataObjectType
391
- Top *schemametadata.MetadataSchema
388
+ Options MetadataFactory_IOptions
389
+ Visitor *metadataFactory_IValidationVisitor
390
+ Object *schemametadata.MetadataObjectType
391
+ Top *schemametadata.MetadataSchema
392
392
  }) {
393
- if props.Visitor.Objects[props.Object] {
394
- return
395
- }
396
- props.Visitor.Objects[props.Object] = true
397
- if props.Options.Validate != nil {
398
- explore := MetadataFactory_IExplore{
399
- Object: props.Object,
400
- Top: false,
401
- Property: nil,
402
- Parameter: nil,
403
- Nested: nil,
404
- Aliased: false,
405
- Escaped: false,
406
- Output: false,
407
- }
408
- metadata := schemametadata.MetadataSchema_create(schemametadata.MetadataSchema{
409
- Any: false,
410
- Nullable: false,
411
- Required: true,
412
- Optional: false,
413
- Constants: []*schemametadata.MetadataConstant{},
414
- Atomics: []*schemametadata.MetadataAtomic{},
415
- Templates: []*schemametadata.MetadataTemplate{},
416
- Arrays: []*schemametadata.MetadataArray{},
417
- Tuples: []*schemametadata.MetadataTuple{},
418
- Objects: []*schemametadata.MetadataObject{
419
- schemametadata.MetadataObject_create(schemametadata.MetadataObject{Type: props.Object, Tags: [][]schemametadata.IMetadataTypeTag{}}),
420
- },
421
- Aliases: []*schemametadata.MetadataAlias{},
422
- Functions: []*schemametadata.MetadataFunction{},
423
- Rest: nil,
424
- Natives: []*schemametadata.MetadataNative{},
425
- Sets: []*schemametadata.MetadataSet{},
426
- Maps: []*schemametadata.MetadataMap{},
427
- })
428
- errors := props.Options.Validate(struct {
429
- Metadata *schemametadata.MetadataSchema
430
- Explore MetadataFactory_IExplore
431
- Top *schemametadata.MetadataSchema
432
- }{Metadata: metadata, Top: props.Top, Explore: explore})
433
- if len(errors) != 0 {
434
- props.Visitor.Errors = append(props.Visitor.Errors, MetadataFactory_IError{
435
- Name: props.Object.Name,
436
- Explore: explore,
437
- Messages: metadataFactory_unique(errors),
438
- })
439
- }
440
- }
393
+ if props.Visitor.Objects[props.Object] {
394
+ return
395
+ }
396
+ props.Visitor.Objects[props.Object] = true
397
+ if props.Options.Validate != nil {
398
+ explore := MetadataFactory_IExplore{
399
+ Object: props.Object,
400
+ Top: false,
401
+ Property: nil,
402
+ Parameter: nil,
403
+ Nested: nil,
404
+ Aliased: false,
405
+ Escaped: false,
406
+ Output: false,
407
+ }
408
+ metadata := schemametadata.MetadataSchema_create(schemametadata.MetadataSchema{
409
+ Any: false,
410
+ Nullable: false,
411
+ Required: true,
412
+ Optional: false,
413
+ Constants: []*schemametadata.MetadataConstant{},
414
+ Atomics: []*schemametadata.MetadataAtomic{},
415
+ Templates: []*schemametadata.MetadataTemplate{},
416
+ Arrays: []*schemametadata.MetadataArray{},
417
+ Tuples: []*schemametadata.MetadataTuple{},
418
+ Objects: []*schemametadata.MetadataObject{
419
+ schemametadata.MetadataObject_create(schemametadata.MetadataObject{Type: props.Object, Tags: [][]schemametadata.IMetadataTypeTag{}}),
420
+ },
421
+ Aliases: []*schemametadata.MetadataAlias{},
422
+ Functions: []*schemametadata.MetadataFunction{},
423
+ Rest: nil,
424
+ Natives: []*schemametadata.MetadataNative{},
425
+ Sets: []*schemametadata.MetadataSet{},
426
+ Maps: []*schemametadata.MetadataMap{},
427
+ })
428
+ errors := props.Options.Validate(struct {
429
+ Metadata *schemametadata.MetadataSchema
430
+ Explore MetadataFactory_IExplore
431
+ Top *schemametadata.MetadataSchema
432
+ }{Metadata: metadata, Top: props.Top, Explore: explore})
433
+ if len(errors) != 0 {
434
+ props.Visitor.Errors = append(props.Visitor.Errors, MetadataFactory_IError{
435
+ Name: props.Object.Name,
436
+ Explore: explore,
437
+ Messages: metadataFactory_unique(errors),
438
+ })
439
+ }
440
+ }
441
441
 
442
- for _, property := range props.Object.Properties {
443
- var key any = struct{}{}
444
- if sole := property.Key.GetSoleLiteral(); sole != nil {
445
- key = *sole
446
- }
447
- explore := MetadataFactory_IExplore{
448
- Object: props.Object,
449
- Property: key,
450
- Parameter: nil,
451
- Nested: nil,
452
- Top: false,
453
- Aliased: false,
454
- Escaped: false,
455
- Output: false,
456
- }
457
- MetadataFactory.validateMeta(struct {
458
- Options MetadataFactory_IOptions
459
- Visitor *metadataFactory_IValidationVisitor
460
- Metadata *schemametadata.MetadataSchema
461
- Top *schemametadata.MetadataSchema
462
- Explore MetadataFactory_IExplore
463
- }{Options: props.Options, Visitor: props.Visitor, Metadata: property.Value, Top: props.Top, Explore: explore})
464
- }
442
+ for _, property := range props.Object.Properties {
443
+ var key any = struct{}{}
444
+ if sole := property.Key.GetSoleLiteral(); sole != nil {
445
+ key = *sole
446
+ }
447
+ explore := MetadataFactory_IExplore{
448
+ Object: props.Object,
449
+ Property: key,
450
+ Parameter: nil,
451
+ Nested: nil,
452
+ Top: false,
453
+ Aliased: false,
454
+ Escaped: false,
455
+ Output: false,
456
+ }
457
+ MetadataFactory.validateMeta(struct {
458
+ Options MetadataFactory_IOptions
459
+ Visitor *metadataFactory_IValidationVisitor
460
+ Metadata *schemametadata.MetadataSchema
461
+ Top *schemametadata.MetadataSchema
462
+ Explore MetadataFactory_IExplore
463
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: property.Value, Top: props.Top, Explore: explore})
464
+ }
465
465
  }
466
466
 
467
467
  func (metadataFactoryNamespace) validateFunction(props struct {
468
- Options MetadataFactory_IOptions
469
- Visitor *metadataFactory_IValidationVisitor
470
- Function *schemametadata.MetadataFunction
471
- Explore MetadataFactory_IExplore
472
- Top *schemametadata.MetadataSchema
468
+ Options MetadataFactory_IOptions
469
+ Visitor *metadataFactory_IValidationVisitor
470
+ Function *schemametadata.MetadataFunction
471
+ Explore MetadataFactory_IExplore
472
+ Top *schemametadata.MetadataSchema
473
473
  }) {
474
- if props.Visitor.Functions[props.Function] {
475
- return
476
- }
477
- props.Visitor.Functions[props.Function] = true
478
- for _, param := range props.Function.Parameters {
479
- explore := props.Explore
480
- explore.Parameter = param.Name
481
- explore.Nested = nil
482
- explore.Top = false
483
- explore.Output = false
484
- MetadataFactory.validateMeta(struct {
485
- Options MetadataFactory_IOptions
486
- Visitor *metadataFactory_IValidationVisitor
487
- Metadata *schemametadata.MetadataSchema
488
- Top *schemametadata.MetadataSchema
489
- Explore MetadataFactory_IExplore
490
- }{Options: props.Options, Visitor: props.Visitor, Metadata: param.Type, Top: props.Top, Explore: explore})
491
- }
492
- if props.Function.Output != nil {
493
- explore := props.Explore
494
- explore.Parameter = nil
495
- explore.Nested = nil
496
- explore.Top = false
497
- explore.Output = true
498
- MetadataFactory.validateMeta(struct {
499
- Options MetadataFactory_IOptions
500
- Visitor *metadataFactory_IValidationVisitor
501
- Metadata *schemametadata.MetadataSchema
502
- Top *schemametadata.MetadataSchema
503
- Explore MetadataFactory_IExplore
504
- }{Options: props.Options, Visitor: props.Visitor, Metadata: props.Function.Output, Top: props.Top, Explore: explore})
505
- }
474
+ if props.Visitor.Functions[props.Function] {
475
+ return
476
+ }
477
+ props.Visitor.Functions[props.Function] = true
478
+ for _, param := range props.Function.Parameters {
479
+ explore := props.Explore
480
+ explore.Parameter = param.Name
481
+ explore.Nested = nil
482
+ explore.Top = false
483
+ explore.Output = false
484
+ MetadataFactory.validateMeta(struct {
485
+ Options MetadataFactory_IOptions
486
+ Visitor *metadataFactory_IValidationVisitor
487
+ Metadata *schemametadata.MetadataSchema
488
+ Top *schemametadata.MetadataSchema
489
+ Explore MetadataFactory_IExplore
490
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: param.Type, Top: props.Top, Explore: explore})
491
+ }
492
+ if props.Function.Output != nil {
493
+ explore := props.Explore
494
+ explore.Parameter = nil
495
+ explore.Nested = nil
496
+ explore.Top = false
497
+ explore.Output = true
498
+ MetadataFactory.validateMeta(struct {
499
+ Options MetadataFactory_IOptions
500
+ Visitor *metadataFactory_IValidationVisitor
501
+ Metadata *schemametadata.MetadataSchema
502
+ Top *schemametadata.MetadataSchema
503
+ Explore MetadataFactory_IExplore
504
+ }{Options: props.Options, Visitor: props.Visitor, Metadata: props.Function.Output, Top: props.Top, Explore: explore})
505
+ }
506
506
  }
507
507
 
508
508
  type metadataFactory_IValidationVisitor struct {
509
- Functor MetadataFactory_Validator
510
- Errors []MetadataFactory_IError
511
- Objects map[*schemametadata.MetadataObjectType]bool
512
- Arrays map[*schemametadata.MetadataArrayType]bool
513
- Tuples map[*schemametadata.MetadataTupleType]bool
514
- Aliases map[*schemametadata.MetadataAliasType]bool
515
- Functions map[*schemametadata.MetadataFunction]bool
509
+ Functor MetadataFactory_Validator
510
+ Errors []MetadataFactory_IError
511
+ Objects map[*schemametadata.MetadataObjectType]bool
512
+ Arrays map[*schemametadata.MetadataArrayType]bool
513
+ Tuples map[*schemametadata.MetadataTupleType]bool
514
+ Aliases map[*schemametadata.MetadataAliasType]bool
515
+ Functions map[*schemametadata.MetadataFunction]bool
516
516
  }
517
517
 
518
518
  func metadataFactory_unique(input []string) []string {
519
- visited := map[string]bool{}
520
- output := []string{}
521
- for _, str := range input {
522
- if visited[str] {
523
- continue
524
- }
525
- visited[str] = true
526
- output = append(output, str)
527
- }
528
- return output
519
+ visited := map[string]bool{}
520
+ output := []string{}
521
+ for _, str := range input {
522
+ if visited[str] {
523
+ continue
524
+ }
525
+ visited[str] = true
526
+ output = append(output, str)
527
+ }
528
+ return output
529
529
  }