Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

lemur::parse::PropertyList Class Reference

#include <PropertyList.hpp>

Inheritance diagram for lemur::parse::PropertyList:

lemur::parse::LinkedPropertyList lemur::parse::BasicCollectionProps List of all members.

Public Member Functions

virtual ~PropertyList ()
virtual const PropertygetProperty (const string name) const =0
virtual void startIteration () const =0
 Starts iteration over properties.

virtual const PropertynextEntry () const =0
virtual bool hasMore () const =0
 Tests to see whether there are more properties in the iteration.

virtual void setProperty (const Property *property)=0
virtual void removeProperty (const string name)=0
virtual void clear ()=0
 Clears all properties from the list.


Detailed Description

A PropertyList class is used to pass token information down a TextHandler chain during parsing and tokenization. The PropertyList class is expected to "own" and provide memory management of properties stored in its list. The setProperty function should copy the Property name/value into its own internal Property object. Calls to nextElement and getProperty should not create new Property objects, but reuse the internal objects. On destruction of the PropertyList, the object should free any Property objects the PropertyList has created.


Constructor & Destructor Documentation

virtual lemur::parse::PropertyList::~PropertyList  )  [inline, virtual]
 


Member Function Documentation

virtual void lemur::parse::PropertyList::clear  )  [pure virtual]
 

Clears all properties from the list.

Implemented in lemur::parse::LinkedPropertyList.

virtual const Property* lemur::parse::PropertyList::getProperty const string  name  )  const [pure virtual]
 

Returns the property with a given name. Returns NULL if there is no property in the list with that name. Do not deallocate the returned pointer.

Implemented in lemur::parse::LinkedPropertyList.

virtual bool lemur::parse::PropertyList::hasMore  )  const [pure virtual]
 

Tests to see whether there are more properties in the iteration.

Implemented in lemur::parse::LinkedPropertyList.

virtual const Property* lemur::parse::PropertyList::nextEntry  )  const [pure virtual]
 

Returns the next Property in the iteration. Do not deallocate the returned pointer.

Implemented in lemur::parse::LinkedPropertyList.

virtual void lemur::parse::PropertyList::removeProperty const string  name  )  [pure virtual]
 

Removes a property from the list with the passed in name. If no property in the list has the name, the function fails silently.

Implemented in lemur::parse::LinkedPropertyList.

virtual void lemur::parse::PropertyList::setProperty const Property property  )  [pure virtual]
 

Adds/changes a property into the list. Overwrites a property with the same value. The actual property stored is a copy of the property passed in. Changes after calling this function to the property passed in will not affect the property in the list.

Implemented in lemur::parse::LinkedPropertyList.

virtual void lemur::parse::PropertyList::startIteration  )  const [pure virtual]
 

Starts iteration over properties.

Implemented in lemur::parse::LinkedPropertyList.


The documentation for this class was generated from the following file:
Generated on Tue Jun 15 11:03:06 2010 for Lemur by doxygen 1.3.4