typia 5.0.0-dev.20230827 → 5.0.0-dev.20230828
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/executable/TypiaGenerateWizard.js +1 -1
- package/lib/executable/TypiaGenerateWizard.js.map +1 -1
- package/lib/executable/TypiaSetupWizard.js +1 -1
- package/lib/executable/TypiaSetupWizard.js.map +1 -1
- package/lib/executable/setup/PackageManager.js +1 -1
- package/lib/executable/setup/PackageManager.js.map +1 -1
- package/lib/executable/setup/PluginConfigurator.js +2 -2
- package/lib/executable/setup/PluginConfigurator.js.map +1 -1
- package/lib/factories/ExpressionFactory.js +2 -2
- package/lib/factories/ExpressionFactory.js.map +1 -1
- package/lib/factories/JsonMetadataFactory.d.ts +7 -0
- package/lib/factories/JsonMetadataFactory.js +38 -0
- package/lib/factories/JsonMetadataFactory.js.map +1 -0
- package/lib/factories/LiteralFactory.js +1 -1
- package/lib/factories/LiteralFactory.js.map +1 -1
- package/lib/factories/MetadataCollection.js +0 -1
- package/lib/factories/MetadataCollection.js.map +1 -1
- package/lib/factories/MetadataCommentTagFactory.js +129 -118
- package/lib/factories/MetadataCommentTagFactory.js.map +1 -1
- package/lib/factories/MetadataFactory.d.ts +22 -2
- package/lib/factories/MetadataFactory.js +221 -17
- package/lib/factories/MetadataFactory.js.map +1 -1
- package/lib/factories/MetadataTypeTagFactory.d.ts +3 -2
- package/lib/factories/MetadataTypeTagFactory.js +246 -173
- package/lib/factories/MetadataTypeTagFactory.js.map +1 -1
- package/lib/factories/ProtobufFactory.js +73 -68
- package/lib/factories/ProtobufFactory.js.map +1 -1
- package/lib/factories/TypeFactory.d.ts +0 -1
- package/lib/factories/TypeFactory.js +0 -5
- package/lib/factories/TypeFactory.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_alias.d.ts +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_alias.js +20 -7
- package/lib/factories/internal/metadata/emplace_metadata_alias.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_array_type.d.ts +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_array_type.js +20 -7
- package/lib/factories/internal/metadata/emplace_metadata_array_type.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_object.d.ts +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_object.js +100 -84
- package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_tuple.d.ts +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_tuple.js +34 -21
- package/lib/factories/internal/metadata/emplace_metadata_tuple.js.map +1 -1
- package/lib/factories/internal/metadata/explore_metadata.d.ts +1 -1
- package/lib/factories/internal/metadata/explore_metadata.js +12 -12
- package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata.js +39 -19
- package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_alias.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_alias.js +12 -10
- package/lib/factories/internal/metadata/iterate_metadata_alias.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_array.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_array.js +11 -9
- package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_collection.d.ts +2 -1
- package/lib/factories/internal/metadata/iterate_metadata_collection.js +47 -45
- package/lib/factories/internal/metadata/iterate_metadata_collection.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_comment_tags.d.ts +2 -1
- package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js +16 -20
- package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_intersection.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_intersection.js +145 -135
- package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_map.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_map.js +28 -15
- package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_object.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_object.js +16 -14
- package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_resolve.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_resolve.js +28 -15
- package/lib/factories/internal/metadata/iterate_metadata_resolve.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_set.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_set.js +24 -11
- package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_template.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_template.js +28 -15
- package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_tuple.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_tuple.js +11 -9
- package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_union.d.ts +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_union.js +20 -7
- package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
- package/lib/programmers/CheckerProgrammer.js +13 -8
- package/lib/programmers/CheckerProgrammer.js.map +1 -1
- package/lib/programmers/FeatureProgrammer.d.ts +1 -1
- package/lib/programmers/FeatureProgrammer.js +1 -1
- package/lib/programmers/FeatureProgrammer.js.map +1 -1
- package/lib/programmers/IsProgrammer.js +1 -1
- package/lib/programmers/IsProgrammer.js.map +1 -1
- package/lib/programmers/RandomProgrammer.js +9 -4
- package/lib/programmers/RandomProgrammer.js.map +1 -1
- package/lib/programmers/TypiaProgrammer.js +58 -28
- package/lib/programmers/TypiaProgrammer.js.map +1 -1
- package/lib/programmers/internal/application_escaped.d.ts +4 -0
- package/lib/programmers/internal/{application_resolved.js → application_escaped.js} +4 -4
- package/lib/programmers/internal/application_escaped.js.map +1 -0
- package/lib/programmers/internal/application_schema.js +5 -5
- package/lib/programmers/internal/application_schema.js.map +1 -1
- package/lib/programmers/json/JsonApplicationProgrammer.js +5 -1
- package/lib/programmers/json/JsonApplicationProgrammer.js.map +1 -1
- package/lib/programmers/json/JsonAssertParseProgrammer.js +2 -0
- package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
- package/lib/programmers/json/JsonIsParseProgrammer.js +2 -0
- package/lib/programmers/json/JsonIsParseProgrammer.js.map +1 -1
- package/lib/programmers/json/JsonStringifyProgrammer.js +20 -62
- package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
- package/lib/programmers/json/JsonValidateParseProgrammer.js +2 -0
- package/lib/programmers/json/JsonValidateParseProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscCloneProgrammer.js +13 -8
- package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscLiteralsProgrammer.js +10 -5
- package/lib/programmers/misc/MiscLiteralsProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscPruneProgrammer.js +13 -8
- package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
- package/lib/schemas/metadata/Metadata.js +4 -4
- package/lib/schemas/metadata/Metadata.js.map +1 -1
- package/lib/transform.d.ts +2 -1
- package/lib/transform.js +11 -3
- package/lib/transform.js.map +1 -1
- package/lib/transformers/CallExpressionTransformer.d.ts +1 -1
- package/lib/transformers/CallExpressionTransformer.js +2 -1
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/FileTransformer.js +18 -8
- package/lib/transformers/FileTransformer.js.map +1 -1
- package/lib/transformers/IProject.d.ts +3 -0
- package/lib/transformers/NodeTransformer.d.ts +1 -1
- package/lib/transformers/TransformerError.d.ts +12 -0
- package/lib/transformers/TransformerError.js +66 -0
- package/lib/transformers/TransformerError.js.map +1 -0
- package/lib/transformers/features/AssertTransformer.d.ts +1 -0
- package/lib/transformers/features/CreateAssertTransformer.d.ts +1 -0
- package/lib/transformers/features/CreateIsTransformer.d.ts +1 -0
- package/lib/transformers/features/CreateRandomTransformer.js +9 -4
- package/lib/transformers/features/CreateRandomTransformer.js.map +1 -1
- package/lib/transformers/features/CreateValidateTransformer.d.ts +1 -0
- package/lib/transformers/features/IsTransformer.d.ts +1 -0
- package/lib/transformers/features/RandomTransformer.js +9 -4
- package/lib/transformers/features/RandomTransformer.js.map +1 -1
- package/lib/transformers/features/ValidateTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonApplicationTransformer.js +79 -19
- package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonAssertParseTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonAssertStringifyTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonCreateAssertParseTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonCreateIsParseTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonCreateStringifyTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonCreateValidateParseTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.d.ts +1 -0
- package/lib/transformers/features/json/JsonIsParseTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonIsStringifyTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonStringifyTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonValidateParseTransformer.d.ts +1 -0
- package/lib/transformers/features/json/JsonValidateStringifyTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MetadataTransformer.js +13 -5
- package/lib/transformers/features/misc/MetadataTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscAssertCloneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscAssertPruneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCloneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCreateCloneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCreatePruneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscIsCloneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscIsPruneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscLiteralsTransformer.js +9 -4
- package/lib/transformers/features/misc/MiscLiteralsTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscPruneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscValidateCloneTransformer.d.ts +1 -0
- package/lib/transformers/features/misc/MiscValidatePruneTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/CreateProtobufAssertDecodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/CreateProtobufAssertEncodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/CreateProtobufDecodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/CreateProtobufEncodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/CreateProtobufIsDecodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/CreateProtobufIsEncodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/CreateProtobufValidateDecodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/CreateProtobufValidateEncodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/ProtobufAssertDecodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/ProtobufAssertEncodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/ProtobufDecodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/ProtobufEncodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/ProtobufIsDecodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/ProtobufIsEncodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js +9 -2
- package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js.map +1 -1
- package/lib/transformers/features/protobuf/ProtobufValidateDecodeTransformer.d.ts +1 -0
- package/lib/transformers/features/protobuf/ProtobufValidateEncodeTransformer.d.ts +1 -0
- package/lib/transformers/internal/GenericTransformer.js +17 -4
- package/lib/transformers/internal/GenericTransformer.js.map +1 -1
- package/lib/typings/ValidationPipe.d.ts +7 -0
- package/lib/typings/ValidationPipe.js +3 -0
- package/lib/typings/ValidationPipe.js.map +1 -0
- package/package.json +3 -1
- package/src/executable/TypiaGenerateWizard.ts +1 -1
- package/src/executable/TypiaSetupWizard.ts +1 -1
- package/src/executable/setup/PackageManager.ts +1 -1
- package/src/executable/setup/PluginConfigurator.ts +2 -2
- package/src/factories/ExpressionFactory.ts +2 -2
- package/src/factories/JsonMetadataFactory.ts +43 -0
- package/src/factories/LiteralFactory.ts +2 -1
- package/src/factories/MetadataCollection.ts +0 -5
- package/src/factories/MetadataCommentTagFactory.ts +130 -84
- package/src/factories/MetadataFactory.ts +169 -7
- package/src/factories/MetadataTypeTagFactory.ts +191 -141
- package/src/factories/ProtobufFactory.ts +86 -93
- package/src/factories/TypeFactory.ts +0 -5
- package/src/factories/internal/metadata/emplace_metadata_alias.ts +12 -5
- package/src/factories/internal/metadata/emplace_metadata_array_type.ts +12 -5
- package/src/factories/internal/metadata/emplace_metadata_object.ts +20 -5
- package/src/factories/internal/metadata/emplace_metadata_tuple.ts +12 -2
- package/src/factories/internal/metadata/explore_metadata.ts +5 -11
- package/src/factories/internal/metadata/iterate_metadata.ts +44 -24
- package/src/factories/internal/metadata/iterate_metadata_alias.ts +7 -2
- package/src/factories/internal/metadata/iterate_metadata_array.ts +7 -2
- package/src/factories/internal/metadata/iterate_metadata_collection.ts +30 -29
- package/src/factories/internal/metadata/iterate_metadata_comment_tags.ts +21 -22
- package/src/factories/internal/metadata/iterate_metadata_intersection.ts +33 -17
- package/src/factories/internal/metadata/iterate_metadata_map.ts +20 -4
- package/src/factories/internal/metadata/iterate_metadata_object.ts +2 -1
- package/src/factories/internal/metadata/iterate_metadata_resolve.ts +15 -12
- package/src/factories/internal/metadata/iterate_metadata_set.ts +11 -2
- package/src/factories/internal/metadata/iterate_metadata_template.ts +12 -3
- package/src/factories/internal/metadata/iterate_metadata_tuple.ts +7 -2
- package/src/factories/internal/metadata/iterate_metadata_union.ts +10 -7
- package/src/programmers/CheckerProgrammer.ts +8 -2
- package/src/programmers/FeatureProgrammer.ts +4 -1
- package/src/programmers/IsProgrammer.ts +1 -1
- package/src/programmers/RandomProgrammer.ts +18 -17
- package/src/programmers/TypiaProgrammer.ts +27 -2
- package/src/programmers/internal/{application_resolved.ts → application_escaped.ts} +1 -1
- package/src/programmers/internal/application_schema.ts +5 -5
- package/src/programmers/json/JsonApplicationProgrammer.ts +6 -3
- package/src/programmers/json/JsonAssertParseProgrammer.ts +7 -2
- package/src/programmers/json/JsonIsParseProgrammer.ts +7 -2
- package/src/programmers/json/JsonStringifyProgrammer.ts +7 -37
- package/src/programmers/json/JsonValidateParseProgrammer.ts +7 -2
- package/src/programmers/json/JsonValidateStringifyProgrammer.ts +1 -1
- package/src/programmers/misc/MiscCloneProgrammer.ts +14 -11
- package/src/programmers/misc/MiscLiteralsProgrammer.ts +11 -6
- package/src/programmers/misc/MiscPruneProgrammer.ts +8 -2
- package/src/schemas/metadata/Metadata.ts +4 -4
- package/src/transform.ts +13 -5
- package/src/transformers/CallExpressionTransformer.ts +6 -3
- package/src/transformers/FileTransformer.ts +25 -13
- package/src/transformers/IProject.ts +3 -0
- package/src/transformers/NodeTransformer.ts +1 -1
- package/src/transformers/TransformerError.ts +55 -0
- package/src/transformers/features/CreateRandomTransformer.ts +11 -7
- package/src/transformers/features/RandomTransformer.ts +11 -7
- package/src/transformers/features/json/JsonApplicationTransformer.ts +39 -35
- package/src/transformers/features/misc/MetadataTransformer.ts +18 -10
- package/src/transformers/features/misc/MiscLiteralsTransformer.ts +11 -7
- package/src/transformers/features/protobuf/ProtobufMessageTransformer.ts +9 -7
- package/src/transformers/internal/GenericTransformer.ts +17 -10
- package/src/typings/ValidationPipe.ts +9 -0
- package/lib/programmers/internal/application_resolved.d.ts +0 -4
- package/lib/programmers/internal/application_resolved.js.map +0 -1
|
@@ -2,21 +2,26 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MiscLiteralsTransformer = void 0;
|
|
4
4
|
var MiscLiteralsProgrammer_1 = require("../../../programmers/misc/MiscLiteralsProgrammer");
|
|
5
|
+
var TransformerError_1 = require("../../TransformerError");
|
|
5
6
|
var MiscLiteralsTransformer;
|
|
6
7
|
(function (MiscLiteralsTransformer) {
|
|
7
8
|
MiscLiteralsTransformer.transform = function (project) {
|
|
8
9
|
return function (expression) {
|
|
9
10
|
var _a;
|
|
10
11
|
if (!((_a = expression.typeArguments) === null || _a === void 0 ? void 0 : _a[0]))
|
|
11
|
-
throw new
|
|
12
|
+
throw new TransformerError_1.TransformerError({
|
|
13
|
+
code: "typia.misc.literals",
|
|
14
|
+
message: "generic argument is not specified.",
|
|
15
|
+
});
|
|
12
16
|
var node = expression.typeArguments[0];
|
|
13
17
|
var type = project.checker.getTypeFromTypeNode(node);
|
|
14
18
|
if (type.isTypeParameter())
|
|
15
|
-
throw new
|
|
19
|
+
throw new TransformerError_1.TransformerError({
|
|
20
|
+
code: "typia.misc.literals",
|
|
21
|
+
message: "non-specified generic argument.",
|
|
22
|
+
});
|
|
16
23
|
return MiscLiteralsProgrammer_1.MiscLiteralsProgrammer.write(project)(type);
|
|
17
24
|
};
|
|
18
25
|
};
|
|
19
26
|
})(MiscLiteralsTransformer || (exports.MiscLiteralsTransformer = MiscLiteralsTransformer = {}));
|
|
20
|
-
var NOT_SPECIFIED = "Error on typia.literals(): generic argument is not specified.";
|
|
21
|
-
var NO_GENERIC_ARGUMENT = "Error on typia.literals(): non-specified generic argument.";
|
|
22
27
|
//# sourceMappingURL=MiscLiteralsTransformer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MiscLiteralsTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/misc/MiscLiteralsTransformer.ts"],"names":[],"mappings":";;;AAEA,2FAA0F;
|
|
1
|
+
{"version":3,"file":"MiscLiteralsTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/misc/MiscLiteralsTransformer.ts"],"names":[],"mappings":";;;AAEA,2FAA0F;AAG1F,2DAA0D;AAE1D,IAAiB,uBAAuB,CAwBvC;AAxBD,WAAiB,uBAAuB;IACvB,iCAAS,GAClB,UAAC,OAAiB;QAClB,OAAA,UAAC,UAA6B;;YAE1B,IAAI,CAAC,CAAA,MAAA,UAAU,CAAC,aAAa,0CAAG,CAAC,CAAC,CAAA;gBAC9B,MAAM,IAAI,mCAAgB,CAAC;oBACvB,IAAI,EAAE,qBAAqB;oBAC3B,OAAO,EAAE,oCAAoC;iBAChD,CAAC,CAAC;YAGP,IAAM,IAAI,GAAgB,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACtD,IAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAEhE,IAAI,IAAI,CAAC,eAAe,EAAE;gBACtB,MAAM,IAAI,mCAAgB,CAAC;oBACvB,IAAI,EAAE,qBAAqB;oBAC3B,OAAO,EAAE,iCAAiC;iBAC7C,CAAC,CAAC;YAGP,OAAO,+CAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC;IApBD,CAoBC,CAAC;AACV,CAAC,EAxBgB,uBAAuB,uCAAvB,uBAAuB,QAwBvC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace MiscPruneTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace MiscValidateCloneTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace MiscValidatePruneTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace CreateProtobufAssertDecodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").ArrowFunction;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace CreateProtobufAssertEncodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").ArrowFunction;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace CreateProtobufDecodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").ArrowFunction;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace CreateProtobufEncodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").ArrowFunction;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace CreateProtobufIsDecodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").ArrowFunction;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace CreateProtobufIsEncodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").ArrowFunction;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace CreateProtobufValidateDecodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").ArrowFunction;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace CreateProtobufValidateEncodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").ArrowFunction;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace ProtobufAssertDecodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace ProtobufAssertEncodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace ProtobufDecodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace ProtobufEncodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace ProtobufIsDecodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace ProtobufIsEncodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -2,16 +2,23 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ProtobufMessageTransformer = void 0;
|
|
4
4
|
var ProtobufMessageProgrammer_1 = require("../../../programmers/protobuf/ProtobufMessageProgrammer");
|
|
5
|
+
var TransformerError_1 = require("../../TransformerError");
|
|
5
6
|
var ProtobufMessageTransformer;
|
|
6
7
|
(function (ProtobufMessageTransformer) {
|
|
7
8
|
ProtobufMessageTransformer.transform = function (project) {
|
|
8
9
|
return function (_modulo) {
|
|
9
10
|
return function (expression) {
|
|
10
11
|
if (!expression.typeArguments || !expression.typeArguments[0])
|
|
11
|
-
throw new
|
|
12
|
+
throw new TransformerError_1.TransformerError({
|
|
13
|
+
code: "typia.protobuf.message",
|
|
14
|
+
message: "generic argument is not specified.",
|
|
15
|
+
});
|
|
12
16
|
var type = project.checker.getTypeFromTypeNode(expression.typeArguments[0]);
|
|
13
17
|
if (type.isTypeParameter())
|
|
14
|
-
throw new
|
|
18
|
+
throw new TransformerError_1.TransformerError({
|
|
19
|
+
code: "tyipa.protobuf.message",
|
|
20
|
+
message: "non-specified generic argument.",
|
|
21
|
+
});
|
|
15
22
|
return ProtobufMessageProgrammer_1.ProtobufMessageProgrammer.write(project)(type);
|
|
16
23
|
};
|
|
17
24
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProtobufMessageTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/protobuf/ProtobufMessageTransformer.ts"],"names":[],"mappings":";;;AAEA,qGAAoG;
|
|
1
|
+
{"version":3,"file":"ProtobufMessageTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/protobuf/ProtobufMessageTransformer.ts"],"names":[],"mappings":";;;AAEA,qGAAoG;AAGpG,2DAA0D;AAE1D,IAAiB,0BAA0B,CAyB1C;AAzBD,WAAiB,0BAA0B;IAC1B,oCAAS,GAClB,UAAC,OAAiB;QAClB,OAAA,UAAC,OAAkC;YACnC,OAAA,UAAC,UAA6B;gBAE1B,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;oBACzD,MAAM,IAAI,mCAAgB,CAAC;wBACvB,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EAAE,oCAAoC;qBAChD,CAAC,CAAC;gBAGP,IAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,mBAAmB,CACrD,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAC9B,CAAC;gBACF,IAAI,IAAI,CAAC,eAAe,EAAE;oBACtB,MAAM,IAAI,mCAAgB,CAAC;wBACvB,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EAAE,iCAAiC;qBAC7C,CAAC,CAAC;gBAGP,OAAO,qDAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1D,CAAC;QApBD,CAoBC;IArBD,CAqBC,CAAC;AACV,CAAC,EAzBgB,0BAA0B,0CAA1B,0BAA0B,QAyB1C"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace ProtobufValidateDecodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
1
2
|
export declare namespace ProtobufValidateEncodeTransformer {
|
|
2
3
|
const transform: (project: import("../../IProject").IProject) => (modulo: import("typescript").LeftHandSideExpression) => (expression: import("typescript").CallExpression) => import("typescript").CallExpression;
|
|
3
4
|
}
|
|
@@ -21,6 +21,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.GenericTransformer = void 0;
|
|
23
23
|
var typescript_1 = __importDefault(require("typescript"));
|
|
24
|
+
var TransformerError_1 = require("../TransformerError");
|
|
24
25
|
var GenericTransformer;
|
|
25
26
|
(function (GenericTransformer) {
|
|
26
27
|
GenericTransformer.scalar = function (method) {
|
|
@@ -29,7 +30,10 @@ var GenericTransformer;
|
|
|
29
30
|
return function (modulo) {
|
|
30
31
|
return function (expression) {
|
|
31
32
|
if (expression.arguments.length !== 1)
|
|
32
|
-
throw new
|
|
33
|
+
throw new TransformerError_1.TransformerError({
|
|
34
|
+
code: "typia.".concat(method),
|
|
35
|
+
message: "no input value.",
|
|
36
|
+
});
|
|
33
37
|
var _a = __read(expression.typeArguments && expression.typeArguments[0]
|
|
34
38
|
? [
|
|
35
39
|
project.checker.getTypeFromTypeNode(expression.typeArguments[0]),
|
|
@@ -42,7 +46,10 @@ var GenericTransformer;
|
|
|
42
46
|
false,
|
|
43
47
|
], 3), type = _a[0], node = _a[1], generic = _a[2];
|
|
44
48
|
if (type.isTypeParameter())
|
|
45
|
-
throw new
|
|
49
|
+
throw new TransformerError_1.TransformerError({
|
|
50
|
+
code: "typia.".concat(method),
|
|
51
|
+
message: "non-specified generic argument.",
|
|
52
|
+
});
|
|
46
53
|
return typescript_1.default.factory.createCallExpression(programmer(project)(modulo)(type, generic
|
|
47
54
|
? node.getFullText().trim()
|
|
48
55
|
: name(project.checker)(type)(node)), undefined, [expression.arguments[0]]);
|
|
@@ -58,11 +65,17 @@ var GenericTransformer;
|
|
|
58
65
|
return function (expression) {
|
|
59
66
|
var _a;
|
|
60
67
|
if (!((_a = expression.typeArguments) === null || _a === void 0 ? void 0 : _a[0]))
|
|
61
|
-
throw new
|
|
68
|
+
throw new TransformerError_1.TransformerError({
|
|
69
|
+
code: "typia.".concat(method),
|
|
70
|
+
message: "generic argument is not specified.",
|
|
71
|
+
});
|
|
62
72
|
var node = expression.typeArguments[0];
|
|
63
73
|
var type = project.checker.getTypeFromTypeNode(node);
|
|
64
74
|
if (type.isTypeParameter())
|
|
65
|
-
throw new
|
|
75
|
+
throw new TransformerError_1.TransformerError({
|
|
76
|
+
code: "typia.".concat(method),
|
|
77
|
+
message: "non-specified generic argument.",
|
|
78
|
+
});
|
|
66
79
|
return programmer(project)(modulo)(type, node.getFullText().trim());
|
|
67
80
|
};
|
|
68
81
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericTransformer.js","sourceRoot":"","sources":["../../../src/transformers/internal/GenericTransformer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;
|
|
1
|
+
{"version":3,"file":"GenericTransformer.js","sourceRoot":"","sources":["../../../src/transformers/internal/GenericTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValidationPipe.js","sourceRoot":"","sources":["../../src/typings/ValidationPipe.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "typia",
|
|
3
|
-
"version": "5.0.0-dev.
|
|
3
|
+
"version": "5.0.0-dev.20230828",
|
|
4
4
|
"description": "Superfast runtime validators with only one line",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
"build": "rimraf lib && tsc --removeComments --declaration false && tsc --emitDeclarationOnly",
|
|
17
17
|
"build:test": "rimraf bin && tsc -p test/tsconfig.json",
|
|
18
18
|
"build:test:actions": "rimraf bin && tsc -p test/tsconfig.actions.json",
|
|
19
|
+
"build:test:issues": "rimraf bin && tsc -p test/tsconfig.issue.json",
|
|
19
20
|
"build:benchmark": "rimraf measure && tsc -p benchmark/tsconfig.json",
|
|
20
21
|
"build:test:prettier": "npm run build:test && prettier --write ./bin/**/*.js",
|
|
21
22
|
"dev": "rimraf lib && tsc --watch",
|
|
@@ -94,6 +95,7 @@
|
|
|
94
95
|
"@types/nested-error-stacks": "^2.1.0",
|
|
95
96
|
"@types/node": "^18.15.12",
|
|
96
97
|
"@types/physical-cpu-count": "^2.0.0",
|
|
98
|
+
"@types/ts-expose-internals": "npm:ts-expose-internals@5.1.6",
|
|
97
99
|
"@types/uuid": "^8.3.4",
|
|
98
100
|
"@typescript-eslint/eslint-plugin": "^5.59.11",
|
|
99
101
|
"@typescript-eslint/parser": "^5.59.11",
|
|
@@ -64,7 +64,7 @@ export namespace TypiaGenerateWizard {
|
|
|
64
64
|
str.substring(str.length - 5) === ".json",
|
|
65
65
|
);
|
|
66
66
|
if (files.length === 0)
|
|
67
|
-
throw new
|
|
67
|
+
throw new URIError(`Unable to find "tsconfig.json" file.`);
|
|
68
68
|
else if (files.length === 1) return files[0];
|
|
69
69
|
return select("tsconfig")("TS Config File")(files);
|
|
70
70
|
};
|
|
@@ -126,7 +126,7 @@ export namespace TypiaSetupWizard {
|
|
|
126
126
|
);
|
|
127
127
|
if (fileList.length === 0) {
|
|
128
128
|
if (process.cwd() !== pack.directory)
|
|
129
|
-
throw new
|
|
129
|
+
throw new URIError(`Unable to find "tsconfig.json" file.`);
|
|
130
130
|
return null;
|
|
131
131
|
} else if (fileList.length === 1) return fileList[0];
|
|
132
132
|
return select("tsconfig")("TS Config File")(fileList);
|
|
@@ -15,7 +15,7 @@ export class PackageManager {
|
|
|
15
15
|
"package.json",
|
|
16
16
|
)(process.cwd());
|
|
17
17
|
if (location === null)
|
|
18
|
-
throw new
|
|
18
|
+
throw new URIError(`Unable to find "package.json" file`);
|
|
19
19
|
|
|
20
20
|
return new PackageManager(
|
|
21
21
|
location,
|
|
@@ -15,7 +15,7 @@ export namespace PluginConfigurator {
|
|
|
15
15
|
| comments.CommentObject
|
|
16
16
|
| undefined;
|
|
17
17
|
if (compilerOptions === undefined)
|
|
18
|
-
throw new
|
|
18
|
+
throw new ReferenceError(
|
|
19
19
|
`${args.project} file does not have "compilerOptions" property.`,
|
|
20
20
|
);
|
|
21
21
|
|
|
@@ -27,7 +27,7 @@ export namespace PluginConfigurator {
|
|
|
27
27
|
if (plugins === undefined)
|
|
28
28
|
return (compilerOptions.plugins = [] as any);
|
|
29
29
|
else if (!Array.isArray(plugins))
|
|
30
|
-
throw new
|
|
30
|
+
throw new TypeError(
|
|
31
31
|
`"plugins" property of ${args.project} must be array type.`,
|
|
32
32
|
);
|
|
33
33
|
return plugins;
|
|
@@ -137,11 +137,11 @@ export namespace ExpressionFactory {
|
|
|
137
137
|
);
|
|
138
138
|
const statement: ts.Statement | undefined = file.statements[0];
|
|
139
139
|
if (statement === undefined)
|
|
140
|
-
throw new
|
|
140
|
+
throw new ReferenceError(
|
|
141
141
|
"Error on ExpressionFactory.transpile(): no statement exists.",
|
|
142
142
|
);
|
|
143
143
|
else if (!ts.isExpressionStatement(statement))
|
|
144
|
-
throw new
|
|
144
|
+
throw new TypeError(
|
|
145
145
|
"Error on ExpressionFactory.transpile(): statement is not an expression statement.",
|
|
146
146
|
);
|
|
147
147
|
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
|
|
3
|
+
import { Metadata } from "../schemas/metadata/Metadata";
|
|
4
|
+
|
|
5
|
+
import { TransformerError } from "../transformers/TransformerError";
|
|
6
|
+
|
|
7
|
+
import { MetadataCollection } from "./MetadataCollection";
|
|
8
|
+
import { MetadataFactory } from "./MetadataFactory";
|
|
9
|
+
|
|
10
|
+
export namespace JsonMetadataFactory {
|
|
11
|
+
export const analyze =
|
|
12
|
+
(method: string) =>
|
|
13
|
+
(checker: ts.TypeChecker) =>
|
|
14
|
+
(type: ts.Type): [MetadataCollection, Metadata] => {
|
|
15
|
+
const collection = new MetadataCollection();
|
|
16
|
+
const result = MetadataFactory.analyze(checker)({
|
|
17
|
+
escape: true,
|
|
18
|
+
constant: true,
|
|
19
|
+
absorb: true,
|
|
20
|
+
validate,
|
|
21
|
+
})(collection)(type);
|
|
22
|
+
if (result.success === false)
|
|
23
|
+
throw TransformerError.from(method)(result.errors);
|
|
24
|
+
return [collection, result.data];
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export const validate = (meta: Metadata) => {
|
|
28
|
+
const output: string[] = [];
|
|
29
|
+
if (
|
|
30
|
+
meta.atomics.some((a) => a.type === "bigint") ||
|
|
31
|
+
meta.constants.some((c) => c.type === "bigint")
|
|
32
|
+
)
|
|
33
|
+
output.push("JSON does not support bigint type.");
|
|
34
|
+
if (
|
|
35
|
+
meta.tuples.some((t) =>
|
|
36
|
+
t.type.elements.some((e) => e.isRequired() === false),
|
|
37
|
+
) ||
|
|
38
|
+
meta.arrays.some((a) => a.type.value.isRequired() === false)
|
|
39
|
+
)
|
|
40
|
+
output.push("JSON does not support undefined type in array.");
|
|
41
|
+
return output;
|
|
42
|
+
};
|
|
43
|
+
}
|
|
@@ -13,8 +13,9 @@ export namespace LiteralFactory {
|
|
|
13
13
|
else if (typeof input === "boolean") return generate_value(input);
|
|
14
14
|
else if (typeof input === "number") return generate_value(input);
|
|
15
15
|
else if (typeof input === "bigint") return generate_bigint(input);
|
|
16
|
+
// unreachable code
|
|
16
17
|
else
|
|
17
|
-
throw new
|
|
18
|
+
throw new TypeError(
|
|
18
19
|
"Error on LiteralFactory.generate(): unknown type.",
|
|
19
20
|
);
|
|
20
21
|
};
|
|
@@ -26,11 +26,6 @@ export class MetadataCollection {
|
|
|
26
26
|
private recursive_array_index_: number;
|
|
27
27
|
private recursive_tuple_index_: number;
|
|
28
28
|
|
|
29
|
-
/**
|
|
30
|
-
* @internal
|
|
31
|
-
*/
|
|
32
|
-
public readonly entire_: Set<Metadata> = new Set();
|
|
33
|
-
|
|
34
29
|
public constructor(
|
|
35
30
|
private readonly options?: Partial<MetadataCollection.IOptions>,
|
|
36
31
|
) {
|