Loading...
Searching...
No Matches
icu::message2::data_model::Pattern Class Reference

A Pattern is a sequence of formattable parts. More...

`#include <messageformat2_data_model.h>`

Inheritance diagram for icu::message2::data_model::Pattern:

## Data Structures

class | Builder
| The mutable Pattern::Builder class allows the pattern to be constructed one part at a time. More...
struct | Iterator
| The Pattern::Iterator class provides an iterator over the formattable parts of a pattern. More...

## Public Member Functions

U_I18N_API Iterator | begin () const
| Returns the parts of this pattern.
U_I18N_API Iterator | end () const
| Returns a special value to mark the end of iteration.
U_I18N_API | Pattern ()
| Default constructor.
U_I18N_API | Pattern (const Pattern &other)
| Copy constructor.
U_I18N_API Pattern & | operator= (Pattern) noexcept
| Assignment operator.
virtual U_I18N_API | ~Pattern ()
| 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

class | PatternPart
class | Builder
class | message2::MessageFormatter
class | message2::Serializer
U_I18N_API friend void | swap (Pattern &p1, Pattern &p2) noexcept
| Non-member swap function.

## Detailed Description

A Pattern is a sequence of formattable parts.

It corresponds to the Pattern interface defined in https://github.com/unicode-org/message-format-wg/blob/main/spec/data-model.md#patterns

Pattern 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 1539 of file messageformat2_data_model.h.

## Constructor & Destructor Documentation

## Pattern() [1/2]

U_I18N_API icu::message2::data_model::Pattern::Pattern | ( |  | ) |

inline

Default constructor.

Puts the Pattern 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 1663 of file messageformat2_data_model.h.

References U_I18N_API.

Referenced by operator=(), Pattern(), and swap.

## Pattern() [2/2]

U_I18N_API icu::message2::data_model::Pattern::Pattern | ( | const Pattern & | 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.

References Pattern(), and U_I18N_API.

## ~Pattern()

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

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.

References U_I18N_API.

## Member Function Documentation

## begin()

U_I18N_API Iterator icu::message2::data_model::Pattern::begin | ( |  | ) | const

inline

Returns the parts of this pattern.

Returns
  A forward iterator of variants. Each element is either a string (text part) or an expression part.

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 1556 of file messageformat2_data_model.h.

References U_I18N_API.

## end()

U_I18N_API Iterator icu::message2::data_model::Pattern::end | ( |  | ) | const

inline

Returns a special value to mark the end of iteration.

Returns
  A forward iterator of variants. This should only be used for comparisons against an iterator returned by incrementing begin().

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 1568 of file messageformat2_data_model.h.

References U_I18N_API.

## operator=()

U_I18N_API Pattern & icu::message2::data_model::Pattern::operator= | ( | Pattern |  | ) |

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.

References Pattern(), and U_I18N_API.

## Friends And Related Symbol Documentation

## Builder

friend class Builder

friend

Definition at line 1753 of file messageformat2_data_model.h.

## message2::MessageFormatter

friend class message2::MessageFormatter

friend

Definition at line 1754 of file messageformat2_data_model.h.

## message2::Serializer

friend class message2::Serializer

friend

Definition at line 1755 of file messageformat2_data_model.h.

## PatternPart

friend class PatternPart

friend

Definition at line 1541 of file messageformat2_data_model.h.

## swap

U_I18N_API friend void swap | ( | Pattern & | p1,
|  | Pattern & | p2 )

friend

Non-member swap function.

Parameters

  p1 | will get p2's contents
  p2 | will get p1'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 1672 of file messageformat2_data_model.h.

References Pattern(), swap, and U_I18N_API.

Referenced by swap.

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

- i18n/unicode/messageformat2_data_model.h