6 #ifndef MESSAGEFORMAT2_FUNCTION_REGISTRY_H 7 #define MESSAGEFORMAT2_FUNCTION_REGISTRY_H 9 #if U_SHOW_CPLUSPLUS_API 11 #if !UCONFIG_NO_NORMALIZATION 13 #if !UCONFIG_NO_FORMATTING 17 #include "unicode/messageformat2_data_model_names.h" 18 #include "unicode/messageformat2_formattable.h" 20 #ifndef U_HIDE_DEPRECATED_API 31 using namespace data_model;
122 using FormatterMap = Hashtable;
123 using SelectorMap = Hashtable;
179 FormatterMap* formatters;
180 SelectorMap* selectors;
181 Hashtable* formattersByType;
303 friend class MessageContext;
316 void checkFormatter(
const char*)
const;
317 void checkSelector(
const char*)
const;
318 void checkStandard()
const;
320 bool hasFormatter(
const data_model::FunctionName& f)
const;
321 bool hasSelector(
const data_model::FunctionName& s)
const;
322 void cleanup() noexcept;
325 FormatterMap* formatters =
nullptr;
326 SelectorMap* selectors =
nullptr;
328 Hashtable* formattersByType =
nullptr;
421 #endif // U_HIDE_DEPRECATED_API 431 #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.