typia 5.0.0-dev.20230814 → 5.0.0-dev.20230818

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 (72) hide show
  1. package/lib/factories/ExpressionFactory.d.ts +1 -0
  2. package/lib/factories/ExpressionFactory.js +33 -0
  3. package/lib/factories/ExpressionFactory.js.map +1 -1
  4. package/lib/factories/StatementFactory.d.ts +2 -0
  5. package/lib/factories/StatementFactory.js +11 -0
  6. package/lib/factories/StatementFactory.js.map +1 -1
  7. package/lib/functional/$ProtobufReader.d.ts +33 -0
  8. package/lib/functional/$ProtobufReader.js +155 -0
  9. package/lib/functional/$ProtobufReader.js.map +1 -0
  10. package/lib/functional/$ProtobufSizer.d.ts +36 -0
  11. package/lib/functional/$ProtobufSizer.js +105 -0
  12. package/lib/functional/$ProtobufSizer.js.map +1 -0
  13. package/lib/functional/$ProtobufWriter.d.ts +45 -0
  14. package/lib/functional/$ProtobufWriter.js +107 -0
  15. package/lib/functional/$ProtobufWriter.js.map +1 -0
  16. package/lib/functional/IProtobufWriter.d.ts +15 -0
  17. package/lib/functional/IProtobufWriter.js +3 -0
  18. package/lib/functional/IProtobufWriter.js.map +1 -0
  19. package/lib/functional/Namespace.js +13 -6
  20. package/lib/functional/Namespace.js.map +1 -1
  21. package/lib/programmers/FeatureProgrammer.js +2 -2
  22. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  23. package/lib/programmers/helpers/CloneJoiner.js +1 -7
  24. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  25. package/lib/programmers/helpers/ProtobufWire.d.ts +16 -12
  26. package/lib/programmers/helpers/RandomRanger.js +1 -1
  27. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  28. package/lib/programmers/json/JsonStringifyProgrammer.js +3 -0
  29. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  30. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +269 -127
  31. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  32. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +8 -2
  33. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  34. package/lib/protobuf.js +23 -9
  35. package/lib/protobuf.js.map +1 -1
  36. package/lib/schemas/metadata/MetadataObject.js +4 -0
  37. package/lib/schemas/metadata/MetadataObject.js.map +1 -1
  38. package/lib/transformers/CallExpressionTransformer.js +0 -4
  39. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  40. package/lib/transformers/features/json/JsonApplicationTransformer.js +6 -3
  41. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  42. package/package.json +1 -1
  43. package/src/factories/ExpressionFactory.ts +20 -0
  44. package/src/factories/StatementFactory.ts +32 -0
  45. package/src/functional/$ProtobufReader.ts +189 -0
  46. package/src/functional/$ProtobufSizer.ts +144 -0
  47. package/src/functional/$ProtobufWriter.ts +152 -0
  48. package/src/functional/IProtobufWriter.ts +18 -0
  49. package/src/functional/Namespace.ts +14 -7
  50. package/src/programmers/FeatureProgrammer.ts +2 -2
  51. package/src/programmers/helpers/CloneJoiner.ts +1 -25
  52. package/src/programmers/helpers/ProtobufWire.ts +18 -12
  53. package/src/programmers/helpers/RandomRanger.ts +1 -1
  54. package/src/programmers/json/JsonStringifyProgrammer.ts +8 -0
  55. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +544 -201
  56. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +4 -1
  57. package/src/protobuf.ts +23 -29
  58. package/src/schemas/metadata/MetadataObject.ts +10 -0
  59. package/src/transformers/CallExpressionTransformer.ts +0 -4
  60. package/src/transformers/features/json/JsonApplicationTransformer.ts +12 -3
  61. package/lib/programmers/protobuf/ProtobufSizeProgrammer.d.ts +0 -5
  62. package/lib/programmers/protobuf/ProtobufSizeProgrammer.js +0 -409
  63. package/lib/programmers/protobuf/ProtobufSizeProgrammer.js.map +0 -1
  64. package/lib/transformers/features/protobuf/CreateProtobufSizeTransformer.d.ts +0 -3
  65. package/lib/transformers/features/protobuf/CreateProtobufSizeTransformer.js +0 -10
  66. package/lib/transformers/features/protobuf/CreateProtobufSizeTransformer.js.map +0 -1
  67. package/lib/transformers/features/protobuf/ProtobufSizeTransformer.d.ts +0 -3
  68. package/lib/transformers/features/protobuf/ProtobufSizeTransformer.js +0 -10
  69. package/lib/transformers/features/protobuf/ProtobufSizeTransformer.js.map +0 -1
  70. package/src/programmers/protobuf/ProtobufSizeProgrammer.ts +0 -716
  71. package/src/transformers/features/protobuf/CreateProtobufSizeTransformer.ts +0 -9
  72. package/src/transformers/features/protobuf/ProtobufSizeTransformer.ts +0 -9
