ICU 78.3 78.3
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:
icu::UObject icu::UMemory

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 Patternoperator= (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.

◆ 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
p1will get p2's contents
p2will 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: