6 #ifndef MESSAGEFORMAT2_ARGUMENTS_H
7 #define MESSAGEFORMAT2_ARGUMENTS_H
9 #if U_SHOW_CPLUSPLUS_API
11 #if !UCONFIG_NO_NORMALIZATION
13 #if !UCONFIG_NO_FORMATTING
22 #include "unicode/messageformat2_data_model_names.h"
23 #include "unicode/messageformat2_formattable.h"
26 #ifndef U_HIDE_DEPRECATED_API
38 #if U_PF_WINDOWS <= U_PLATFORM && U_PLATFORM <= U_PF_CYGWIN
39 template class U_I18N_API LocalPointerBase<UnicodeString>;
40 template class U_I18N_API LocalPointerBase<message2::Formattable>;
41 template class U_I18N_API LocalArray<UnicodeString>;
42 template class U_I18N_API LocalArray<message2::Formattable>;
48 class MessageFormatter;
80 if (!argumentNames.isValid() || !arguments.isValid()) {
85 for (
auto iter = args.begin(); iter != args.end(); ++iter) {
86 argumentNames[i] = iter->first;
87 arguments[i] = iter->second;
115 friend class MessageContext;
"Smart pointer" class, deletes objects via the C++ array delete[] operator.
UObject is the common ICU "boilerplate" class.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
The MessageArguments class represents the named arguments to a message.
MessageArguments(const std::map< UnicodeString, Formattable > &args, UErrorCode &status)
Message arguments constructor, which takes a map and returns a container of arguments that can be pas...
MessageArguments & operator=(MessageArguments &&) noexcept
Move operator: The source MessageArguments will be left in a valid but undefined state.
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
@ U_MEMORY_ALLOCATION_ERROR
Memory allocation error.
#define U_FAILURE(x)
Does the error code indicate a failure?
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.