Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

StringCharacterIterator Class Reference

A concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a UnicodeString. More...

#include <schriter.h>

Inheritance diagram for StringCharacterIterator:

UCharCharacterIterator CharacterIterator ForwardCharacterIterator List of all members.

Public Methods

 StringCharacterIterator (const UnicodeString& textStr)
 Create an iterator over the UnicodeString referred to by "textStr". More...

 StringCharacterIterator (const UnicodeString& textStr, UTextOffset textPos)
 Create an iterator over the UnicodeString referred to by "textStr". More...

 StringCharacterIterator (const UnicodeString& textStr, UTextOffset textBegin, UTextOffset textEnd, UTextOffset textPos)
 Create an iterator over the UnicodeString referred to by "textStr". More...

 StringCharacterIterator (const StringCharacterIterator& that)
 Copy constructor. More...

virtual ~StringCharacterIterator ()
 Destructor. More...

StringCharacterIterator& operator= (const StringCharacterIterator& that)
 Assignment operator. More...

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. More...

virtual CharacterIteratorclone (void) const
 Returns a new StringCharacterIterator referring to the same character in the same range of the same string as this one. More...

void setText (const UnicodeString& newText)
 Sets the iterator to iterate over the provided string. More...

virtual void getText (UnicodeString& result)
 Copies the UnicodeString under iteration into the UnicodeString referred to by "result". More...

virtual UClassID getDynamicClassID (void) const
 Return a class ID for this object (not really public). More...


Static Public Methods

UClassID getStaticClassID (void)
 Return a class ID for this class (not really public). More...


Protected Methods

 StringCharacterIterator ()
void setText (const UChar* newText, int32_t newTextLength)
 Sets the iterator to iterate over a new range of text. More...


Protected Attributes

UnicodeString text

Static Protected Attributes

UClassID fgClassID

Detailed Description

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).

See also:
CharacterIterator , ForwardCharacterIterator

Definition at line 36 of file schriter.h.


Constructor & Destructor Documentation

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.

Stable:

StringCharacterIterator::StringCharacterIterator ( const UnicodeString & textStr,
UTextOffset 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.

Stable:

StringCharacterIterator::StringCharacterIterator ( const UnicodeString & textStr,
UTextOffset textBegin,
UTextOffset textEnd,
UTextOffset 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.

Stable:

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.

Stable:

StringCharacterIterator::~StringCharacterIterator ( ) [virtual]
 

Destructor.

Stable:

StringCharacterIterator::StringCharacterIterator ( ) [protected]
 


Member Function Documentation

CharacterIterator * StringCharacterIterator::clone ( void ) const [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.

Draft:

Reimplemented from UCharCharacterIterator.

UClassID StringCharacterIterator::getDynamicClassID ( void ) const [inline, virtual]
 

Return a class ID for this object (not really public).

Stable:

Reimplemented from UCharCharacterIterator.

Definition at line 131 of file schriter.h.

UClassID StringCharacterIterator::getStaticClassID ( void ) [inline, static]
 

Return a class ID for this class (not really public).

Stable:

Reimplemented from UCharCharacterIterator.

Definition at line 138 of file schriter.h.

void StringCharacterIterator::getText ( UnicodeString & result ) [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.

Parameters:
result   Receives a copy of the text under iteration.
Stable:

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.

Stable:

UBool StringCharacterIterator::operator== ( const ForwardCharacterIterator & that ) const [virtual]
 

Returns true if the iterators iterate over the same range of the same string and are pointing at the same character.

Stable:

Reimplemented from UCharCharacterIterator.

void StringCharacterIterator::setText ( const UChar * newText,
int32_t newTextLength ) [protected]
 

Sets the iterator to iterate over a new range of text.

Draft:

Reimplemented from UCharCharacterIterator.

void StringCharacterIterator::setText ( const UnicodeString & newText )
 

Sets the iterator to iterate over the provided string.

Draft:


Member Data Documentation

UClassID StringCharacterIterator::fgClassID [static, protected]
 

Reimplemented from UCharCharacterIterator.

Definition at line 147 of file schriter.h.

UnicodeString StringCharacterIterator::text [protected]
 

Reimplemented from UCharCharacterIterator.

Definition at line 145 of file schriter.h.


The documentation for this class was generated from the following file:
Generated at Tue Jun 12 14:04:44 2001 for ICU 1.8.1 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000