typia 3.5.0-dev.20230125 → 3.5.0-dev.20230211

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/README.md +64 -71
  2. package/lib/factories/MetadataCollection.d.ts +9 -1
  3. package/lib/factories/MetadataCollection.js +75 -2
  4. package/lib/factories/MetadataCollection.js.map +1 -1
  5. package/lib/factories/internal/metadata/iterate_metadata_native.js +0 -3
  6. package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
  7. package/lib/functional/$is_between.d.ts +1 -0
  8. package/lib/functional/$is_between.js +8 -0
  9. package/lib/functional/$is_between.js.map +1 -0
  10. package/lib/metadata/IMetadataTag.d.ts +3 -7
  11. package/lib/metadata/Metadata.js +2 -2
  12. package/lib/metadata/Metadata.js.map +1 -1
  13. package/lib/module.d.ts +33 -3
  14. package/lib/module.js +36 -8
  15. package/lib/module.js.map +1 -1
  16. package/lib/programmers/AssertProgrammer.js +3 -2
  17. package/lib/programmers/AssertProgrammer.js.map +1 -1
  18. package/lib/programmers/CheckerProgrammer.d.ts +2 -2
  19. package/lib/programmers/CheckerProgrammer.js +21 -16
  20. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  21. package/lib/programmers/FeatureProgrammer.d.ts +114 -18
  22. package/lib/programmers/FeatureProgrammer.js +4 -4
  23. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  24. package/lib/programmers/IsProgrammer.d.ts +4 -3
  25. package/lib/programmers/IsProgrammer.js +72 -61
  26. package/lib/programmers/IsProgrammer.js.map +1 -1
  27. package/lib/programmers/PruneProgrammer.d.ts +5 -0
  28. package/lib/programmers/PruneProgrammer.js +279 -0
  29. package/lib/programmers/PruneProgrammer.js.map +1 -0
  30. package/lib/programmers/StringifyProgrammer.js +26 -21
  31. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  32. package/lib/programmers/ValidateProgrammer.js +3 -2
  33. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  34. package/lib/programmers/helpers/AtomicPredicator.d.ts +2 -0
  35. package/lib/programmers/helpers/AtomicPredicator.js +9 -1
  36. package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
  37. package/lib/programmers/helpers/IExpressionEntry.d.ts +2 -2
  38. package/lib/programmers/helpers/OptionPredicator.d.ts +1 -0
  39. package/lib/programmers/helpers/OptionPredicator.js +4 -0
  40. package/lib/programmers/helpers/OptionPredicator.js.map +1 -1
  41. package/lib/programmers/helpers/PruneJoiner.d.ts +8 -0
  42. package/lib/programmers/helpers/PruneJoiner.js +60 -0
  43. package/lib/programmers/helpers/PruneJoiner.js.map +1 -0
  44. package/lib/programmers/helpers/StringifyJoinder.d.ts +1 -1
  45. package/lib/programmers/helpers/StringifyJoinder.js +2 -4
  46. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  47. package/lib/programmers/internal/application_object.js +11 -11
  48. package/lib/programmers/internal/application_object.js.map +1 -1
  49. package/lib/programmers/internal/application_schema.js +21 -12
  50. package/lib/programmers/internal/application_schema.js.map +1 -1
  51. package/lib/programmers/internal/check_dynamic_properties.js +34 -11
  52. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  53. package/lib/programmers/internal/check_native.js +9 -1
  54. package/lib/programmers/internal/check_native.js.map +1 -1
  55. package/lib/programmers/internal/check_object.d.ts +1 -0
  56. package/lib/programmers/internal/check_object.js +13 -9
  57. package/lib/programmers/internal/check_object.js.map +1 -1
  58. package/lib/programmers/internal/check_union_array_like.d.ts +1 -1
  59. package/lib/programmers/internal/check_union_array_like.js +3 -1
  60. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  61. package/lib/programmers/internal/feature_object_entries.d.ts +2 -2
  62. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  63. package/lib/programmers/internal/prune_object_properties.d.ts +1 -0
  64. package/lib/programmers/internal/prune_object_properties.js +28 -0
  65. package/lib/programmers/internal/prune_object_properties.js.map +1 -0
  66. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  67. package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
  68. package/lib/transformers/CallExpressionTransformer.js +5 -3
  69. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  70. package/lib/transformers/ITransformOptions.d.ts +14 -0
  71. package/lib/transformers/features/miscellaneous/ApplicationTransformer.js +3 -1
  72. package/lib/transformers/features/miscellaneous/ApplicationTransformer.js.map +1 -1
  73. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.d.ts +5 -0
  74. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js +17 -0
  75. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js.map +1 -0
  76. package/lib/transformers/features/miscellaneous/PruneTransformer.d.ts +5 -0
  77. package/lib/transformers/features/miscellaneous/PruneTransformer.js +34 -0
  78. package/lib/transformers/features/miscellaneous/PruneTransformer.js.map +1 -0
  79. package/package.json +5 -4
  80. package/src/factories/MetadataCollection.ts +41 -2
  81. package/src/factories/internal/metadata/iterate_metadata_native.ts +0 -5
  82. package/src/functional/$is_between.ts +7 -0
  83. package/src/metadata/IMetadataTag.ts +4 -19
  84. package/src/metadata/Metadata.ts +3 -6
  85. package/src/module.ts +91 -17
  86. package/src/programmers/AssertProgrammer.ts +3 -2
  87. package/src/programmers/CheckerProgrammer.ts +21 -13
  88. package/src/programmers/FeatureProgrammer.ts +146 -21
  89. package/src/programmers/IsProgrammer.ts +107 -87
  90. package/src/programmers/PruneProgrammer.ts +320 -0
  91. package/src/programmers/StringifyProgrammer.ts +51 -34
  92. package/src/programmers/ValidateProgrammer.ts +3 -2
  93. package/src/programmers/helpers/AtomicPredicator.ts +17 -1
  94. package/src/programmers/helpers/IExpressionEntry.ts +4 -2
  95. package/src/programmers/helpers/OptionPredicator.ts +4 -0
  96. package/src/programmers/helpers/PruneJoiner.ts +52 -0
  97. package/src/programmers/helpers/StringifyJoinder.ts +7 -4
  98. package/src/programmers/internal/application_object.ts +5 -5
  99. package/src/programmers/internal/application_schema.ts +33 -27
  100. package/src/programmers/internal/check_dynamic_properties.ts +67 -16
  101. package/src/programmers/internal/check_native.ts +14 -2
  102. package/src/programmers/internal/check_object.ts +8 -2
  103. package/src/programmers/internal/check_union_array_like.ts +4 -2
  104. package/src/programmers/internal/feature_object_entries.ts +6 -1
  105. package/src/programmers/internal/prune_object_properties.ts +60 -0
  106. package/src/programmers/internal/stringify_dynamic_properties.ts +2 -2
  107. package/src/programmers/internal/stringify_regular_properties.ts +2 -2
  108. package/src/transformers/CallExpressionTransformer.ts +15 -16
  109. package/src/transformers/ITransformOptions.ts +15 -0
  110. package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +3 -1
  111. package/src/transformers/features/{protocols/MessageTransformer.ts → miscellaneous/CreatePruneTransformer.ts} +6 -7
  112. package/src/transformers/features/miscellaneous/PruneTransformer.ts +46 -0
  113. package/lib/factories/ProtocolFactory.d.ts +0 -8
  114. package/lib/factories/ProtocolFactory.js +0 -119
  115. package/lib/factories/ProtocolFactory.js.map +0 -1
  116. package/lib/factories/internal/protocols/ProtocolMetadataUtil.d.ts +0 -16
  117. package/lib/factories/internal/protocols/ProtocolMetadataUtil.js +0 -156
  118. package/lib/factories/internal/protocols/ProtocolMetadataUtil.js.map +0 -1
  119. package/lib/factories/internal/protocols/emplace_protocol_object.d.ts +0 -3
  120. package/lib/factories/internal/protocols/emplace_protocol_object.js +0 -44
  121. package/lib/factories/internal/protocols/emplace_protocol_object.js.map +0 -1
  122. package/lib/factories/internal/protocols/emplace_protocol_property.d.ts +0 -4
  123. package/lib/factories/internal/protocols/emplace_protocol_property.js +0 -20
  124. package/lib/factories/internal/protocols/emplace_protocol_property.js.map +0 -1
  125. package/lib/factories/internal/protocols/iterate_protocol_atomic.d.ts +0 -3
  126. package/lib/factories/internal/protocols/iterate_protocol_atomic.js +0 -69
  127. package/lib/factories/internal/protocols/iterate_protocol_atomic.js.map +0 -1
  128. package/lib/factories/internal/protocols/iterate_protocol_constant.d.ts +0 -2
  129. package/lib/factories/internal/protocols/iterate_protocol_constant.js +0 -30
  130. package/lib/factories/internal/protocols/iterate_protocol_constant.js.map +0 -1
  131. package/lib/factories/internal/protocols/iterate_protocol_main.d.ts +0 -3
  132. package/lib/factories/internal/protocols/iterate_protocol_main.js +0 -17
  133. package/lib/factories/internal/protocols/iterate_protocol_main.js.map +0 -1
  134. package/lib/factories/internal/protocols/iterate_protocol_map.d.ts +0 -4
  135. package/lib/factories/internal/protocols/iterate_protocol_map.js +0 -75
  136. package/lib/factories/internal/protocols/iterate_protocol_map.js.map +0 -1
  137. package/lib/factories/internal/protocols/iterate_protocol_metadata.d.ts +0 -5
  138. package/lib/factories/internal/protocols/iterate_protocol_metadata.js +0 -190
  139. package/lib/factories/internal/protocols/iterate_protocol_metadata.js.map +0 -1
  140. package/lib/factories/internal/protocols/iterate_protocol_native.d.ts +0 -2
  141. package/lib/factories/internal/protocols/iterate_protocol_native.js +0 -33
  142. package/lib/factories/internal/protocols/iterate_protocol_native.js.map +0 -1
  143. package/lib/factories/internal/protocols/iterate_protocol_never.d.ts +0 -1
  144. package/lib/factories/internal/protocols/iterate_protocol_never.js +0 -6
  145. package/lib/factories/internal/protocols/iterate_protocol_never.js.map +0 -1
  146. package/lib/factories/internal/protocols/iterate_protocol_object.d.ts +0 -4
  147. package/lib/factories/internal/protocols/iterate_protocol_object.js +0 -157
  148. package/lib/factories/internal/protocols/iterate_protocol_object.js.map +0 -1
  149. package/lib/factories/internal/protocols/iterate_protocol_repeated.d.ts +0 -5
  150. package/lib/factories/internal/protocols/iterate_protocol_repeated.js +0 -25
  151. package/lib/factories/internal/protocols/iterate_protocol_repeated.js.map +0 -1
  152. package/lib/factories/internal/protocols/iterate_protocol_tuple.d.ts +0 -3
  153. package/lib/factories/internal/protocols/iterate_protocol_tuple.js +0 -46
  154. package/lib/factories/internal/protocols/iterate_protocol_tuple.js.map +0 -1
  155. package/lib/functional/$proto_bytes.d.ts +0 -2
  156. package/lib/functional/$proto_bytes.js +0 -37
  157. package/lib/functional/$proto_bytes.js.map +0 -1
  158. package/lib/functional/$proto_field.d.ts +0 -10
  159. package/lib/functional/$proto_field.js +0 -42
  160. package/lib/functional/$proto_field.js.map +0 -1
  161. package/lib/functional/$proto_float.d.ts +0 -4
  162. package/lib/functional/$proto_float.js +0 -28
  163. package/lib/functional/$proto_float.js.map +0 -1
  164. package/lib/functional/$proto_i32.d.ts +0 -2
  165. package/lib/functional/$proto_i32.js +0 -23
  166. package/lib/functional/$proto_i32.js.map +0 -1
  167. package/lib/functional/$proto_i64.d.ts +0 -2
  168. package/lib/functional/$proto_i64.js +0 -31
  169. package/lib/functional/$proto_i64.js.map +0 -1
  170. package/lib/functional/$proto_size.d.ts +0 -6
  171. package/lib/functional/$proto_size.js +0 -76
  172. package/lib/functional/$proto_size.js.map +0 -1
  173. package/lib/functional/$proto_string.d.ts +0 -2
  174. package/lib/functional/$proto_string.js +0 -34
  175. package/lib/functional/$proto_string.js.map +0 -1
  176. package/lib/functional/$varint.d.ts +0 -6
  177. package/lib/functional/$varint.js +0 -99
  178. package/lib/functional/$varint.js.map +0 -1
  179. package/lib/functional/$zigzag.d.ts +0 -4
  180. package/lib/functional/$zigzag.js +0 -34
  181. package/lib/functional/$zigzag.js.map +0 -1
  182. package/lib/messages/IProtocolMap.d.ts +0 -5
  183. package/lib/messages/IProtocolMap.js +0 -3
  184. package/lib/messages/IProtocolMap.js.map +0 -1
  185. package/lib/messages/IProtocolMessage.d.ts +0 -5
  186. package/lib/messages/IProtocolMessage.js +0 -3
  187. package/lib/messages/IProtocolMessage.js.map +0 -1
  188. package/lib/messages/IProtocolProperty.d.ts +0 -12
  189. package/lib/messages/IProtocolProperty.js +0 -3
  190. package/lib/messages/IProtocolProperty.js.map +0 -1
  191. package/lib/programmers/MessageProgrammer.d.ts +0 -5
  192. package/lib/programmers/MessageProgrammer.js +0 -141
  193. package/lib/programmers/MessageProgrammer.js.map +0 -1
  194. package/lib/transformers/features/protocols/MessageTransformer.d.ts +0 -5
  195. package/lib/transformers/features/protocols/MessageTransformer.js +0 -17
  196. package/lib/transformers/features/protocols/MessageTransformer.js.map +0 -1
  197. package/lib/utils/NameEncoder.d.ts +0 -4
  198. package/lib/utils/NameEncoder.js +0 -89
  199. package/lib/utils/NameEncoder.js.map +0 -1
  200. package/src/factories/ProtocolFactory.ts +0 -92
  201. package/src/factories/internal/protocols/ProtocolMetadataUtil.ts +0 -163
  202. package/src/factories/internal/protocols/emplace_protocol_object.ts +0 -23
  203. package/src/factories/internal/protocols/emplace_protocol_property.ts +0 -12
  204. package/src/factories/internal/protocols/iterate_protocol_atomic.ts +0 -34
  205. package/src/factories/internal/protocols/iterate_protocol_constant.ts +0 -27
  206. package/src/factories/internal/protocols/iterate_protocol_main.ts +0 -19
  207. package/src/factories/internal/protocols/iterate_protocol_map.ts +0 -58
  208. package/src/factories/internal/protocols/iterate_protocol_metadata.ts +0 -96
  209. package/src/factories/internal/protocols/iterate_protocol_native.ts +0 -34
  210. package/src/factories/internal/protocols/iterate_protocol_never.ts +0 -1
  211. package/src/factories/internal/protocols/iterate_protocol_object.ts +0 -110
  212. package/src/factories/internal/protocols/iterate_protocol_repeated.ts +0 -34
  213. package/src/factories/internal/protocols/iterate_protocol_tuple.ts +0 -29
  214. package/src/functional/$proto_bytes.ts +0 -25
  215. package/src/functional/$proto_field.ts +0 -30
  216. package/src/functional/$proto_float.ts +0 -37
  217. package/src/functional/$proto_i32.ts +0 -29
  218. package/src/functional/$proto_i64.ts +0 -37
  219. package/src/functional/$proto_size.ts +0 -82
  220. package/src/functional/$proto_string.ts +0 -24
  221. package/src/functional/$varint.ts +0 -130
  222. package/src/functional/$zigzag.ts +0 -39
  223. package/src/messages/IProtocolMap.ts +0 -5
  224. package/src/messages/IProtocolMessage.ts +0 -6
  225. package/src/messages/IProtocolProperty.ts +0 -13
  226. package/src/programmers/MessageProgrammer.ts +0 -126
  227. package/src/utils/NameEncoder.ts +0 -32
