epoc32/include/xml/dom/xmlengnodelist.inl
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     1 // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 // Node list inline functions
    15 // Retrieves number of items in node list
    16 //
    17 
    18 template<class T> inline TInt RXmlEngNodeList<T>::Count() const
    19     {
    20     return iList.Count();
    21     }
    22     
    23 // -----------------------------------------------------------------------------
    24 // Returns true if this node has next sibling, false otherwise.
    25 // -----------------------------------------------------------------------------
    26 //
    27 template<class T> inline TBool RXmlEngNodeList<T>::HasNext() const
    28     {
    29     return iList.HasNext();
    30     }    
    31 
    32 // -----------------------------------------------------------------------------
    33 // Retrieves next node
    34 // -----------------------------------------------------------------------------
    35 //
    36 template<class T> inline T RXmlEngNodeList<T>::Next()
    37     {
    38     TXmlEngNode t = iList.Next(); 
    39     return *(static_cast<T*>(&t));
    40     }
    41 
    42 // -----------------------------------------------------------------------------
    43 // Closes node list
    44 // -----------------------------------------------------------------------------
    45 //
    46 template<class T> inline void RXmlEngNodeList<T>::Close()
    47     {
    48     iList.Close();
    49     }
    50 
    51 // -----------------------------------------------------------------------------
    52 // Opens node list
    53 // -----------------------------------------------------------------------------
    54 //
    55 template<class T> inline void RXmlEngNodeList<T>::OpenL( 
    56 			void* aHead,
    57 			TXmlEngNode::TXmlEngDOMNodeType aType,
    58 			const TDesC8&	aName,
    59 			const TDesC8&	aNs) 
    60     {
    61     iList.OpenL(aHead, aType, aName, aNs);    
    62     }
    63 
    64 // -----------------------------------------------------------------------------
    65 // Opens node list
    66 // -----------------------------------------------------------------------------
    67 //
    68 template<class T> inline void RXmlEngNodeList<T>::Open( 
    69 			void* aHead,
    70 			TXmlEngNode::TXmlEngDOMNodeType aType)
    71     {
    72     iList.Open(aHead, aType);    
    73     }
    74