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

ParsePosition Class Reference

ParsePosition is a simple class used by Format and its subclasses to keep track of the current position during parsing. More...

#include <parsepos.h>

Inheritance diagram for ParsePosition::

UObject UMemory List of all members.

Public Methods

 ParsePosition ()
 Default constructor, the index starts with 0 as default. More...

 ParsePosition (int32_t newIndex)
 Create a new ParsePosition with the given initial index. More...

 ParsePosition (const ParsePosition &copy)
 Copy constructor. More...

virtual ~ParsePosition ()
 Destructor. More...

ParsePosition & operator= (const ParsePosition &copy)
 Assignment operator. More...

UBool operator== (const ParsePosition &that) const
 Equality operator. More...

UBool operator!= (const ParsePosition &that) const
 Equality operator. More...

ParsePosition * clone () const
 Clone this object. More...

int32_t getIndex (void) const
 Retrieve the current parse position. More...

void setIndex (int32_t index)
 Set the current parse position. More...

void setErrorIndex (int32_t ei)
 Set the index at which a parse error occurred. More...

int32_t getErrorIndex (void) const
 Retrieve the index at which an error occurred, or -1 if the error index has not been set. More...

virtual UClassID getDynamicClassID () const
 ICU "poor man's RTTI", returns a UClassID for the actual class. More...


Static Public Methods

UClassID getStaticClassID ()
 ICU "poor man's RTTI", returns a UClassID for this class. More...


Private Attributes

int32_t index
 Input: the place you start parsing. More...

int32_t errorIndex
 The index at which a parse error occurred. More...


Detailed Description

ParsePosition is a simple class used by Format and its subclasses to keep track of the current position during parsing.

The parseObject method in the various Format classes requires a ParsePosition object as an argument.

By design, as you parse through a string with different formats, you can use the same ParsePosition, since the index parameter records the current position.

The ParsePosition class is not suitable for subclassing.

Version:
1.3 10/30/97
Author:
Mark Davis, Helena Shih
See also:
java.text.Format

Definition at line 42 of file parsepos.h.


Constructor & Destructor Documentation

ParsePosition::ParsePosition   [inline]
 

Default constructor, the index starts with 0 as default.

Stable:
ICU 2.0

Definition at line 48 of file parsepos.h.

ParsePosition::ParsePosition int32_t    newIndex [inline]
 

Create a new ParsePosition with the given initial index.

Parameters:
newIndex  the new text offset.
Stable:
ICU 2.0

Definition at line 59 of file parsepos.h.

ParsePosition::ParsePosition const ParsePosition &    copy [inline]
 

Copy constructor.

Parameters:
copy  the object to be copied from.
Stable:
ICU 2.0

Definition at line 70 of file parsepos.h.

virtual ParsePosition::~ParsePosition   [virtual]
 

Destructor.

Stable:
ICU 2.0


Member Function Documentation

ParsePosition* ParsePosition::clone void    const
 

Clone this object.

Clones can be used concurrently in multiple threads. If an error occurs, then NULL is returned. The caller must delete the clone.

Returns:
a clone of this object
See also:
getDynamicClassID
Draft:
This API has been introduced in ICU 2.8. It is still in draft state and may be modified in a future release.

virtual UClassID ParsePosition::getDynamicClassID void    const [virtual]
 

ICU "poor man's RTTI", returns a UClassID for the actual class.

Stable:
ICU 2.2

Reimplemented from UObject.

int32_t ParsePosition::getErrorIndex void    const [inline]
 

Retrieve the index at which an error occurred, or -1 if the error index has not been set.

Stable:
ICU 2.0

Definition at line 213 of file parsepos.h.

int32_t ParsePosition::getIndex void    const [inline]
 

Retrieve the current parse position.

On input to a parse method, this is the index of the character at which parsing will begin; on output, it is the index of the character following the last character parsed.

Returns:
the current index.
Stable:
ICU 2.0

Definition at line 201 of file parsepos.h.

UClassID ParsePosition::getStaticClassID void    [static]
 

ICU "poor man's RTTI", returns a UClassID for this class.

Stable:
ICU 2.2

UBool ParsePosition::operator!= const ParsePosition &    copy const [inline]
 

Equality operator.

Returns:
TRUE if the two parse positions are not equal, FALSE otherwise.
Stable:
ICU 2.0

Definition at line 195 of file parsepos.h.

ParsePosition & ParsePosition::operator= const ParsePosition &    copy [inline]
 

Assignment operator.

Stable:
ICU 2.0

Definition at line 178 of file parsepos.h.

UBool ParsePosition::operator== const ParsePosition &    copy const [inline]
 

Equality operator.

Returns:
TRUE if the two parse positions are equal, FALSE otherwise.
Stable:
ICU 2.0

Definition at line 186 of file parsepos.h.

Referenced by operator!=().

void ParsePosition::setErrorIndex int32_t    ei [inline]
 

Set the index at which a parse error occurred.

Formatters should set this before returning an error code from their parseObject method. The default value is -1 if this is not set.

Stable:
ICU 2.0

Definition at line 219 of file parsepos.h.

void ParsePosition::setIndex int32_t    offset [inline]
 

Set the current parse position.

Parameters:
index  the new index.
Stable:
ICU 2.0

Definition at line 207 of file parsepos.h.


Member Data Documentation

int32_t ParsePosition::errorIndex [private]
 

The index at which a parse error occurred.

Definition at line 173 of file parsepos.h.

Referenced by operator==().

int32_t ParsePosition::index [private]
 

Input: the place you start parsing.


Output: position where the parse stopped. This is designed to be used serially, with each call setting index up for the next one.

Definition at line 168 of file parsepos.h.

Referenced by operator==().


The documentation for this class was generated from the following file:
Generated on Mon Nov 24 14:36:44 2003 for ICU 2.8 by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001