RXmlEngNodeList Class Reference

class RXmlEngNodeList

Implements an iterator or filtered iterator for a tree.

This classes behaves in two very different ways, depending on the template parameter.

1) RXmlEngNodeList<TXmlEngNode>

Through template specialization, this becomes an alias for RXmlEngNodeListImpl . The RXmlEngNodeListImpl::OpenL() methods control which nodes are included in the iterator. It is possible to iterate across all node types or only a single type. It is possible to iterate only over nodes within a specific namespace. It is also possible to iterate over nodes with the same name.

RXmlEngNodeListImpl should not be used directly.

RXmlEngNodeListImpl 2) RXmlEngNodeList<X> where X is not TXmlEngNode

As the OpenL() methods of this class are private, this class cannot be opened except by friend classes TXmlEngNode and TXmlEngElement . As such, this form should not be used.

Public Member Functions
void Close ()
TInt Count ()
TBool HasNext ()
T Next ()
Private Member Functions
void Open (void *, TXmlEngNode::TXmlEngDOMNodeType )
void OpenL (void *, TXmlEngNode::TXmlEngDOMNodeType , const TDesC8 &, const TDesC8 &)
Private Attributes
RXmlEngNodeListImpl iList

Member Functions Documentation

Close()

void Close ( ) [inline]

Closes a node list. This does not affect any of the nodes. Only internally used memory is freed.

Count()

TInt Count ( ) const [inline]

Gets the list length.

HasNext()

TBool HasNext ( ) const [inline]

Checks whether a next node exists in the list

Next()

T Next ( ) [inline]

Gets the next node in the list

Open(void *, TXmlEngNode::TXmlEngDOMNodeType)

void Open ( void * aHead,
TXmlEngNode::TXmlEngDOMNodeType aType
) [private, inline]

Parameters

void * aHead
TXmlEngNode::TXmlEngDOMNodeType aType

OpenL(void *, TXmlEngNode::TXmlEngDOMNodeType, const TDesC8 &, const TDesC8 &)

void OpenL ( void * aHead,
TXmlEngNode::TXmlEngDOMNodeType aType,
const TDesC8 & aName =  KNullDesC8 ,
const TDesC8 & aNs =  KNullDesC8
) [private, inline]

Parameters

void * aHead
TXmlEngNode::TXmlEngDOMNodeType aType
const TDesC8 & aName =  KNullDesC8
const TDesC8 & aNs =  KNullDesC8

Member Data Documentation

RXmlEngNodeListImpl iList

RXmlEngNodeListImpl iList [private]