Return TypeFunction nameArguments
voidhzXmlNode::Export_r(hzDocXml*,hzChain&,unsigned int&,)

Declared in file: hzDocument.h
Defined in file : hzDocXml.cpp

Function Logic:

0:START 1:!pDoc 2:hzexit 3:m_nLine>relLine 4:hzChain::AddByte 5:n>=4; 6:hzChain::AddByte 7:relLine 8:hzChain::Printf ai 9:ai.Valid(); 10:hzAttrset::Name anam hzAttrset::Value aval hzChain::Printf 11:!m_Children&&!m_fixContent 12:items 13: No text 14:items 15:m_Children 16:rc==E_OK&&pSub; 17:hzXmlNode::txtPtxt hzXmlNode::Export_r 18:m_fixContent 19:m_nAnti>m_nLine 20:hzChain::AddByte 21:n>4; 22:hzChain::AddByte 23:relLine 24:items 25:m_nAnti>m_nLine 26:hzChain::AddByte 27:n>=4; 28:hzChain::AddByte 29:relLine 30:hzChain::Printf 31: No text

Function body:

void hzXmlNode::Export_r (hzDocXml* pDoc, hzChain& Z, unsigned int& relLine)
{
   _hzfunc("hzXmlNode::Export_r") ;
   hzAttrset       ai ;
   hzXmlNode*      pSub ;
   const char*     anam ;
   const char*     aval ;
   uint32_t        n ;
   hzEcode         rc = E_OK ;
   if (!pDoc)
       hzexit(E_CORRUPT, "No host document supplied") ;
   if (m_nLine > relLine)
   {
       Z.AddByte(CHAR_NL) ;
       for (n = m_nCol ; n >&eq; 4; n -= 4)
           Z.AddByte(CHAR_TAB) ;
       relLine = m_nLine ;
   }
   Z.Printf("<%s", *m_Name) ;
   for (ai = this ; ai.Valid() ; ai.Advance())
   {
       anam = ai.Name() ; aval = ai.Value() ;
       Z.Printf(" %s="%s""  , anam, aval) ;
   }
   if (!m_Children && !m_fixContent)
   {
       Z << "/>" ;
       return ;
   }
   Z << ">" ;
   if (m_Children)
   {
       for (pSub = GetFirstChild() ; rc == E_OK && pSub ; pSub = pSub->Sibling())
       {
           Z << pSub->txtPtxt() ;
           pSub->Export_r(pDoc, Z, relLine) ;
       }
   }
   if (m_fixContent)
   {
       if (m_nAnti > m_nLine)
       {
           Z.AddByte(CHAR_NL) ;
           for (n = m_nCol ; n > 4; n -= 4)
               Z.AddByte(CHAR_TAB) ;
           relLine = m_nAnti ;
       }
           Z << m_fixContent ;
   }
   if (m_nAnti > m_nLine)
   {
       Z.AddByte(CHAR_NL) ;
       for (n = m_nCol ; n >&eq; 4; n -= 4)
           Z.AddByte(CHAR_TAB) ;
       relLine = m_nAnti ;
   }
   Z.Printf("</%s>", *m_Name) ;
}