📄 a00012.html
字号:
<HTML><HEAD> <link rel="stylesheet" href="doxygen.css"><TITLE>Symbian XML Libarary</TITLE></HEAD><h2>SYXML - XML Parser and Generator Library for Symbian</h2><HR><!-- Generated by Doxygen 1.3.9.1 --><div class="qindex"><a class="qindex" href="../../index.html">Main Page</a> | <a class="qindex" href="../../hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="../../annotated.html">Class List</a> | <a class="qindex" href="../../files.html">File List</a> | <a class="qindex" href="../../functions.html">Class Members</a> | <a class="qindex" href="../../globals.html">File Members</a></div><h1>CExpatParserBase Class Reference</h1><code>#include <<a class="el" href="../../dc/de2/a00024.html">SyExpat.h</a>></code><p><p>Inheritance diagram for CExpatParserBase:<p><center><img src="../../df/d86/a00012.png" usemap="#CExpatParserBase_map" border="0" alt=""></center><map name="CExpatParserBase_map"><area href="../../d7/dd4/a00013.html" alt="CSyContextualParser" shape="rect" coords="0,56,133,80"><area href="../../d7/d7a/a00016.html" alt="CSyParser" shape="rect" coords="143,56,276,80"></map><a href="../../dd/dad/a00005.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>C++ wrapper over the Expat parser C classes. <p>This class provides all the functionality required for using the Expat parser in Symbian. Note that unlike conventional Symbian applications which throw when they get an error, this class returns back a status variable from most functions which must then be checked for an error status and if an error is present call GetErrorCode to get the actual error. It is intended that this is the class any specializations of the parser are derived from. <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="../../d7/dd4/a00013.html">CSyContextualParser</a> <p><a class="el" href="../../d7/d7a/a00016.html">CSyParser</a> </dd></dl><p><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">virtual IMPORT_C </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CExpatParserBasea0">~CExpatParserBase</a> ()</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage : Standard destructor. <a href="#CExpatParserBasea0"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C TBool </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera1">Reset</a> (const TDesC &aEncoding)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Prepare a parser object to be re-used. <a href="#CSyParsera1"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C <a class="el" href="../../d7/de0/a00022.html#a40">TSyExpatStatus</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera2">Parse</a> (const TPtrC8 aBuffer, const TBool aIsFinal)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Parses a block of memory held in the buffer. <a href="#CSyParsera2"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C <a class="el" href="../../d7/de0/a00022.html#a40">TSyExpatStatus</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera3">ParseBuffer</a> (const TInt aLength, const TBool aIsFinal)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Parses a block of memory held in the internal buffer. <a href="#CSyParsera3"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C TAny * </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera4">GetBuffer</a> (const TInt aLength)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Reallocates or allocates a new internal buffer of the specified length. <a href="#CSyParsera4"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C <a class="el" href="../../d7/de0/a00022.html#a40">TSyExpatStatus</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera5">Stop</a> (const TBool aResumable)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Stops parsing, causing <a class="el" href="../../df/d86/a00012.html#CSyParsera2">Parse()</a> or <a class="el" href="../../df/d86/a00012.html#CSyParsera3">ParseBuffer()</a> to return. <a href="#CSyParsera5"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C <a class="el" href="../../d7/de0/a00022.html#a40">TSyExpatStatus</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera6">Resume</a> ()</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Resumes parsing after it has been suspended with <a class="el" href="../../df/d86/a00012.html#CSyParsera5">Stop()</a>. <a href="#CSyParsera6"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C <a class="el" href="../../d7/de0/a00022.html#a41">TSyExpatError</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera7">GetErrorCode</a> () const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: If Parse or ParseBuffer have returned TExpatStatusError, then GetErrorCode returns information about the error. <a href="#CSyParsera7"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C TInt32 </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera8">GetCurrentByteIndex</a> () const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: These functions return information about the current parse location. <a href="#CSyParsera8"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C TInt </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera9">GetCurrentByteCount</a> () const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Gets the current number of bytes that have been parsed so far. <a href="#CSyParsera9"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C TInt </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera10">GetCurrentLineNumber</a> () const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Returns the current line number in the document. <a href="#CSyParsera10"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C TInt </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera11">GetCurrentColumnNumber</a> () const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Returns the current column number in the document. <a href="#CSyParsera11"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C <a class="el" href="../../d7/de0/a00022.html#a40">TSyExpatStatus</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera12">GetParsingStatus</a> (TBool *aFinal=NULL) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Returns the current state of the parser. <a href="#CSyParsera12"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera13">SetHandler</a> (<a class="el" href="../../d1/d2b/a00018.html">MSyDocHandler</a> *aHandler)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Sets a new document handler for the parser This will replace the existing handler. <a href="#CSyParsera13"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera14">SetHandler</a> (<a class="el" href="../../d4/d51/a00017.html">MSyDeclHandler</a> *aHandler)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Sets a new declaration handler for the parser This will replace the existing handler. <a href="#CSyParsera14"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera15">SetBase</a> (const TDesC &aBase)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Sets the base to be used for resolving relative URIs in system identifiers in declarations. <a href="#CSyParsera15"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C TPtrC </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera16">GetBase</a> () const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Gets the currently specified base entity URI that was set with the previous SetBase call. <a href="#CSyParsera16"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">IMPORT_C const TVersion </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParsera17">VersionInfo</a> () const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage: Returns the build version of the DLL. <a href="#CSyParsera17"></a><br></td></tr><tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">EXPORT_C </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CExpatParserBaseb0">CExpatParserBase</a> ()</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage : Default constructor. <a href="#CExpatParserBaseb0"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">EXPORT_C void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParserb1">BaseConstructL</a> (const TDesC &aEncoding)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage : Second phase of safe construction method. <a href="#CSyParserb1"></a><br></td></tr><tr><td colspan="2"><br><h2>Static Protected Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">EXPORT_C void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d86/a00012.html#CSyParserf0">Panic</a> (const TInt aPanic)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Intended Usage : Helper function to generate a panic. <a href="#CSyParserf0"></a><br></td></tr></table><hr><h2>Constructor & Destructor Documentation</h2><a class="anchor" name="CExpatParserBasea0" doxytag="CExpatParserBase::~CExpatParserBase"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">CExpatParserBase::~<a class="el" href="../../df/d86/a00012.html">CExpatParserBase</a> </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [virtual]</code></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Intended Usage : Standard destructor. <p>This distructor is marked as virtual as this class intended to be inherited from. so calling delete on CExpatParserBaseObject will correctly delete inherited classes. </td> </tr></table><a class="anchor" name="CExpatParserBaseb0" doxytag="CExpatParserBase::CExpatParserBase"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">CExpatParserBase::CExpatParserBase </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [protected]</code></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Intended Usage : Default constructor. <p><dl compact><dt><b>Warning:</b></dt><dd>Not exported as this class is not designed to be extended. </dd></dl> </td> </tr></table><hr><h2>Member Function Documentation</h2><a class="anchor" name="CSyParserb1" doxytag="CExpatParserBase::BaseConstructL"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">void CExpatParserBase::BaseConstructL </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const TDesC & </td> <td class="mdname1" valign="top" nowrap> <em>aEncoding</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [protected]</code></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Intended Usage : Second phase of safe construction method. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>aEncoding</em> </td><td>the default encoding of for the data to be parsed. Will override the encoding in the xml declaration line </td></tr> </table></dl><dl compact><dt><b>Returns:</b></dt><dd>none. </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>First phase of construction is complete. </dd></dl><dl compact><dt><b>Postcondition:</b></dt><dd>Object if fully constructed. </dd></dl> </td> </tr></table><a class="anchor" name="CSyParsera16" doxytag="CExpatParserBase::GetBase"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">TPtrC CExpatParserBase::GetBase </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> const</td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Intended Usage: Gets the currently specified base entity URI that was set with the previous SetBase call. <p><dl compact><dt><b>Exceptions:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>none</em> </td><td></td></tr> </table></dl><dl compact><dt><b>Returns:</b></dt><dd>pointer to a string holding the base URI. </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>none </dd></dl><dl compact><dt><b>Postcondition:</b></dt><dd>Nothing is left on the CleanupStack. </dd></dl> </td> </tr></table><a class="anchor" name="CSyParsera4" doxytag="CExpatParserBase::GetBuffer"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">TAny * CExpatParserBase::GetBuffer </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const TInt </td> <td class="mdname1" valign="top" nowrap> <em>aLength</em> </td>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -