50using ProviderMap = std::map<std::string, std::unique_ptr<EnumMapProvider>, std::less<>>;
A result type that maintains a chainable sequence of errors for debugging and error reporting.
Abstract interface for providing two-way name/value mappings for an enumerated attribute field.
virtual ChainableResult< std::string > lookup(std::uint32_t value) const =0
Looks up the constant name for a numeric value.
virtual ~EnumMapProvider()=default
virtual ChainableResult< std::uint32_t > lookup(const std::string &name) const =0
Looks up the numeric value for a constant name.
std::map< std::string, std::unique_ptr< EnumMapProvider >, std::less<> > ProviderMap
Maps schema field names to the provider that names that field's values.