@@ -41,6 +41,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.ProtobufEncodeProgrammer = void 0;
43
43
  var typescript_1 = __importDefault(require("typescript"));
44
+ var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
44
45
  var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
45
46
  var MetadataCollection_1 = require("../../factories/MetadataCollection");
46
47
  var ProtobufFactory_1 = require("../../factories/ProtobufFactory");
@@ -59,14 +60,14 @@ var ProtobufEncodeProgrammer;
59
60
  var importer = new FunctionImporeter_1.FunctionImporter();
60
61
  var collection = new MetadataCollection_1.MetadataCollection();
61
62
  var meta = ProtobufFactory_1.ProtobufFactory.metadata(modulo.getText())(project.checker)(collection)(type);
62
- meta;
63
- write_object_function_body;
64
- write_map_function_body;
65
- explore_objects;
66
- explore_arrays;
63
+ var callEncoder = function (writer) { return function (factory) {
64
+ return StatementFactory_1.StatementFactory.constant(writer, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("encoder"), undefined, [factory]));
65
+ }; };
67
66
  var block = [
68
- StatementFactory_1.StatementFactory.constant("writer", typescript_1.default.factory.createNewExpression(importer.use("Writer"), undefined, undefined)),
69
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("finish"), undefined, undefined)),
67
+ StatementFactory_1.StatementFactory.constant("encoder", write_encoder(project)(importer)(collection)(meta)),
68
+ callEncoder("sizer")(typescript_1.default.factory.createNewExpression(importer.use("Sizer"), undefined, [])),
69
+ callEncoder("writer")(typescript_1.default.factory.createNewExpression(importer.use("Writer"), undefined, [typescript_1.default.factory.createIdentifier("sizer")])),
70
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("buffer"), undefined, undefined)),
70
71
  ];
71
72
  return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
72
73
  IdentifierFactory_1.IdentifierFactory.parameter("input", typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(project.checker)(type))),
@@ -74,129 +75,246 @@ var ProtobufEncodeProgrammer;
74
75
  };
75
76
  };
76
77
  };
77
- var write_object_function_body = function (project) {
78
- return function (config) {
79
- return function (importer) {
80
- return function (input, obj, explore, tags) {
81
- var top = obj.properties[0];
82
- if (top.key.isSoleLiteral() === false)
83
- return write_map_function_body(project)(config)(importer)(input, top, explore, tags);
84
- var index = 1;
85
- return typescript_1.default.factory.createBlock(obj.properties
86
- .map(function (property) {
87
- var statements = decode(project)(config)(importer)(index)(input, property.value, explore, property.tags).statements;
88
- index += property.value.binarySize();
89
- return statements;
90
- })
91
- .flat(), true);
78
+ var write_encoder = function (project) {
79
+ return function (importer) {
80
+ return function (collection) {
81
+ return function (meta) {
82
+ return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("writer")], TypeFactory_1.TypeFactory.keyword("any"), undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray(__spreadArray([], __read(collection
83
+ .objects()
84
+ .filter(function (obj) { return obj._Messagable(); })
85
+ .map(function (obj) {
86
+ return StatementFactory_1.StatementFactory.constant("".concat(PREFIX, "o").concat(obj.index), write_object_function(project)(importer)(typescript_1.default.factory.createIdentifier("input"), obj, {
87
+ source: "function",
88
+ from: "object",
89
+ tracable: false,
90
+ postfix: "",
91
+ }));
92
+ })), false), __read(decode(project)(importer)(null)(typescript_1.default.factory.createIdentifier("input"), meta, {
93
+ source: "top",
94
+ from: "top",
95
+ tracable: false,
96
+ postfix: "",
97
+ }, []).statements), false), [
98
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("writer")),
99
+ ], false), true));
92
100
  };
93
101
  };
94
102
  };
