# 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:

## Public Member Functions
| ParsePosition ()
| Default constructor, the index starts with 0 as default.
| ParsePosition (int32_t newIndex)
| Create a new ParsePosition with the given initial index.
| ParsePosition (const ParsePosition &copy)
| Copy constructor.
virtual | ~ParsePosition ()
| Destructor.
ParsePosition & | operator= (const ParsePosition &copy)
| Assignment operator.
UBool | operator== (const ParsePosition &that) const
| Equality operator.
UBool | operator!= (const ParsePosition &that) const
| Equality operator.
ParsePosition * | clone () const
| Clone this object.
int32_t | getIndex (void) const
| Retrieve the current parse position.
void | setIndex (int32_t index)
| Set the current parse position.
void | setErrorIndex (int32_t ei)
| Set the index at which a parse error occurred.
int32_t | getErrorIndex (void) const
| Retrieve the index at which an error occurred, or -1 if the error index has not been set.
virtual UClassID | getDynamicClassID () const
| ICU "poor man's RTTI", returns a UClassID for the actual class.
## Static Public Member Functions
static UClassID | getStaticClassID ()
| ICU "poor man's RTTI", returns a UClassID for this class.

## 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 47 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 53 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 64 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 75 of file parsepos.h.

virtual ParsePosition::~ParsePosition | ( |  | ) | `[virtual]`

Destructor.

Stable:
  ICU 2.0

## Member Function Documentation

ParsePosition* ParsePosition::clone | ( |  | ) | 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

Stable:
  ICU 2.8

virtual UClassID ParsePosition::getDynamicClassID | ( |  | ) | const`[virtual]`

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

Stable:
  ICU 2.2

Implements 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 218 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 206 of file parsepos.h.

static UClassID ParsePosition::getStaticClassID | ( |  | ) | `[static]`

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

Stable:
  ICU 2.2

UBool ParsePosition::operator!= | ( | const ParsePosition & | that | ) | const`[inline]`

Equality operator.

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

Stable:
  ICU 2.0

Definition at line 200 of file parsepos.h.

References operator==().

ParsePosition & ParsePosition::operator= | ( | const ParsePosition & | copy | ) | `[inline]`

Assignment operator.

Stable:
  ICU 2.0

Definition at line 183 of file parsepos.h.

UBool ParsePosition::operator== | ( | const ParsePosition & | that | ) | const`[inline]`

Equality operator.

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

Stable:
  ICU 2.0

Definition at line 191 of file parsepos.h.

References FALSE, and TRUE.

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 224 of file parsepos.h.

void ParsePosition::setIndex | ( | int32_t | index | ) | `[inline]`

Set the current parse position.

Parameters:

  | index | the new index.

Stable:
  ICU 2.0

Definition at line 212 of file parsepos.h.

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

- parsepos.h

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines