typia 5.2.6 → 5.3.0-dev.20231112
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.
- package/lib/factories/ExpressionFactory.js +14 -16
- package/lib/factories/ExpressionFactory.js.map +1 -1
- package/lib/factories/JsonMetadataFactory.d.ts +1 -1
- package/lib/factories/JsonMetadataFactory.js +2 -2
- package/lib/factories/JsonMetadataFactory.js.map +1 -1
- package/lib/factories/LiteralFactory.js +2 -0
- package/lib/factories/LiteralFactory.js.map +1 -1
- package/lib/factories/MetadataCollection.d.ts +2 -2
- package/lib/factories/MetadataFactory.d.ts +1 -1
- package/lib/factories/MetadataFactory.js +236 -170
- package/lib/factories/MetadataFactory.js.map +1 -1
- package/lib/factories/NumericRangeFactory.d.ts +2 -2
- package/lib/factories/NumericRangeFactory.js +41 -21
- package/lib/factories/NumericRangeFactory.js.map +1 -1
- package/lib/factories/ProtobufFactory.d.ts +1 -1
- package/lib/factories/ProtobufFactory.js +2 -2
- package/lib/factories/ProtobufFactory.js.map +1 -1
- package/lib/factories/internal/metadata/MetadataHelper.js +3 -2
- package/lib/factories/internal/metadata/MetadataHelper.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_constant.js +13 -8
- package/lib/factories/internal/metadata/iterate_metadata_constant.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_intersection.js +8 -5
- package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
- package/lib/functional/$from.d.ts +3 -0
- package/lib/functional/$from.js +9 -0
- package/lib/functional/$from.js.map +1 -0
- package/lib/functional/Namespace.js +7 -0
- package/lib/functional/Namespace.js.map +1 -1
- package/lib/module.d.ts +1 -0
- package/lib/module.js +2 -5
- package/lib/module.js.map +1 -1
- package/lib/programmers/CheckerProgrammer.js +11 -16
- package/lib/programmers/CheckerProgrammer.js.map +1 -1
- package/lib/programmers/RandomProgrammer.js +1 -1
- package/lib/programmers/RandomProgrammer.js.map +1 -1
- package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
- package/lib/programmers/http/HttpHeadersProgrammer.js +1 -1
- package/lib/programmers/http/HttpHeadersProgrammer.js.map +1 -1
- package/lib/programmers/http/HttpParameterProgrammer.js +1 -1
- package/lib/programmers/http/HttpParameterProgrammer.js.map +1 -1
- package/lib/programmers/http/HttpQueryProgrammer.js +1 -1
- package/lib/programmers/http/HttpQueryProgrammer.js.map +1 -1
- package/lib/programmers/internal/application_array.js +8 -0
- package/lib/programmers/internal/application_array.js.map +1 -1
- package/lib/programmers/internal/application_number.js +8 -1
- package/lib/programmers/internal/application_number.js.map +1 -1
- package/lib/programmers/internal/application_string.js +8 -1
- package/lib/programmers/internal/application_string.js.map +1 -1
- package/lib/programmers/internal/check_array_length.js +7 -4
- package/lib/programmers/internal/check_array_length.js.map +1 -1
- package/lib/programmers/internal/check_bigint.js +7 -4
- package/lib/programmers/internal/check_bigint.js.map +1 -1
- package/lib/programmers/internal/check_number.js +7 -4
- package/lib/programmers/internal/check_number.js.map +1 -1
- package/lib/programmers/internal/check_string.js +7 -4
- package/lib/programmers/internal/check_string.js.map +1 -1
- package/lib/programmers/internal/metadata_to_pattern.js +3 -1
- package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
- package/lib/programmers/json/JsonAssertParseProgrammer.js +1 -1
- package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
- package/lib/programmers/json/JsonIsParseProgrammer.js +1 -1
- package/lib/programmers/json/JsonIsParseProgrammer.js.map +1 -1
- package/lib/programmers/json/JsonStringifyProgrammer.js +3 -8
- package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
- package/lib/programmers/json/JsonValidateParseProgrammer.js +1 -1
- package/lib/programmers/json/JsonValidateParseProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscCloneProgrammer.js +19 -24
- package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscLiteralsProgrammer.js +1 -1
- package/lib/programmers/misc/MiscLiteralsProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscPruneProgrammer.js +11 -16
- package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
- package/lib/programmers/notations/NotationGeneralProgrammer.js +11 -16
- package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
- package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +1 -1
- package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
- package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +38 -42
- package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
- package/lib/programmers/protobuf/ProtobufMessageProgrammer.d.ts +1 -1
- package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +22 -25
- package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
- package/lib/reflect.d.ts +3 -0
- package/lib/reflect.js +13 -0
- package/lib/reflect.js.map +1 -0
- package/lib/schemas/json/IJsonSchema.d.ts +1 -0
- package/lib/schemas/metadata/IMetadataApplication.d.ts +2 -2
- package/lib/schemas/metadata/{IMetadataCollection.d.ts → IMetadataComponents.d.ts} +1 -1
- package/lib/schemas/metadata/{IMetadataCollection.js → IMetadataComponents.js} +1 -1
- package/lib/schemas/metadata/IMetadataComponents.js.map +1 -0
- package/lib/schemas/metadata/IMetadataConstant.d.ts +1 -1
- package/lib/schemas/metadata/IMetadataTypeTag.d.ts +2 -2
- package/lib/schemas/metadata/Metadata.d.ts +2 -2
- package/lib/schemas/metadata/Metadata.js +82 -173
- package/lib/schemas/metadata/Metadata.js.map +1 -1
- package/lib/schemas/metadata/MetadataAlias.js +1 -1
- package/lib/schemas/metadata/MetadataAlias.js.map +1 -1
- package/lib/schemas/metadata/MetadataApplication.d.ts +13 -0
- package/lib/schemas/metadata/MetadataApplication.js +30 -0
- package/lib/schemas/metadata/MetadataApplication.js.map +1 -0
- package/lib/schemas/metadata/MetadataArrayType.js +1 -1
- package/lib/schemas/metadata/MetadataArrayType.js.map +1 -1
- package/lib/schemas/metadata/MetadataAtomic.d.ts +3 -0
- package/lib/schemas/metadata/MetadataAtomic.js +42 -0
- package/lib/schemas/metadata/MetadataAtomic.js.map +1 -1
- package/lib/schemas/metadata/MetadataComponents.d.ts +16 -0
- package/lib/schemas/metadata/MetadataComponents.js +151 -0
- package/lib/schemas/metadata/MetadataComponents.js.map +1 -0
- package/lib/schemas/metadata/MetadataConstant.d.ts +9 -1
- package/lib/schemas/metadata/MetadataConstant.js +29 -0
- package/lib/schemas/metadata/MetadataConstant.js.map +1 -1
- package/lib/schemas/metadata/MetadataEscaped.js +4 -4
- package/lib/schemas/metadata/MetadataEscaped.js.map +1 -1
- package/lib/schemas/metadata/MetadataObject.js +2 -2
- package/lib/schemas/metadata/MetadataObject.js.map +1 -1
- package/lib/schemas/metadata/MetadataProperty.js +4 -4
- package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
- package/lib/schemas/metadata/MetadataTupleType.js +1 -1
- package/lib/schemas/metadata/MetadataTupleType.js.map +1 -1
- package/lib/transformers/CallExpressionTransformer.js +5 -2
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonApplicationTransformer.d.ts +1 -1
- package/lib/transformers/features/json/JsonApplicationTransformer.js +4 -5
- package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
- package/lib/transformers/features/reflect/ReflectMetadataTransformer.d.ts +5 -0
- package/lib/transformers/features/reflect/ReflectMetadataTransformer.js +58 -0
- package/lib/transformers/features/reflect/ReflectMetadataTransformer.js.map +1 -0
- package/package.json +2 -2
- package/src/Primitive.ts +135 -135
- package/src/executable/TypiaSetupWizard.ts +142 -142
- package/src/executable/setup/CommandExecutor.ts +8 -8
- package/src/factories/ExpressionFactory.ts +12 -13
- package/src/factories/JsonMetadataFactory.ts +53 -50
- package/src/factories/LiteralFactory.ts +2 -0
- package/src/factories/MetadataCollection.ts +282 -282
- package/src/factories/MetadataFactory.ts +55 -22
- package/src/factories/NumericRangeFactory.ts +56 -17
- package/src/factories/ProtobufFactory.ts +5 -2
- package/src/factories/internal/metadata/MetadataHelper.ts +7 -4
- package/src/factories/internal/metadata/emplace_metadata_object.ts +178 -178
- package/src/factories/internal/metadata/iterate_metadata_constant.ts +10 -8
- package/src/factories/internal/metadata/iterate_metadata_intersection.ts +9 -8
- package/src/functional/$from.ts +5 -0
- package/src/functional/$stoll.ts +8 -8
- package/src/functional/Namespace.ts +175 -168
- package/src/module.ts +1 -19
- package/src/programmers/AssertProgrammer.ts +322 -322
- package/src/programmers/CheckerProgrammer.ts +16 -17
- package/src/programmers/IsProgrammer.ts +258 -258
- package/src/programmers/RandomProgrammer.ts +4 -1
- package/src/programmers/ValidateProgrammer.ts +350 -350
- package/src/programmers/helpers/AtomicPredicator.ts +31 -31
- package/src/programmers/helpers/ProtobufUtil.ts +3 -2
- package/src/programmers/http/HttpHeadersProgrammer.ts +4 -1
- package/src/programmers/http/HttpParameterProgrammer.ts +4 -1
- package/src/programmers/http/HttpQueryProgrammer.ts +4 -1
- package/src/programmers/internal/application_array.ts +8 -0
- package/src/programmers/internal/application_number.ts +8 -1
- package/src/programmers/internal/application_string.ts +8 -1
- package/src/programmers/internal/check_array_length.ts +5 -2
- package/src/programmers/internal/check_bigint.ts +5 -2
- package/src/programmers/internal/check_dynamic_key.ts +178 -178
- package/src/programmers/internal/check_dynamic_properties.ts +202 -202
- package/src/programmers/internal/check_number.ts +5 -2
- package/src/programmers/internal/check_object.ts +62 -62
- package/src/programmers/internal/check_string.ts +5 -3
- package/src/programmers/internal/metadata_to_pattern.ts +3 -1
- package/src/programmers/json/JsonAssertParseProgrammer.ts +1 -0
- package/src/programmers/json/JsonIsParseProgrammer.ts +1 -0
- package/src/programmers/json/JsonStringifyProgrammer.ts +959 -960
- package/src/programmers/json/JsonValidateParseProgrammer.ts +1 -0
- package/src/programmers/misc/MiscCloneProgrammer.ts +787 -786
- package/src/programmers/misc/MiscLiteralsProgrammer.ts +4 -1
- package/src/programmers/misc/MiscPruneProgrammer.ts +549 -548
- package/src/programmers/notations/NotationGeneralProgrammer.ts +717 -716
- package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +1 -0
- package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +872 -882
- package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +21 -21
- package/src/reflect.ts +24 -0
- package/src/schemas/json/IJsonSchema.ts +1 -0
- package/src/schemas/metadata/IMetadataApplication.ts +2 -2
- package/src/schemas/metadata/{IMetadataCollection.ts → IMetadataComponents.ts} +1 -1
- package/src/schemas/metadata/IMetadataConstant.ts +1 -1
- package/src/schemas/metadata/IMetadataTypeTag.ts +9 -2
- package/src/schemas/metadata/Metadata.ts +18 -91
- package/src/schemas/metadata/MetadataAlias.ts +1 -1
- package/src/schemas/metadata/MetadataApplication.ts +44 -0
- package/src/schemas/metadata/MetadataArrayType.ts +1 -1
- package/src/schemas/metadata/MetadataAtomic.ts +44 -0
- package/src/schemas/metadata/MetadataComponents.ts +98 -0
- package/src/schemas/metadata/MetadataConstant.ts +44 -1
- package/src/schemas/metadata/MetadataEscaped.ts +4 -4
- package/src/schemas/metadata/MetadataObject.ts +2 -2
- package/src/schemas/metadata/MetadataProperty.ts +4 -7
- package/src/schemas/metadata/MetadataTupleType.ts +1 -1
- package/src/transform.ts +35 -35
- package/src/transformers/CallExpressionTransformer.ts +5 -2
- package/src/transformers/features/json/JsonApplicationTransformer.ts +7 -4
- package/src/transformers/features/{misc/MetadataTransformer.ts → reflect/ReflectMetadataTransformer.ts} +25 -8
- package/lib/schemas/metadata/IMetadataCollection.js.map +0 -1
- package/lib/transformers/features/misc/MetadataTransformer.d.ts +0 -5
- package/lib/transformers/features/misc/MetadataTransformer.js +0 -55
- package/lib/transformers/features/misc/MetadataTransformer.js.map +0 -1
|
@@ -37,17 +37,13 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.Metadata = void 0;
|
|
40
|
-
var Writable_1 = require("../../typings/Writable");
|
|
41
40
|
var ArrayUtil_1 = require("../../utils/ArrayUtil");
|
|
42
|
-
var MetadataAlias_1 = require("./MetadataAlias");
|
|
43
41
|
var MetadataArray_1 = require("./MetadataArray");
|
|
44
|
-
var MetadataArrayType_1 = require("./MetadataArrayType");
|
|
45
42
|
var MetadataAtomic_1 = require("./MetadataAtomic");
|
|
43
|
+
var MetadataConstant_1 = require("./MetadataConstant");
|
|
46
44
|
var MetadataEscaped_1 = require("./MetadataEscaped");
|
|
47
45
|
var MetadataObject_1 = require("./MetadataObject");
|
|
48
|
-
var MetadataProperty_1 = require("./MetadataProperty");
|
|
49
46
|
var MetadataTuple_1 = require("./MetadataTuple");
|
|
50
|
-
var MetadataTupleType_1 = require("./MetadataTupleType");
|
|
51
47
|
var Metadata = (function () {
|
|
52
48
|
function Metadata(props) {
|
|
53
49
|
this.parent_resolved_ = false;
|
|
@@ -74,7 +70,7 @@ var Metadata = (function () {
|
|
|
74
70
|
};
|
|
75
71
|
Metadata.initialize = function (parentResolved) {
|
|
76
72
|
if (parentResolved === void 0) { parentResolved = false; }
|
|
77
|
-
var meta =
|
|
73
|
+
var meta = Metadata.create({
|
|
78
74
|
any: false,
|
|
79
75
|
nullable: false,
|
|
80
76
|
required: true,
|
|
@@ -103,16 +99,8 @@ var Metadata = (function () {
|
|
|
103
99
|
optional: this.optional,
|
|
104
100
|
nullable: this.nullable,
|
|
105
101
|
functional: this.functional,
|
|
106
|
-
atomics: this.atomics.map(function (a) {
|
|
107
|
-
|
|
108
|
-
type: a.type,
|
|
109
|
-
tags: a.tags.map(function (r) { return r.slice(); }),
|
|
110
|
-
});
|
|
111
|
-
}),
|
|
112
|
-
constants: this.constants.map(function (c) { return ({
|
|
113
|
-
type: c.type,
|
|
114
|
-
values: c.values.slice(),
|
|
115
|
-
}); }),
|
|
102
|
+
atomics: this.atomics.map(function (a) { return a.toJSON(); }),
|
|
103
|
+
constants: this.constants.map(function (c) { return c.toJSON(); }),
|
|
116
104
|
templates: this.templates.map(function (tpl) {
|
|
117
105
|
return tpl.map(function (meta) { return meta.toJSON(); });
|
|
118
106
|
}),
|
|
@@ -136,104 +124,23 @@ var Metadata = (function () {
|
|
|
136
124
|
}); }),
|
|
137
125
|
};
|
|
138
126
|
};
|
|
139
|
-
Metadata.from = function (meta,
|
|
140
|
-
var e_1, _a, _b, e_2, _c, e_3, _d, e_4, _e;
|
|
127
|
+
Metadata.from = function (meta, dict) {
|
|
141
128
|
var _this = this;
|
|
142
|
-
|
|
143
|
-
objects: new Map(collection.objects.map(function (obj) { return [
|
|
144
|
-
obj.name,
|
|
145
|
-
MetadataObject_1.MetadataObject._From_without_properties(obj),
|
|
146
|
-
]; })),
|
|
147
|
-
aliases: new Map(collection.aliases.map(function (alias) { return [
|
|
148
|
-
alias.name,
|
|
149
|
-
MetadataAlias_1.MetadataAlias._From_without_value(alias),
|
|
150
|
-
]; })),
|
|
151
|
-
arrays: new Map(collection.arrays.map(function (arr) { return [
|
|
152
|
-
arr.name,
|
|
153
|
-
MetadataArrayType_1.MetadataArrayType._From_without_value(arr),
|
|
154
|
-
]; })),
|
|
155
|
-
tuples: new Map(collection.tuples.map(function (tpl) { return [
|
|
156
|
-
tpl.name,
|
|
157
|
-
MetadataTupleType_1.MetadataTupleType._From_without_elements(tpl),
|
|
158
|
-
]; })),
|
|
159
|
-
};
|
|
160
|
-
try {
|
|
161
|
-
for (var _f = __values(collection.objects), _g = _f.next(); !_g.done; _g = _f.next()) {
|
|
162
|
-
var obj = _g.value;
|
|
163
|
-
var initialized = dict.objects.get(obj.name);
|
|
164
|
-
(_b = initialized.properties).push.apply(_b, __spreadArray([], __read(obj.properties.map(function (prop) {
|
|
165
|
-
return MetadataProperty_1.MetadataProperty._From(prop, dict);
|
|
166
|
-
})), false));
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
170
|
-
finally {
|
|
171
|
-
try {
|
|
172
|
-
if (_g && !_g.done && (_a = _f.return)) _a.call(_f);
|
|
173
|
-
}
|
|
174
|
-
finally { if (e_1) throw e_1.error; }
|
|
175
|
-
}
|
|
176
|
-
try {
|
|
177
|
-
for (var _h = __values(collection.aliases), _j = _h.next(); !_j.done; _j = _h.next()) {
|
|
178
|
-
var alias = _j.value;
|
|
179
|
-
(0, Writable_1.Writable)(dict.aliases.get(alias.name)).value = this._From(alias.value, dict);
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
183
|
-
finally {
|
|
184
|
-
try {
|
|
185
|
-
if (_j && !_j.done && (_c = _h.return)) _c.call(_h);
|
|
186
|
-
}
|
|
187
|
-
finally { if (e_2) throw e_2.error; }
|
|
188
|
-
}
|
|
189
|
-
try {
|
|
190
|
-
for (var _k = __values(collection.arrays), _l = _k.next(); !_l.done; _l = _k.next()) {
|
|
191
|
-
var array = _l.value;
|
|
192
|
-
(0, Writable_1.Writable)(dict.arrays.get(array.name)).value = this._From(array.value, dict);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
196
|
-
finally {
|
|
197
|
-
try {
|
|
198
|
-
if (_l && !_l.done && (_d = _k.return)) _d.call(_k);
|
|
199
|
-
}
|
|
200
|
-
finally { if (e_3) throw e_3.error; }
|
|
201
|
-
}
|
|
202
|
-
try {
|
|
203
|
-
for (var _m = __values(collection.tuples), _o = _m.next(); !_o.done; _o = _m.next()) {
|
|
204
|
-
var tuple = _o.value;
|
|
205
|
-
(0, Writable_1.Writable)(dict.tuples.get(tuple.name)).elements =
|
|
206
|
-
tuple.elements.map(function (elem) { return _this._From(elem, dict); });
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
210
|
-
finally {
|
|
211
|
-
try {
|
|
212
|
-
if (_o && !_o.done && (_e = _m.return)) _e.call(_m);
|
|
213
|
-
}
|
|
214
|
-
finally { if (e_4) throw e_4.error; }
|
|
215
|
-
}
|
|
216
|
-
return this._From(meta, dict);
|
|
217
|
-
};
|
|
218
|
-
Metadata._From = function (meta, dict) {
|
|
219
|
-
var _this = this;
|
|
220
|
-
return this.create({
|
|
129
|
+
return Metadata.create({
|
|
221
130
|
any: meta.any,
|
|
222
131
|
required: meta.required,
|
|
223
132
|
optional: meta.optional,
|
|
224
133
|
nullable: meta.nullable,
|
|
225
134
|
functional: meta.functional,
|
|
226
|
-
constants: meta.constants.
|
|
227
|
-
atomics: meta.atomics.map(
|
|
228
|
-
return MetadataAtomic_1.MetadataAtomic.create({ type: a.type, tags: a.tags });
|
|
229
|
-
}),
|
|
135
|
+
constants: meta.constants.map(MetadataConstant_1.MetadataConstant.from),
|
|
136
|
+
atomics: meta.atomics.map(MetadataAtomic_1.MetadataAtomic.from),
|
|
230
137
|
templates: meta.templates.map(function (tpl) {
|
|
231
|
-
return tpl.map(function (meta) { return _this.
|
|
138
|
+
return tpl.map(function (meta) { return _this.from(meta, dict); });
|
|
232
139
|
}),
|
|
233
140
|
escaped: meta.escaped
|
|
234
|
-
? MetadataEscaped_1.MetadataEscaped.
|
|
141
|
+
? MetadataEscaped_1.MetadataEscaped.from(meta.escaped, dict)
|
|
235
142
|
: null,
|
|
236
|
-
rest: meta.rest ? this.
|
|
143
|
+
rest: meta.rest ? this.from(meta.rest, dict) : null,
|
|
237
144
|
arrays: meta.arrays.map(function (ref) {
|
|
238
145
|
var type = dict.arrays.get(ref.name);
|
|
239
146
|
if (type === undefined)
|
|
@@ -265,10 +172,10 @@ var Metadata = (function () {
|
|
|
265
172
|
return found;
|
|
266
173
|
}),
|
|
267
174
|
natives: meta.natives.slice(),
|
|
268
|
-
sets: meta.sets.map(function (meta) { return _this.
|
|
175
|
+
sets: meta.sets.map(function (meta) { return _this.from(meta, dict); }),
|
|
269
176
|
maps: meta.maps.map(function (entry) { return ({
|
|
270
|
-
key: _this.
|
|
271
|
-
value: _this.
|
|
177
|
+
key: _this.from(entry.key, dict),
|
|
178
|
+
value: _this.from(entry.value, dict),
|
|
272
179
|
}); }),
|
|
273
180
|
});
|
|
274
181
|
};
|
|
@@ -344,7 +251,7 @@ var Metadata = (function () {
|
|
|
344
251
|
exports.Metadata = Metadata;
|
|
345
252
|
(function (Metadata) {
|
|
346
253
|
Metadata.intersects = function (x, y) {
|
|
347
|
-
var
|
|
254
|
+
var e_1, _a, e_2, _b;
|
|
348
255
|
if (x.any || y.any)
|
|
349
256
|
return true;
|
|
350
257
|
if (x.isRequired() === false && false === y.isRequired())
|
|
@@ -376,12 +283,12 @@ exports.Metadata = Metadata;
|
|
|
376
283
|
return state_1.value;
|
|
377
284
|
}
|
|
378
285
|
}
|
|
379
|
-
catch (
|
|
286
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
380
287
|
finally {
|
|
381
288
|
try {
|
|
382
289
|
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
|
|
383
290
|
}
|
|
384
|
-
finally { if (
|
|
291
|
+
finally { if (e_1) throw e_1.error; }
|
|
385
292
|
}
|
|
386
293
|
var _loop_2 = function (constant) {
|
|
387
294
|
var opposite = y.constants.find(function (elem) { return elem.type === constant.type; });
|
|
@@ -399,17 +306,17 @@ exports.Metadata = Metadata;
|
|
|
399
306
|
return state_2.value;
|
|
400
307
|
}
|
|
401
308
|
}
|
|
402
|
-
catch (
|
|
309
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
403
310
|
finally {
|
|
404
311
|
try {
|
|
405
312
|
if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
|
|
406
313
|
}
|
|
407
|
-
finally { if (
|
|
314
|
+
finally { if (e_2) throw e_2.error; }
|
|
408
315
|
}
|
|
409
316
|
return false;
|
|
410
317
|
};
|
|
411
318
|
Metadata.covers = function (x, y, level) {
|
|
412
|
-
var
|
|
319
|
+
var e_3, _a, e_4, _b, e_5, _c, e_6, _d, e_7, _e, e_8, _f, e_9, _g;
|
|
413
320
|
if (level === void 0) { level = 0; }
|
|
414
321
|
if (x === y)
|
|
415
322
|
return false;
|
|
@@ -433,12 +340,12 @@ exports.Metadata = Metadata;
|
|
|
433
340
|
return state_3.value;
|
|
434
341
|
}
|
|
435
342
|
}
|
|
436
|
-
catch (
|
|
343
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
437
344
|
finally {
|
|
438
345
|
try {
|
|
439
346
|
if (_j && !_j.done && (_a = _h.return)) _a.call(_h);
|
|
440
347
|
}
|
|
441
|
-
finally { if (
|
|
348
|
+
finally { if (e_3) throw e_3.error; }
|
|
442
349
|
}
|
|
443
350
|
var _loop_4 = function (yt) {
|
|
444
351
|
if (yt.type.elements.length !== 0 &&
|
|
@@ -461,12 +368,12 @@ exports.Metadata = Metadata;
|
|
|
461
368
|
return state_4.value;
|
|
462
369
|
}
|
|
463
370
|
}
|
|
464
|
-
catch (
|
|
371
|
+
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
465
372
|
finally {
|
|
466
373
|
try {
|
|
467
374
|
if (_l && !_l.done && (_b = _k.return)) _b.call(_k);
|
|
468
375
|
}
|
|
469
|
-
finally { if (
|
|
376
|
+
finally { if (e_4) throw e_4.error; }
|
|
470
377
|
}
|
|
471
378
|
}
|
|
472
379
|
var _loop_5 = function (yo) {
|
|
@@ -481,12 +388,12 @@ exports.Metadata = Metadata;
|
|
|
481
388
|
return state_5.value;
|
|
482
389
|
}
|
|
483
390
|
}
|
|
484
|
-
catch (
|
|
391
|
+
catch (e_5_1) { e_5 = { error: e_5_1 }; }
|
|
485
392
|
finally {
|
|
486
393
|
try {
|
|
487
394
|
if (_o && !_o.done && (_c = _m.return)) _c.call(_m);
|
|
488
395
|
}
|
|
489
|
-
finally { if (
|
|
396
|
+
finally { if (e_5) throw e_5.error; }
|
|
490
397
|
}
|
|
491
398
|
var _loop_6 = function (yd) {
|
|
492
399
|
if (x.aliases.some(function (xd) { return xd.name === yd.name; }) === false)
|
|
@@ -500,12 +407,12 @@ exports.Metadata = Metadata;
|
|
|
500
407
|
return state_6.value;
|
|
501
408
|
}
|
|
502
409
|
}
|
|
503
|
-
catch (
|
|
410
|
+
catch (e_6_1) { e_6 = { error: e_6_1 }; }
|
|
504
411
|
finally {
|
|
505
412
|
try {
|
|
506
413
|
if (_q && !_q.done && (_d = _p.return)) _d.call(_p);
|
|
507
414
|
}
|
|
508
|
-
finally { if (
|
|
415
|
+
finally { if (e_6) throw e_6.error; }
|
|
509
416
|
}
|
|
510
417
|
var _loop_7 = function (yn) {
|
|
511
418
|
if (x.natives.some(function (xn) { return xn === yn; }) === false)
|
|
@@ -519,12 +426,12 @@ exports.Metadata = Metadata;
|
|
|
519
426
|
return state_7.value;
|
|
520
427
|
}
|
|
521
428
|
}
|
|
522
|
-
catch (
|
|
429
|
+
catch (e_7_1) { e_7 = { error: e_7_1 }; }
|
|
523
430
|
finally {
|
|
524
431
|
try {
|
|
525
432
|
if (_s && !_s.done && (_e = _r.return)) _e.call(_r);
|
|
526
433
|
}
|
|
527
|
-
finally { if (
|
|
434
|
+
finally { if (e_7) throw e_7.error; }
|
|
528
435
|
}
|
|
529
436
|
var _loop_8 = function (ys) {
|
|
530
437
|
if (x.sets.some(function (xs) { return Metadata.covers(xs, ys); }) === false)
|
|
@@ -538,12 +445,12 @@ exports.Metadata = Metadata;
|
|
|
538
445
|
return state_8.value;
|
|
539
446
|
}
|
|
540
447
|
}
|
|
541
|
-
catch (
|
|
448
|
+
catch (e_8_1) { e_8 = { error: e_8_1 }; }
|
|
542
449
|
finally {
|
|
543
450
|
try {
|
|
544
451
|
if (_u && !_u.done && (_f = _t.return)) _f.call(_t);
|
|
545
452
|
}
|
|
546
|
-
finally { if (
|
|
453
|
+
finally { if (e_8) throw e_8.error; }
|
|
547
454
|
}
|
|
548
455
|
if (y.atomics.some(function (ya) { return x.atomics.some(function (xa) { return xa.type === ya.type; }) === false; }))
|
|
549
456
|
return false;
|
|
@@ -564,19 +471,19 @@ exports.Metadata = Metadata;
|
|
|
564
471
|
return state_9.value;
|
|
565
472
|
}
|
|
566
473
|
}
|
|
567
|
-
catch (
|
|
474
|
+
catch (e_9_1) { e_9 = { error: e_9_1 }; }
|
|
568
475
|
finally {
|
|
569
476
|
try {
|
|
570
477
|
if (_w && !_w.done && (_g = _v.return)) _g.call(_v);
|
|
571
478
|
}
|
|
572
|
-
finally { if (
|
|
479
|
+
finally { if (e_9) throw e_9.error; }
|
|
573
480
|
}
|
|
574
481
|
if (x.functional === false && y.functional)
|
|
575
482
|
return false;
|
|
576
483
|
return true;
|
|
577
484
|
};
|
|
578
485
|
Metadata.merge = function (x, y) {
|
|
579
|
-
var
|
|
486
|
+
var e_10, _a, e_11, _b, e_12, _c;
|
|
580
487
|
var _d, _e;
|
|
581
488
|
var output = Metadata.create({
|
|
582
489
|
any: x.any || y.any,
|
|
@@ -617,23 +524,25 @@ exports.Metadata = Metadata;
|
|
|
617
524
|
maps: x.maps.slice(),
|
|
618
525
|
});
|
|
619
526
|
var _loop_10 = function (constant) {
|
|
620
|
-
var
|
|
621
|
-
var target = ArrayUtil_1.ArrayUtil.take(output.constants, function (elem) { return elem.type === constant.type; }, function () {
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
527
|
+
var e_13, _m;
|
|
528
|
+
var target = ArrayUtil_1.ArrayUtil.take(output.constants, function (elem) { return elem.type === constant.type; }, function () {
|
|
529
|
+
return MetadataConstant_1.MetadataConstant.create({
|
|
530
|
+
type: constant.type,
|
|
531
|
+
values: [],
|
|
532
|
+
});
|
|
533
|
+
});
|
|
625
534
|
try {
|
|
626
|
-
for (var _o = (
|
|
535
|
+
for (var _o = (e_13 = void 0, __values(constant.values)), _p = _o.next(); !_p.done; _p = _o.next()) {
|
|
627
536
|
var value = _p.value;
|
|
628
537
|
ArrayUtil_1.ArrayUtil.add(target.values, value);
|
|
629
538
|
}
|
|
630
539
|
}
|
|
631
|
-
catch (
|
|
540
|
+
catch (e_13_1) { e_13 = { error: e_13_1 }; }
|
|
632
541
|
finally {
|
|
633
542
|
try {
|
|
634
543
|
if (_p && !_p.done && (_m = _o.return)) _m.call(_o);
|
|
635
544
|
}
|
|
636
|
-
finally { if (
|
|
545
|
+
finally { if (e_13) throw e_13.error; }
|
|
637
546
|
}
|
|
638
547
|
};
|
|
639
548
|
try {
|
|
@@ -642,12 +551,12 @@ exports.Metadata = Metadata;
|
|
|
642
551
|
_loop_10(constant);
|
|
643
552
|
}
|
|
644
553
|
}
|
|
645
|
-
catch (
|
|
554
|
+
catch (e_10_1) { e_10 = { error: e_10_1 }; }
|
|
646
555
|
finally {
|
|
647
556
|
try {
|
|
648
557
|
if (_g && !_g.done && (_a = _f.return)) _a.call(_f);
|
|
649
558
|
}
|
|
650
|
-
finally { if (
|
|
559
|
+
finally { if (e_10) throw e_10.error; }
|
|
651
560
|
}
|
|
652
561
|
try {
|
|
653
562
|
for (var _h = __values(y.objects), _j = _h.next(); !_j.done; _j = _h.next()) {
|
|
@@ -655,12 +564,12 @@ exports.Metadata = Metadata;
|
|
|
655
564
|
ArrayUtil_1.ArrayUtil.set(output.objects, obj, function (elem) { return elem.name; });
|
|
656
565
|
}
|
|
657
566
|
}
|
|
658
|
-
catch (
|
|
567
|
+
catch (e_11_1) { e_11 = { error: e_11_1 }; }
|
|
659
568
|
finally {
|
|
660
569
|
try {
|
|
661
570
|
if (_j && !_j.done && (_b = _h.return)) _b.call(_h);
|
|
662
571
|
}
|
|
663
|
-
finally { if (
|
|
572
|
+
finally { if (e_11) throw e_11.error; }
|
|
664
573
|
}
|
|
665
574
|
try {
|
|
666
575
|
for (var _k = __values(y.aliases), _l = _k.next(); !_l.done; _l = _k.next()) {
|
|
@@ -668,18 +577,18 @@ exports.Metadata = Metadata;
|
|
|
668
577
|
ArrayUtil_1.ArrayUtil.set(output.aliases, alias, function (elem) { return elem.name; });
|
|
669
578
|
}
|
|
670
579
|
}
|
|
671
|
-
catch (
|
|
580
|
+
catch (e_12_1) { e_12 = { error: e_12_1 }; }
|
|
672
581
|
finally {
|
|
673
582
|
try {
|
|
674
583
|
if (_l && !_l.done && (_c = _k.return)) _c.call(_k);
|
|
675
584
|
}
|
|
676
|
-
finally { if (
|
|
585
|
+
finally { if (e_12) throw e_12.error; }
|
|
677
586
|
}
|
|
678
587
|
return output;
|
|
679
588
|
};
|
|
680
589
|
})(Metadata || (exports.Metadata = Metadata = {}));
|
|
681
590
|
var getName = function (metadata) {
|
|
682
|
-
var
|
|
591
|
+
var e_14, _a, e_15, _b, e_16, _c, e_17, _d, e_18, _e, e_19, _f, e_20, _g, e_21, _h, e_22, _j, e_23, _k, e_24, _l;
|
|
683
592
|
if (metadata.any === true)
|
|
684
593
|
return "any";
|
|
685
594
|
var elements = [];
|
|
@@ -693,39 +602,39 @@ var getName = function (metadata) {
|
|
|
693
602
|
elements.push(atom.getName());
|
|
694
603
|
}
|
|
695
604
|
}
|
|
696
|
-
catch (
|
|
605
|
+
catch (e_14_1) { e_14 = { error: e_14_1 }; }
|
|
697
606
|
finally {
|
|
698
607
|
try {
|
|
699
608
|
if (_o && !_o.done && (_a = _m.return)) _a.call(_m);
|
|
700
609
|
}
|
|
701
|
-
finally { if (
|
|
610
|
+
finally { if (e_14) throw e_14.error; }
|
|
702
611
|
}
|
|
703
612
|
try {
|
|
704
613
|
for (var _p = __values(metadata.constants), _q = _p.next(); !_q.done; _q = _p.next()) {
|
|
705
614
|
var constant = _q.value;
|
|
706
615
|
try {
|
|
707
|
-
for (var _r = (
|
|
616
|
+
for (var _r = (e_16 = void 0, __values(constant.values)), _s = _r.next(); !_s.done; _s = _r.next()) {
|
|
708
617
|
var value = _s.value;
|
|
709
618
|
elements.push(constant.type === "string"
|
|
710
619
|
? JSON.stringify(value)
|
|
711
620
|
: value.toString());
|
|
712
621
|
}
|
|
713
622
|
}
|
|
714
|
-
catch (
|
|
623
|
+
catch (e_16_1) { e_16 = { error: e_16_1 }; }
|
|
715
624
|
finally {
|
|
716
625
|
try {
|
|
717
626
|
if (_s && !_s.done && (_c = _r.return)) _c.call(_r);
|
|
718
627
|
}
|
|
719
|
-
finally { if (
|
|
628
|
+
finally { if (e_16) throw e_16.error; }
|
|
720
629
|
}
|
|
721
630
|
}
|
|
722
631
|
}
|
|
723
|
-
catch (
|
|
632
|
+
catch (e_15_1) { e_15 = { error: e_15_1 }; }
|
|
724
633
|
finally {
|
|
725
634
|
try {
|
|
726
635
|
if (_q && !_q.done && (_b = _p.return)) _b.call(_p);
|
|
727
636
|
}
|
|
728
|
-
finally { if (
|
|
637
|
+
finally { if (e_15) throw e_15.error; }
|
|
729
638
|
}
|
|
730
639
|
try {
|
|
731
640
|
for (var _t = __values(metadata.templates), _u = _t.next(); !_u.done; _u = _t.next()) {
|
|
@@ -743,12 +652,12 @@ var getName = function (metadata) {
|
|
|
743
652
|
"`");
|
|
744
653
|
}
|
|
745
654
|
}
|
|
746
|
-
catch (
|
|
655
|
+
catch (e_17_1) { e_17 = { error: e_17_1 }; }
|
|
747
656
|
finally {
|
|
748
657
|
try {
|
|
749
658
|
if (_u && !_u.done && (_d = _t.return)) _d.call(_t);
|
|
750
659
|
}
|
|
751
|
-
finally { if (
|
|
660
|
+
finally { if (e_17) throw e_17.error; }
|
|
752
661
|
}
|
|
753
662
|
try {
|
|
754
663
|
for (var _v = __values(metadata.natives), _w = _v.next(); !_w.done; _w = _v.next()) {
|
|
@@ -756,12 +665,12 @@ var getName = function (metadata) {
|
|
|
756
665
|
elements.push(native);
|
|
757
666
|
}
|
|
758
667
|
}
|
|
759
|
-
catch (
|
|
668
|
+
catch (e_18_1) { e_18 = { error: e_18_1 }; }
|
|
760
669
|
finally {
|
|
761
670
|
try {
|
|
762
671
|
if (_w && !_w.done && (_e = _v.return)) _e.call(_v);
|
|
763
672
|
}
|
|
764
|
-
finally { if (
|
|
673
|
+
finally { if (e_18) throw e_18.error; }
|
|
765
674
|
}
|
|
766
675
|
try {
|
|
767
676
|
for (var _x = __values(metadata.sets), _y = _x.next(); !_y.done; _y = _x.next()) {
|
|
@@ -769,12 +678,12 @@ var getName = function (metadata) {
|
|
|
769
678
|
elements.push("Set<".concat(set.getName(), ">"));
|
|
770
679
|
}
|
|
771
680
|
}
|
|
772
|
-
catch (
|
|
681
|
+
catch (e_19_1) { e_19 = { error: e_19_1 }; }
|
|
773
682
|
finally {
|
|
774
683
|
try {
|
|
775
684
|
if (_y && !_y.done && (_f = _x.return)) _f.call(_x);
|
|
776
685
|
}
|
|
777
|
-
finally { if (
|
|
686
|
+
finally { if (e_19) throw e_19.error; }
|
|
778
687
|
}
|
|
779
688
|
try {
|
|
780
689
|
for (var _z = __values(metadata.maps), _0 = _z.next(); !_0.done; _0 = _z.next()) {
|
|
@@ -782,12 +691,12 @@ var getName = function (metadata) {
|
|
|
782
691
|
elements.push("Map<".concat(map.key.getName(), ", ").concat(map.value.getName(), ">"));
|
|
783
692
|
}
|
|
784
693
|
}
|
|
785
|
-
catch (
|
|
694
|
+
catch (e_20_1) { e_20 = { error: e_20_1 }; }
|
|
786
695
|
finally {
|
|
787
696
|
try {
|
|
788
697
|
if (_0 && !_0.done && (_g = _z.return)) _g.call(_z);
|
|
789
698
|
}
|
|
790
|
-
finally { if (
|
|
699
|
+
finally { if (e_20) throw e_20.error; }
|
|
791
700
|
}
|
|
792
701
|
if (metadata.rest !== null)
|
|
793
702
|
elements.push("...".concat(metadata.rest.getName()));
|
|
@@ -797,12 +706,12 @@ var getName = function (metadata) {
|
|
|
797
706
|
elements.push(tuple.type.name);
|
|
798
707
|
}
|
|
799
708
|
}
|
|
800
|
-
catch (
|
|
709
|
+
catch (e_21_1) { e_21 = { error: e_21_1 }; }
|
|
801
710
|
finally {
|
|
802
711
|
try {
|
|
803
712
|
if (_2 && !_2.done && (_h = _1.return)) _h.call(_1);
|
|
804
713
|
}
|
|
805
|
-
finally { if (
|
|
714
|
+
finally { if (e_21) throw e_21.error; }
|
|
806
715
|
}
|
|
807
716
|
try {
|
|
808
717
|
for (var _3 = __values(metadata.arrays), _4 = _3.next(); !_4.done; _4 = _3.next()) {
|
|
@@ -810,12 +719,12 @@ var getName = function (metadata) {
|
|
|
810
719
|
elements.push(array.getName());
|
|
811
720
|
}
|
|
812
721
|
}
|
|
813
|
-
catch (
|
|
722
|
+
catch (e_22_1) { e_22 = { error: e_22_1 }; }
|
|
814
723
|
finally {
|
|
815
724
|
try {
|
|
816
725
|
if (_4 && !_4.done && (_j = _3.return)) _j.call(_3);
|
|
817
726
|
}
|
|
818
|
-
finally { if (
|
|
727
|
+
finally { if (e_22) throw e_22.error; }
|
|
819
728
|
}
|
|
820
729
|
try {
|
|
821
730
|
for (var _5 = __values(metadata.objects), _6 = _5.next(); !_6.done; _6 = _5.next()) {
|
|
@@ -823,12 +732,12 @@ var getName = function (metadata) {
|
|
|
823
732
|
elements.push(object.name);
|
|
824
733
|
}
|
|
825
734
|
}
|
|
826
|
-
catch (
|
|
735
|
+
catch (e_23_1) { e_23 = { error: e_23_1 }; }
|
|
827
736
|
finally {
|
|
828
737
|
try {
|
|
829
738
|
if (_6 && !_6.done && (_k = _5.return)) _k.call(_5);
|
|
830
739
|
}
|
|
831
|
-
finally { if (
|
|
740
|
+
finally { if (e_23) throw e_23.error; }
|
|
832
741
|
}
|
|
833
742
|
try {
|
|
834
743
|
for (var _7 = __values(metadata.aliases), _8 = _7.next(); !_8.done; _8 = _7.next()) {
|
|
@@ -836,12 +745,12 @@ var getName = function (metadata) {
|
|
|
836
745
|
elements.push(alias.name);
|
|
837
746
|
}
|
|
838
747
|
}
|
|
839
|
-
catch (
|
|
748
|
+
catch (e_24_1) { e_24 = { error: e_24_1 }; }
|
|
840
749
|
finally {
|
|
841
750
|
try {
|
|
842
751
|
if (_8 && !_8.done && (_l = _7.return)) _l.call(_7);
|
|
843
752
|
}
|
|
844
|
-
finally { if (
|
|
753
|
+
finally { if (e_24) throw e_24.error; }
|
|
845
754
|
}
|
|
846
755
|
if (metadata.escaped !== null)
|
|
847
756
|
elements.push(metadata.escaped.getName());
|
|
@@ -854,10 +763,10 @@ var getName = function (metadata) {
|
|
|
854
763
|
};
|
|
855
764
|
var mergeTaggedTypes = function (props) {
|
|
856
765
|
return function (opposite) {
|
|
857
|
-
var
|
|
766
|
+
var e_25, _a;
|
|
858
767
|
var output = __spreadArray([], __read(props.container), false);
|
|
859
768
|
var _loop_11 = function (elem) {
|
|
860
|
-
var
|
|
769
|
+
var e_26, _b;
|
|
861
770
|
var equal = props.container.find(function (x) { return props.equals(x, elem); });
|
|
862
771
|
if (equal === undefined) {
|
|
863
772
|
output.push(elem);
|
|
@@ -877,17 +786,17 @@ var mergeTaggedTypes = function (props) {
|
|
|
877
786
|
props.getter(equal).push(tags);
|
|
878
787
|
};
|
|
879
788
|
try {
|
|
880
|
-
for (var _c = (
|
|
789
|
+
for (var _c = (e_26 = void 0, __values(props.getter(elem))), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
881
790
|
var tags = _d.value;
|
|
882
791
|
_loop_12(tags);
|
|
883
792
|
}
|
|
884
793
|
}
|
|
885
|
-
catch (
|
|
794
|
+
catch (e_26_1) { e_26 = { error: e_26_1 }; }
|
|
886
795
|
finally {
|
|
887
796
|
try {
|
|
888
797
|
if (_d && !_d.done && (_b = _c.return)) _b.call(_c);
|
|
889
798
|
}
|
|
890
|
-
finally { if (
|
|
799
|
+
finally { if (e_26) throw e_26.error; }
|
|
891
800
|
}
|
|
892
801
|
};
|
|
893
802
|
try {
|
|
@@ -896,12 +805,12 @@ var mergeTaggedTypes = function (props) {
|
|
|
896
805
|
_loop_11(elem);
|
|
897
806
|
}
|
|
898
807
|
}
|
|
899
|
-
catch (
|
|
808
|
+
catch (e_25_1) { e_25 = { error: e_25_1 }; }
|
|
900
809
|
finally {
|
|
901
810
|
try {
|
|
902
811
|
if (opposite_1_1 && !opposite_1_1.done && (_a = opposite_1.return)) _a.call(opposite_1);
|
|
903
812
|
}
|
|
904
|
-
finally { if (
|
|
813
|
+
finally { if (e_25) throw e_25.error; }
|
|
905
814
|
}
|
|
906
815
|
return output;
|
|
907
816
|
};
|