ULAPI  8.0
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
ULJSONDictionaryIterator Class Reference

ULJSONDictionaryIterator is the dictionary data source iterator for use with ULJSONDictionaryDataSource (i.e. dictionary data stored as JSON strings). More...

#include <uljsondictionaryiterator.h>

Classes

struct  JSONNodeInfo
 

Public Member Functions

 ULJSONDictionaryIterator ()
 
 ULJSONDictionaryIterator (const ULJSONDictionaryIterator &other)
 
virtual ~ULJSONDictionaryIterator ()
 
virtual ULJSONDictionaryIteratoroperator= (const ULJSONDictionaryIterator &other)
 
virtual void clear ()
 
virtual
ULDictionaryDataSourceIterator * 
clone () const
 
virtual const ULDictionaryNodeoperator* ()
 
virtual void operator++ ()
 
virtual void operator-- ()
 
virtual uluint32 hash (uluint32 tableSize) const
 
virtual bool operator== (const ULDictionaryDataSourceIterator &iterator) const
 
virtual bool operator== (const ULJSONDictionaryIterator &iterator) const
 
virtual void toNextTopLevelNode ()
 
virtual void toCurrentTopLevelNode ()
 
virtual void toPreviousTopLevelNode ()
 
virtual bool hasParent ()
 
virtual void toParent ()
 
virtual bool hasChildren ()
 
virtual void toFirstChild ()
 
virtual bool hasNextSibling ()
 
virtual void toNextSibling ()
 
virtual bool hasPreviousSibling ()
 
virtual void toPreviousSibling ()
 
virtual bool hasNextCousin ()
 
virtual void toNextCousin ()
 
virtual bool hasPreviousCousin ()
 
virtual void toPreviousCousin ()
 
virtual int getLevel ()
 
virtual uluint32 getType ()
 
virtual bool isAtEnd () const
 
virtual bool isAtBeginning () const
 
virtual bool isInFirstTree () const
 
virtual bool isInLastTree () const
 
virtual ULString getIndexKey ()
 
virtual const ULLanguagegetLanguage () const
 
virtual void setLanguage (const ULLanguage &language)
 
virtual const ULLanguagegetSearchLanguage () const
 
virtual const ULLanguagegetTranslationLanguage () const
 

Protected Member Functions

void lockDataSource () const
 
void unlockDataSource () const
 
void loadCurrentNode ()
 

Protected Attributes

ULList< JSONNodeInfojsonNodePath
 
ULLanguage language
 
ULDictionaryNode currentNode
 
bool currentNodeLoaded
 

Friends

class ULJSONDictionaryDataSource
 

Detailed Description

ULJSONDictionaryIterator is the dictionary data source iterator for use with ULJSONDictionaryDataSource (i.e. dictionary data stored as JSON strings).

Constructor & Destructor Documentation

ULJSONDictionaryIterator::ULJSONDictionaryIterator ( )

Default constructor.

ULJSONDictionaryIterator::ULJSONDictionaryIterator ( const ULJSONDictionaryIterator other)

Copy constructor.

ULJSONDictionaryIterator::~ULJSONDictionaryIterator ( )
virtual

Destructor

Member Function Documentation

void ULJSONDictionaryIterator::clear ( )
virtual

Sets this iterator to its default state, freeing associated dynamically allocated memory in the process.

ULDictionaryDataSourceIterator * ULJSONDictionaryIterator::clone ( ) const
virtual
ULString ULJSONDictionaryIterator::getIndexKey ( )
virtual
const ULLanguage & ULJSONDictionaryIterator::getLanguage ( ) const
virtual
int ULJSONDictionaryIterator::getLevel ( )
virtual
const ULLanguage & ULJSONDictionaryIterator::getSearchLanguage ( ) const
virtual
const ULLanguage & ULJSONDictionaryIterator::getTranslationLanguage ( ) const
virtual
uluint32 ULJSONDictionaryIterator::getType ( )
virtual
bool ULJSONDictionaryIterator::hasChildren ( )
virtual
uluint32 ULJSONDictionaryIterator::hash ( uluint32  tableSize) const
virtual
bool ULJSONDictionaryIterator::hasNextCousin ( )
virtual
bool ULJSONDictionaryIterator::hasNextSibling ( )
virtual
bool ULJSONDictionaryIterator::hasParent ( )
virtual
bool ULJSONDictionaryIterator::hasPreviousCousin ( )
virtual
bool ULJSONDictionaryIterator::hasPreviousSibling ( )
virtual
bool ULJSONDictionaryIterator::isAtBeginning ( ) const
virtual
bool ULJSONDictionaryIterator::isAtEnd ( ) const
virtual
bool ULJSONDictionaryIterator::isInFirstTree ( ) const
virtual
bool ULJSONDictionaryIterator::isInLastTree ( ) const
virtual
void ULJSONDictionaryIterator::loadCurrentNode ( )
protected

Private utility method that assembles a ULDictionaryNode from the iterator information stored in the other instance variables.

Precondition
this->uldIterator != 0
void ULJSONDictionaryIterator::lockDataSource ( ) const
protected

Private utility used to lock the data source associated with this iterator.

const ULDictionaryNode & ULJSONDictionaryIterator::operator* ( )
virtual
void ULJSONDictionaryIterator::operator++ ( )
virtual
void ULJSONDictionaryIterator::operator-- ( )
virtual
ULJSONDictionaryIterator & ULJSONDictionaryIterator::operator= ( const ULJSONDictionaryIterator other)
virtual

Assignment operator.

bool ULJSONDictionaryIterator::operator== ( const ULDictionaryDataSourceIterator &  iterator) const
virtual
bool ULJSONDictionaryIterator::operator== ( const ULJSONDictionaryIterator iterator) const
virtual
void ULJSONDictionaryIterator::setLanguage ( const ULLanguage language)
virtual
void ULJSONDictionaryIterator::toCurrentTopLevelNode ( )
virtual
void ULJSONDictionaryIterator::toFirstChild ( )
virtual
void ULJSONDictionaryIterator::toNextCousin ( )
virtual
void ULJSONDictionaryIterator::toNextSibling ( )
virtual
void ULJSONDictionaryIterator::toNextTopLevelNode ( )
virtual
void ULJSONDictionaryIterator::toParent ( )
virtual
void ULJSONDictionaryIterator::toPreviousCousin ( )
virtual
void ULJSONDictionaryIterator::toPreviousSibling ( )
virtual
void ULJSONDictionaryIterator::toPreviousTopLevelNode ( )
virtual
void ULJSONDictionaryIterator::unlockDataSource ( ) const
protected

Private utility used to unlock the data source associated with this iterator.

Friends And Related Function Documentation

friend class ULJSONDictionaryDataSource
friend

Member Data Documentation

ULDictionaryNode ULJSONDictionaryIterator::currentNode
protected
bool ULJSONDictionaryIterator::currentNodeLoaded
protected
ULList<JSONNodeInfo> ULJSONDictionaryIterator::jsonNodePath
protected
ULLanguage ULJSONDictionaryIterator::language
protected

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