95
103
  };
96
- var write_map_function_body = function (project) {
97
- return function (config) {
98
- return function (importer) {
99
- return function (input, entry, explore, tags) {
100
- project;
101
- config;
102
- importer;
103
- input;
104
- entry;
105
- explore;
106
- tags;
107
- return typescript_1.default.factory.createBlock([], true);
108
- };
104
+ var write_object_function = function (project) {
105
+ return function (importer) {
106
+ return function (input, obj, explore) {
107
+ var index = 1;
108
+ var body = obj.properties
109
+ .map(function (p) {
110
+ var block = decode(project)(importer)(index)(IdentifierFactory_1.IdentifierFactory.access(input)(p.key.getSoleLiteral()), p.value, explore, p.tags);
111
+ index += p.value.binarySize();
112
+ return __spreadArray([
113
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createIdentifier("// property \"".concat(p.key.getSoleLiteral(), "\"")))
114
+ ], __read(block.statements), false);
115
+ })
116
+ .flat();
117
+ return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("input")], TypeFactory_1.TypeFactory.keyword("any"), undefined, typescript_1.default.factory.createBlock(body, true));
109
118
  };
110
119
  };
111
120
  };
112
121
  var decode = function (project) {
113
- return function (config) {
114
- return function (importer) {
115
- return function (index) {
116
- return function (input, meta, explore, tags) {
117
- var unions = ProtobufUtil_1.ProtobufUtil.atomics(meta).map(function (type) { return ({
118
- type: type,
119
- wire: function () { return null; },
122
+ return function (importer) {
123
+ return function (index) {
124
+ return function (input, meta, explore, tags) {
125
+ var wrapper = meta.isRequired() && meta.nullable === false
126
+ ? function (block) { return block; }
127
+ : meta.isRequired() === false && meta.nullable === false
128
+ ? function (block) {
129
+ return typescript_1.default.factory.createBlock([
130
+ typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createLogicalAnd(typescript_1.default.factory.createInequality(typescript_1.default.factory.createIdentifier("undefined"), input), typescript_1.default.factory.createInequality(typescript_1.default.factory.createNull(), input)), block),
131
+ ], true);
132
+ }
133
+ : meta.isRequired() === false
134
+ ? function (block) {
135
+ return typescript_1.default.factory.createBlock([
136
+ typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createInequality(typescript_1.default.factory.createIdentifier("undefined"), input), block),
137
+ ], true);
138
+ }
139
+ : function (block) {
140
+ return typescript_1.default.factory.createBlock([
141
+ typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createInequality(typescript_1.default.factory.createNull(), input), block),
142
+ ], true);
143
+ };
144
+ var unions = ProtobufUtil_1.ProtobufUtil.atomics(meta).map(function (type) { return ({
145
+ type: type,
146
+ wire: function () { return null; },
147
+ is: function () {
148
+ return typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral(type), typescript_1.default.factory.createTypeOfExpression(input));
149
+ },
150
+ value: function () { return decode_atomic(index)(input, type, tags); },
151
+ }); });
152
+ if (meta.natives.length)
153
+ unions.push({
154
+ type: "bytes",
155
+ is: function () {
156
+ return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Uint8Array")(input);
157
+ },
158
+ value: function () { return decode_bytes("bytes")(index)(input); },
159
+ });
160
+ if (meta.maps.length)
161
+ unions.push({
162
+ type: "map",
163
+ is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Map")(input); },
164
+ value: function () {
165
+ return decode_map(project)(importer)(index)(input, meta.maps[0], __assign(__assign({}, explore), { from: "array" }), tags);
166
+ },
167
+ });
168
+ if (meta.arrays.length)
169
+ unions.push({
170
+ type: "array",
171
+ is: function () { return ExpressionFactory_1.ExpressionFactory.isArray(input); },
172
+ value: function () {
173
+ return explore_arrays(project)(importer)(index)(input, meta.arrays, __assign(__assign({}, explore), { from: "array" }), tags);
174
+ },
175
+ });
176
+ if (meta.objects.length)
177
+ unions.push({
178
+ type: "object",
120
179
  is: function () {
121
- return typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral(type), typescript_1.default.factory.createTypeOfExpression(input));
180
+ return ExpressionFactory_1.ExpressionFactory.isObject({
181
+ checkNull: true,
182
+ checkArray: false,
183
+ })(input);
122
184
  },
123
- value: function () { return decode_atomic(input, type, tags); },
124
- }); });
125
- project;
126
- config;
127
- importer;
128
- index;
129
- explore;
130
- unions;
131
- return typescript_1.default.factory.createBlock([]);
185
+ value: function () {
186
+ return explore_objects(project)(index)(importer)(input, meta, __assign(__assign({}, explore), { from: "object" }), tags);
187
+ },
188
+ });
189
+ if (unions.length === 1)
190
+ return wrapper(unions[0].value(index));
191
+ else
192
+ return wrapper(iterate(importer)(index)(unions)(meta.getName())(input));
193
+ };
194
+ };
195
+ };
196
+ };
197
+ var iterate = function (importer) {
198
+ return function (index) {
199
+ return function (unions) {
200
+ return function (expected) {
201
+ return function (input) {
202
+ return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(unions.map(function (u) {
203
+ return typescript_1.default.factory.createIfStatement(u.is(), u.value(index));
204
+ })), false), [
205
+ create_throw_error(importer)(expected)(input),
206
+ ], false), true);
132
207
  };
133
208
  };
