zorba::Iterator Class Reference

Interface for an Iterator over an instance of the XML Data Model. More...

#include <zorba/iterator.h>

Inheritance diagram for zorba::Iterator:

zorba::ItemSequence zorba::SmartObject zorba::ResultIterator

List of all members.

Public Member Functions

void addReference () const
virtual void close ()=0
 Stop iterating.
virtual void free ()
long getRefCount () const
virtual bool next (Item &aItem)=0
 Get the next Item of the sequence.
virtual void open ()=0
 Start iterating.
void removeReference ()
virtual ~Iterator ()
 Destructor.

Protected Attributes

unsigned int theRefCount


Detailed Description

Interface for an Iterator over an instance of the XML Data Model.

Note: This class is reference counted. When writing multi-threaded clients, it is the responibility of the client code to synchronize assignments to the SmartPtr holding this object.

Definition at line 31 of file iterator.h.


Constructor & Destructor Documentation

virtual zorba::Iterator::~Iterator (  )  [inline, virtual]

Destructor.

Definition at line 36 of file iterator.h.


Member Function Documentation

void zorba::SmartObject::addReference (  )  const [inline, inherited]

Definition at line 39 of file smart_ptr.h.

virtual void zorba::Iterator::close (  )  [pure virtual]

Stop iterating.

In order to call Iterator::next, open has to been called.

Implemented in zorba::ResultIterator.

virtual void zorba::SmartObject::free (  )  [inline, virtual, inherited]

Definition at line 35 of file smart_ptr.h.

long zorba::SmartObject::getRefCount (  )  const [inline, inherited]

Definition at line 37 of file smart_ptr.h.

virtual bool zorba::Iterator::next ( Item aItem  )  [pure virtual]

Get the next Item of the sequence.

Parameters:
aItem the next Item of the result sequence if true is returned by the function.
Returns:
true if the sequence is not exhausted, false otherwise.
Exceptions:
ZorbaException if an error occurs during query execution or the Iterator has not been opened.

Implements zorba::ItemSequence.

Implemented in zorba::ResultIterator.

virtual void zorba::Iterator::open (  )  [pure virtual]

Start iterating.

This function needs to be called before calling next.

Exceptions:
ZorbaException if an error occurs.

Implemented in zorba::ResultIterator.

void zorba::SmartObject::removeReference (  )  [inline, inherited]

Definition at line 41 of file smart_ptr.h.


Member Data Documentation

unsigned int zorba::SmartObject::theRefCount [mutable, protected, inherited]

Definition at line 26 of file smart_ptr.h.


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