ICU 4.8.1.1
4.8.1.1
|
A concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a UnicodeString. More...
#include <schriter.h>
Public Member Functions | |
StringCharacterIterator (const UnicodeString &textStr) | |
Create an iterator over the UnicodeString referred to by "textStr". | |
StringCharacterIterator (const UnicodeString &textStr, int32_t textPos) | |
Create an iterator over the UnicodeString referred to by "textStr". | |
StringCharacterIterator (const UnicodeString &textStr, int32_t textBegin, int32_t textEnd, int32_t textPos) | |
Create an iterator over the UnicodeString referred to by "textStr". | |
StringCharacterIterator (const StringCharacterIterator &that) | |
Copy constructor. | |
virtual | ~StringCharacterIterator () |
Destructor. | |
StringCharacterIterator & | operator= (const StringCharacterIterator &that) |
Assignment operator. | |
virtual UBool | operator== (const ForwardCharacterIterator &that) const |
Returns true if the iterators iterate over the same range of the same string and are pointing at the same character. | |
virtual CharacterIterator * | clone (void) const |
Returns a new StringCharacterIterator referring to the same character in the same range of the same string as this one. | |
void | setText (const UnicodeString &newText) |
Sets the iterator to iterate over the provided string. | |
virtual void | getText (UnicodeString &result) |
Copies the UnicodeString under iteration into the UnicodeString referred to by "result". | |
virtual UClassID | getDynamicClassID (void) const |
Return a class ID for this object (not really public) | |
![]() | |
UCharCharacterIterator (const UChar *textPtr, int32_t length) | |
Create an iterator over the UChar array referred to by "textPtr". | |
UCharCharacterIterator (const UChar *textPtr, int32_t length, int32_t position) | |
Create an iterator over the UChar array referred to by "textPtr". | |
UCharCharacterIterator (const UChar *textPtr, int32_t length, int32_t textBegin, int32_t textEnd, int32_t position) | |
Create an iterator over the UChar array referred to by "textPtr". | |
UCharCharacterIterator (const UCharCharacterIterator &that) | |
Copy constructor. | |
virtual | ~UCharCharacterIterator () |
Destructor. | |
UCharCharacterIterator & | operator= (const UCharCharacterIterator &that) |
Assignment operator. | |
virtual int32_t | hashCode (void) const |
Generates a hash code for this iterator. | |
virtual UChar | first (void) |
Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit. | |
virtual UChar | firstPostInc (void) |
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. | |
virtual UChar32 | first32 (void) |
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(). | |
virtual UChar32 | first32PostInc (void) |
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. | |
virtual UChar | last (void) |
Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit. | |
virtual UChar32 | last32 (void) |
Sets the iterator to refer to the last code point in its iteration range, and returns that code unit. | |
virtual UChar | setIndex (int32_t position) |
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. | |
virtual UChar32 | setIndex32 (int32_t position) |
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. | |
virtual UChar | current (void) const |
Returns the code unit the iterator currently refers to. | |
virtual UChar32 | current32 (void) const |
Returns the code point the iterator currently refers to. | |
virtual UChar | next (void) |
Advances to the next code unit in the iteration range (toward endIndex()), and returns that code unit. | |
virtual UChar | nextPostInc (void) |
Gets the current code unit for returning and advances to the next code unit in the iteration range (toward endIndex()). | |
virtual UChar32 | next32 (void) |
Advances to the next code point in the iteration range (toward endIndex()), and returns that code point. | |
virtual UChar32 | next32PostInc (void) |
Gets the current code point for returning and advances to the next code point in the iteration range (toward endIndex()). | |
virtual UBool | hasNext () |
Returns FALSE if there are no more code units or code points at or after the current position in the iteration range. | |
virtual UChar | previous (void) |
Advances to the previous code unit in the iteration range (toward startIndex()), and returns that code unit. | |
virtual UChar32 | previous32 (void) |
Advances to the previous code point in the iteration range (toward startIndex()), and returns that code point. | |
virtual UBool | hasPrevious () |
Returns FALSE if there are no more code units or code points before the current position in the iteration range. | |
virtual int32_t | move (int32_t delta, EOrigin origin) |
Moves the current position relative to the start or end of the iteration range, or relative to the current position itself. | |
virtual int32_t | move32 (int32_t delta, EOrigin origin) |
Moves the current position relative to the start or end of the iteration range, or relative to the current position itself. | |
![]() | |
int32_t | setToStart () |
Sets the iterator to refer to the first code unit or code point in its iteration range. | |
int32_t | setToEnd () |
Sets the iterator to the end of its iteration range, just behind the last code unit or code point. | |
int32_t | startIndex (void) const |
Returns the numeric index in the underlying text-storage object of the character returned by first(). | |
int32_t | endIndex (void) const |
Returns the numeric index in the underlying text-storage object of the position immediately BEYOND the character returned by last(). | |
int32_t | getIndex (void) 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()). | |
int32_t | getLength () const |
Returns the length of the entire text in the underlying text-storage object. | |
![]() | |
virtual | ~ForwardCharacterIterator () |
Destructor. | |
UBool | 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. | |
![]() | |
virtual | ~UObject () |
Destructor. |
Static Public Member Functions | |
static UClassID | getStaticClassID (void) |
Return a class ID for this class (not really public) |
Protected Member Functions | |
StringCharacterIterator () | |
Default constructor, iteration over empty string. | |
void | setText (const UChar *newText, int32_t newTextLength) |
Sets the iterator to iterate over the provided string. | |
![]() | |
UCharCharacterIterator () | |
Protected constructor. | |
![]() | |
CharacterIterator () | |
Empty constructor. | |
CharacterIterator (int32_t length) | |
Constructor, just setting the length field in this base class. | |
CharacterIterator (int32_t length, int32_t position) | |
Constructor, just setting the length and position fields in this base class. | |
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. | |
CharacterIterator (const CharacterIterator &that) | |
Copy constructor. | |
CharacterIterator & | operator= (const CharacterIterator &that) |
Assignment operator. | |
![]() | |
ForwardCharacterIterator () | |
Default constructor to be overridden in the implementing class. | |
ForwardCharacterIterator (const ForwardCharacterIterator &other) | |
Copy constructor to be overridden in the implementing class. | |
ForwardCharacterIterator & | operator= (const ForwardCharacterIterator &) |
Assignment operator to be overridden in the implementing class. |
Protected Attributes | |
UnicodeString | text |
Copy of the iterated string object. | |
![]() | |
![]() | |
int32_t | textLength |
Base class text length field. | |
int32_t | pos |
Base class field for the current position. | |
int32_t | begin |
Base class field for the start of the iteration range. | |
int32_t | end |
Base class field for the end of the iteration range. |
A concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a UnicodeString.
It's possible not only to create an iterator that iterates over an entire UnicodeString, but also to create one that iterates over only a subrange of a UnicodeString (iterators over different subranges of the same UnicodeString don't compare equal).
Definition at line 43 of file schriter.h.
StringCharacterIterator::StringCharacterIterator | ( | const UnicodeString & | textStr | ) |
Create an iterator over the UnicodeString referred to by "textStr".
The UnicodeString object is copied. The iteration range is the whole string, and the starting position is 0.
textStr | The unicode string used to create an iterator |
StringCharacterIterator::StringCharacterIterator | ( | const UnicodeString & | textStr, |
int32_t | textPos | ||
) |
Create an iterator over the UnicodeString referred to by "textStr".
The iteration range is the whole string, and the starting position is specified by "textPos". If "textPos" is outside the valid iteration range, the behavior of this object is undefined.
textStr | The unicode string used to create an iterator |
textPos | The starting position of the iteration |
StringCharacterIterator::StringCharacterIterator | ( | const UnicodeString & | textStr, |
int32_t | textBegin, | ||
int32_t | textEnd, | ||
int32_t | textPos | ||
) |
Create an iterator over the UnicodeString referred to by "textStr".
The UnicodeString object is copied. The iteration range begins with the code unit specified by "textBegin" and ends with the code unit BEFORE the code unit specfied by "textEnd". The starting position is specified by "textPos". If "textBegin" and "textEnd" don't form a valid range on "text" (i.e., textBegin >= textEnd or either is negative or greater than text.size()), or "textPos" is outside the range defined by "textBegin" and "textEnd", the behavior of this iterator is undefined.
textStr | The unicode string used to create the StringCharacterIterator |
textBegin | The begin position of the iteration range |
textEnd | The end position of the iteration range |
textPos | The starting position of the iteration |
StringCharacterIterator::StringCharacterIterator | ( | const StringCharacterIterator & | that | ) |
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. The UnicodeString object in "that" is copied.
that | The StringCharacterIterator to be copied |
|
virtual |
Destructor.
|
protected |
Default constructor, iteration over empty string.
|
virtual |
Returns a new StringCharacterIterator referring to the same character in the same range of the same string as this one.
The caller must delete the new iterator.
Reimplemented from UCharCharacterIterator.
|
virtual |
Return a class ID for this object (not really public)
Reimplemented from UCharCharacterIterator.
|
static |
Return a class ID for this class (not really public)
Reimplemented from UCharCharacterIterator.
|
virtual |
Copies the UnicodeString under iteration into the UnicodeString referred to by "result".
Even if this iterator iterates across only a part of this string, the whole string is copied.
result | Receives a copy of the text under iteration. |
Reimplemented from UCharCharacterIterator.
StringCharacterIterator& StringCharacterIterator::operator= | ( | const StringCharacterIterator & | that | ) |
Assignment operator.
*this is altered to iterate over the same range of the same string as "that", and refers to the same character within that string as "that" does.
that | The object to be copied. |
|
virtual |
Returns true if the iterators iterate over the same range of the same string and are pointing at the same character.
that | The ForwardCharacterIterator to be compared for equality |
Reimplemented from UCharCharacterIterator.
void StringCharacterIterator::setText | ( | const UnicodeString & | newText | ) |
Sets the iterator to iterate over the provided string.
newText | The string to be iterated over |
Sets the iterator to iterate over the provided string.
newText | The string to be iterated over |
newTextLength | The length of the String |
Reimplemented from UCharCharacterIterator.
|
protected |
Copy of the iterated string object.
Reimplemented from UCharCharacterIterator.
Definition at line 182 of file schriter.h.