134
209
  };
135
210
  };
136
211
  };
212
+ var decode_map = function (project) {
213
+ return function (importer) {
214
+ return function (index) {
215
+ return function (input, map, explore, tags) {
216
+ var each = __spreadArray(__spreadArray(__spreadArray([
217
+ typescript_1.default.factory.createExpressionStatement(decode_tag(2)(index)),
218
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("fork"), undefined, undefined))
219
+ ], __read(decode(project)(importer)(1)(typescript_1.default.factory.createIdentifier("key"), map.key, explore, []).statements), false), __read(decode(project)(importer)(2)(typescript_1.default.factory.createIdentifier("value"), map.value, explore, tags).statements), false), [
220
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("ldelim"), undefined, undefined)),
221
+ ], false);
222
+ return typescript_1.default.factory.createBlock([
223
+ typescript_1.default.factory.createForOfStatement(undefined, StatementFactory_1.StatementFactory.entry("key")("value"), input, typescript_1.default.factory.createBlock(each)),
224
+ ], true);
225
+ };
226
+ };
227
+ };
228
+ };
137
229
  var decode_object = function (project) {
138
- return function (config) {
139
- return function (importer) {
140
- return function (input, object, explore) {
141
- project;
142
- config;
143
- importer;
144
- input;
145
- object;
146
- explore;
147
- return typescript_1.default.factory.createBlock([].map(function (exp) { return typescript_1.default.factory.createExpressionStatement(exp); }), true);
230
+ return function (importer) {
231
+ return function (index) {
232
+ return function (input, object, explore, tags) {
233
+ var top = object.properties[0];
234
+ if (top.key.isSoleLiteral() === false)
235
+ return decode_map(project)(importer)(index)(input, top, explore, tags);
236
+ return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray(__spreadArray([], __read((index !== null
237
+ ? [
238
+ decode_tag(2)(index),
239
+ typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("fork"), undefined, undefined),
240
+ ]
241
+ : [])), false), [
242
+ typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("".concat(PREFIX, "o").concat(object.index)), [], [input])
243
+ ], false), __read((index !== null
244
+ ? [
245
+ typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("ldelim"), undefined, undefined),
246
+ ]
247
+ : [])), false).map(function (expr) { return typescript_1.default.factory.createExpressionStatement(expr); }), true);
148
248
  };
149
249
  };
150
250
  };
151
251
  };
152
252
  var decode_array = function (project) {
153
- return function (config) {
154
- return function (importer) {
155
- return function (index) {
156
- return function (input, array, explore, tags) {
157
- return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read((index !== null
158
- ? [
159
- typescript_1.default.factory.createExpressionStatement(decode_tag(2)(index)),
160
- ]
161
- : [])), false), [
162
- typescript_1.default.factory.createForOfStatement(undefined, typescript_1.default.factory.createVariableDeclarationList([typescript_1.default.factory.createVariableDeclaration("elem")], undefined), input, decode(project)(config)(importer)(index)(typescript_1.default.factory.createIdentifier("elem"), array.value, explore, tags)),
163
- ], false), true);
253
+ return function (importer) {
254
+ return function (index) {
255
+ return function (input, array, explore, tags) {
256
+ var wire = get_standalone_wire(array.value, tags);
257
+ var forLoop = function (index) {
258
+ return typescript_1.default.factory.createForOfStatement(undefined, typescript_1.default.factory.createVariableDeclarationList([typescript_1.default.factory.createVariableDeclaration("elem")], typescript_1.default.NodeFlags.Const), input, decode(project)(importer)(index)(typescript_1.default.factory.createIdentifier("elem"), array.value, explore, tags));
259
+ };
260
+ var length = function (block) {
261
+ return typescript_1.default.factory.createBlock([
262
+ typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createStrictInequality(typescript_1.default.factory.createNumericLiteral(0), IdentifierFactory_1.IdentifierFactory.access(input)("length")), block),
263
+ ], true);
164
264
  };
265
+ if (wire === 2)
266
+ return length(typescript_1.default.factory.createBlock([forLoop(index)], true));
267
+ return length(typescript_1.default.factory.createBlock([
268
+ typescript_1.default.factory.createExpressionStatement(decode_tag(2)(index)),
269
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("fork"), undefined, undefined)),
270
+ forLoop(null),
271
+ typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("ldelim"), undefined, undefined)),
272
+ ], true));
165
273
  };
166
274
  };
167
275
  };
168
276
  };
169
- var decode_atomic = function (input, atomic, tags) {
170
- if (atomic === "string")
171
- return decode_bytes("string")(input);
172
- var out = function (method) {
173
- return typescript_1.default.factory.createBlock([
174
- typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())(method), undefined, [input]),
175
- ].map(function (exp) { return typescript_1.default.factory.createExpressionStatement(exp); }), true);
277
+ var decode_atomic = function (index) {
278
+ return function (input, atomic, tags) {
279
+ if (atomic === "string")
280
+ return decode_bytes("string")(index)(input);
281
+ var out = function (wire) {
282
+ return function (method) {
283
+ return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read((index !== null
284
+ ? [decode_tag(wire)(index)]
285
+ : [])), false), [
286
+ typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())(method), undefined, [input]),
287
+ ], false).map(function (exp) {
288
+ return typescript_1.default.factory.createExpressionStatement(exp);
289
+ }), true);
290
+ };
291
+ };
292
+ if (atomic === "boolean")
293
+ return out(0)("bool");
294
+ var type = tags.find(function (tag) { return tag.kind === "type"; });
295
+ if (atomic === "bigint")
296
+ return out(0)((type === null || type === void 0 ? void 0 : type.value) === "uint64" ? "uint64" : "int64");
297
+ else if (type === undefined || (type === null || type === void 0 ? void 0 : type.value) === "double")
298
+ return out(1)("double");
299
+ else if (type.value === "float")
300
+ return out(5)("float");
301
+ return out(0)(type.value === "uint32" || type.value === "uint"
302
+ ? "uint32"
303
+ : type.value === "int32" || type.value === "int"
304
+ ? "int32"
305
+ : type.value === "int64"
306
+ ? "int64"
307
+ : "uint64");
176
308
  };
