PHP 8.2.30
Preview: messageformat2_arguments.h Size: 4.49 KB
/proc/self/root/opt/alt/alt-nodejs22/root/usr/include/unicode/messageformat2_arguments.h

// © 2024 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html

#include "unicode/utypes.h"

#ifndef MESSAGEFORMAT2_ARGUMENTS_H
#define MESSAGEFORMAT2_ARGUMENTS_H

#if U_SHOW_CPLUSPLUS_API

#if !UCONFIG_NO_NORMALIZATION

#if !UCONFIG_NO_FORMATTING

#if !UCONFIG_NO_MF2

/**
 * \file
 * \brief C++ API: Formats messages using the draft MessageFormat 2.0.
 */

#include "unicode/messageformat2_data_model_names.h"
#include "unicode/messageformat2_formattable.h"
#include "unicode/unistr.h"

#ifndef U_HIDE_DEPRECATED_API

#include <map>

U_NAMESPACE_BEGIN

/// @cond DOXYGEN_IGNORE
// Export an explicit template instantiation of the LocalPointer that is used as a
// data member of various MessageFormatDataModel classes.
// (When building DLLs for Windows this is required.)
// (See measunit_impl.h, datefmt.h, collationiterator.h, erarules.h and others
// for similar examples.)
#if U_PF_WINDOWS <= U_PLATFORM && U_PLATFORM <= U_PF_CYGWIN
template class U_I18N_API LocalPointerBase<UnicodeString>;
template class U_I18N_API LocalPointerBase<message2::Formattable>;
template class U_I18N_API LocalArray<UnicodeString>;
template class U_I18N_API LocalArray<message2::Formattable>;
#endif
/// @endcond

namespace message2 {

    class MessageFormatter;

    // Arguments
    // ----------

    /**
     *
     * The `MessageArguments` class represents the named arguments to a message.
     * It is immutable and movable. It is not copyable.
     *
     * @internal ICU 75 technology preview
     * @deprecated This API is for technology preview only.
     */
    class U_I18N_API MessageArguments : public UObject {
    public:
        /**
         * Message arguments constructor, which takes a map and returns a container
         * of arguments that can be passed to a `MessageFormatter`.
         *
         * @param args A reference to a map from strings (argument names) to `message2::Formattable`
         *        objects (argument values). The keys and values of the map are copied into the result.
         * @param status Input/output error code.
         *
         * @internal ICU 75 technology preview
         * @deprecated This API is for technology preview only.
         */
        MessageArguments(const std::map<UnicodeString, Formattable>& args, UErrorCode& status) {
            if (U_FAILURE(status)) {
                return;
            }
            argumentNames = LocalArray<UnicodeString>(new UnicodeString[argsLen = static_cast<int32_t>(args.size())]);
            arguments = LocalArray<Formattable>(new Formattable[argsLen]);
            if (!argumentNames.isValid() || !arguments.isValid()) {
                status = U_MEMORY_ALLOCATION_ERROR;
                return;
            }
            int32_t i = 0;
            for (auto iter = args.begin(); iter != args.end(); ++iter) {
                argumentNames[i] = iter->first;
                arguments[i] = iter->second;
                i++;
            }
        }
        /**
         * Move operator:
         * The source MessageArguments will be left in a valid but undefined state.
         *
         * @internal ICU 75 technology preview
         * @deprecated This API is for technology preview only.
         */
        MessageArguments& operator=(MessageArguments&&) noexcept;
        /**
         * Default constructor.
         * Returns an empty arguments mapping.
         *
         * @internal ICU 75 technology preview
         * @deprecated This API is for technology preview only.
         */
        MessageArguments() = default;
        /**
         * Destructor.
         *
         * @internal ICU 75 technology preview
         * @deprecated This API is for technology preview only.
         */
        virtual ~MessageArguments();
    private:
        friend class MessageContext;

        const Formattable* getArgument(const MessageFormatter&,
                                       const data_model::VariableName&,
                                       UErrorCode&) const;

        // Avoids using Hashtable so that code constructing a Hashtable
        // doesn't have to appear in this header file
        LocalArray<UnicodeString> argumentNames;
        LocalArray<Formattable> arguments;
        int32_t argsLen = 0;
    }; // class MessageArguments

} // namespace message2

U_NAMESPACE_END

#endif // U_HIDE_DEPRECATED_API

#endif /* #if !UCONFIG_NO_MF2 */

#endif /* #if !UCONFIG_NO_FORMATTING */

#endif /* #if !UCONFIG_NO_NORMALIZATION */

#endif /* U_SHOW_CPLUSPLUS_API */

#endif // MESSAGEFORMAT2_ARGUMENTS_H

// eof

Directory Contents

Dirs: 0 × Files: 203

Name Size Perms Modified Actions
26.54 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
8.54 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
9.99 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
27.84 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
10.77 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
20.83 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.48 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
107.54 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.53 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
25.42 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
10.79 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
23.79 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
23.99 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
13.78 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
59.60 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.88 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
3.67 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.30 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.02 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
40.70 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
1.19 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
20.96 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
87.46 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.08 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.60 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
38.22 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
3.84 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
48.87 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
18.63 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
28.05 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
8.66 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
20.74 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
2.08 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.84 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
8.69 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
5.37 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
24.37 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
12.51 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.28 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
9.75 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
3.03 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
3.35 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
30.32 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
1.02 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
12.10 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
12.93 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
8.59 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
11.08 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
26.86 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
19.55 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.12 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
48.62 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
11.41 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
111.44 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.63 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
21.05 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.49 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
101.89 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
784 B lrw-r--r-- 2025-06-06 11:26:48
Edit Download
38.36 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
18.07 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
33.79 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
44.20 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
34.68 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
30.79 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
2.24 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
90.69 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
26.00 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
50.16 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.22 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
3.08 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
5.56 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
27.18 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
25.07 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
20.63 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
2.16 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.32 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
32.04 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
56.16 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
15.75 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
84.45 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
9.20 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
22.48 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
9.38 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
18.02 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.09 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.44 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
22.21 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
14.35 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
12.60 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
8.87 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
45.62 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
57.06 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
11.13 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
1.05 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
9.96 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
5.79 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
10.28 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
15.53 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
21.43 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.28 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
36.96 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
45.59 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
3.40 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.90 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.42 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
65.81 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
42.95 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
16.85 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
34.81 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.11 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
89.61 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
12.71 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
24.43 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
63.96 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
15.27 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
5.35 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
151.74 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
22.59 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.48 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
13.24 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
11.21 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
83.34 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.24 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.58 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
20.98 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
67.28 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
9.82 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
12.56 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
5.54 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
22.51 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
14.69 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
16.72 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
62.36 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
15.63 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
11.93 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
30.13 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
5.94 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
8.86 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.79 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.41 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
10.97 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
8.09 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
12.25 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
2.06 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
34.12 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
22.75 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
10.48 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
10.78 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
55.38 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.31 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
16.69 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
11.30 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
14.59 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
1.34 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
24.25 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
8.30 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.00 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
4.05 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.10 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
3.38 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
70.40 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
182.08 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
20.55 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
25.66 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
55.16 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
19.68 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
5.23 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
15.35 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
7.26 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
10.66 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
8.79 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
71.99 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
9.81 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
16.98 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
141.99 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
5.38 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
36.65 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
28.51 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
39.21 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
63.08 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
9.63 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
18.00 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.31 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
80.00 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
8.19 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
38.58 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
1.89 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
72.16 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
3.15 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
58.10 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
7.87 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
30.83 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
23.35 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
763 B lrw-r--r-- 2025-06-06 11:26:48
Edit Download
45.80 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
13.78 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
17.18 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
25.54 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download
34.48 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
6.33 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
8.21 KB lrw-r--r-- 2025-06-06 11:26:48
Edit Download
20.68 KB lrw-r--r-- 2025-06-06 11:26:49
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).