|
ICU 76.1 76.1
|
The Key class corresponds to the key nonterminal in the MessageFormat 2 grammar, https://github.com/unicode-org/message-format-wg/blob/main/spec/message.abnf .
More...
#include <messageformat2_data_model.h>
Public Member Functions | |
| UBool | isWildcard () const |
| Determines if this is a wildcard key. | |
| const Literal & | asLiteral () const |
| Returns the contents of this key as a literal. | |
| Key (const Key &other) | |
| Copy constructor. | |
| Key () | |
| Wildcard constructor; constructs a Key representing the catchall or wildcard key, '*'. | |
| Key (const Literal &lit) | |
| Literal key constructor. | |
| Key & | operator= (Key) noexcept |
| Assignment operator. | |
| bool | operator< (const Key &other) const |
| Less than operator. | |
| bool | operator== (const Key &other) const |
| Equality operator. | |
| virtual | ~Key () |
| Destructor. | |
Public Member Functions inherited from icu::UObject | |
| virtual | ~UObject () |
| Destructor. | |
| virtual UClassID | getDynamicClassID () const |
| ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class. | |
Friends | |
| void | swap (Key &k1, Key &k2) noexcept |
| Non-member swap function. | |
The Key class corresponds to the key nonterminal in the MessageFormat 2 grammar, https://github.com/unicode-org/message-format-wg/blob/main/spec/message.abnf .
It also corresponds to the Literal | CatchallKey that is the element type of the keys array in the Variant interface defined in https://github.com/unicode-org/message-format-wg/blob/main/spec/data-model.md#messages
A key is either a literal or the wildcard symbol (represented in messages as '*')
Key is immutable, copyable and movable.
Definition at line 385 of file messageformat2_data_model.h.
|
inline |
Copy constructor.
Definition at line 412 of file messageformat2_data_model.h.
|
inline |
Wildcard constructor; constructs a Key representing the catchall or wildcard key, '*'.
Definition at line 420 of file messageformat2_data_model.h.
|
inlineexplicit |
Literal key constructor.
| lit | A Literal to use for this key. The result matches the literal lit. |
Definition at line 430 of file messageformat2_data_model.h.
|
virtual |
Destructor.
| const Literal & icu::message2::data_model::Key::asLiteral | ( | ) | const |
Returns the contents of this key as a literal.
Precondition: !isWildcard()
|
inline |
Determines if this is a wildcard key.
Definition at line 395 of file messageformat2_data_model.h.
| bool icu::message2::data_model::Key::operator< | ( | const Key & | other | ) | const |
Less than operator.
Compares the literal of this with the literal of other. This method is used in representing the mapping from key lists to patterns in a message with variants, and is not expected to be useful otherwise.
| other | The Key to compare to this one. |
Keys are not wildcards and if this.asLiteral() < other.asLiteral(). Returns false otherwise.Assignment operator.
| bool icu::message2::data_model::Key::operator== | ( | const Key & | other | ) | const |
Equality operator.
Compares the literal of this with the literal of other. This method is used in representing the mapping from key lists to patterns in a message with variants, and is not expected to be useful otherwise.
| other | The Key to compare to this one. |
Keys are wildcards, or this.asLiteral() == other.asLiteral(). Returns false otherwise.Non-member swap function.
| k1 | will get k2's contents |
| k2 | will get k1's contents |
Definition at line 439 of file messageformat2_data_model.h.