ICU 66.0.1  66.0.1
Data Structures | Public Member Functions
icu::UCharsTrieBuilder Class Reference

Builder class for UCharsTrie. More...

#include <ucharstriebuilder.h>

Inheritance diagram for icu::UCharsTrieBuilder:

Public Member Functions

 UCharsTrieBuilder (UErrorCode &errorCode)
 Constructs an empty builder. More...
 
virtual ~UCharsTrieBuilder ()
 Destructor. More...
 
UCharsTrieBuilderadd (const UnicodeString &s, int32_t value, UErrorCode &errorCode)
 Adds a (string, value) pair. More...
 
UCharsTriebuild (UStringTrieBuildOption buildOption, UErrorCode &errorCode)
 Builds a UCharsTrie for the add()ed data. More...
 
UnicodeStringbuildUnicodeString (UStringTrieBuildOption buildOption, UnicodeString &result, UErrorCode &errorCode)
 Builds a UCharsTrie for the add()ed data and char16_t-serializes it. More...
 
UCharsTrieBuilderclear ()
 Removes all (string, value) pairs. More...
 

Detailed Description

Builder class for UCharsTrie.

This class is not intended for public subclassing.

Stable:
ICU 4.8

Definition at line 43 of file ucharstriebuilder.h.

Constructor & Destructor Documentation

◆ UCharsTrieBuilder()

icu::UCharsTrieBuilder::UCharsTrieBuilder ( UErrorCode errorCode)

Constructs an empty builder.

Parameters
errorCodeStandard ICU error code.
Stable:
ICU 4.8

◆ ~UCharsTrieBuilder()

virtual icu::UCharsTrieBuilder::~UCharsTrieBuilder ( )
virtual

Destructor.

Stable:
ICU 4.8

Member Function Documentation

◆ add()

UCharsTrieBuilder& icu::UCharsTrieBuilder::add ( const UnicodeString s,
int32_t  value,
UErrorCode errorCode 
)

Adds a (string, value) pair.

The string must be unique. The string contents will be copied; the builder does not keep a reference to the input UnicodeString or its buffer.

Parameters
sThe input string.
valueThe value associated with this string.
errorCodeStandard ICU error code. Its input value must pass the U_SUCCESS() test, or else the function returns immediately. Check for U_FAILURE() on output or use with function chaining. (See User Guide for details.)
Returns
*this
Stable:
ICU 4.8

◆ build()

UCharsTrie* icu::UCharsTrieBuilder::build ( UStringTrieBuildOption  buildOption,
UErrorCode errorCode 
)

Builds a UCharsTrie for the add()ed data.

Once built, no further data can be add()ed until clear() is called.

A UCharsTrie cannot be empty. At least one (string, value) pair must have been add()ed.

This method passes ownership of the builder's internal result array to the new trie object. Another call to any build() variant will re-serialize the trie. After clear() has been called, a new array will be used as well.

Parameters
buildOptionBuild option, see UStringTrieBuildOption.
errorCodeStandard ICU error code. Its input value must pass the U_SUCCESS() test, or else the function returns immediately. Check for U_FAILURE() on output or use with function chaining. (See User Guide for details.)
Returns
A new UCharsTrie for the add()ed data.
Stable:
ICU 4.8

◆ buildUnicodeString()

UnicodeString& icu::UCharsTrieBuilder::buildUnicodeString ( UStringTrieBuildOption  buildOption,
UnicodeString result,
UErrorCode errorCode 
)

Builds a UCharsTrie for the add()ed data and char16_t-serializes it.

Once built, no further data can be add()ed until clear() is called.

A UCharsTrie cannot be empty. At least one (string, value) pair must have been add()ed.

Multiple calls to buildUnicodeString() set the UnicodeStrings to the builder's same char16_t array, without rebuilding. If buildUnicodeString() is called after build(), the trie will be re-serialized into a new array. If build() is called after buildUnicodeString(), the trie object will become the owner of the previously returned array. After clear() has been called, a new array will be used as well.

Parameters
buildOptionBuild option, see UStringTrieBuildOption.
resultA UnicodeString which will be set to the char16_t-serialized UCharsTrie for the add()ed data.
errorCodeStandard ICU error code. Its input value must pass the U_SUCCESS() test, or else the function returns immediately. Check for U_FAILURE() on output or use with function chaining. (See User Guide for details.)
Returns
result
Stable:
ICU 4.8

◆ clear()

UCharsTrieBuilder& icu::UCharsTrieBuilder::clear ( )
inline

Removes all (string, value) pairs.

New data can then be add()ed and a new trie can be built.

Returns
*this
Stable:
ICU 4.8

Definition at line 127 of file ucharstriebuilder.h.

References icu::operator==(), and TRUE.


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