Loading...
Searching...
No Matches
icu::BytesTrie::Iterator Class Reference

Iterator for all of the (byte sequence, value) pairs in a BytesTrie. More...

`#include <bytestrie.h>`

Inheritance diagram for icu::BytesTrie::Iterator:

## Public Member Functions

| Iterator (const void *trieBytes, int32_t maxStringLength, UErrorCode &errorCode)
| Iterates from the root of a byte-serialized BytesTrie.
| Iterator (const BytesTrie &trie, int32_t maxStringLength, UErrorCode &errorCode)
| Iterates from the current state of the specified BytesTrie.
| ~Iterator ()
| Destructor.
Iterator & | reset ()
| Resets this iterator to its initial state.
UBool | hasNext () const
UBool | next (UErrorCode &errorCode)
| Finds the next (byte sequence, value) pair if there is one.
StringPiece | getString () const
int32_t | getValue () const

## Detailed Description

Iterator for all of the (byte sequence, value) pairs in a BytesTrie.

Stable
  ICU 4.8

Definition at line 282 of file bytestrie.h.

## Constructor & Destructor Documentation

## Iterator() [1/2]

icu::BytesTrie::Iterator::Iterator | ( | const void * | trieBytes,
|  | int32_t | maxStringLength,
|  | UErrorCode & | errorCode )

Iterates from the root of a byte-serialized BytesTrie.

Parameters

  trieBytes | The trie bytes.
  maxStringLength | If 0, the iterator returns full strings/byte sequences. Otherwise, the iterator returns strings with this maximum length.
  errorCode | Standard 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.)

Stable
  ICU 4.8

Referenced by reset().

## Iterator() [2/2]

icu::BytesTrie::Iterator::Iterator | ( | const BytesTrie & | trie,
|  | int32_t | maxStringLength,
|  | UErrorCode & | errorCode )

Iterates from the current state of the specified BytesTrie.

Parameters

  trie | The trie whose state will be copied for iteration.
  maxStringLength | If 0, the iterator returns full strings/byte sequences. Otherwise, the iterator returns strings with this maximum length.
  errorCode | Standard 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.)

Stable
  ICU 4.8

References icu::BytesTrie::BytesTrie().

## ~Iterator()

icu::BytesTrie::Iterator::~Iterator | ( |  | ) |

Destructor.

Stable
  ICU 4.8

## Member Function Documentation

## getString()

StringPiece icu::BytesTrie::Iterator::getString | ( |  | ) | const

Returns
  The NUL-terminated byte sequence for the last successful next().

Stable
  ICU 4.8

## getValue()

int32_t icu::BytesTrie::Iterator::getValue | ( |  | ) | const

inline

Returns
  The value for the last successful next().

Stable
  ICU 4.8

Definition at line 354 of file bytestrie.h.

## hasNext()

UBool icu::BytesTrie::Iterator::hasNext | ( |  | ) | const

Returns
  true if there are more elements.

Stable
  ICU 4.8

## next()

UBool icu::BytesTrie::Iterator::next | ( | UErrorCode & | errorCode | ) |

Finds the next (byte sequence, value) pair if there is one.

If the byte sequence is truncated to the maximum length and does not have a real value, then the value is set to -1. In this case, this "not a real value" is indistinguishable from a real value of -1.

Parameters

  errorCode | Standard 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
  true if there is another element.

Stable
  ICU 4.8

## reset()

Iterator & icu::BytesTrie::Iterator::reset | ( |  | ) |

Resets this iterator to its initial state.

Returns
  *this

Stable
  ICU 4.8

References Iterator().

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

- common/unicode/bytestrie.h