ICU 78.3 78.3

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. More...
Builder & | setOpen ()
| Sets this to be an opening markup. More...
Builder & | setClose ()
| Sets this to be an closing markup. More...
Builder & | setStandalone ()
| Sets this to be a standalone markup. More...
Builder & | addOption (const UnicodeString &key, Operand &&value, UErrorCode &status)
| Adds a single option. More...
Builder & | addAttribute (const UnicodeString &key, Operand &&value, UErrorCode &status)
| Adds a single attribute. More...
Markup | build (UErrorCode &status)
| Constructs a new immutable `Markup` using the name and type and (optionally) options and attributes that were previously set. More...
| Builder (UErrorCode &status)
| Default constructor. More...
virtual | ~Builder ()
| Destructor. More...
| 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 1024 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 1060 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 1042 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 1051 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 1069 of file messageformat2_data_model.h.

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

- i18n/unicode/messageformat2_data_model.h