typia 5.0.0-dev.20230810 → 5.0.0-dev.20230814

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 (190) hide show
  1. package/lib/factories/MetadataCollection.js +1 -0
  2. package/lib/factories/MetadataCollection.js.map +1 -1
  3. package/lib/factories/MetadataFactory.js +27 -0
  4. package/lib/factories/MetadataFactory.js.map +1 -1
  5. package/lib/factories/ProtobufFactory.d.ts +0 -2
  6. package/lib/factories/ProtobufFactory.js +55 -111
  7. package/lib/factories/ProtobufFactory.js.map +1 -1
  8. package/lib/factories/StatementFactory.d.ts +1 -0
  9. package/lib/factories/StatementFactory.js +5 -0
  10. package/lib/factories/StatementFactory.js.map +1 -1
  11. package/lib/factories/internal/metadata/explore_metadata.js +3 -7
  12. package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
  13. package/lib/factories/internal/metadata/iterate_metadata_intersection.js +1 -0
  14. package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
  15. package/lib/functional/$strlen.d.ts +1 -0
  16. package/lib/functional/$strlen.js +13 -0
  17. package/lib/functional/$strlen.js.map +1 -0
  18. package/lib/functional/Namespace.js +19 -3
  19. package/lib/functional/Namespace.js.map +1 -1
  20. package/lib/json.js +4 -4
  21. package/lib/json.js.map +1 -1
  22. package/lib/misc.js +8 -8
  23. package/lib/misc.js.map +1 -1
  24. package/lib/programmers/CheckerProgrammer.js +0 -5
  25. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  26. package/lib/programmers/FeatureProgrammer.d.ts +3 -3
  27. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  28. package/lib/programmers/helpers/ProtobufUtil.d.ts +5 -0
  29. package/lib/programmers/helpers/ProtobufUtil.js +82 -0
  30. package/lib/programmers/helpers/ProtobufUtil.js.map +1 -0
  31. package/lib/programmers/helpers/ProtobufWire.d.ts +25 -0
  32. package/lib/{schemas/protobuf/IProtocolMap.js → programmers/helpers/ProtobufWire.js} +1 -1
  33. package/lib/programmers/helpers/ProtobufWire.js.map +1 -0
  34. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +253 -5
  35. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  36. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +23 -37
  37. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  38. package/lib/programmers/protobuf/ProtobufSizeProgrammer.d.ts +5 -0
  39. package/lib/programmers/protobuf/ProtobufSizeProgrammer.js +409 -0
  40. package/lib/programmers/protobuf/ProtobufSizeProgrammer.js.map +1 -0
  41. package/lib/protobuf.js +9 -1
  42. package/lib/protobuf.js.map +1 -1
  43. package/lib/schemas/metadata/Metadata.js +11 -0
  44. package/lib/schemas/metadata/Metadata.js.map +1 -1
  45. package/lib/transformers/CallExpressionTransformer.js +26 -22
  46. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  47. package/lib/transformers/features/protobuf/CreateProtobufAssertDecodeTransformer.js +1 -1
  48. package/lib/transformers/features/protobuf/CreateProtobufAssertDecodeTransformer.js.map +1 -1
  49. package/lib/transformers/features/protobuf/CreateProtobufAssertEncodeTransformer.js +1 -1
  50. package/lib/transformers/features/protobuf/CreateProtobufAssertEncodeTransformer.js.map +1 -1
  51. package/lib/transformers/features/protobuf/CreateProtobufDecodeTransformer.js +1 -3
  52. package/lib/transformers/features/protobuf/CreateProtobufDecodeTransformer.js.map +1 -1
  53. package/lib/transformers/features/protobuf/CreateProtobufEncodeTransformer.js +1 -3
  54. package/lib/transformers/features/protobuf/CreateProtobufEncodeTransformer.js.map +1 -1
  55. package/lib/transformers/features/protobuf/CreateProtobufIsDecodeTransformer.js +1 -1
  56. package/lib/transformers/features/protobuf/CreateProtobufIsDecodeTransformer.js.map +1 -1
  57. package/lib/transformers/features/protobuf/CreateProtobufIsEncodeTransformer.js +1 -1
  58. package/lib/transformers/features/protobuf/CreateProtobufIsEncodeTransformer.js.map +1 -1
  59. package/lib/transformers/features/protobuf/CreateProtobufSizeTransformer.d.ts +3 -0
  60. package/lib/transformers/features/protobuf/CreateProtobufSizeTransformer.js +10 -0
  61. package/lib/transformers/features/protobuf/CreateProtobufSizeTransformer.js.map +1 -0
  62. package/lib/transformers/features/protobuf/CreateProtobufValidateDecodeTransformer.js +1 -1
  63. package/lib/transformers/features/protobuf/CreateProtobufValidateDecodeTransformer.js.map +1 -1
  64. package/lib/transformers/features/protobuf/CreateProtobufValidateEncodeTransformer.js +1 -1
  65. package/lib/transformers/features/protobuf/CreateProtobufValidateEncodeTransformer.js.map +1 -1
  66. package/lib/transformers/features/protobuf/ProtobufAssertDecodeTransformer.js +1 -1
  67. package/lib/transformers/features/protobuf/ProtobufAssertDecodeTransformer.js.map +1 -1
  68. package/lib/transformers/features/protobuf/ProtobufAssertEncodeTransformer.js +1 -1
  69. package/lib/transformers/features/protobuf/ProtobufAssertEncodeTransformer.js.map +1 -1
  70. package/lib/transformers/features/protobuf/ProtobufDecodeTransformer.js +1 -1
  71. package/lib/transformers/features/protobuf/ProtobufDecodeTransformer.js.map +1 -1
  72. package/lib/transformers/features/protobuf/ProtobufEncodeTransformer.js +1 -1
  73. package/lib/transformers/features/protobuf/ProtobufEncodeTransformer.js.map +1 -1
  74. package/lib/transformers/features/protobuf/ProtobufIsDecodeTransformer.js +1 -1
  75. package/lib/transformers/features/protobuf/ProtobufIsDecodeTransformer.js.map +1 -1
  76. package/lib/transformers/features/protobuf/ProtobufIsEncodeTransformer.js +1 -1
  77. package/lib/transformers/features/protobuf/ProtobufIsEncodeTransformer.js.map +1 -1
  78. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.d.ts +1 -1
  79. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js +7 -7
  80. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js.map +1 -1
  81. package/lib/transformers/features/protobuf/ProtobufSizeTransformer.d.ts +3 -0
  82. package/lib/transformers/features/protobuf/ProtobufSizeTransformer.js +10 -0
  83. package/lib/transformers/features/protobuf/ProtobufSizeTransformer.js.map +1 -0
  84. package/lib/transformers/features/protobuf/ProtobufValidateDecodeTransformer.js +1 -1
  85. package/lib/transformers/features/protobuf/ProtobufValidateDecodeTransformer.js.map +1 -1
  86. package/lib/transformers/features/protobuf/ProtobufValidateEncodeTransformer.js +1 -1
  87. package/lib/transformers/features/protobuf/ProtobufValidateEncodeTransformer.js.map +1 -1
  88. package/package.json +2 -1
  89. package/src/factories/MetadataCollection.ts +5 -0
  90. package/src/factories/MetadataFactory.ts +4 -0
  91. package/src/factories/ProtobufFactory.ts +106 -90
  92. package/src/factories/StatementFactory.ts +16 -0
  93. package/src/factories/internal/metadata/explore_metadata.ts +4 -6
  94. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +1 -0
  95. package/src/functional/$strlen.ts +7 -0
  96. package/src/functional/Namespace.ts +32 -17
  97. package/src/json.ts +4 -4
  98. package/src/misc.ts +8 -8
  99. package/src/programmers/CheckerProgrammer.ts +0 -9
  100. package/src/programmers/FeatureProgrammer.ts +5 -3
  101. package/src/programmers/helpers/ProtobufUtil.ts +24 -0
  102. package/src/programmers/helpers/ProtobufWire.ts +28 -0
  103. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +446 -5
  104. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +12 -8
  105. package/src/programmers/protobuf/ProtobufSizeProgrammer.ts +716 -0
  106. package/src/protobuf.ts +29 -0
  107. package/src/schemas/metadata/Metadata.ts +26 -0
  108. package/src/transformers/CallExpressionTransformer.ts +32 -28
  109. package/src/transformers/features/protobuf/CreateProtobufAssertDecodeTransformer.ts +3 -1
  110. package/src/transformers/features/protobuf/CreateProtobufAssertEncodeTransformer.ts +3 -1
  111. package/src/transformers/features/protobuf/CreateProtobufDecodeTransformer.ts +3 -4
  112. package/src/transformers/features/protobuf/CreateProtobufEncodeTransformer.ts +3 -4
  113. package/src/transformers/features/protobuf/CreateProtobufIsDecodeTransformer.ts +3 -1
  114. package/src/transformers/features/protobuf/CreateProtobufIsEncodeTransformer.ts +3 -1
  115. package/src/transformers/features/protobuf/CreateProtobufSizeTransformer.ts +9 -0
  116. package/src/transformers/features/protobuf/CreateProtobufValidateDecodeTransformer.ts +3 -1
  117. package/src/transformers/features/protobuf/CreateProtobufValidateEncodeTransformer.ts +3 -1
  118. package/src/transformers/features/protobuf/ProtobufAssertDecodeTransformer.ts +1 -1
  119. package/src/transformers/features/protobuf/ProtobufAssertEncodeTransformer.ts +1 -1
  120. package/src/transformers/features/protobuf/ProtobufDecodeTransformer.ts +1 -1
  121. package/src/transformers/features/protobuf/ProtobufEncodeTransformer.ts +1 -1
  122. package/src/transformers/features/protobuf/ProtobufIsDecodeTransformer.ts +1 -1
  123. package/src/transformers/features/protobuf/ProtobufIsEncodeTransformer.ts +1 -1
  124. package/src/transformers/features/protobuf/ProtobufMessageTransformer.ts +3 -3
  125. package/src/transformers/features/protobuf/ProtobufSizeTransformer.ts +9 -0
  126. package/src/transformers/features/protobuf/ProtobufValidateDecodeTransformer.ts +3 -1
  127. package/src/transformers/features/protobuf/ProtobufValidateEncodeTransformer.ts +3 -1
  128. package/lib/factories/internal/protocols/ProtocolMetadataUtil.d.ts +0 -16
  129. package/lib/factories/internal/protocols/ProtocolMetadataUtil.js +0 -173
  130. package/lib/factories/internal/protocols/ProtocolMetadataUtil.js.map +0 -1
  131. package/lib/factories/internal/protocols/emplace_protocol_object.d.ts +0 -3
  132. package/lib/factories/internal/protocols/emplace_protocol_object.js +0 -47
  133. package/lib/factories/internal/protocols/emplace_protocol_object.js.map +0 -1
  134. package/lib/factories/internal/protocols/emplace_protocol_property.d.ts +0 -4
  135. package/lib/factories/internal/protocols/emplace_protocol_property.js +0 -20
  136. package/lib/factories/internal/protocols/emplace_protocol_property.js.map +0 -1
  137. package/lib/factories/internal/protocols/iterate_protocol_atomic.d.ts +0 -3
  138. package/lib/factories/internal/protocols/iterate_protocol_atomic.js +0 -69
  139. package/lib/factories/internal/protocols/iterate_protocol_atomic.js.map +0 -1
  140. package/lib/factories/internal/protocols/iterate_protocol_constant.d.ts +0 -2
  141. package/lib/factories/internal/protocols/iterate_protocol_constant.js +0 -30
  142. package/lib/factories/internal/protocols/iterate_protocol_constant.js.map +0 -1
  143. package/lib/factories/internal/protocols/iterate_protocol_main.d.ts +0 -3
  144. package/lib/factories/internal/protocols/iterate_protocol_main.js +0 -17
  145. package/lib/factories/internal/protocols/iterate_protocol_main.js.map +0 -1
  146. package/lib/factories/internal/protocols/iterate_protocol_map.d.ts +0 -4
  147. package/lib/factories/internal/protocols/iterate_protocol_map.js +0 -75
  148. package/lib/factories/internal/protocols/iterate_protocol_map.js.map +0 -1
  149. package/lib/factories/internal/protocols/iterate_protocol_metadata.d.ts +0 -5
  150. package/lib/factories/internal/protocols/iterate_protocol_metadata.js +0 -190
  151. package/lib/factories/internal/protocols/iterate_protocol_metadata.js.map +0 -1
  152. package/lib/factories/internal/protocols/iterate_protocol_native.d.ts +0 -2
  153. package/lib/factories/internal/protocols/iterate_protocol_native.js +0 -33
  154. package/lib/factories/internal/protocols/iterate_protocol_native.js.map +0 -1
  155. package/lib/factories/internal/protocols/iterate_protocol_never.d.ts +0 -1
  156. package/lib/factories/internal/protocols/iterate_protocol_never.js +0 -6
  157. package/lib/factories/internal/protocols/iterate_protocol_never.js.map +0 -1
  158. package/lib/factories/internal/protocols/iterate_protocol_object.d.ts +0 -4
  159. package/lib/factories/internal/protocols/iterate_protocol_object.js +0 -157
  160. package/lib/factories/internal/protocols/iterate_protocol_object.js.map +0 -1
  161. package/lib/factories/internal/protocols/iterate_protocol_repeated.d.ts +0 -5
  162. package/lib/factories/internal/protocols/iterate_protocol_repeated.js +0 -25
  163. package/lib/factories/internal/protocols/iterate_protocol_repeated.js.map +0 -1
  164. package/lib/factories/internal/protocols/iterate_protocol_tuple.d.ts +0 -3
  165. package/lib/factories/internal/protocols/iterate_protocol_tuple.js +0 -46
  166. package/lib/factories/internal/protocols/iterate_protocol_tuple.js.map +0 -1
  167. package/lib/schemas/protobuf/IProtocolMap.d.ts +0 -5
  168. package/lib/schemas/protobuf/IProtocolMap.js.map +0 -1
  169. package/lib/schemas/protobuf/IProtocolMessage.d.ts +0 -5
  170. package/lib/schemas/protobuf/IProtocolMessage.js +0 -3
  171. package/lib/schemas/protobuf/IProtocolMessage.js.map +0 -1
  172. package/lib/schemas/protobuf/IProtocolProperty.d.ts +0 -12
  173. package/lib/schemas/protobuf/IProtocolProperty.js +0 -3
  174. package/lib/schemas/protobuf/IProtocolProperty.js.map +0 -1
  175. package/src/factories/internal/protocols/ProtocolMetadataUtil.ts +0 -180
  176. package/src/factories/internal/protocols/emplace_protocol_object.ts +0 -25
  177. package/src/factories/internal/protocols/emplace_protocol_property.ts +0 -12
  178. package/src/factories/internal/protocols/iterate_protocol_atomic.ts +0 -34
  179. package/src/factories/internal/protocols/iterate_protocol_constant.ts +0 -27
  180. package/src/factories/internal/protocols/iterate_protocol_main.ts +0 -19
  181. package/src/factories/internal/protocols/iterate_protocol_map.ts +0 -58
  182. package/src/factories/internal/protocols/iterate_protocol_metadata.ts +0 -96
  183. package/src/factories/internal/protocols/iterate_protocol_native.ts +0 -34
  184. package/src/factories/internal/protocols/iterate_protocol_never.ts +0 -1
  185. package/src/factories/internal/protocols/iterate_protocol_object.ts +0 -110
  186. package/src/factories/internal/protocols/iterate_protocol_repeated.ts +0 -34
  187. package/src/factories/internal/protocols/iterate_protocol_tuple.ts +0 -29
  188. package/src/schemas/protobuf/IProtocolMap.ts +0 -5
  189. package/src/schemas/protobuf/IProtocolMessage.ts +0 -6
  190. package/src/schemas/protobuf/IProtocolProperty.ts +0 -13
@@ -0,0 +1,409 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
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.ProtobufSizeProgrammer = void 0;
43
+ var typescript_1 = __importDefault(require("typescript"));
44
+ var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
45
+ var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
46
+ var MetadataCollection_1 = require("../../factories/MetadataCollection");
47
+ var ProtobufFactory_1 = require("../../factories/ProtobufFactory");
48
+ var StatementFactory_1 = require("../../factories/StatementFactory");
49
+ var TypeFactory_1 = require("../../factories/TypeFactory");
50
+ var _strlen_1 = require("../../functional/$strlen");
51
+ var FeatureProgrammer_1 = require("../FeatureProgrammer");
52
+ var IsProgrammer_1 = require("../IsProgrammer");
53
+ var FunctionImporeter_1 = require("../helpers/FunctionImporeter");
54
+ var ProtobufUtil_1 = require("../helpers/ProtobufUtil");
55
+ var UnionExplorer_1 = require("../helpers/UnionExplorer");
56
+ var check_native_1 = require("../internal/check_native");
57
+ var decode_union_object_1 = require("../internal/decode_union_object");
58
+ var ProtobufSizeProgrammer;
59
+ (function (ProtobufSizeProgrammer) {
60
+ ProtobufSizeProgrammer.write = function (project) { return function (modulo) {
61
+ var importer = new FunctionImporeter_1.FunctionImporter();
62
+ var copnfig = configure(modulo.getText())(project)(importer);
63
+ return FeatureProgrammer_1.FeatureProgrammer.write(project)(__assign(__assign({}, copnfig), { addition: function (collection) { return __spreadArray(__spreadArray([], __read(IsProgrammer_1.IsProgrammer.write_function_statements(project)(importer)(collection)), false), __read(importer.declare(modulo)), false); } }))(importer);
64
+ }; };
65
+ var write_object_function_body = function (project) {
66
+ return function (config) {
67
+ return function (importer) {
68
+ return function (obj) {
69
+ var explore = {
70
+ tracable: false,
71
+ source: "function",
72
+ from: "object",
73
+ postfix: "",
74
+ };
75
+ if (obj.properties.some(function (p) { return !p.key.isSoleLiteral(); })) {
76
+ var p = obj.properties[0];
77
+ return write_map_function_body(project)(config)(importer)(typescript_1.default.factory.createIdentifier("input"), p, explore, p.tags);
78
+ }
79
+ var zero = typescript_1.default.factory.createNumericLiteral(0);
80
+ var compute = function (p) {
81
+ var input = IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier("input"))(p.key.getSoleLiteral());
82
+ var output = typescript_1.default.factory.createAdd(typescript_1.default.factory.createNumericLiteral(4), decode(project)(config)(importer)(input, p.value, explore, p.tags));
83
+ if (p.value.isRequired() === true && p.value.nullable === false)
84
+ return output;
85
+ else if (p.value.isRequired() === true &&
86
+ p.value.nullable === true)
87
+ return typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createStrictInequality(typescript_1.default.factory.createNull(), input), undefined, output, undefined, zero);
88
+ else if (p.value.isRequired() === false &&
89
+ p.value.nullable === false)
90
+ return typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createStrictInequality(typescript_1.default.factory.createIdentifier("undefined"), input), undefined, output, undefined, zero);
91
+ else
92
+ return typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createLogicalAnd(typescript_1.default.factory.createStrictInequality(typescript_1.default.factory.createIdentifier("undefined"), input), typescript_1.default.factory.createStrictInequality(typescript_1.default.factory.createNull(), input)), undefined, output, undefined, zero);
93
+ };
94
+ return obj.properties
95
+ .map(function (p) { return compute(p); })
96
+ .reduce(function (a, b) { return typescript_1.default.factory.createAdd(a, b); });
97
+ };
98
+ };
99
+ };
100
+ };
101
+ var write_map_function_body = function (project) {
102
+ return function (config) {
103
+ return function (importer) {
104
+ return function (input, entry, explore, tags) {
105
+ var key = typescript_1.default.factory.createIdentifier("key");
106
+ var value = typescript_1.default.factory.createIdentifier("value");
107
+ var tuple = typescript_1.default.factory.createVariableDeclarationList([
108
+ typescript_1.default.factory.createVariableDeclaration(typescript_1.default.factory.createArrayBindingPattern([
109
+ typescript_1.default.factory.createBindingElement(undefined, undefined, key),
110
+ typescript_1.default.factory.createBindingElement(undefined, undefined, value),
111
+ ])),
112
+ ], typescript_1.default.NodeFlags.Const);
113
+ var block = typescript_1.default.factory.createBlock([
114
+ decode_atomic(importer)(key, "string", []),
115
+ decode(project)(config)(importer)(value, entry.value, explore, tags),
116
+ ].map(function (expr) {
117
+ return typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier("size"), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.PlusEqualsToken), expr));
118
+ }), true);
119
+ return typescript_1.default.factory.createBlock([
120
+ StatementFactory_1.StatementFactory.mut("size", typescript_1.default.factory.createNumericLiteral(0)),
121
+ typescript_1.default.factory.createForOfStatement(undefined, tuple, input, block),
122
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("size")),
123
+ ]);
124
+ };
125
+ };
126
+ };
127
+ };
128
+ var decode = function (project) {
129
+ return function (config) {
130
+ return function (importer) {
131
+ return function (input, meta, explore, tags) {
132
+ var unions = ProtobufUtil_1.ProtobufUtil.atomics(meta).map(function (type) { return ({
133
+ type: type,
134
+ is: function () {
135
+ return typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral(type), typescript_1.default.factory.createTypeOfExpression(input));
136
+ },
137
+ value: function () { return decode_atomic(importer)(input, type, tags); },
138
+ }); });
139
+ if (meta.arrays.length) {
140
+ var value = meta.arrays.length === 1
141
+ ? function () {
142
+ return decode_array(project)(config)(importer)(input, meta.arrays[0], explore, tags);
143
+ }
144
+ : function () {
145
+ return explore_arrays(project)(config)(importer)(input, meta.arrays, explore, tags);
146
+ };
147
+ unions.push({
148
+ type: "array",
149
+ is: function () { return ExpressionFactory_1.ExpressionFactory.isArray(input); },
150
+ value: value,
151
+ });
152
+ }
153
+ if (meta.objects.length)
154
+ unions.push({
155
+ type: "object",
156
+ is: function () {
157
+ return ExpressionFactory_1.ExpressionFactory.isObject({
158
+ checkNull: true,
159
+ checkArray: false,
160
+ })(input);
161
+ },
162
+ value: function () {
163
+ return explore_objects(project)(config)(importer)(input, meta, explore);
164
+ },
165
+ });
166
+ if (meta.maps.length)
167
+ unions.push({
168
+ type: "map",
169
+ is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Map")(input); },
170
+ value: function () {
171
+ return decode_map(project)(config)(importer)(input, meta.maps[0], explore, tags);
172
+ },
173
+ });
174
+ if (meta.natives.length && meta.natives[0] === "Uint8Array")
175
+ unions.push({
176
+ type: "native",
177
+ is: function () { return (0, check_native_1.check_native)("Uint8Array")(input); },
178
+ value: function () { return decode_binary(input); },
179
+ });
180
+ return unions.length === 1
181
+ ? unions[0].value()
182
+ : typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, iterate(importer, input, unions, meta.getName())), undefined, undefined);
183
+ };
184
+ };
185
+ };
186
+ };
187
+ var iterate = function (importer, input, unions, expected) {
188
+ return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(unions.map(function (u) {
189
+ return typescript_1.default.factory.createIfStatement(u.is(), typescript_1.default.factory.createReturnStatement(u.value()));
190
+ })), false), [
191
+ create_throw_error(importer)(expected)(input),
192
+ ], false), true);
193
+ };
194
+ var decode_atomic = function (importer) {
195
+ return function (input, type, tags) {
196
+ return type === "string"
197
+ ? typescript_1.default.factory.createAdd(typescript_1.default.factory.createNumericLiteral(4), typescript_1.default.factory.createCallExpression(importer.use("strlen"), undefined, [input]))
198
+ : typescript_1.default.factory.createNumericLiteral(computeAtomicLength(type)(tags));
199
+ };
200
+ };
201
+ var decode_array = function (project) {
202
+ return function (config) {
203
+ return function (importer) {
204
+ return function (input, array, explore, tags) {
205
+ var header = function (expr) {
206
+ return typescript_1.default.factory.createAdd(typescript_1.default.factory.createNumericLiteral(4), expr);
207
+ };
208
+ if (array.value.isBinaryUnion() === false) {
209
+ var length_1 = computeFixedLength(array.value)(tags);
210
+ if (length_1 !== null)
211
+ return header(typescript_1.default.factory.createMultiply(IdentifierFactory_1.IdentifierFactory.access(input)("length"), typescript_1.default.factory.createNumericLiteral(length_1)));
212
+ }
213
+ return header(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(input)("map"), undefined, [
214
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("elem")], undefined, undefined, decode(project)(config)(importer)(typescript_1.default.factory.createIdentifier("elem"), array.value, explore, tags)),
215
+ ]), undefined, [
216
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [
217
+ IdentifierFactory_1.IdentifierFactory.parameter("a"),
218
+ IdentifierFactory_1.IdentifierFactory.parameter("b"),
219
+ ], undefined, undefined, typescript_1.default.factory.createAdd(typescript_1.default.factory.createIdentifier("a"), typescript_1.default.factory.createIdentifier("b"))),
220
+ typescript_1.default.factory.createNumericLiteral(0),
221
+ ]));
222
+ };
223
+ };
224
+ };
225
+ };
226
+ var decode_object = function (importer) {
227
+ return FeatureProgrammer_1.FeatureProgrammer.decode_object({
228
+ trace: false,
229
+ path: false,
230
+ prefix: PREFIX,
231
+ })(importer);
232
+ };
233
+ var decode_binary = function (input) {
234
+ return typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(input)("writeBytes"), undefined, [input]);
235
+ };
236
+ var decode_map = function (project) {
237
+ return function (config) {
238
+ return function (importer) {
239
+ return function (input, entry, explore, tags) {
240
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], TypeFactory_1.TypeFactory.keyword("any"), undefined, write_map_function_body(project)(config)(importer)(input, entry, explore, tags)), undefined, undefined);
241
+ };
242
+ };
243
+ };
244
+ };
245
+ var explore_objects = function (_project) {
246
+ return function (config) {
247
+ return function (importer) {
248
+ return function (input, meta, explore) {
249
+ return meta.objects.length === 1
250
+ ? decode_object(importer)(input, meta.objects[0], explore)
251
+ : typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.useLocal("".concat(config.prefix, "u").concat(meta.union_index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(config)(explore)(input));
252
+ };
253
+ };
254
+ };
255
+ };
256
+ var explore_arrays = function (project) {
257
+ return function (config) {
258
+ return function (importer) {
259
+ return function (input, elements, explore, tags) {
260
+ return explore_array_like_union_types(config)(importer)(UnionExplorer_1.UnionExplorer.array({
261
+ checker: IsProgrammer_1.IsProgrammer.decode(project)(importer),
262
+ decoder: decode_array(project)(config)(importer),
263
+ empty: typescript_1.default.factory.createStringLiteral("[]"),
264
+ success: typescript_1.default.factory.createTrue(),
265
+ failure: function (input, expected) {
266
+ return create_throw_error(importer)(expected)(input);
267
+ },
268
+ }))(input, elements, explore, tags);
269
+ };
270
+ };
271
+ };
272
+ };
273
+ var explore_array_like_union_types = function (config) {
274
+ return function (importer) {
275
+ return function (factory) {
276
+ return function (input, elements, explore, tags) {
277
+ var arrow = function (parameters) {
278
+ return function (explore) {
279
+ return function (input) {
280
+ return factory(parameters)(input, elements, explore, tags, []);
281
+ };
282
+ };
283
+ };
284
+ if (elements.every(function (e) { return e.recursive === false; }))
285
+ typescript_1.default.factory.createCallExpression(arrow([])(explore)(input), undefined, []);
286
+ explore = __assign(__assign({}, explore), { source: "function", from: "array" });
287
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.emplaceUnion(config.prefix, elements.map(function (e) { return e.name; }).join(" | "), function () {
288
+ return arrow(FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations(config)(TypeFactory_1.TypeFactory.keyword("any"))(typescript_1.default.factory.createIdentifier("input")))(__assign(__assign({}, explore), { postfix: "" }))(typescript_1.default.factory.createIdentifier("input"));
289
+ })), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(config)(explore)(input));
290
+ };
291
+ };
292
+ };
293
+ };
294
+ var PREFIX = "$ps";
295
+ var configure = function (method) {
296
+ return function (project) {
297
+ return function (importer) {
298
+ var config = {
299
+ types: {
300
+ input: function (type, name) {
301
+ return typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(project.checker)(type));
302
+ },
303
+ output: function (type, name) {
304
+ return typescript_1.default.factory.createTypeReferenceNode("typia.Primitive<".concat(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(project.checker)(type), ">"));
305
+ },
306
+ },
307
+ prefix: PREFIX,
308
+ trace: false,
309
+ path: false,
310
+ initializer: initializer(method),
311
+ decoder: function () { return decode(project)(config)(importer); },
312
+ objector: {
313
+ checker: function () { return IsProgrammer_1.IsProgrammer.decode(project)(importer); },
314
+ decoder: function () { return decode_object(importer); },
315
+ joiner: function (_input, _entries, obj) {
316
+ return write_object_function_body(project)(config)(importer)(obj);
317
+ },
318
+ unionizer: (0, decode_union_object_1.decode_union_object)(IsProgrammer_1.IsProgrammer.decode_object(importer))(decode_object(importer))(function (exp) { return exp; })(function (input, expected) {
319
+ return create_throw_error(importer)(expected)(input);
320
+ }),
321
+ failure: function (input, expected) {
322
+ return create_throw_error(importer)(expected)(input);
323
+ },
324
+ },
325
+ generator: {
326
+ arrays: function () { return function () { return []; }; },
327
+ tuples: function () { return function () { return []; }; },
328
+ },
329
+ };
330
+ return config;
331
+ };
332
+ };
333
+ };
334
+ var initializer = function (method) {
335
+ return function (_a) {
336
+ var checker = _a.checker;
337
+ return function (type) {
338
+ var collection = new MetadataCollection_1.MetadataCollection();
339
+ var meta = ProtobufFactory_1.ProtobufFactory.metadata(method)(checker)(collection)(type);
340
+ return [collection, meta];
341
+ };
342
+ };
343
+ };
344
+ var create_throw_error = function (importer) {
345
+ return function (expected) {
346
+ return function (value) {
347
+ return typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(importer.use("throws"), [], [
348
+ typescript_1.default.factory.createObjectLiteralExpression([
349
+ typescript_1.default.factory.createPropertyAssignment("expected", typescript_1.default.factory.createStringLiteral(expected)),
350
+ typescript_1.default.factory.createPropertyAssignment("value", value),
351
+ ], true),
352
+ ]));
353
+ };
354
+ };
355
+ };
356
+ })(ProtobufSizeProgrammer || (exports.ProtobufSizeProgrammer = ProtobufSizeProgrammer = {}));
357
+ var computeFixedLength = function (meta) {
358
+ return function (tags) {
359
+ if (meta.fixed_ !== undefined)
360
+ return meta.fixed_;
361
+ return (meta.fixed_ = (function () {
362
+ if (meta.isRequired() === false ||
363
+ meta.nullable ||
364
+ meta.natives.length ||
365
+ meta.maps.length ||
366
+ meta.isBinaryUnion())
367
+ return null;
368
+ else if (meta.arrays.length)
369
+ return computeFixedLength(meta.arrays[0].value)(tags);
370
+ var atomics = new Set(__spreadArray(__spreadArray(__spreadArray([], __read(meta.atomics), false), __read(meta.constants.map(function (c) { return c.type; })), false), __read(meta.templates.map(function () { return "string"; })), false));
371
+ if (atomics.size)
372
+ return computeAtomicLength(Array.from(atomics)[0])(tags);
373
+ else if (meta.objects.length) {
374
+ var obj = meta.objects[0];
375
+ if (obj.properties.some(function (p) { return !p.key.isSoleLiteral(); }))
376
+ return null;
377
+ else if (obj.properties.some(function (p) { return computeFixedLength(p.value)(p.tags) === null; }))
378
+ return null;
379
+ return obj.properties
380
+ .map(function (p) {
381
+ return (0, _strlen_1.$strlen)(p.key.getSoleLiteral()) +
382
+ computeFixedLength(p.value)(p.tags);
383
+ })
384
+ .reduce(function (a, b) { return a + b; }, 0);
385
+ }
386
+ return null;
387
+ })());
388
+ };
389
+ };
390
+ var computeAtomicLength = function (type) {
391
+ return function (tags) {
392
+ if (type === "string")
393
+ return null;
394
+ else if (type === "boolean")
395
+ return 1;
396
+ else if (type === "bigint")
397
+ return 8;
398
+ var shorter = tags.find(function (tag) { return tag.kind === "type"; });
399
+ return shorter &&
400
+ (shorter.value === "int" ||
401
+ shorter.value === "uint" ||
402
+ shorter.value === "int32" ||
403
+ shorter.value === "uint32" ||
404
+ shorter.value === "float")
405
+ ? 4
406
+ : 8;
407
+ };
408
+ };
409
+ //# sourceMappingURL=ProtobufSizeProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProtobufSizeProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufSizeProgrammer.ts"],"names":[],"mappings":"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"}
package/lib/protobuf.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createValidateEncode = exports.createAssertEncode = exports.createIsEncode = exports.createEncode = exports.createValidateDecode = exports.createAssertDecode = exports.createIsDecode = exports.createDecode = exports.validateEncode = exports.assertEncode = exports.isEncode = exports.encode = exports.validateDecode = exports.assertDecode = exports.isDecode = exports.decode = exports.message = void 0;
3
+ exports.createValidateEncode = exports.createAssertEncode = exports.createIsEncode = exports.createEncode = exports.createSize = exports.createValidateDecode = exports.createAssertDecode = exports.createIsDecode = exports.createDecode = exports.validateEncode = exports.assertEncode = exports.isEncode = exports.encode = exports.size = exports.validateDecode = exports.assertDecode = exports.isDecode = exports.decode = exports.message = void 0;
4
4
  function message() {
5
5
  halt("message");
6
6
  }
