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
34 class MessageFormatter;
66 if (!argumentNames.isValid() || !arguments.isValid()) {
71 for (
auto iter = args.begin(); iter != args.end(); ++iter) {
72 argumentNames[i] = iter->first;
73 arguments[i] = iter->second;
101 friend class MessageContext;
103 const
Formattable* getArgument(const data_model::VariableName&,
"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...
U_I18N_API 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...
U_I18N_API 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_CLASS
Set to export library symbols from inside the i18n library, and to import them from outside,...
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.