diff options
author | arcadia-devtools <arcadia-devtools@yandex-team.ru> | 2022-05-25 09:07:37 +0300 |
---|---|---|
committer | arcadia-devtools <arcadia-devtools@yandex-team.ru> | 2022-05-25 09:07:37 +0300 |
commit | 8583a3a0c95359629a3fd0816588a3f550ff4489 (patch) | |
tree | 0c031ebc7e67f2f32fd9c24d9d563d9d70e615d1 /tools/enum_parser/enum_serialization_runtime | |
parent | b1826fcfe6cc1ada0fa9bd0fc4366ef04e2c52d9 (diff) | |
download | ydb-8583a3a0c95359629a3fd0816588a3f550ff4489.tar.gz |
intermediate changes
ref:0bc6b460c17cb0983ee7c2afa9cd22398e601bc8
Diffstat (limited to 'tools/enum_parser/enum_serialization_runtime')
-rw-r--r-- | tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp | 21 | ||||
-rw-r--r-- | tools/enum_parser/enum_serialization_runtime/enum_runtime.h | 2 |
2 files changed, 7 insertions, 16 deletions
diff --git a/tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp b/tools/enum_parser/enum_serialization_runtime/enum_runtime.cpp index 73d38b396a..2e7cc7f826 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); diff --git a/tools/enum_parser/enum_serialization_runtime/enum_runtime.h b/tools/enum_parser/enum_serialization_runtime/enum_runtime.h index f157d43109..83c7a49b0a 100644 --- a/tools/enum_parser/enum_serialization_runtime/enum_runtime.h +++ b/tools/enum_parser/enum_serialization_runtime/enum_runtime.h @@ -58,7 +58,7 @@ namespace NEnumSerializationRuntime { private: TMap<TRepresentationType, TString> Names; - TMap<TString, TRepresentationType> Values; + TMap<TStringBuf, TRepresentationType> Values; TString AllNames; TVector<TString> AllCppNames; TString ClassName; |