@@ -1,99 +0,0 @@
1
- "use strict";
2
- var __read = (this && this.__read) || function (o, n) {
3
- var m = typeof Symbol === "function" && o[Symbol.iterator];
4
- if (!m) return o;
5
- var i = m.call(o), r, ar = [], e;
6
- try {
7
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
- }
9
- catch (error) { e = { error: error }; }
10
- finally {
11
- try {
12
- if (r && !r.done && (m = i["return"])) m.call(i);
13
- }
14
- finally { if (e) throw e.error; }
15
- }
16
- return ar;
17
- };
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.$varint_encode = exports.$varint_decode_u64 = exports.$varint_decode_i64 = exports.$varint_decode_u32 = exports.$varint_decode_i32 = void 0;
20
- function EncodeVarNumber(dst, offset, value) {
21
- value = (value | 0) >>> 0;
22
- while (value > 127) {
23
- dst[offset++] = (value & 127) | 128;
24
- value >>>= 7;
25
- }
26
- dst[offset++] = value;
27
- return offset;
28
- }
29
- function DecodeVarNumber(buf, offset) {
30
- var value = 0;
31
- var shift = 0;
32
- while (true) {
33
- var byte = buf[offset++];
34
- value |= (byte & 127) << shift;
35
- if (byte < 128) {
36
- break;
37
- }
38
- shift += 7;
39
- }
40
- return [value | 0, offset];
41
- }
42
- function DecodeVarBigInt(buf, offset) {
43
- var value = BigInt(0);
44
- var shift = BigInt(0);
45
- while (true) {
46
- var byte = buf[offset++];
47
- value |= BigInt(byte & 127) << shift;
48
- if (byte < 128) {
49
- break;
50
- }
51
- shift += BigInt(7);
52
- }
53
- return [BigInt.asIntN(64, value), offset];
54
- }
55
- function $varint_decode_i32(buf, offset) {
56
- var _a = __read(DecodeVarNumber(buf, offset), 2), v = _a[0], o = _a[1];
57
- return [v, o];
58
- }
59
- exports.$varint_decode_i32 = $varint_decode_i32;
60
- function $varint_decode_u32(buf, offset) {
61
- var _a = __read(DecodeVarNumber(buf, offset), 2), v = _a[0], o = _a[1];
62
- return [v >>> 0, o];
63
- }
64
- exports.$varint_decode_u32 = $varint_decode_u32;
65
- function $varint_decode_i64(buf, offset) {
66
- var _a = __read(DecodeVarBigInt(buf, offset), 2), v = _a[0], o = _a[1];
67
- return [v, o];
68
- }
69
- exports.$varint_decode_i64 = $varint_decode_i64;
70
- function $varint_decode_u64(buf, offset) {
71
- var _a = __read(DecodeVarBigInt(buf, offset), 2), v = _a[0], o = _a[1];
72
- return [BigInt.asUintN(64, v), o];
73
- }
74
- exports.$varint_decode_u64 = $varint_decode_u64;
75
- function EncodeVarBigInt(dst, offset, value) {
76
- value = BigInt.asUintN(64, value);
77
- while (value > BigInt(127)) {
78
- dst[offset++] = Number(value & BigInt(127)) | 128;
79
- value >>= BigInt(7);
80
- }
81
- dst[offset++] = Number(value);
82
- return offset;
83
- }
84
- function $varint_encode(dst, offset, value) {
85
- if (typeof value === "bigint") {
86
- offset = EncodeVarBigInt(dst, offset, value);
87
- }
88
- else {
89
- if (value < 0) {
90
- offset = EncodeVarBigInt(dst, offset, BigInt(value));
91
- }
92
- else {
93
- offset = EncodeVarNumber(dst, offset, value);
94
- }
95
- }
96
- return offset;
97
- }
98
- exports.$varint_encode = $varint_encode;
99
- //# sourceMappingURL=$varint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"$varint.js","sourceRoot":"","sources":["../../src/functional/$varint.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export declare function $zigzag_encode(value: number): number;
2
- export declare function $zigzag_encode(value: bigint): bigint;
3
- export declare function $zigzag_decode(value: number): number;
4
- export declare function $zigzag_decode(value: bigint): bigint;
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.$zigzag_decode = exports.$zigzag_encode = void 0;
4
- function $zigzag_encode(value) {
5
- if (typeof value === "bigint") {
6
- if (value < BigInt(0)) {
7
- value = -value;
8
- return value * BigInt(2) - BigInt(1);
9
- }
10
- return value * BigInt(2);
11
- }
12
- if (value < 0) {
13
- value = -value;
14
- return value * 2 - 1;
15
- }
16
- return value * 2;
17
- }
18
- exports.$zigzag_encode = $zigzag_encode;
19
- function $zigzag_decode(value) {
20
- if (typeof value === "bigint") {
21
- value = BigInt.asUintN(64, value);
22
- if (value & BigInt(1)) {
23
- return -(value + BigInt(1)) / BigInt(2);
24
- }
25
- return value / BigInt(2);
26
- }
27
- value = value >>> 0;
28
- if (value & 1) {
29
- return -(value + 1) / 2;
30
- }
31
- return value / 2;
32
- }
33
- exports.$zigzag_decode = $zigzag_decode;
34
- //# sourceMappingURL=$zigzag.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"$zigzag.js","sourceRoot":"","sources":["../../src/functional/$zigzag.ts"],"names":[],"mappings":";;;AAEA,SAAgB,cAAc,CAAC,KAAsB;IAGjD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC3B,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;YACnB,KAAK,GAAG,CAAC,KAAK,CAAC;YACf,OAAO,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;SACxC;QACD,OAAO,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;KAC5B;IAED,IAAI,KAAK,GAAG,CAAC,EAAE;QACX,KAAK,GAAG,CAAC,KAAK,CAAC;QACf,OAAO,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;KACxB;IACD,OAAO,KAAK,GAAG,CAAC,CAAC;AACrB,CAAC;AAhBD,wCAgBC;AAID,SAAgB,cAAc,CAAC,KAAsB;IAGjD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC3B,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAClC,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;YACnB,OAAO,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;SAC3C;QACD,OAAO,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;KAC5B;IAED,KAAK,GAAG,KAAK,KAAK,CAAC,CAAC;IACpB,IAAI,KAAK,GAAG,CAAC,EAAE;QACX,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;KAC3B;IACD,OAAO,KAAK,GAAG,CAAC,CAAC;AACrB,CAAC;AAhBD,wCAgBC"}
@@ -1,5 +0,0 @@
1
- export interface IProtocolMap {
2
- type: "map";
3
- key: string;
4
- value: string | IProtocolMap;
5
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IProtocolMap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IProtocolMap.js","sourceRoot":"","sources":["../../src/messages/IProtocolMap.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- import { IProtocolProperty } from "./IProtocolProperty";
2
- export interface IProtocolMessage {
3
- name: string;
4
- properties: IProtocolProperty[];
5
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IProtocolMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IProtocolMessage.js","sourceRoot":"","sources":["../../src/messages/IProtocolMessage.ts"],"names":[],"mappings":""}
@@ -1,12 +0,0 @@
1
- import { IProtocolMap } from "./IProtocolMap";
2
- export interface IProtocolProperty {
3
- key: string;
4
- oneOf: IProtocolProperty.IOneOf[];
5
- required: boolean;
6
- repeated: boolean;
7
- }
8
- export declare namespace IProtocolProperty {
9
- interface IOneOf {
10
- type: string | IProtocolMap;
11
- }
12
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IProtocolProperty.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IProtocolProperty.js","sourceRoot":"","sources":["../../src/messages/IProtocolProperty.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- import ts from "typescript";
2
- import { IProject } from "../transformers/IProject";
3
- export declare namespace MessageProgrammer {
4
- const generate: ({ checker }: IProject) => (type: ts.Type) => ts.StringLiteral;
5
- }
@@ -1,141 +0,0 @@
1
- "use strict";
2
- var __values = (this && this.__values) || function(o) {
3
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
- if (m) return m.call(o);
5
- if (o && typeof o.length === "number") return {
6
- next: function () {
7
- if (o && i >= o.length) o = void 0;
8
- return { value: o && o[i++], done: !o };
9
- }
10
- };
11
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
- };
13
- var __read = (this && this.__read) || function (o, n) {
14
- var m = typeof Symbol === "function" && o[Symbol.iterator];
15
- if (!m) return o;
16
- var i = m.call(o), r, ar = [], e;
17
- try {
18
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
- }
20
- catch (error) { e = { error: error }; }
21
- finally {
22
- try {
23
- if (r && !r.done && (m = i["return"])) m.call(i);
24
- }
25
- finally { if (e) throw e.error; }
26
- }
27
- return ar;
28
- };
29
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
30
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
31
- if (ar || !(i in from)) {
32
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
33
- ar[i] = from[i];
34
- }
35
- }
36
- return to.concat(ar || Array.prototype.slice.call(from));
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
- Object.defineProperty(exports, "__esModule", { value: true });
42
- exports.MessageProgrammer = void 0;
43
- var typescript_1 = __importDefault(require("typescript"));
44
- var MetadataCollection_1 = require("../factories/MetadataCollection");
45
- var ProtocolFactory_1 = require("../factories/ProtocolFactory");
46
- var Escaper_1 = require("../utils/Escaper");
47
- var MapUtil_1 = require("../utils/MapUtil");
48
- var NameEncoder_1 = require("../utils/NameEncoder");
49
- var MessageProgrammer;
50
- (function (MessageProgrammer) {
51
- MessageProgrammer.generate = function (_a) {
52
- var checker = _a.checker;
53
- return function (type) {
54
- var e_1, _a;
55
- var collection = new MetadataCollection_1.MetadataCollection();
56
- var metadata = ProtocolFactory_1.ProtocolFactory.metadata(checker)(collection)(type);
57
- var dict = new Map();
58
- ProtocolFactory_1.ProtocolFactory.generate(collection)(dict)(metadata);
59
- var hierarchies = new Map();
60
- try {
61
- for (var _b = __values(dict.values()), _c = _b.next(); !_c.done; _c = _b.next()) {
62
- var msg = _c.value;
63
- emplace(hierarchies)(msg);
64
- }
65
- }
66
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
67
- finally {
68
- try {
69
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
70
- }
71
- finally { if (e_1) throw e_1.error; }
72
- }
73
- var content = "syntax = \"proto3\";\n\n" +
74
- __spreadArray([], __read(hierarchies.values()), false).map(function (hier) { return stringify(hier); })
75
- .join("\n\n");
76
- return typescript_1.default.factory.createStringLiteral(content);
77
- };
78
- };
79
- var stringify = function (hierarchy) {
80
- var key = hierarchy.key, message = hierarchy.message, children = hierarchy.children;
81
- var index = 1;
82
- var elements = ["message ".concat(NameEncoder_1.NameEncoder.encode(key), " {")];
83
- if (message !== null)
84
- elements.push.apply(elements, __spreadArray([], __read(message.properties.map(function (property) {
85
- var key = Escaper_1.Escaper.variable(property.key) &&
86
- property.key.indexOf("$") === -1
87
- ? property.key
88
- : "v".concat(index + 1);
89
- if (property.oneOf.length === 1)
90
- return [
91
- TAB,
92
- property.required ? "" : "optional ",
93
- property.repeated ? "repeated " : "",
94
- getTypeName(property.oneOf[0].type) + " ",
95
- key,
96
- " = ",
97
- "".concat(index++, ";"),
98
- ].join("");
99
- return ("".concat(TAB, "oneof ").concat(key, " {\n") +
100
- property.oneOf
101
- .map(function (o, i) {
102
- return "".concat(TAB).concat(TAB).concat(getTypeName(o.type), " ").concat(key, "_o").concat(i, " = ").concat(index++, ";");
103
- })
104
- .join("\n") +
105
- "\n".concat(TAB, "}"));
106
- })), false));
107
- if (message !== null && children.size)
108
- elements.push("\n");
109
- if (children.size)
110
- elements.push(__spreadArray([], __read(children.values()), false).map(function (child) { return stringify(child); })
111
- .map(function (body) {
112
- return body
113
- .split("\n")
114
- .map(function (line) { return "".concat(TAB).concat(line); })
115
- .join("\n");
116
- })
117
- .join("\n\n"));
118
- elements.push("}");
119
- return elements.join("\n");
120
- };
121
- var emplace = function (dict) { return function (message) {
122
- var accessors = message.name.split(".");
123
- accessors.forEach(function (access, i) {
124
- var hierarchy = MapUtil_1.MapUtil.take(dict, access, function () { return ({
125
- key: access,
126
- message: null,
127
- children: new Map(),
128
- }); });
129
- dict = hierarchy.children;
130
- if (i === accessors.length - 1)
131
- hierarchy.message = message;
132
- });
133
- }; };
134
- function getTypeName(type) {
135
- return typeof type === "string"
136
- ? NameEncoder_1.NameEncoder.encode(type)
137
- : "map<".concat(type.key, ", ").concat(getTypeName(type.value), ">");
138
- }
139
- })(MessageProgrammer = exports.MessageProgrammer || (exports.MessageProgrammer = {}));
140
- var TAB = " ".repeat(4);
141
- //# sourceMappingURL=MessageProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MessageProgrammer.js","sourceRoot":"","sources":["../../src/programmers/MessageProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import ts from "typescript";
2
- import { IProject } from "../../IProject";
3
- export declare namespace MessageTransformer {
4
- function transform(project: IProject, _modulo: ts.LeftHandSideExpression, expression: ts.CallExpression): ts.Expression;
5
- }
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MessageTransformer = void 0;
4
- var MessageProgrammer_1 = require("../../../programmers/MessageProgrammer");
5
- var MessageTransformer;
6
- (function (MessageTransformer) {
7
- function transform(project, _modulo, expression) {
8
- if (!expression.typeArguments || !expression.typeArguments[0])
9
- throw new Error("Error on typia.message(): generic argument is not specified.");
10
- var type = project.checker.getTypeFromTypeNode(expression.typeArguments[0]);
11
- if (type.isTypeParameter())
12
- throw new Error("Error on typia.message(): non-specified generic argument.");
13
- return MessageProgrammer_1.MessageProgrammer.generate(project)(type);
14
- }
15
- MessageTransformer.transform = transform;
16
- })(MessageTransformer = exports.MessageTransformer || (exports.MessageTransformer = {}));
17
- //# sourceMappingURL=MessageTransformer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MessageTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/protocols/MessageTransformer.ts"],"names":[],"mappings":";;;AAEA,4EAA2E;AAI3E,IAAiB,kBAAkB,CAoBlC;AApBD,WAAiB,kBAAkB;IAC/B,SAAgB,SAAS,CACrB,OAAiB,EACjB,OAAkC,EAClC,UAA6B;QAG7B,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;YACzD,MAAM,IAAI,KAAK,gEAA6B,CAAC;QAGjD,IAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,mBAAmB,CACrD,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAC9B,CAAC;QACF,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,MAAM,IAAI,KAAK,6DAAgC,CAAC;QAGpD,OAAO,qCAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAlBe,4BAAS,YAkBxB,CAAA;AACL,CAAC,EApBgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAoBlC"}
@@ -1,4 +0,0 @@
1
- export declare namespace NameEncoder {
2
- function encode(str: string): string;
3
- function decode(str: string): string;
4
- }
@@ -1,89 +0,0 @@
1
- "use strict";
2
- var __values = (this && this.__values) || function(o) {
3
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
- if (m) return m.call(o);
5
- if (o && typeof o.length === "number") return {
6
- next: function () {
7
- if (o && i >= o.length) o = void 0;
8
- return { value: o && o[i++], done: !o };
9
- }
10
- };
11
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
- };
13
- var __read = (this && this.__read) || function (o, n) {
14
- var m = typeof Symbol === "function" && o[Symbol.iterator];
15
- if (!m) return o;
16
- var i = m.call(o), r, ar = [], e;
17
- try {
18
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
- }
20
- catch (error) { e = { error: error }; }
21
- finally {
22
- try {
23
- if (r && !r.done && (m = i["return"])) m.call(i);
24
- }
25
- finally { if (e) throw e.error; }
26
- }
27
- return ar;
28
- };
29
- Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.NameEncoder = void 0;
31
- var NameEncoder;
32
- (function (NameEncoder) {
33
- function encode(str) {
34
- var e_1, _a;
35
- try {
36
- for (var REPLACERS_1 = __values(REPLACERS), REPLACERS_1_1 = REPLACERS_1.next(); !REPLACERS_1_1.done; REPLACERS_1_1 = REPLACERS_1.next()) {
37
- var _b = __read(REPLACERS_1_1.value, 2), before = _b[0], after = _b[1];
38
- str = str.split(before).join(after);
39
- }
40
- }
41
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
42
- finally {
43
- try {
44
- if (REPLACERS_1_1 && !REPLACERS_1_1.done && (_a = REPLACERS_1.return)) _a.call(REPLACERS_1);
45
- }
46
- finally { if (e_1) throw e_1.error; }
47
- }
48
- return str;
49
- }
50
- NameEncoder.encode = encode;
51
- function decode(str) {
52
- var e_2, _a;
53
- try {
54
- for (var REPLACERS_2 = __values(REPLACERS), REPLACERS_2_1 = REPLACERS_2.next(); !REPLACERS_2_1.done; REPLACERS_2_1 = REPLACERS_2.next()) {
55
- var _b = __read(REPLACERS_2_1.value, 2), before = _b[0], after = _b[1];
56
- if (after !== "")
57
- str = str.split(after).join(before);
58
- }
59
- }
60
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
61
- finally {
62
- try {
63
- if (REPLACERS_2_1 && !REPLACERS_2_1.done && (_a = REPLACERS_2.return)) _a.call(REPLACERS_2);
64
- }
65
- finally { if (e_2) throw e_2.error; }
66
- }
67
- return str;
68
- }
69
- NameEncoder.decode = decode;
70
- })(NameEncoder = exports.NameEncoder || (exports.NameEncoder = {}));
71
- var REPLACERS = [
72
- ["$", "_dollar_"],
73
- ["&", "_and_"],
74
- ["|", "_or_"],
75
- ["{", "_blt_"],
76
- ["}", "_bgt_"],
77
- ["<", "_lt_"],
78
- [">", "_gt_"],
79
- ["(", "_lp_"],
80
- [")", "_rp_"],
81
- ["[", "_alt_"],
82
- ["]", "_agt_"],
83
- [",", "_comma_"],
84
- ["`", "_backquote_"],
85
- ["'", "_singlequote_"],
86
- ['"', "_doublequote_"],
87
- [" ", "_space_"],
88
- ];
89
- //# sourceMappingURL=NameEncoder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NameEncoder.js","sourceRoot":"","sources":["../../src/utils/NameEncoder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAiB,WAAW,CAY3B;AAZD,WAAiB,WAAW;IACxB,SAAgB,MAAM,CAAC,GAAW;;;YAC9B,KAA8B,IAAA,cAAA,SAAA,SAAS,CAAA,oCAAA;gBAA5B,IAAA,KAAA,8BAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACrB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAAA;;;;;;;;;QACxC,OAAO,GAAG,CAAC;IACf,CAAC;IAJe,kBAAM,SAIrB,CAAA;IAED,SAAgB,MAAM,CAAC,GAAW;;;YAC9B,KAA8B,IAAA,cAAA,SAAA,SAAS,CAAA,oCAAA;gBAA5B,IAAA,KAAA,8BAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACrB,IAAI,KAAK,KAAK,EAAE;oBAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAAA;;;;;;;;;QAC1D,OAAO,GAAG,CAAC;IACf,CAAC;IAJe,kBAAM,SAIrB,CAAA;AACL,CAAC,EAZgB,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAY3B;AAED,IAAM,SAAS,GAAuB;IAClC,CAAC,GAAG,EAAE,UAAU,CAAC;IACjB,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,SAAS,CAAC;IAChB,CAAC,GAAG,EAAE,aAAa,CAAC;IACpB,CAAC,GAAG,EAAE,eAAe,CAAC;IACtB,CAAC,GAAG,EAAE,eAAe,CAAC;IACtB,CAAC,GAAG,EAAE,SAAS,CAAC;CACnB,CAAC"}
@@ -1,92 +0,0 @@
1
- import ts from "typescript";
2
-
3
- import { Metadata } from "../metadata/Metadata";
4
-
5
- import { IProtocolMessage } from "../messages/IProtocolMessage";
6
- import { MetadataCollection } from "./MetadataCollection";
7
- import { MetadataFactory } from "./MetadataFactory";
8
- import { emplace_protocol_object } from "./internal/protocols/emplace_protocol_object";
9
- import { iterate_protocol_main } from "./internal/protocols/iterate_protocol_main";
10
-
11
- export namespace ProtocolFactory {
12
- export const metadata =
13
- (checker: ts.TypeChecker) =>
14
- (collection: MetadataCollection) =>
15
- (type: ts.Type) =>
16
- MetadataFactory.generate(checker, collection, type, {
17
- resolve: false,
18
- constant: true,
19
- validate: (meta) => {
20
- if (meta.any) throw new Error(ErrorMessages.NO_ANY);
21
- else if (meta.functional && meta.size() !== 1)
22
- throw new Error(ErrorMessages.NO_FUNCTIONAL);
23
- else if (meta.objects.find((o) => o.name === "__Main"))
24
- throw new Error(ErrorMessages.NO_MAIN);
25
- else if (meta.objects.find((o) => o.name === "__Timestamp"))
26
- throw new Error(ErrorMessages.NO_TIMESTAMP);
27
- else if (
28
- meta.objects.some(
29
- (o) =>
30
- o.properties.filter((p) =>
31
- p.key.isSoleLiteral(),
32
- ).length &&
33
- o.properties.filter(
34
- (p) => !p.key.isSoleLiteral(),
35
- ).length,
36
- )
37
- )
38
- throw new Error(ErrorMessages.NO_SIMULATENOUS);
39
- else if (
40
- meta.objects.some((o) =>
41
- o.properties.some((p) => !is_atomic_key(p.key)),
42
- ) ||
43
- meta.maps.some((m) => !is_atomic_key(m.key))
44
- )
45
- throw new Error(ErrorMessages.NOT_ALLOWED_KEY);
46
- },
47
- });
48
-
49
- export const generate =
50
- (collection: MetadataCollection) =>
51
- (dict: Map<string, IProtocolMessage>) =>
52
- (meta: Metadata) => {
53
- // EMPLACE OBJECTS
54
- for (const obj of collection.objects())
55
- emplace_protocol_object(dict)(obj);
56
-
57
- // WHEN NOT OBJECT, WRAP IT INTO A FAKE MAIN OBJECT
58
- iterate_protocol_main(dict)(meta);
59
- };
60
-
61
- const is_atomic_key = (key: Metadata) => {
62
- if (
63
- key.required &&
64
- key.nullable === false &&
65
- key.functional === false &&
66
- key.resolved === null &&
67
- key.size() ===
68
- key.atomics.length +
69
- key.constants
70
- .map((c) => c.values.length)
71
- .reduce((a, b) => a + b, 0) +
72
- key.templates.length
73
- ) {
74
- const set: Set<string> = new Set();
75
- for (const atomic of key.atomics) set.add(atomic);
76
- for (const constant of key.constants) set.add(constant.type);
77
- if (key.templates.length) set.add("string");
78
-
79
- return set.size === 1;
80
- }
81
- return false;
82
- };
83
- }
84
-
85
- const enum ErrorMessages {
86
- NO_ANY = `Error on typia.message(): any type is not supported in protocol buffer.`,
87
- NO_FUNCTIONAL = `Error on typia.message(): functional type is not supported in protocol buffer.`,
88
- NO_MAIN = `Error on typia.message(): reserved type "__Main" has been detected.`,
89
- NO_TIMESTAMP = `Error on typia.message(): reserved type "__Timestamp" has been detected.`,
90
- NOT_ALLOWED_KEY = `Error on typia.message(): only atomic key type is supported in protocol buffer.`,
91
- NO_SIMULATENOUS = `Error on typia.message(): object can't have both regular and dynamic properties in protocol buffer.`,
92
- }