/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { /** * This container is for storing unknown enum values that are encountered during parsing. * This is to work around the round-tripping enums problem. It's really just a simple thread-safe * hashmap. */ class AWS_CORE_API EnumParseOverflowContainer { public: const Aws::String& RetrieveOverflow(int hashCode) const; void StoreOverflow(int hashCode, const Aws::String& value); private: mutable Aws::Utils::Threading::ReaderWriterLock m_overflowLock; Aws::Map m_overflowMap; Aws::String m_emptyString; }; } }