6 #ifndef MESSAGEFORMAT2_FUNCTION_REGISTRY_H 7 #define MESSAGEFORMAT2_FUNCTION_REGISTRY_H 9 #if U_SHOW_CPLUSPLUS_API 11 #if !UCONFIG_NO_FORMATTING 15 #include "unicode/messageformat2_data_model_names.h" 16 #include "unicode/messageformat2_formattable.h" 18 #ifndef U_HIDE_DEPRECATED_API 29 using namespace data_model;
120 using FormatterMap = Hashtable;
121 using SelectorMap = Hashtable;
177 FormatterMap* formatters;
178 SelectorMap* selectors;
179 Hashtable* formattersByType;
301 friend class MessageContext;
314 void checkFormatter(
const char*)
const;
315 void checkSelector(
const char*)
const;
316 void checkStandard()
const;
318 bool hasFormatter(
const data_model::FunctionName& f)
const;
319 bool hasSelector(
const data_model::FunctionName& s)
const;
320 void cleanup() noexcept;
323 FormatterMap* formatters =
nullptr;
324 SelectorMap* selectors =
nullptr;
326 Hashtable* formattersByType =
nullptr;
419 #endif // U_HIDE_DEPRECATED_API 427 #endif // MESSAGEFORMAT2_FUNCTION_REGISTRY_H
The mutable Builder class allows each formatter and selector factory to be initialized separately; ca...
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
Structure encapsulating named options passed to a custom selector or formatter.
Basic definitions for ICU, for both C and C++ APIs.
Interface that factory classes for creating selectors must implement.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
Defines mappings from names of formatters and selectors to functions implementing them...
UObject is the common ICU "boilerplate" class.
Interface that selector classes must implement.
int8_t UBool
The ICU boolean type, a signed-byte integer.
A Locale object represents a specific geographical, political, or cultural region.