ICU 78.3 78.3

Data Structures | Public Member Functions | Friends
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. More...
U_I18N_API Iterator | end () const
| Returns a special value to mark the end of iteration. More...
U_I18N_API | Pattern ()
| Default constructor. More...
U_I18N_API | Pattern (const Pattern &other)
| Copy constructor. More...
U_I18N_API Pattern & | operator= (Pattern) noexcept
| Assignment operator. More...
virtual U_I18N_API | ~Pattern ()
| 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 | PatternPart
class | Builder
class | message2::MessageFormatter
class | message2::Serializer
U_I18N_API friend void | swap (Pattern &p1, Pattern &p2) noexcept
| Non-member swap function. More...

## 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.

## ◆ 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.

## ◆ ~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.

## 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.

## ◆ 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.

## ◆ 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.

## Friends And Related Function Documentation

## ◆ 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.

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

- i18n/unicode/messageformat2_data_model.h