Showing content from https://unicode-org.github.io/icu-docs/apidoc/released/icu4c/classUCharCharacterIterator.html below:
ICU 77.1: icu::UCharCharacterIterator Class Reference
A concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a char16_t array. More...
#include <uchriter.h>
UCharCharacterIterator (ConstChar16Ptr textPtr, int32_t length) Create an iterator over the char16_t array referred to by "textPtr". More...
UCharCharacterIterator (ConstChar16Ptr textPtr, int32_t length, int32_t position) Create an iterator over the char16_t array referred to by "textPtr". More...
UCharCharacterIterator (ConstChar16Ptr textPtr, int32_t length, int32_t textBegin, int32_t textEnd, int32_t position) Create an iterator over the char16_t array referred to by "textPtr". More...
UCharCharacterIterator (const UCharCharacterIterator &that) Copy constructor. More...
virtual ~UCharCharacterIterator () Destructor. More...
UCharCharacterIterator & operator= (const UCharCharacterIterator &that) Assignment operator. More...
virtual bool operator== (const ForwardCharacterIterator &that) const override Returns true if the iterators iterate over the same range of the same string and are pointing at the same character. More...
virtual int32_t hashCode () const override Generates a hash code for this iterator. More...
virtual UCharCharacterIterator * clone () const override Returns a new UCharCharacterIterator referring to the same character in the same range of the same string as this one. More...
virtual char16_t first () override Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit. More...
virtual char16_t firstPostInc () override Sets the iterator to refer to the first code unit in its iteration range, returns that code unit, and moves the position to the second code unit. More...
virtual UChar32 first32 () override Sets the iterator to refer to the first code point in its iteration range, and returns that code unit, This can be used to begin an iteration with next32(). More...
virtual UChar32 first32PostInc () override Sets the iterator to refer to the first code point in its iteration range, returns that code point, and moves the position to the second code point. More...
virtual char16_t last () override Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit. More...
virtual UChar32 last32 () override Sets the iterator to refer to the last code point in its iteration range, and returns that code unit. More...
virtual char16_t setIndex (int32_t position) override Sets the iterator to refer to the "position"-th code unit in the text-storage object the iterator refers to, and returns that code unit. More...
virtual UChar32 setIndex32 (int32_t position) override Sets the iterator to refer to the beginning of the code point that contains the "position"-th code unit in the text-storage object the iterator refers to, and returns that code point. More...
virtual char16_t current () const override Returns the code unit the iterator currently refers to. More...
virtual UChar32 current32 () const override Returns the code point the iterator currently refers to. More...
virtual char16_t next () override Advances to the next code unit in the iteration range (toward endIndex()), and returns that code unit. More...
virtual char16_t nextPostInc () override Gets the current code unit for returning and advances to the next code unit in the iteration range (toward endIndex()). More...
virtual UChar32 next32 () override Advances to the next code point in the iteration range (toward endIndex()), and returns that code point. More...
virtual UChar32 next32PostInc () override Gets the current code point for returning and advances to the next code point in the iteration range (toward endIndex()). More...
virtual UBool hasNext () override Returns false if there are no more code units or code points at or after the current position in the iteration range. More...
virtual char16_t previous () override Advances to the previous code unit in the iteration range (toward startIndex()), and returns that code unit. More...
virtual UChar32 previous32 () override Advances to the previous code point in the iteration range (toward startIndex()), and returns that code point. More...
virtual UBool hasPrevious () override Returns false if there are no more code units or code points before the current position in the iteration range. More...
virtual int32_t move (int32_t delta, EOrigin origin) override Moves the current position relative to the start or end of the iteration range, or relative to the current position itself. More...
virtual int32_t move32 (int32_t delta, EOrigin origin) override Moves the current position relative to the start or end of the iteration range, or relative to the current position itself. More...
void setText (ConstChar16Ptr newText, int32_t newTextLength) Sets the iterator to iterate over a new range of text. More...
virtual void getText (UnicodeString &result) override Copies the char16_t array under iteration into the UnicodeString referred to by "result". More...
virtual UClassID getDynamicClassID () const override Return a class ID for this object (not really public) More...
virtual ~CharacterIterator () Destructor. More...
int32_t setToStart () Sets the iterator to refer to the first code unit or code point in its iteration range. More...
int32_t setToEnd () Sets the iterator to the end of its iteration range, just behind the last code unit or code point. More...
int32_t startIndex () const Returns the numeric index in the underlying text-storage object of the character returned by first(). More...
int32_t endIndex () const Returns the numeric index in the underlying text-storage object of the position immediately BEYOND the character returned by last(). More...
int32_t getIndex () const Returns the numeric index in the underlying text-storage object of the character the iterator currently refers to (i.e., the character returned by current()). More...
int32_t getLength () const Returns the length of the entire text in the underlying text-storage object. More...
virtual ~ForwardCharacterIterator () Destructor. More...
bool operator!= (const ForwardCharacterIterator &that) const Returns true when the iterators refer to different text-storage objects, or to different characters in the same text-storage object. More...
virtual ~UObject () Destructor. More...
UCharCharacterIterator () Protected constructor. More...
CharacterIterator () Empty constructor. More...
CharacterIterator (int32_t length) Constructor, just setting the length field in this base class. More...
CharacterIterator (int32_t length, int32_t position) Constructor, just setting the length and position fields in this base class. More...
CharacterIterator (int32_t length, int32_t textBegin, int32_t textEnd, int32_t position) Constructor, just setting the length, start, end, and position fields in this base class. More...
CharacterIterator (const CharacterIterator &that) Copy constructor. More...
CharacterIterator & operator= (const CharacterIterator &that) Assignment operator. More...
ForwardCharacterIterator () Default constructor to be overridden in the implementing class. More...
ForwardCharacterIterator (const ForwardCharacterIterator &other) Copy constructor to be overridden in the implementing class. More...
ForwardCharacterIterator & operator= (const ForwardCharacterIterator &) Assignment operator to be overridden in the implementing class. More...
const char16_t * text Protected member text. More...
int32_t textLength Base class text length field. More...
int32_t pos Base class field for the current position. More...
int32_t begin Base class field for the start of the iteration range. More...
int32_t end Base class field for the end of the iteration range. More...
A concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a char16_t array.
It's possible not only to create an iterator that iterates over an entire char16_t array, but also to create one that iterates over only a subrange of a char16_t array (iterators over different subranges of the same char16_t array don't compare equal).
-
See also
-
CharacterIterator
-
ForwardCharacterIterator
-
Stable:
-
ICU 2.0
Definition at line 38 of file uchriter.h.
◆ UCharCharacterIterator() [1/5] icu::UCharCharacterIterator::UCharCharacterIterator ( ConstChar16Ptr textPtr, int32_t length )
Create an iterator over the char16_t array referred to by "textPtr".
The iteration range is 0 to length-1
. text is only aliased, not adopted (the destructor will not delete it).
-
Parameters
-
textPtr The char16_t array to be iterated over length The length of the char16_t array
-
Stable:
-
ICU 2.0
◆ UCharCharacterIterator() [2/5] icu::UCharCharacterIterator::UCharCharacterIterator ( ConstChar16Ptr textPtr, int32_t length, int32_t position )
Create an iterator over the char16_t array referred to by "textPtr".
The iteration range is 0 to length-1
. text is only aliased, not adopted (the destructor will not delete it). The starting position is specified by "position". If "position" is outside the valid iteration range, the behavior of this object is undefined.
-
Parameters
-
textPtr The char16_t array to be iterated over length The length of the char16_t array position The starting position of the iteration
-
Stable:
-
ICU 2.0
◆ UCharCharacterIterator() [3/5] icu::UCharCharacterIterator::UCharCharacterIterator ( ConstChar16Ptr textPtr, int32_t length, int32_t textBegin, int32_t textEnd, int32_t position )
Create an iterator over the char16_t array referred to by "textPtr".
The iteration range is 0 to end-1
. text is only aliased, not adopted (the destructor will not delete it). The starting position is specified by "position". If begin and end do not form a valid iteration range or "position" is outside the valid iteration range, the behavior of this object is undefined.
-
Parameters
-
textPtr The char16_t array to be iterated over length The length of the char16_t array textBegin The begin position of the iteration range textEnd The end position of the iteration range position The starting position of the iteration
-
Stable:
-
ICU 2.0
◆ UCharCharacterIterator() [4/5]
Copy constructor.
The new iterator iterates over the same range of the same string as "that", and its initial position is the same as "that"'s current position.
-
Parameters
-
-
Stable:
-
ICU 2.0
◆ ~UCharCharacterIterator() virtual icu::UCharCharacterIterator::~UCharCharacterIterator ( ) virtual ◆ UCharCharacterIterator() [5/5] icu::UCharCharacterIterator::UCharCharacterIterator ( ) protected
Protected constructor.
-
Stable:
-
ICU 2.0
◆ clone() ◆ current() virtual char16_t icu::UCharCharacterIterator::current ( ) const overridevirtual
Returns the code unit the iterator currently refers to.
-
Returns
-
the code unit the iterator currently refers to.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ current32() virtual UChar32 icu::UCharCharacterIterator::current32 ( ) const overridevirtual
Returns the code point the iterator currently refers to.
-
Returns
-
the code point the iterator currently refers to.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ first() virtual char16_t icu::UCharCharacterIterator::first ( ) overridevirtual
Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit.
This can be used to begin an iteration with next().
-
Returns
-
the first code unit in its iteration range.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ first32() virtual UChar32 icu::UCharCharacterIterator::first32 ( ) overridevirtual ◆ first32PostInc() virtual UChar32 icu::UCharCharacterIterator::first32PostInc ( ) overridevirtual
Sets the iterator to refer to the first code point in its iteration range, returns that code point, and moves the position to the second code point.
This is an alternative to setToStart() for forward iteration with next32PostInc().
-
Returns
-
the first code point in its iteration range.
-
Stable:
-
ICU 2.0
Reimplemented from icu::CharacterIterator.
◆ firstPostInc() virtual char16_t icu::UCharCharacterIterator::firstPostInc ( ) overridevirtual
Sets the iterator to refer to the first code unit in its iteration range, returns that code unit, and moves the position to the second code unit.
This is an alternative to setToStart() for forward iteration with nextPostInc().
-
Returns
-
the first code unit in its iteration range
-
Stable:
-
ICU 2.0
Reimplemented from icu::CharacterIterator.
◆ getDynamicClassID() virtual UClassID icu::UCharCharacterIterator::getDynamicClassID ( ) const overridevirtual ◆ getStaticClassID() static UClassID icu::UCharCharacterIterator::getStaticClassID ( ) static
Return a class ID for this class (not really public)
-
Returns
-
a class ID for this class
-
Stable:
-
ICU 2.0
◆ getText() virtual void icu::UCharCharacterIterator::getText ( UnicodeString & result ) overridevirtual ◆ hashCode() virtual int32_t icu::UCharCharacterIterator::hashCode ( ) const overridevirtual ◆ hasNext() virtual UBool icu::UCharCharacterIterator::hasNext ( ) overridevirtual
Returns false if there are no more code units or code points at or after the current position in the iteration range.
This is used with nextPostInc() or next32PostInc() in forward iteration.
-
Returns
-
false if there are no more code units or code points at or after the current position in the iteration range.
-
Stable:
-
ICU 2.0
Implements icu::ForwardCharacterIterator.
◆ hasPrevious() virtual UBool icu::UCharCharacterIterator::hasPrevious ( ) overridevirtual
Returns false if there are no more code units or code points before the current position in the iteration range.
This is used with previous() or previous32() in backward iteration.
-
Returns
-
false if there are no more code units or code points before the current position in the iteration range.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ last() virtual char16_t icu::UCharCharacterIterator::last ( ) overridevirtual
Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit.
This can be used to begin an iteration with previous().
-
Returns
-
the last code unit in its iteration range.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ last32() virtual UChar32 icu::UCharCharacterIterator::last32 ( ) overridevirtual
Sets the iterator to refer to the last code point in its iteration range, and returns that code unit.
This can be used to begin an iteration with previous32().
-
Returns
-
the last code point in its iteration range.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ move() virtual int32_t icu::UCharCharacterIterator::move ( int32_t delta, EOrigin origin ) overridevirtual
Moves the current position relative to the start or end of the iteration range, or relative to the current position itself.
The movement is expressed in numbers of code units forward or backward by specifying a positive or negative delta.
-
Parameters
-
delta the position relative to origin. A positive delta means forward; a negative delta means backward. origin Origin enumeration {kStart, kCurrent, kEnd}
-
Returns
-
the new position
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ move32() virtual int32_t icu::UCharCharacterIterator::move32 ( int32_t delta, EOrigin origin ) overridevirtual
Moves the current position relative to the start or end of the iteration range, or relative to the current position itself.
The movement is expressed in numbers of code points forward or backward by specifying a positive or negative delta.
-
Parameters
-
delta the position relative to origin. A positive delta means forward; a negative delta means backward. origin Origin enumeration {kStart, kCurrent, kEnd}
-
Returns
-
the new position
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ next() virtual char16_t icu::UCharCharacterIterator::next ( ) overridevirtual
Advances to the next code unit in the iteration range (toward endIndex()), and returns that code unit.
If there are no more code units to return, returns DONE.
-
Returns
-
the next code unit in the iteration range.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ next32() virtual UChar32 icu::UCharCharacterIterator::next32 ( ) overridevirtual
Advances to the next code point in the iteration range (toward endIndex()), and returns that code point.
If there are no more code points to return, returns DONE. Note that iteration with "pre-increment" semantics is less efficient than iteration with "post-increment" semantics that is provided by next32PostInc().
-
Returns
-
the next code point in the iteration range.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ next32PostInc() virtual UChar32 icu::UCharCharacterIterator::next32PostInc ( ) overridevirtual
Gets the current code point for returning and advances to the next code point in the iteration range (toward endIndex()).
If there are no more code points to return, returns DONE.
-
Returns
-
the current point.
-
Stable:
-
ICU 2.0
Implements icu::ForwardCharacterIterator.
◆ nextPostInc() virtual char16_t icu::UCharCharacterIterator::nextPostInc ( ) overridevirtual
Gets the current code unit for returning and advances to the next code unit in the iteration range (toward endIndex()).
If there are no more code units to return, returns DONE.
-
Returns
-
the current code unit.
-
Stable:
-
ICU 2.0
Implements icu::ForwardCharacterIterator.
◆ operator=()
Assignment operator.
*this is altered to iterate over the sane range of the same string as "that", and refers to the same character within that string as "that" does.
-
Parameters
-
that The object to be copied
-
Returns
-
the newly created object
-
Stable:
-
ICU 2.0
◆ operator==()
Returns true if the iterators iterate over the same range of the same string and are pointing at the same character.
-
Parameters
-
-
Returns
-
true if the iterators iterate over the same range of the same string and are pointing at the same character.
-
Stable:
-
ICU 2.0
Implements icu::ForwardCharacterIterator.
Reimplemented in icu::StringCharacterIterator.
◆ previous() virtual char16_t icu::UCharCharacterIterator::previous ( ) overridevirtual
Advances to the previous code unit in the iteration range (toward startIndex()), and returns that code unit.
If there are no more code units to return, returns DONE.
-
Returns
-
the previous code unit in the iteration range.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ previous32() virtual UChar32 icu::UCharCharacterIterator::previous32 ( ) overridevirtual
Advances to the previous code point in the iteration range (toward startIndex()), and returns that code point.
If there are no more code points to return, returns DONE.
-
Returns
-
the previous code point in the iteration range.
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ setIndex() virtual char16_t icu::UCharCharacterIterator::setIndex ( int32_t position ) overridevirtual
Sets the iterator to refer to the "position"-th code unit in the text-storage object the iterator refers to, and returns that code unit.
-
Parameters
-
position the position within the text-storage object
-
Returns
-
the code unit
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ setIndex32() virtual UChar32 icu::UCharCharacterIterator::setIndex32 ( int32_t position ) overridevirtual
Sets the iterator to refer to the beginning of the code point that contains the "position"-th code unit in the text-storage object the iterator refers to, and returns that code point.
The current position is adjusted to the beginning of the code point (its first code unit).
-
Parameters
-
position the position within the text-storage object
-
Returns
-
the code unit
-
Stable:
-
ICU 2.0
Implements icu::CharacterIterator.
◆ setText() void icu::UCharCharacterIterator::setText ( ConstChar16Ptr newText, int32_t newTextLength )
Sets the iterator to iterate over a new range of text.
-
Stable:
-
ICU 2.0
◆ text const char16_t* icu::UCharCharacterIterator::text protected
The documentation for this class was generated from the following file:
RetroSearch is an open source project built by @garambo
| Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4