summaryrefslogtreecommitdiffstats
path: root/tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp')
-rw-r--r--tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp21
1 files changed, 6 insertions, 15 deletions
diff --git a/tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp b/tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp
index 73d38b396a9..2e7cc7f8267 100644
--- a/tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp
+++ b/tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp
@@ -55,21 +55,12 @@ namespace NEnumSerializationRuntime {
const TArrayRef<const TStringBuf>& cppNamesInitializer = enumInitData.CppNamesInitializer;
TMap<TRepresentationType, TString> mapValueToName;
- TMap<TString, TRepresentationType> mapNameToValue;
- const bool bijectiveHint = (namesInitializer.data() == valuesInitializer.data() && namesInitializer.size() == valuesInitializer.size());
- if (bijectiveHint) {
- for (const TEnumStringPair& it : namesInitializer) {
- TString name{it.Name};
- mapValueToName.emplace(it.Key, name);
- mapNameToValue.emplace(std::move(name), it.Key);
- }
- } else {
- for (const TEnumStringPair& it : namesInitializer) {
- mapValueToName.emplace(it.Key, TString(it.Name));
- }
- for (const TEnumStringPair& it : valuesInitializer) {
- mapNameToValue.emplace(TString(it.Name), it.Key);
- }
+ TMap<TStringBuf, TRepresentationType> mapNameToValue;
+ for (const TEnumStringPair& it : namesInitializer) {
+ mapValueToName.emplace(it.Key, TString(it.Name));
+ }
+ for (const TEnumStringPair& it : valuesInitializer) {
+ mapNameToValue.emplace(it.Name, it.Key);
}
Names = std::move(mapValueToName);
Values = std::move(mapNameToValue);