@@ -21,6 +21,10 @@ function validateDecode() {
21
21
  halt("validateDecode");
22
22
  }
23
23
  exports.validateDecode = validateDecode;
24
+ function size() {
25
+ halt("size");
26
+ }
27
+ exports.size = size;
24
28
  function encode() {
25
29
  halt("encode");
26
30
  }
@@ -53,6 +57,10 @@ function createValidateDecode() {
53
57
  halt("createValidateDecode");
54
58
  }
55
59
  exports.createValidateDecode = createValidateDecode;
60
+ function createSize() {
61
+ halt("createEncode");
62
+ }
63
+ exports.createSize = createSize;
56
64
  function createEncode() {
57
65
  halt("createEncode");
58
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"protobuf.js","sourceRoot":"","sources":["../src/protobuf.ts"],"names":[],"mappings":";;;AAmBA,SAAgB,OAAO;IACnB,IAAI,CAAC,SAAS,CAAC,CAAC;AACpB,CAAC;AAFD,0BAEC;AAYD,SAAgB,MAAM;IAClB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAFD,wBAEC;AASD,SAAgB,QAAQ;IACpB,IAAI,CAAC,UAAU,CAAC,CAAC;AACrB,CAAC;AAFD,4BAEC;AASD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AASD,SAAgB,cAAc;IAC1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAFD,wCAEC;AAUD,SAAgB,MAAM;IAClB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAFD,wBAEC;AAOD,SAAgB,QAAQ;IACpB,IAAI,CAAC,UAAU,CAAC,CAAC;AACrB,CAAC;AAFD,4BAEC;AAOD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AAOD,SAAgB,cAAc;IAC1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAFD,wCAEC;AAWD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AAQD,SAAgB,cAAc;IAG1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAJD,wCAIC;AAQD,SAAgB,kBAAkB;IAC9B,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAC/B,CAAC;AAFD,gDAEC;AAUD,SAAgB,oBAAoB;IAGhC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACjC,CAAC;AAJD,oDAIC;AAQD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AAQD,SAAgB,cAAc;IAC1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAFD,wCAEC;AAQD,SAAgB,kBAAkB;IAC9B,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAC/B,CAAC;AAFD,gDAEC;AAUD,SAAgB,oBAAoB;IAGhC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACjC,CAAC;AAJD,oDAIC;AAKD,SAAS,IAAI,CAAC,IAAY;IACtB,MAAM,IAAI,KAAK,CACX,kCAA2B,IAAI,8FAA2F,CAC7H,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"protobuf.js","sourceRoot":"","sources":["../src/protobuf.ts"],"names":[],"mappings":";;;AAmBA,SAAgB,OAAO;IACnB,IAAI,CAAC,SAAS,CAAC,CAAC;AACpB,CAAC;AAFD,0BAEC;AAYD,SAAgB,MAAM;IAClB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAFD,wBAEC;AASD,SAAgB,QAAQ;IACpB,IAAI,CAAC,UAAU,CAAC,CAAC;AACrB,CAAC;AAFD,4BAEC;AASD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AASD,SAAgB,cAAc;IAC1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAFD,wCAEC;AAaD,SAAgB,IAAI;IAChB,IAAI,CAAC,MAAM,CAAC,CAAC;AACjB,CAAC;AAFD,oBAEC;AAOD,SAAgB,MAAM;IAClB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAFD,wBAEC;AAOD,SAAgB,QAAQ;IACpB,IAAI,CAAC,UAAU,CAAC,CAAC;AACrB,CAAC;AAFD,4BAEC;AAOD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AAOD,SAAgB,cAAc;IAC1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAFD,wCAEC;AAWD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AAQD,SAAgB,cAAc;IAG1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAJD,wCAIC;AAQD,SAAgB,kBAAkB;IAC9B,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAC/B,CAAC;AAFD,gDAEC;AAUD,SAAgB,oBAAoB;IAGhC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACjC,CAAC;AAJD,oDAIC;AAeD,SAAgB,UAAU;IACtB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,gCAEC;AAQD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AAQD,SAAgB,cAAc;IAC1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAFD,wCAEC;AAQD,SAAgB,kBAAkB;IAC9B,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAC/B,CAAC;AAFD,gDAEC;AAUD,SAAgB,oBAAoB;IAGhC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACjC,CAAC;AAJD,oDAIC;AAKD,SAAS,IAAI,CAAC,IAAY;IACtB,MAAM,IAAI,KAAK,CACX,kCAA2B,IAAI,8FAA2F,CAC7H,CAAC;AACN,CAAC"}
@@ -273,6 +273,14 @@ var Metadata = (function () {
273
273
  this.objects.length +
274
274
  this.aliases.length);
275
275
  };
276
+ Metadata.prototype.binarySize = function () {
277
+ return (new Set(__spreadArray(__spreadArray(__spreadArray([], __read(this.atomics), false), __read(this.constants.map(function (c) { return c.type; })), false), __read((this.templates.length ? ["string"] : [])), false)).size +
278
+ this.arrays.length +
279
+ this.tuples.length +
280
+ this.natives.length +
281
+ this.objects.length +
282
+ this.maps.length);
283
+ };
276
284
  Metadata.prototype.bucket = function () {
277
285
  return ((this.any ? 1 : 0) +
278
286
  (this.resolved ? 1 : 0) +
@@ -300,6 +308,9 @@ var Metadata = (function () {
300
308
  var emended = !!this.atomics.length && !!this.constants.length ? size - 1 : size;
301
309
  return emended > 1;
302
310
  };
311
+ Metadata.prototype.isBinaryUnion = function () {
312
+ return this.binarySize() > 1;
313
+ };
303
314
  Metadata.prototype.getSoleLiteral = function () {
304
315
  if (this.size() === 1 &&
305
316
  this.constants.length === 1 &&
@@ -1 +1 @@
1
- {"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/schemas/metadata/Metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/schemas/metadata/Metadata.ts"],"names":[],"mappings":"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"}