typia 5.0.0-dev.20230730 → 5.0.0-dev.20230805

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 (227) hide show
  1. package/lib/factories/CommentFactory.d.ts +1 -1
  2. package/lib/factories/CommentFactory.js +31 -28
  3. package/lib/factories/CommentFactory.js.map +1 -1
  4. package/lib/functional/$string.js +16 -20
  5. package/lib/functional/$string.js.map +1 -1
  6. package/lib/programmers/internal/application_object.js +2 -0
  7. package/lib/programmers/internal/application_object.js.map +1 -1
  8. package/lib/schemas/metadata/Metadata.d.ts +1 -0
  9. package/lib/schemas/metadata/Metadata.js +3 -0
  10. package/lib/schemas/metadata/Metadata.js.map +1 -1
  11. package/package.json +2 -2
  12. package/src/factories/CommentFactory.ts +84 -76
  13. package/src/factories/MetadataCollection.ts +264 -264
  14. package/src/factories/MetadataFactory.ts +30 -30
  15. package/src/factories/MetadataTagFactory.ts +362 -362
  16. package/src/factories/ProtocolFactory.ts +80 -80
  17. package/src/factories/internal/metadata/MetadataHelper.ts +12 -12
  18. package/src/factories/internal/metadata/emend_metadata_atomics.ts +33 -33
  19. package/src/factories/internal/metadata/emplace_metadata_alias.ts +40 -40
  20. package/src/factories/internal/metadata/emplace_metadata_array.ts +34 -34
  21. package/src/factories/internal/metadata/emplace_metadata_object.ts +136 -136
  22. package/src/factories/internal/metadata/emplace_metadata_tuple.ts +50 -50
  23. package/src/factories/internal/metadata/explore_metadata.ts +40 -40
  24. package/src/factories/internal/metadata/iterate_metadata.ts +81 -81
  25. package/src/factories/internal/metadata/iterate_metadata_alias.ts +30 -30
  26. package/src/factories/internal/metadata/iterate_metadata_array.ts +24 -24
  27. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
  28. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
  29. package/src/factories/internal/metadata/iterate_metadata_collection.ts +133 -133
  30. package/src/factories/internal/metadata/iterate_metadata_constant.ts +58 -58
  31. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +83 -83
  32. package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
  33. package/src/factories/internal/metadata/iterate_metadata_native.ts +219 -219
  34. package/src/factories/internal/metadata/iterate_metadata_object.ts +43 -43
  35. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +49 -49
  36. package/src/factories/internal/metadata/iterate_metadata_set.ts +33 -33
  37. package/src/factories/internal/metadata/iterate_metadata_sort.ts +69 -69
  38. package/src/factories/internal/metadata/iterate_metadata_tag.ts +31 -31
  39. package/src/factories/internal/metadata/iterate_metadata_template.ts +38 -38
  40. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +24 -24
  41. package/src/factories/internal/metadata/iterate_metadata_union.ts +24 -24
  42. package/src/factories/internal/protocols/ProtocolMetadataUtil.ts +180 -180
  43. package/src/factories/internal/protocols/emplace_protocol_object.ts +25 -25
  44. package/src/factories/internal/protocols/emplace_protocol_property.ts +12 -12
  45. package/src/factories/internal/protocols/iterate_protocol_atomic.ts +34 -34
  46. package/src/factories/internal/protocols/iterate_protocol_constant.ts +27 -27
  47. package/src/factories/internal/protocols/iterate_protocol_main.ts +19 -19
  48. package/src/factories/internal/protocols/iterate_protocol_map.ts +58 -58
  49. package/src/factories/internal/protocols/iterate_protocol_metadata.ts +96 -96
  50. package/src/factories/internal/protocols/iterate_protocol_native.ts +34 -34
  51. package/src/factories/internal/protocols/iterate_protocol_never.ts +1 -1
  52. package/src/factories/internal/protocols/iterate_protocol_object.ts +110 -110
  53. package/src/factories/internal/protocols/iterate_protocol_repeated.ts +34 -34
  54. package/src/factories/internal/protocols/iterate_protocol_tuple.ts +29 -29
  55. package/src/functional/$number.ts +13 -13
  56. package/src/functional/$proto_bytes.ts +25 -25
  57. package/src/functional/$proto_field.ts +30 -30
  58. package/src/functional/$proto_float.ts +37 -37
  59. package/src/functional/$proto_i32.ts +29 -29
  60. package/src/functional/$proto_i64.ts +37 -37
  61. package/src/functional/$proto_size.ts +82 -82
  62. package/src/functional/$proto_string.ts +24 -24
  63. package/src/functional/$string.ts +32 -19
  64. package/src/functional/$varint.ts +130 -130
  65. package/src/functional/$zigzag.ts +39 -39
  66. package/src/json.ts +648 -648
  67. package/src/misc.ts +651 -651
  68. package/src/module.ts +781 -781
  69. package/src/programmers/CheckerProgrammer.ts +1182 -1182
  70. package/src/programmers/FeatureProgrammer.ts +495 -495
  71. package/src/programmers/IsProgrammer.ts +239 -239
  72. package/src/programmers/IsPruneProgrammer.ts +73 -73
  73. package/src/programmers/RandomProgrammer.ts +581 -581
  74. package/src/programmers/helpers/AtomicPredicator.ts +31 -31
  75. package/src/programmers/helpers/IExpressionEntry.ts +12 -12
  76. package/src/programmers/helpers/PruneJoiner.ts +143 -143
  77. package/src/programmers/helpers/RandomJoiner.ts +173 -173
  78. package/src/programmers/helpers/RandomRanger.ts +216 -216
  79. package/src/programmers/helpers/StringifyPredicator.ts +13 -13
  80. package/src/programmers/helpers/UnionExplorer.ts +301 -301
  81. package/src/programmers/helpers/UnionPredicator.ts +81 -81
  82. package/src/programmers/internal/application_alias.ts +66 -66
  83. package/src/programmers/internal/application_array.ts +30 -30
  84. package/src/programmers/internal/application_constant.ts +26 -26
  85. package/src/programmers/internal/application_default.ts +17 -17
  86. package/src/programmers/internal/application_default_string.ts +33 -33
  87. package/src/programmers/internal/application_native.ts +39 -39
  88. package/src/programmers/internal/application_number.ts +77 -77
  89. package/src/programmers/internal/application_object.ts +165 -162
  90. package/src/programmers/internal/application_resolved.ts +55 -55
  91. package/src/programmers/internal/application_schema.ts +157 -157
  92. package/src/programmers/internal/application_string.ts +44 -44
  93. package/src/programmers/internal/application_templates.ts +25 -25
  94. package/src/programmers/internal/application_tuple.ts +57 -57
  95. package/src/programmers/internal/check_array.ts +30 -30
  96. package/src/programmers/internal/check_array_length.ts +35 -35
  97. package/src/programmers/internal/check_bigint.ts +82 -82
  98. package/src/programmers/internal/check_custom.ts +31 -31
  99. package/src/programmers/internal/check_number.ts +177 -177
  100. package/src/programmers/internal/check_string.ts +25 -25
  101. package/src/programmers/internal/check_string_tags.ts +67 -67
  102. package/src/programmers/internal/check_template.ts +56 -56
  103. package/src/programmers/internal/check_union_array_like.ts +329 -329
  104. package/src/programmers/internal/decode_union_object.ts +73 -73
  105. package/src/programmers/internal/feature_object_entries.ts +63 -63
  106. package/src/programmers/internal/get_comment_tags.ts +23 -23
  107. package/src/programmers/internal/metadata_to_pattern.ts +34 -34
  108. package/src/programmers/internal/prune_object_properties.ts +60 -60
  109. package/src/programmers/internal/random_custom.ts +29 -29
  110. package/src/programmers/internal/stringify_regular_properties.ts +83 -83
  111. package/src/programmers/internal/template_to_pattern.ts +15 -15
  112. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +16 -16
  113. package/src/programmers/json/JsonApplicationProgrammer.ts +47 -47
  114. package/src/programmers/json/JsonAssertParseProgrammer.ts +66 -66
  115. package/src/programmers/json/JsonAssertStringifyProgrammer.ts +66 -66
  116. package/src/programmers/json/JsonIsParseProgrammer.ts +72 -72
  117. package/src/programmers/json/JsonIsStringifyProgrammer.ts +76 -76
  118. package/src/programmers/json/JsonStringifyProgrammer.ts +979 -979
  119. package/src/programmers/json/JsonValidateParseProgrammer.ts +70 -70
  120. package/src/programmers/json/JsonValidateStringifyProgrammer.ts +84 -84
  121. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +71 -71
  122. package/src/programmers/misc/MiscAssertPruneProgrammer.ts +68 -68
  123. package/src/programmers/misc/MiscCloneProgrammer.ts +587 -587
  124. package/src/programmers/misc/MiscIsCloneProgrammer.ts +78 -78
  125. package/src/programmers/misc/MiscLiteralsProgrammer.ts +63 -63
  126. package/src/programmers/misc/MiscPruneProgrammer.ts +542 -542
  127. package/src/programmers/misc/MiscValidateCloneProgrammer.ts +85 -85
  128. package/src/programmers/misc/MiscValidatePruneProgrammer.ts +78 -78
  129. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +69 -69
  130. package/src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts +66 -66
  131. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +38 -38
  132. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +36 -36
  133. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +75 -75
  134. package/src/programmers/protobuf/ProtobufIsEncodeProgrammer.ts +76 -76
  135. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +125 -125
  136. package/src/programmers/protobuf/ProtobufValidateDecodeProgrammer.ts +83 -83
  137. package/src/programmers/protobuf/ProtobufValidateEncodeProgrammer.ts +86 -86
  138. package/src/protobuf.ts +210 -210
  139. package/src/schemas/json/IJsonApplication.ts +8 -8
  140. package/src/schemas/json/IJsonComponents.ts +33 -33
  141. package/src/schemas/json/IJsonSchema.ts +133 -133
  142. package/src/schemas/metadata/ICommentTag.ts +4 -4
  143. package/src/schemas/metadata/IJsDocTagInfo.ts +10 -10
  144. package/src/schemas/metadata/IMetadata.ts +28 -28
  145. package/src/schemas/metadata/IMetadataAlias.ts +14 -14
  146. package/src/schemas/metadata/IMetadataApplication.ts +7 -7
  147. package/src/schemas/metadata/IMetadataArray.ts +10 -10
  148. package/src/schemas/metadata/IMetadataCollection.ts +11 -11
  149. package/src/schemas/metadata/IMetadataConstant.ts +16 -16
  150. package/src/schemas/metadata/IMetadataDictionary.ts +14 -14
  151. package/src/schemas/metadata/IMetadataEntry.ts +6 -6
  152. package/src/schemas/metadata/IMetadataObject.ts +18 -18
  153. package/src/schemas/metadata/IMetadataProperty.ts +11 -11
  154. package/src/schemas/metadata/IMetadataResolved.ts +6 -6
  155. package/src/schemas/metadata/IMetadataTag.ts +113 -113
  156. package/src/schemas/metadata/IMetadataTuple.ts +10 -10
  157. package/src/schemas/metadata/Metadata.ts +610 -608
  158. package/src/schemas/metadata/MetadataAlias.ts +66 -66
  159. package/src/schemas/metadata/MetadataArray.ts +55 -55
  160. package/src/schemas/metadata/MetadataConstant.ts +3 -3
  161. package/src/schemas/metadata/MetadataObject.ts +129 -129
  162. package/src/schemas/metadata/MetadataProperty.ts +64 -64
  163. package/src/schemas/metadata/MetadataResolved.ts +51 -51
  164. package/src/schemas/metadata/MetadataTuple.ts +53 -53
  165. package/src/schemas/protobuf/IProtocolMap.ts +5 -5
  166. package/src/schemas/protobuf/IProtocolMessage.ts +6 -6
  167. package/src/schemas/protobuf/IProtocolProperty.ts +13 -13
  168. package/src/transformers/CallExpressionTransformer.ts +240 -240
  169. package/src/transformers/features/AssertTransformer.ts +11 -11
  170. package/src/transformers/features/CreateAssertTransformer.ts +13 -13
  171. package/src/transformers/features/CreateIsTransformer.ts +11 -11
  172. package/src/transformers/features/CreateRandomTransformer.ts +39 -39
  173. package/src/transformers/features/CreateValidateTransformer.ts +13 -13
  174. package/src/transformers/features/IsTransformer.ts +11 -11
  175. package/src/transformers/features/RandomTransformer.ts +42 -42
  176. package/src/transformers/features/ValidateTransformer.ts +11 -11
  177. package/src/transformers/features/json/JsonApplicationTransformer.ts +102 -102
  178. package/src/transformers/features/json/JsonAssertParseTransformer.ts +10 -10
  179. package/src/transformers/features/json/JsonAssertStringifyTransformer.ts +10 -10
  180. package/src/transformers/features/json/JsonCreateAssertParseTransformer.ts +10 -10
  181. package/src/transformers/features/json/JsonCreateAssertStringifyTransformer.ts +12 -12
  182. package/src/transformers/features/json/JsonCreateIsParseTransformer.ts +9 -9
  183. package/src/transformers/features/json/JsonCreateIsStringifyTransformer.ts +10 -10
  184. package/src/transformers/features/json/JsonCreateStringifyTransformer.ts +9 -9
  185. package/src/transformers/features/json/JsonCreateValidateParseTransformer.ts +10 -10
  186. package/src/transformers/features/json/JsonCreateValidateStringifyProgrammer.ts +12 -12
  187. package/src/transformers/features/json/JsonIsParseTransformer.ts +9 -9
  188. package/src/transformers/features/json/JsonIsStringifyTransformer.ts +10 -10
  189. package/src/transformers/features/json/JsonStringifyTransformer.ts +9 -9
  190. package/src/transformers/features/json/JsonValidateParseTransformer.ts +10 -10
  191. package/src/transformers/features/json/JsonValidateStringifyTransformer.ts +10 -10
  192. package/src/transformers/features/misc/MetadataTransformer.ts +53 -53
  193. package/src/transformers/features/misc/MiscAssertCloneTransformer.ts +10 -10
  194. package/src/transformers/features/misc/MiscAssertPruneTransformer.ts +10 -10
  195. package/src/transformers/features/misc/MiscCloneTransformer.ts +9 -9
  196. package/src/transformers/features/misc/MiscCreateAssertCloneTransformer.ts +10 -10
  197. package/src/transformers/features/misc/MiscCreateAssertPruneTransformer.ts +10 -10
  198. package/src/transformers/features/misc/MiscCreateCloneTransformer.ts +9 -9
  199. package/src/transformers/features/misc/MiscCreateIsCloneTransformer.ts +9 -9
  200. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +9 -9
  201. package/src/transformers/features/misc/MiscCreatePruneTransformer.ts +9 -9
  202. package/src/transformers/features/misc/MiscCreateValidateCloneTransformer.ts +10 -10
  203. package/src/transformers/features/misc/MiscCreateValidatePruneTransformer.ts +10 -10
  204. package/src/transformers/features/misc/MiscIsCloneTransformer.ts +9 -9
  205. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +9 -9
  206. package/src/transformers/features/misc/MiscLiteralsTransformer.ts +28 -28
  207. package/src/transformers/features/misc/MiscPruneTransformer.ts +9 -9
  208. package/src/transformers/features/misc/MiscValidateCloneTransformer.ts +10 -10
  209. package/src/transformers/features/misc/MiscValidatePruneTransformer.ts +10 -10
  210. package/src/transformers/features/protobuf/CreateProtobufAssertDecodeTransformer.ts +10 -10
  211. package/src/transformers/features/protobuf/CreateProtobufAssertEncodeTransformer.ts +10 -10
  212. package/src/transformers/features/protobuf/CreateProtobufDecodeTransformer.ts +10 -10
  213. package/src/transformers/features/protobuf/CreateProtobufEncodeTransformer.ts +10 -10
  214. package/src/transformers/features/protobuf/CreateProtobufIsDecodeTransformer.ts +10 -10
  215. package/src/transformers/features/protobuf/CreateProtobufIsEncodeTransformer.ts +10 -10
  216. package/src/transformers/features/protobuf/CreateProtobufValidateDecodeTransformer.ts +10 -10
  217. package/src/transformers/features/protobuf/CreateProtobufValidateEncodeTransformer.ts +10 -10
  218. package/src/transformers/features/protobuf/ProtobufAssertDecodeTransformer.ts +10 -10
  219. package/src/transformers/features/protobuf/ProtobufAssertEncodeTransformer.ts +10 -10
  220. package/src/transformers/features/protobuf/ProtobufDecodeTransformer.ts +10 -10
  221. package/src/transformers/features/protobuf/ProtobufEncodeTransformer.ts +10 -10
  222. package/src/transformers/features/protobuf/ProtobufIsDecodeTransformer.ts +10 -10
  223. package/src/transformers/features/protobuf/ProtobufIsEncodeTransformer.ts +10 -10
  224. package/src/transformers/features/protobuf/ProtobufMessageTransformer.ts +31 -31
  225. package/src/transformers/features/protobuf/ProtobufValidateDecodeTransformer.ts +10 -10
  226. package/src/transformers/features/protobuf/ProtobufValidateEncodeTransformer.ts +10 -10
  227. package/src/utils/NameEncoder.ts +32 -32
@@ -1,10 +1,10 @@
1
- import { ProtobufIsDecodeProgrammer } from "../../../programmers/protobuf/ProtobufIsDecodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace CreateProtobufIsDecodeTransformer {
6
- export const transform = GenericTransformer.factory("createIsDecode")(
7
- (project) => (modulo) =>
8
- ProtobufIsDecodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufIsDecodeProgrammer } from "../../../programmers/protobuf/ProtobufIsDecodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace CreateProtobufIsDecodeTransformer {
6
+ export const transform = GenericTransformer.factory("createIsDecode")(
7
+ (project) => (modulo) =>
8
+ ProtobufIsDecodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufIsEncodeProgrammer } from "../../../programmers/protobuf/ProtobufIsEncodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace CreateProtobufIsEncodeTransformer {
6
- export const transform = GenericTransformer.factory("createIsEncode")(
7
- (project) => (modulo) =>
8
- ProtobufIsEncodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufIsEncodeProgrammer } from "../../../programmers/protobuf/ProtobufIsEncodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace CreateProtobufIsEncodeTransformer {
6
+ export const transform = GenericTransformer.factory("createIsEncode")(
7
+ (project) => (modulo) =>
8
+ ProtobufIsEncodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufValidateDecodeProgrammer } from "../../../programmers/protobuf/ProtobufValidateDecodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace CreateProtobufValidateDecodeTransformer {
6
- export const transform = GenericTransformer.factory("createValidateDecode")(
7
- (project) => (modulo) =>
8
- ProtobufValidateDecodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufValidateDecodeProgrammer } from "../../../programmers/protobuf/ProtobufValidateDecodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace CreateProtobufValidateDecodeTransformer {
6
+ export const transform = GenericTransformer.factory("createValidateDecode")(
7
+ (project) => (modulo) =>
8
+ ProtobufValidateDecodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufValidateEncodeProgrammer } from "../../../programmers/protobuf/ProtobufValidateEncodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace CreateProtobufValidateEncodeTransformer {
6
- export const transform = GenericTransformer.factory("createValidateEncode")(
7
- (project) => (modulo) =>
8
- ProtobufValidateEncodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufValidateEncodeProgrammer } from "../../../programmers/protobuf/ProtobufValidateEncodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace CreateProtobufValidateEncodeTransformer {
6
+ export const transform = GenericTransformer.factory("createValidateEncode")(
7
+ (project) => (modulo) =>
8
+ ProtobufValidateEncodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufAssertDecodeProgrammer } from "../../../programmers/protobuf/ProtobufAssertDecodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace ProtobufAssertDecodeTransformer {
6
- export const transform = GenericTransformer.scalar("assertDecode")(
7
- (project) => (modulo) =>
8
- ProtobufAssertDecodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufAssertDecodeProgrammer } from "../../../programmers/protobuf/ProtobufAssertDecodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace ProtobufAssertDecodeTransformer {
6
+ export const transform = GenericTransformer.scalar("assertDecode")(
7
+ (project) => (modulo) =>
8
+ ProtobufAssertDecodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufAssertEncodeProgrammer } from "../../../programmers/protobuf/ProtobufAssertEncodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace ProtobufAssertEncodeTransformer {
6
- export const transform = GenericTransformer.scalar("assertEncode")(
7
- (project) => (modulo) =>
8
- ProtobufAssertEncodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufAssertEncodeProgrammer } from "../../../programmers/protobuf/ProtobufAssertEncodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace ProtobufAssertEncodeTransformer {
6
+ export const transform = GenericTransformer.scalar("assertEncode")(
7
+ (project) => (modulo) =>
8
+ ProtobufAssertEncodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufDecodeProgrammer } from "../../../programmers/protobuf/ProtobufDecodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace ProtobufDecodeTransformer {
6
- export const transform = GenericTransformer.scalar("Decode")(
7
- (project) => (modulo) =>
8
- ProtobufDecodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufDecodeProgrammer } from "../../../programmers/protobuf/ProtobufDecodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace ProtobufDecodeTransformer {
6
+ export const transform = GenericTransformer.scalar("Decode")(
7
+ (project) => (modulo) =>
8
+ ProtobufDecodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufEncodeProgrammer } from "../../../programmers/protobuf/ProtobufEncodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace ProtobufEncodeTransformer {
6
- export const transform = GenericTransformer.scalar("Encode")(
7
- (project) => (modulo) =>
8
- ProtobufEncodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufEncodeProgrammer } from "../../../programmers/protobuf/ProtobufEncodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace ProtobufEncodeTransformer {
6
+ export const transform = GenericTransformer.scalar("Encode")(
7
+ (project) => (modulo) =>
8
+ ProtobufEncodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufIsDecodeProgrammer } from "../../../programmers/protobuf/ProtobufIsDecodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace ProtobufIsDecodeTransformer {
6
- export const transform = GenericTransformer.scalar("isDecode")(
7
- (project) => (modulo) =>
8
- ProtobufIsDecodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufIsDecodeProgrammer } from "../../../programmers/protobuf/ProtobufIsDecodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace ProtobufIsDecodeTransformer {
6
+ export const transform = GenericTransformer.scalar("isDecode")(
7
+ (project) => (modulo) =>
8
+ ProtobufIsDecodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufIsEncodeProgrammer } from "../../../programmers/protobuf/ProtobufIsEncodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace ProtobufIsEncodeTransformer {
6
- export const transform = GenericTransformer.scalar("isEncode")(
7
- (project) => (modulo) =>
8
- ProtobufIsEncodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufIsEncodeProgrammer } from "../../../programmers/protobuf/ProtobufIsEncodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace ProtobufIsEncodeTransformer {
6
+ export const transform = GenericTransformer.scalar("isEncode")(
7
+ (project) => (modulo) =>
8
+ ProtobufIsEncodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,31 +1,31 @@
1
- import ts from "typescript";
2
-
3
- import { ProtobufMessageProgrammer } from "../../../programmers/protobuf/ProtobufMessageProgrammer";
4
-
5
- import { IProject } from "../../IProject";
6
-
7
- export namespace MessageTransformer {
8
- export const transform =
9
- (project: IProject) =>
10
- (_modulo: ts.LeftHandSideExpression) =>
11
- (expression: ts.CallExpression): ts.Expression => {
12
- // CHECK GENERIC ARGUMENT EXISTENCE
13
- if (!expression.typeArguments || !expression.typeArguments[0])
14
- throw new Error(ErrorMessages.NOT_SPECIFIED);
15
-
16
- // GET TYPE INFO
17
- const type: ts.Type = project.checker.getTypeFromTypeNode(
18
- expression.typeArguments[0],
19
- );
20
- if (type.isTypeParameter())
21
- throw new Error(ErrorMessages.GENERIC_ARGUMENT);
22
-
23
- // DO TRANSFORM
24
- return ProtobufMessageProgrammer.generate(project)(type);
25
- };
26
- }
27
-
28
- const enum ErrorMessages {
29
- NOT_SPECIFIED = "Error on typia.message(): generic argument is not specified.",
30
- GENERIC_ARGUMENT = "Error on typia.message(): non-specified generic argument.",
31
- }
1
+ import ts from "typescript";
2
+
3
+ import { ProtobufMessageProgrammer } from "../../../programmers/protobuf/ProtobufMessageProgrammer";
4
+
5
+ import { IProject } from "../../IProject";
6
+
7
+ export namespace MessageTransformer {
8
+ export const transform =
9
+ (project: IProject) =>
10
+ (_modulo: ts.LeftHandSideExpression) =>
11
+ (expression: ts.CallExpression): ts.Expression => {
12
+ // CHECK GENERIC ARGUMENT EXISTENCE
13
+ if (!expression.typeArguments || !expression.typeArguments[0])
14
+ throw new Error(ErrorMessages.NOT_SPECIFIED);
15
+
16
+ // GET TYPE INFO
17
+ const type: ts.Type = project.checker.getTypeFromTypeNode(
18
+ expression.typeArguments[0],
19
+ );
20
+ if (type.isTypeParameter())
21
+ throw new Error(ErrorMessages.GENERIC_ARGUMENT);
22
+
23
+ // DO TRANSFORM
24
+ return ProtobufMessageProgrammer.generate(project)(type);
25
+ };
26
+ }
27
+
28
+ const enum ErrorMessages {
29
+ NOT_SPECIFIED = "Error on typia.message(): generic argument is not specified.",
30
+ GENERIC_ARGUMENT = "Error on typia.message(): non-specified generic argument.",
31
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufValidateDecodeProgrammer } from "../../../programmers/protobuf/ProtobufValidateDecodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace ProtobufValidateDecodeTransformer {
6
- export const transform = GenericTransformer.scalar("validateDecode")(
7
- (project) => (modulo) =>
8
- ProtobufValidateDecodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufValidateDecodeProgrammer } from "../../../programmers/protobuf/ProtobufValidateDecodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace ProtobufValidateDecodeTransformer {
6
+ export const transform = GenericTransformer.scalar("validateDecode")(
7
+ (project) => (modulo) =>
8
+ ProtobufValidateDecodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,10 +1,10 @@
1
- import { ProtobufValidateEncodeProgrammer } from "../../../programmers/protobuf/ProtobufValidateEncodeProgrammer";
2
-
3
- import { GenericTransformer } from "../../internal/GenericTransformer";
4
-
5
- export namespace ProtobufValidateEncodeTransformer {
6
- export const transform = GenericTransformer.scalar("validateEncode")(
7
- (project) => (modulo) =>
8
- ProtobufValidateEncodeProgrammer.write(project)(modulo),
9
- );
10
- }
1
+ import { ProtobufValidateEncodeProgrammer } from "../../../programmers/protobuf/ProtobufValidateEncodeProgrammer";
2
+
3
+ import { GenericTransformer } from "../../internal/GenericTransformer";
4
+
5
+ export namespace ProtobufValidateEncodeTransformer {
6
+ export const transform = GenericTransformer.scalar("validateEncode")(
7
+ (project) => (modulo) =>
8
+ ProtobufValidateEncodeProgrammer.write(project)(modulo),
9
+ );
10
+ }
@@ -1,32 +1,32 @@
1
- export namespace NameEncoder {
2
- export function encode(str: string): string {
3
- for (const [before, after] of REPLACERS)
4
- str = str.split(before).join(after);
5
- return str;
6
- }
7
-
8
- export function decode(str: string): string {
9
- for (const [before, after] of REPLACERS)
10
- if (after !== "") str = str.split(after).join(before);
11
- return str;
12
- }
13
- }
14
-
15
- const REPLACERS: [string, string][] = [
16
- ["$", "_dollar_"],
17
- ["&", "_and_"],
18
- ["|", "_or_"],
19
- ["{", "_blt_"],
20
- ["}", "_bgt_"],
21
- ["<", "_lt_"],
22
- [">", "_gt_"],
23
- ["(", "_lp_"],
24
- [")", "_rp_"],
25
- ["[", "_alt_"],
26
- ["]", "_agt_"],
27
- [",", "_comma_"],
28
- ["`", "_backquote_"],
29
- ["'", "_singlequote_"],
30
- ['"', "_doublequote_"],
31
- [" ", "_space_"],
32
- ];
1
+ export namespace NameEncoder {
2
+ export function encode(str: string): string {
3
+ for (const [before, after] of REPLACERS)
4
+ str = str.split(before).join(after);
5
+ return str;
6
+ }
7
+
8
+ export function decode(str: string): string {
9
+ for (const [before, after] of REPLACERS)
10
+ if (after !== "") str = str.split(after).join(before);
11
+ return str;
12
+ }
13
+ }
14
+
15
+ const REPLACERS: [string, string][] = [
16
+ ["$", "_dollar_"],
17
+ ["&", "_and_"],
18
+ ["|", "_or_"],
19
+ ["{", "_blt_"],
20
+ ["}", "_bgt_"],
21
+ ["<", "_lt_"],
22
+ [">", "_gt_"],
23
+ ["(", "_lp_"],
24
+ [")", "_rp_"],
25
+ ["[", "_alt_"],
26
+ ["]", "_agt_"],
27
+ [",", "_comma_"],
28
+ ["`", "_backquote_"],
29
+ ["'", "_singlequote_"],
30
+ ['"', "_doublequote_"],
31
+ [" ", "_space_"],
32
+ ];