Loading...
Searching...
No Matches
icu::message2::MFFunctionRegistry Class Reference

Defines mappings from names of formatters and selectors to functions implementing them. More...

`#include <messageformat2_function_registry.h>`

Inheritance diagram for icu::message2::MFFunctionRegistry:

## Data Structures

class | Builder
| The mutable Builder class allows each formatter and selector factory to be initialized separately; calling its build() method yields an immutable MFFunctionRegistry object. More...

## Public Member Functions

FormatterFactory * | getFormatter (const FunctionName &formatterName) const
| Looks up a formatter factory by the name of the formatter.
const SelectorFactory * | getSelector (const FunctionName &selectorName) const
| Looks up a selector factory by the name of the selector.
UBool | getDefaultFormatterNameByType (const UnicodeString &formatterType, FunctionName &name) const
| Looks up a formatter factory by a type tag.
MFFunctionRegistry & | operator= (MFFunctionRegistry &&) noexcept
| Move assignment operator: The source MFFunctionRegistry will be left in a valid but undefined state.
| MFFunctionRegistry (MFFunctionRegistry &&other)
| Move constructor: The source MFFunctionRegistry will be left in a valid but undefined state.
virtual | ~MFFunctionRegistry ()
| 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 | MessageContext
class | MessageFormatter

## Detailed Description

Defines mappings from names of formatters and selectors to functions implementing them.

The required set of formatter and selector functions is defined in the spec. Users can also define custom formatter and selector functions.

MFFunctionRegistry is immutable and movable. It is not copyable.

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 119 of file messageformat2_function_registry.h.

## Constructor & Destructor Documentation

## MFFunctionRegistry()

icu::message2::MFFunctionRegistry::MFFunctionRegistry | ( | MFFunctionRegistry && | other | ) |

inline

Move constructor: The source MFFunctionRegistry will be left in 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 293 of file messageformat2_function_registry.h.

References MFFunctionRegistry().

Referenced by icu::message2::MFFunctionRegistry::Builder::build(), MFFunctionRegistry(), operator=(), and ~MFFunctionRegistry().

## ~MFFunctionRegistry()

virtual icu::message2::MFFunctionRegistry::~MFFunctionRegistry | ( |  | ) |

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 MFFunctionRegistry(), and operator=().

## Member Function Documentation

## getDefaultFormatterNameByType()

UBool icu::message2::MFFunctionRegistry::getDefaultFormatterNameByType | ( | const UnicodeString & | formatterType,
|  | FunctionName & | name ) const

Looks up a formatter factory by a type tag.

This method gets the name of the default formatter registered for that type. If no formatter was explicitly registered for this type, it returns false.

Parameters

  formatterType | Type tag for the desired FormattableObject type to be formatted.
  name | Output parameter; initialized to the name of the default formatter for formatterType if one has been registered. Its value is undefined otherwise.

Returns
  True if and only if the function registry contains a default formatter for formatterType. If the return value is false, then the value of name is undefined.

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

Deprecated
  This API is for technology preview only.

## getFormatter()

FormatterFactory * icu::message2::MFFunctionRegistry::getFormatter | ( | const FunctionName & | formatterName | ) | const

Looks up a formatter factory by the name of the formatter.

The result is non-const, since formatter factories may have local state. Returns the result by pointer rather than by reference since it can fail.

Parameters

  formatterName | Name of the desired formatter.

Returns
  A pointer to the FormatterFactory registered under formatterName, or null if no formatter was registered under that name. The pointer is not owned by the caller.

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

Deprecated
  This API is for technology preview only.

## getSelector()

const SelectorFactory * icu::message2::MFFunctionRegistry::getSelector | ( | const FunctionName & | selectorName | ) | const

Looks up a selector factory by the name of the selector.

(This returns the result by pointer rather than by reference since FormatterFactory is an abstract class.)

Parameters

  selectorName | Name of the desired selector.

Returns
  A pointer to the SelectorFactory registered under selectorName, or null if no formatter was registered under that name.

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

Deprecated
  This API is for technology preview only.

## operator=()

MFFunctionRegistry & icu::message2::MFFunctionRegistry::operator= | ( | MFFunctionRegistry && |  | ) |

noexcept

Move assignment operator: The source MFFunctionRegistry will be left in 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.

References MFFunctionRegistry().

Referenced by ~MFFunctionRegistry().

## Friends And Related Symbol Documentation

## MessageContext

friend class MessageContext

friend

Definition at line 303 of file messageformat2_function_registry.h.

## MessageFormatter

friend class MessageFormatter

friend

Definition at line 304 of file messageformat2_function_registry.h.

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

- i18n/unicode/messageformat2_function_registry.h