177
- if (atomic === "boolean")
178
- return out("bool");
179
- var type = tags.find(function (tag) { return tag.kind === "type"; });
180
- if (atomic === "bigint")
181
- return out((type === null || type === void 0 ? void 0 : type.value) === "uint64" ? "uint64" : "int64");
182
- else if (type === undefined || (type === null || type === void 0 ? void 0 : type.value) === "double")
183
- return out("double");
184
- else if (type.value === "float")
185
- return out("float");
186
- return out(type.value === "uint32" || type.value === "uint"
187
- ? "uint32"
188
- : type.value === "int32" || type.value === "int"
189
- ? "int32"
190
- : type.value === "int64"
191
- ? "int64"
192
- : "uint64");
193
309
  };
194
310
  var decode_bytes = function (method) {
195
- return function (input) {
196
- return typescript_1.default.factory.createBlock([
197
- typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("uint32"), undefined, [IdentifierFactory_1.IdentifierFactory.access(input)("length")]),
198
- typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())(method), undefined, [input]),
199
- ].map(function (expr) { return typescript_1.default.factory.createExpressionStatement(expr); }), true);
311
+ return function (index) {
312
+ return function (input) {
313
+ return typescript_1.default.factory.createBlock([
314
+ decode_tag(2)(index),
315
+ typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())(method), undefined, [input]),
316
+ ].map(function (expr) { return typescript_1.default.factory.createExpressionStatement(expr); }), true);
317
+ };
200
318
  };
201
319
  };
202
320
  var decode_tag = function (wire) {
@@ -204,26 +322,48 @@ var ProtobufEncodeProgrammer;
204
322
  return typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(WRITER())("uint32"), undefined, [typescript_1.default.factory.createNumericLiteral((index << 3) | wire)]);
205
323
  };
206
324
  };
325
+ var get_standalone_wire = function (meta, tags) {
326
+ if (meta.arrays.length ||
327
+ meta.objects.length ||
328
+ meta.maps.length ||
329
+ meta.natives.length)
330
+ return 2;
331
+ var v = ProtobufUtil_1.ProtobufUtil.atomics(meta)[0];
332
+ if (v === "string")
333
+ return 2;
334
+ else if (v === "boolean" || v === "bigint")
335
+ return 0;
336
+ var type = tags.find(function (t) { return t.kind === "type"; });
337
+ if (type === undefined)
338
+ return 1;
339
+ else if (type.value === "float")
340
+ return 5;
341
+ return 0;
342
+ };
207
343
  var explore_objects = function (project) {
208
- return function (config) {
344
+ return function (index) {
209
345
  return function (importer) {
210
- return function (input, meta, explore) {
346
+ return function (input, meta, explore, tags) {
211
347
  return meta.objects.length === 1
212
- ? decode_object(project)(config)(importer)(input, meta.objects[0], explore)
213
- : 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));
348
+ ? decode_object(project)(importer)(index)(input, meta.objects[0], explore, tags)
349
+ : StatementFactory_1.StatementFactory.block(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.useLocal("".concat(PREFIX, "u").concat(meta.union_index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
350
+ trace: false,
351
+ path: false,
352
+ })(explore)(input)));
214
353
  };
215
354
  };
216
355
  };
217
356
  };
218
357
  var explore_arrays = function (project) {
219
- return function (config) {
220
- return function (importer) {
221
- return function (index) {
222
- return function (input, elements, explore, tags) {
223
- return explore_array_like_union_types(config)(importer)(UnionExplorer_1.UnionExplorer.array({
358
+ return function (importer) {
359
+ return function (index) {
360
+ return function (input, elements, explore, tags) {
361
+ return elements.length === 1
362
+ ? decode_array(project)(importer)(index)(input, elements[0], explore, tags)
363
+ : explore_array_like_union_types(importer)(UnionExplorer_1.UnionExplorer.array({
224
364
  checker: IsProgrammer_1.IsProgrammer.decode(project)(importer),
225
365
  decoder: function (input, target, explore, tags) {
226
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decode_array(project)(config)(importer)(index)(input, target, explore, tags)), undefined, undefined);
366
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decode_array(project)(importer)(index)(input, target, explore, tags)), undefined, undefined);
227
367
  },
228
368
  empty: typescript_1.default.factory.createStringLiteral("[]"),
229
369
  success: typescript_1.default.factory.createTrue(),
@@ -231,32 +371,34 @@ var ProtobufEncodeProgrammer;
231
371
  return create_throw_error(importer)(expected)(input);
232
372
  },
233
373
  }))(input, elements, explore, tags);
234
- };
235
374
  };
236
375
  };
237
376
  };
238
377
  };
239
- var explore_array_like_union_types = function (config) {
240
- return function (importer) {
241
- return function (factory) {
242
- return function (input, elements, explore, tags) {
243
- var arrow = function (parameters) {
244
- return function (explore) {
245
- return function (input) {
246
- return factory(parameters)(input, elements, explore, tags, []);
247
- };
378
+ var explore_array_like_union_types = function (importer) {
379
+ return function (factory) {
380
+ return function (input, elements, explore, tags) {
381
+ var arrow = function (parameters) {
382
+ return function (explore) {
383
+ return function (input) {
384
+ return factory(parameters)(input, elements, explore, tags, []);
248
385
  };
249
386
  };
250
- if (elements.every(function (e) { return e.recursive === false; }))
251
- typescript_1.default.factory.createCallExpression(arrow([])(explore)(input), undefined, []);
252
- explore = __assign(__assign({}, explore), { source: "function", from: "array" });
253
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.emplaceUnion(config.prefix, elements.map(function (e) { return e.name; }).join(" | "), function () {
254
- 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"));
255
- })), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(config)(explore)(input));
256
387
  };
388
+ if (elements.every(function (e) { return e.recursive === false; }))
389
+ return StatementFactory_1.StatementFactory.block(typescript_1.default.factory.createCallExpression(arrow([])(explore)(input), undefined, []));
390
+ explore = __assign(__assign({}, explore), { source: "function", from: "array" });
391
+ return StatementFactory_1.StatementFactory.block(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.emplaceUnion(PREFIX, elements.map(function (e) { return e.name; }).join(" | "), function () {
392
+ 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"));
393
+ })), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(CONFIG)(explore)(input)));
257
394
  };
258
395
  };
259
396
  };
397
+ var PREFIX = "$pe";
398
+ var CONFIG = {
399
+ path: false,
400
+ trace: false,
401
+ };
260
402
  var create_throw_error = function (importer) {
261
403
  return function (expected) {
262
404
  return function (value) {
@@ -1 +1 @@
1
- {"version":3,"file":"ProtobufEncodeProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufEncodeProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProtobufEncodeProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufEncodeProgrammer.ts"],"names":[],"mappings":"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"}
@@ -203,14 +203,20 @@ var ProtobufMessageProgrammer;
203
203
  };
204
204
  var decode_atomic = function (tags) {
205
205
  return function (literal) {
206
- var _a;
207
206
  if (literal === "boolean")
208
207
  return "bool";
209
208
  else if (literal === "bigint")
210
209
  return "int64";
211
210
  else if (literal === "number") {
212
211
  var type = tags.find(function (t) { return t.kind === "type"; });
213
- return (_a = type === null || type === void 0 ? void 0 : type.value) !== null && _a !== void 0 ? _a : "double";
212
+ if ((type === null || type === void 0 ? void 0 : type.value) === undefined)
213
+ return "double";
214
+ else if (type.value === "int")
215
+ return "int32";
216
+ else if (type.value === "uint")
217
+ return "uint32";
218
+ else
219
+ return type.value;
214
220
  }
215
221
  return literal;
216
222
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ProtobufMessageProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufMessageProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProtobufMessageProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufMessageProgrammer.ts"],"names":[],"mappings":"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"}