ICU 76.1: icu::message2::data_model::Markup::Builder Class Reference

ICU 76.1 76.1

Public Member Functions | Friends
icu::message2::data_model::Markup::Builder Class Reference

The mutable `Markup::Builder` class allows the markup to be constructed incrementally. More...

`#include <messageformat2_data_model.h>`

Inheritance diagram for icu::message2::data_model::Markup::Builder:

## Public Member Functions
Builder & | setName (const UnicodeString &n)
| Sets the name of this markup.
Builder & | setOpen ()
| Sets this to be an opening markup.
Builder & | setClose ()
| Sets this to be an closing markup.
Builder & | setStandalone ()
| Sets this to be a standalone markup.
Builder & | addOption (const UnicodeString &key, Operand &&value, UErrorCode &status)
| Adds a single option.
Builder & | addAttribute (const UnicodeString &key, Operand &&value, UErrorCode &status)
| Adds a single attribute.
Markup | build (UErrorCode &status)
| Constructs a new immutable `Markup` using the name and type and (optionally) options and attributes that were previously set.
| Builder (UErrorCode &status)
| Default constructor.
virtual | ~Builder ()
| Destructor.
| Builder (const Builder &)=delete
Builder & | operator= (const Builder &)=delete
| Builder (Builder &&)=delete
Builder & | operator= (Builder &&)=delete

## Friends
class | Markup

## Detailed Description

The mutable `Markup::Builder` class allows the markup to be constructed incrementally.

Builder is not copyable or 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 1128 of file messageformat2_data_model.h.

## Constructor & Destructor Documentation

## ◆ Builder()

icu::message2::data_model::Markup::Builder::Builder | ( | UErrorCode & | status | ) |

Default constructor.

Returns a Builder with no name, type, options, or attributes set.

Parameters

  status | Input/output error code.

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

Deprecated
  This API is for technology preview only.

## ◆ ~Builder()

virtual icu::message2::data_model::Markup::Builder::~Builder | ( |  | ) |
| 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

## ◆ addAttribute()

Builder & icu::message2::data_model::Markup::Builder::addAttribute | ( | const UnicodeString & | key,
|  | Operand && | value,
|  | UErrorCode & | status )

Adds a single attribute.

Parameters

  key | The name of the attribute.
  value | The value (right-hand side) of the attribute.
  status | Input/output error code.

Returns
  A reference to the builder.

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

Deprecated
  This API is for technology preview only.

## ◆ addOption()

Builder & icu::message2::data_model::Markup::Builder::addOption | ( | const UnicodeString & | key,
|  | Operand && | value,
|  | UErrorCode & | status )

Adds a single option.

Parameters

  key | The name of the option.
  value | The value (right-hand side) of the option.
  status | Input/output error code.

Returns
  A reference to the builder.

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

Deprecated
  This API is for technology preview only.

## ◆ build()

Markup icu::message2::data_model::Markup::Builder::build | ( | UErrorCode & | status | ) |

Constructs a new immutable `Markup` using the name and type and (optionally) options and attributes that were previously set.

If `setName()` and at least one of `setOpen()`, `setClose()`, and `setStandalone()` were not previously called, then `status` is set to U_INVALID_STATE_ERROR.

The builder object (`this`) can still be used after calling `build()`. The `build()` method is non-const for internal implementation reasons, but is observably const.

Parameters

  status | Input/output error code.

Returns
  The new Markup.

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

Deprecated
  This API is for technology preview only.

## ◆ setClose()

Builder & icu::message2::data_model::Markup::Builder::setClose | ( |  | ) |
| inline

Sets this to be an closing markup.

Returns
  A reference to the builder.

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

## ◆ setName()

Builder & icu::message2::data_model::Markup::Builder::setName | ( | const UnicodeString & | n | ) |
| inline

Sets the name of this markup.

Parameters

  n | A string representing the name.

Returns
  A reference to the builder.

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

## ◆ setOpen()

Builder & icu::message2::data_model::Markup::Builder::setOpen | ( |  | ) |
| inline

Sets this to be an opening markup.

Returns
  A reference to the builder.

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

## ◆ setStandalone()

Builder & icu::message2::data_model::Markup::Builder::setStandalone | ( |  | ) |
| inline

Sets this to be a standalone markup.

Returns
  A reference to the builder.

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

## Friends And Related Symbol Documentation

## ◆ Markup

friend class Markup
| friend

Definition at line 1130 of file messageformat2_data_model.h.

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

- i18n/unicode/messageformat2_data_model.h