ICU 78.2: icu::message2::data_model::SelectorKeys Class Reference

ICU 78.2 78.2

Data Structures | Public Member Functions | Friends
icu::message2::data_model::SelectorKeys Class Reference

The `SelectorKeys` class represents the key list for a single variant. More...

`#include <messageformat2_data_model.h>`

Inheritance diagram for icu::message2::data_model::SelectorKeys:

## Data Structures
class | Builder
| The mutable `SelectorKeys::Builder` class allows the key list to be constructed one key at a time. More...

## Public Member Functions
U_I18N_API std::vector< Key > | getKeys () const
| Returns the underlying list of keys. More...
U_I18N_API bool | operator< (const SelectorKeys &other) const
| Less than operator. More...
U_I18N_API | SelectorKeys ()
| Default constructor. More...
U_I18N_API | SelectorKeys (const SelectorKeys &other)
| Copy constructor. More...
U_I18N_API SelectorKeys & | operator= (SelectorKeys other) noexcept
| Assignment operator. More...
virtual U_I18N_API | ~SelectorKeys ()
| Destructor. More...
Public Member Functions inherited from icu::UObject
virtual | ~UObject ()
| Destructor. More...
virtual UClassID | getDynamicClassID () const
| ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class. More...

## Friends
class | Builder
class | message2::Checker
class | message2::MessageFormatter
class | message2::Serializer
U_I18N_API friend void | swap (SelectorKeys &s1, SelectorKeys &s2) noexcept
| Non-member swap function. More...

## Detailed Description

The `SelectorKeys` class represents the key list for a single variant.

It corresponds to the `keys` array in the `Variant` interface defined in https://github.com/unicode-org/message-format-wg/blob/main/spec/data-model.md#messages

`SelectorKeys` is immutable, copyable and movable.

Internal:
  Do not use. This API is for internal use only. ICU 75 technology preview

Deprecated:
  This API is for technology preview only.

Definition at line 461 of file messageformat2_data_model.h.

## Constructor & Destructor Documentation

## ◆ SelectorKeys() [1/2]

U_I18N_API icu::message2::data_model::SelectorKeys::SelectorKeys | ( |  | ) |
| inline

Default constructor.

Puts the SelectorKeys into a valid but undefined state.

Internal:
  Do not use. This API is for internal use only. ICU 75 technology preview

Deprecated:
  This API is for technology preview only.

Definition at line 560 of file messageformat2_data_model.h.

## ◆ SelectorKeys() [2/2]

U_I18N_API icu::message2::data_model::SelectorKeys::SelectorKeys | ( | const SelectorKeys & | other | ) |

Copy constructor.

Internal:
  Do not use. This API is for internal use only. ICU 75 technology preview

Deprecated:
  This API is for technology preview only.

## ◆ ~SelectorKeys()

virtual U_I18N_API icu::message2::data_model::SelectorKeys::~SelectorKeys | ( |  | ) |
| virtual

Destructor.

Internal:
  Do not use. This API is for internal use only. ICU 75 technology preview

Deprecated:
  This API is for technology preview only.

## Member Function Documentation

## ◆ getKeys()

U_I18N_API std::vector<Key> icu::message2::data_model::SelectorKeys::getKeys | ( |  | ) | const
| inline

Returns the underlying list of keys.

Returns
  The list of keys for this variant. Returns an empty list if allocating this `SelectorKeys` object previously failed.

Internal:
  Do not use. This API is for internal use only. ICU 75 technology preview

Deprecated:
  This API is for technology preview only.

Definition at line 473 of file messageformat2_data_model.h.

## ◆ operator<()

U_I18N_API bool icu::message2::data_model::SelectorKeys::operator< | ( | const SelectorKeys & | other | ) | const

Less than operator.

Compares the two key lists lexicographically. This method makes it possible for a `SelectorKeys` to be used as a map key, which allows variants to be represented as a map. It is not expected to be useful otherwise.

Parameters

  other | The SelectorKeys to compare to this one.

Returns
  true if `this` is less than `other`, comparing the two key lists lexicographically. Returns false otherwise.

Internal:
  Do not use. This API is for internal use only. ICU 75 technology preview

Deprecated:
  This API is for technology preview only.

## ◆ operator=()

U_I18N_API SelectorKeys& icu::message2::data_model::SelectorKeys::operator= | ( | SelectorKeys | other | ) |
| noexcept

Assignment operator.

Internal:
  Do not use. This API is for internal use only. ICU 75 technology preview

Deprecated:
  This API is for technology preview only.

## Friends And Related Function Documentation

## ◆ swap

U_I18N_API friend void swap | ( | SelectorKeys & | s1,
|  | SelectorKeys & | s2
| ) |  |
| friend

Non-member swap function.

Parameters

  s1 | will get s2's contents
  s2 | will get s1's contents

Internal:
  Do not use. This API is for internal use only. ICU 75 technology preview

Deprecated:
  This API is for technology preview only.

Definition at line 569 of file messageformat2_data_model.h.

The documentation for this class was generated from the following file:

- i18n/unicode/messageformat2_data_model.h