<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>EBOOKHTMLParser.cpp File Reference documentation</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.8.13 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> $(function() { initMenu('',false,false,'search.php','Search'); }); </script> <div id="main-nav"></div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('EBOOKHTMLParser_8cpp.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#namespaces">Namespaces</a> | <a href="#define-members">Macros</a> | <a href="#enum-members">Enumerations</a> </div> <div class="headertitle"> <div class="title">EBOOKHTMLParser.cpp File Reference</div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><code>#include <cassert></code><br /> <code>#include <stack></code><br /> <code>#include <string></code><br /> <code>#include <boost/algorithm/string/case_conv.hpp></code><br /> <code>#include <boost/bind.hpp></code><br /> <code>#include <boost/function.hpp></code><br /> <code>#include <boost/lexical_cast.hpp></code><br /> <code>#include <boost/shared_ptr.hpp></code><br /> <code>#include "<a class="el" href="libebook__hubbub_8h_source.html">libebook_hubbub.h</a>"</code><br /> <code>#include "<a class="el" href="libebook__utils_8h_source.html">libebook_utils.h</a>"</code><br /> <code>#include "<a class="el" href="libebook__xml_8h_source.html">libebook_xml.h</a>"</code><br /> <code>#include "<a class="el" href="EBOOKCharsetConverter_8h_source.html">EBOOKCharsetConverter.h</a>"</code><br /> <code>#include "<a class="el" href="EBOOKHTMLToken_8h_source.html">EBOOKHTMLToken.h</a>"</code><br /> <code>#include "<a class="el" href="EBOOKHTMLTypes_8h_source.html">EBOOKHTMLTypes.h</a>"</code><br /> <code>#include "<a class="el" href="EBOOKHTMLParser_8h_source.html">EBOOKHTMLParser.h</a>"</code><br /> <code>#include "<a class="el" href="EBOOKOutputElements_8h_source.html">EBOOKOutputElements.h</a>"</code><br /> <code>#include "<a class="el" href="EBOOKUTF8Stream_8h_source.html">EBOOKUTF8Stream.h</a>"</code><br /> <code>#include "<a class="el" href="XMLCollector_8h_source.html">XMLCollector.h</a>"</code><br /> <code>#include "<a class="el" href="XMLStylesheet_8h_source.html">XMLStylesheet.h</a>"</code><br /> </div><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibebook_1_1EBOOKHTMLParser_1_1State.html">libebook::EBOOKHTMLParser::State</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a> Namespaces</h2></td></tr> <tr class="memitem:namespacelibebook"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibebook.html">libebook</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:a7dcc1c7cdc4e0d81007e6c35ec59e9fc"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="EBOOKHTMLParser_8cpp.html#a7dcc1c7cdc4e0d81007e6c35ec59e9fc">STR_LIT</a>(s)   (s), (sizeof(s) - 1)</td></tr> <tr class="separator:a7dcc1c7cdc4e0d81007e6c35ec59e9fc"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> Enumerations</h2></td></tr> <tr class="memitem:a674705d65a9960e0f593db7b48d1b877"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="EBOOKHTMLParser_8cpp.html#a674705d65a9960e0f593db7b48d1b877">libebook::@9::ParseContext</a> </td></tr> <tr class="separator:a674705d65a9960e0f593db7b48d1b877"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Macro Definition Documentation</h2> <a id="a7dcc1c7cdc4e0d81007e6c35ec59e9fc"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7dcc1c7cdc4e0d81007e6c35ec59e9fc">◆ </a></span>STR_LIT</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define STR_LIT</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">s</td><td>)</td> <td>   (s), (sizeof(s) - 1)</td> </tr> </table> </div><div class="memdoc"> </div> </div> <h2 class="groupheader">Enumeration Type Documentation</h2> <a id="file_a674705d65a9960e0f593db7b48d1b877"></a> <h2 class="memtitle"><span class="permalink"><a href="#file_a674705d65a9960e0f593db7b48d1b877">◆ </a></span>ParseContext</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum libebook::@9::ParseContext</td> </tr> </table> </div><div class="memdoc"> </div> </div> <h2 class="groupheader">Variable Documentation</h2> <a id="a8677869a708baf3a4f94dfb0d5476936"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8677869a708baf3a4f94dfb0d5476936">◆ </a></span>config</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">XMLTreeNode::ConfigurationPtr_t config</td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="a02770e1ef4ec4ac0a97d68c3c0eb0e97"></a> <h2 class="memtitle"><span class="permalink"><a href="#a02770e1ef4ec4ac0a97d68c3c0eb0e97">◆ </a></span>document</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">XMLTreeNodePtr_t document</td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="a8bf289d3d3f54f840150ecab442b16b1"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8bf289d3d3f54f840150ecab442b16b1">◆ </a></span>encoding</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* encoding</td> </tr> </table> </div><div class="memdoc"> <p class="reference">Referenced by <a class="el" href="classlibebook_1_1PLKRParser.html#acec4066c23de87a58e55c1ba6217fb0d">libebook::PLKRParser::readAppInfoRecord()</a>, and <a class="el" href="classlibebook_1_1EBOOKHTMLParser.html#ab3ff551d64a96312c2fa08cd9154fef9">libebook::EBOOKHTMLParser::readTree()</a>.</p> </div> </div> <a id="a47e17b1046fc2d3232ad04c69c1243e7"></a> <h2 class="memtitle"><span class="permalink"><a href="#a47e17b1046fc2d3232ad04c69c1243e7">◆ </a></span>handler</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">hubbub_tree_handler handler</td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="a3a6d87f7a7277451617af8ed8fc2e79e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a3a6d87f7a7277451617af8ed8fc2e79e">◆ </a></span>htmlConfig</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">XMLTreeNode::ConfigurationPtr_t htmlConfig</td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="a924cf87c926728f24e0834d0cb232b0c"></a> <h2 class="memtitle"><span class="permalink"><a href="#a924cf87c926728f24e0834d0cb232b0c">◆ </a></span>isPre</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool isPre</td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="a7360b55975153b822efc5217b7734e6a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7360b55975153b822efc5217b7734e6a">◆ </a></span>len</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t len</td> </tr> </table> </div><div class="memdoc"> <p class="reference">Referenced by <a class="el" href="classlibebook_1_1EBOOKOPFParser.html#a20eb91fe5a8b7535d67614abf7c4278c">libebook::EBOOKOPFParser::parse()</a>, <a class="el" href="classlibebook_1_1EBOOKHTMLParser.html#a34e0dfc374f5dca78ed2061d0c113116">libebook::EBOOKHTMLParser::readTreeImpl()</a>, <a class="el" href="classlibebook_1_1EBOOKHTMLParser.html#af84e9a1caec5a29352faa8a12cd3bb6a">libebook::EBOOKHTMLParser::sendPreformattedText()</a>, and <a class="el" href="classlibebook_1_1XMLStylesheet.html#a811456d768a019a736ee077ea7dfd9f0">libebook::XMLStylesheet::XMLStylesheet()</a>.</p> </div> </div> <a id="ae30311377824c2f93f1c6119bd692a83"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae30311377824c2f93f1c6119bd692a83">◆ </a></span>m_attrs</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">T& m_attrs</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="af6aca27f490c1d3c8a9993fc0d4a37d3"></a> <h2 class="memtitle"><span class="permalink"><a href="#af6aca27f490c1d3c8a9993fc0d4a37d3">◆ </a></span>m_chained</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const Self_t* const m_chained</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="aa1ef3c4f49afbaaf5850f4017df5d069"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa1ef3c4f49afbaaf5850f4017df5d069">◆ </a></span>m_handler</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const Func_t m_handler</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="af033bf8eeedccf7b8d2dd5dce25c39ff"></a> <h2 class="memtitle"><span class="permalink"><a href="#af033bf8eeedccf7b8d2dd5dce25c39ff">◆ </a></span>mode</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">hubbub_quirks_mode mode</td> </tr> </table> </div><div class="memdoc"> <p class="reference">Referenced by <a class="el" href="classlibebook_1_1LRFParser.html#a14d305c81b96f6fa852ea42304ed4c7e">libebook::LRFParser::readAttribute()</a>.</p> </div> </div> <a id="affdd800662e4fe914fb6216d9578a0bc"></a> <h2 class="memtitle"><span class="permalink"><a href="#affdd800662e4fe914fb6216d9578a0bc">◆ </a></span>nsMap</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">LWCStringPtr_t nsMap[HUBBUB_NS_XMLNS]</td> </tr> </table> </div><div class="memdoc"> </div> </div> <a id="ab540c3960749a7f2780f483510751a62"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab540c3960749a7f2780f483510751a62">◆ </a></span>parser</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">HUBBUBParserPtr_t parser</td> </tr> </table> </div><div class="memdoc"> <p class="reference">Referenced by <a class="el" href="classlibebook_1_1EPUBParser.html#ac7f833af77f358627ba40ae650b29967">libebook::EPUBParser::parse()</a>, <a class="el" href="classlibebook_1_1OEBParser.html#ac8dbe49bea7c2b9f4600e3ee14cd9023">libebook::OEBParser::parse()</a>, <a class="el" href="classlibebook_1_1HTMLParser.html#aaf1b6c84f1a4075fe635e7bd700dc9b9">libebook::HTMLParser::parse()</a>, <a class="el" href="classlibebook_1_1RBParser.html#acb80d8260f743f9a958c9b682820f211">libebook::RBParser::parse()</a>, <a class="el" href="classlibebook_1_1EBOOKOPFParser.html#a20eb91fe5a8b7535d67614abf7c4278c">libebook::EBOOKOPFParser::parse()</a>, <a class="el" href="classlibebook_1_1LRFParser.html#a8c04b170313827c71983c1a6867d5220">libebook::LRFParser::readMetadata()</a>, and <a class="el" href="classlibebook_1_1PMLParser.html#ac0bf75bfc1645b7d60ffee04e5a0425c">libebook::PMLParser::readText()</a>.</p> </div> </div> <a id="af25d6dc49269fa2003ac7c7fa6f13915"></a> <h2 class="memtitle"><span class="permalink"><a href="#af25d6dc49269fa2003ac7c7fa6f13915">◆ </a></span>str</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* str</td> </tr> </table> </div><div class="memdoc"> <p class="reference">Referenced by <a class="el" href="namespacelibebook.html#a2c69a9df63fd622cf4c53eb429f01a86">libebook::readCString()</a>, <a class="el" href="namespacelibebook.html#ab74b87a3c0092874adb187e813d5d3d3">libebook::readPascalString()</a>, <a class="el" href="classlibebook_1_1FB2BookNameContext.html#a2a12930b2eeb418276670f653143f59f">libebook::FB2BookNameContext::text()</a>, <a class="el" href="classlibebook_1_1FB2CityContext.html#a3eafc06518226e15f99439de49bc44b4">libebook::FB2CityContext::text()</a>, <a class="el" href="classlibebook_1_1FB2CoverpageContext.html#ae7adcca61a40bb408968f2cd9fd4f114">libebook::FB2CoverpageContext::text()</a>, <a class="el" href="classlibebook_1_1FB2EmailContext.html#a55c36192f240581fe91e6def0e5ea428">libebook::FB2EmailContext::text()</a>, <a class="el" href="classlibebook_1_1FB2FirstNameContext.html#af151daacf655bbcc20f6a404d35bbe2b">libebook::FB2FirstNameContext::text()</a>, <a class="el" href="classlibebook_1_1FB2GenreContext.html#a96c96462b311b351fe507725468c313e">libebook::FB2GenreContext::text()</a>, <a class="el" href="classlibebook_1_1FB2HistoryContext.html#ae985106856f74c205f35e35800466cc6">libebook::FB2HistoryContext::text()</a>, <a class="el" href="classlibebook_1_1FB2HomePageContext.html#a0da8419785884eb8e023c7c2d5dd4bc1">libebook::FB2HomePageContext::text()</a>, <a class="el" href="classlibebook_1_1FB2IdContext.html#a3e2f2156f091e49cd9585799007ec060">libebook::FB2IdContext::text()</a>, <a class="el" href="classlibebook_1_1FB2IsbnContext.html#a5691a27be000c978c8b1722166f44081">libebook::FB2IsbnContext::text()</a>, <a class="el" href="classlibebook_1_1FB2LastNameContext.html#a79ca2f672db6a7c924961079da679caa">libebook::FB2LastNameContext::text()</a>, <a class="el" href="classlibebook_1_1FB2MiddleNameContext.html#ab1c80979217a6ee285a1846df5d6bb77">libebook::FB2MiddleNameContext::text()</a>, <a class="el" href="classlibebook_1_1FB2NicknameContext.html#a3c9927d634edd926403a61981160838a">libebook::FB2NicknameContext::text()</a>, <a class="el" href="classlibebook_1_1FB2OutputContext.html#a5200377695db858c7867fbd522d118f6">libebook::FB2OutputContext::text()</a>, <a class="el" href="classlibebook_1_1FB2OutputDocumentClassContext.html#a8dc686e706eca33fe4f230abd4f1ad32">libebook::FB2OutputDocumentClassContext::text()</a>, <a class="el" href="classlibebook_1_1FB2PartContext.html#ae7db4b4f4d170c853529029547e20f05">libebook::FB2PartContext::text()</a>, <a class="el" href="classlibebook_1_1FB2ProgramUsedContext.html#afa2c5126a7e395ee2dd33a0aee854cac">libebook::FB2ProgramUsedContext::text()</a>, <a class="el" href="classlibebook_1_1FB2SequenceContext.html#acae31da02937c1575d3b1d781b12c47a">libebook::FB2SequenceContext::text()</a>, <a class="el" href="classlibebook_1_1FB2SrcLangContext.html#acc6cab591964fe70fbfc69597bdfd141">libebook::FB2SrcLangContext::text()</a>, <a class="el" href="classlibebook_1_1FB2SrcOcrContext.html#ad8a3243dabc57ebe8af60b78c54583d9">libebook::FB2SrcOcrContext::text()</a>, <a class="el" href="classlibebook_1_1FB2SrcTitleInfoContext.html#a8341e445ed9000a22821e3331a0ba972">libebook::FB2SrcTitleInfoContext::text()</a>, <a class="el" href="classlibebook_1_1FB2TranslatorContext.html#aac5c465433a2f9f5c99e911d70bfd32f">libebook::FB2TranslatorContext::text()</a>, and <a class="el" href="classlibebook_1_1FB2YearContext.html#a00fb7cc50e197c990efeaf13c1ed89f9">libebook::FB2YearContext::text()</a>.</p> </div> </div> <a id="a1c6a41bcca234902b2ad5209db330ae5"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1c6a41bcca234902b2ad5209db330ae5">◆ </a></span>xhtmlConfig</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">XMLTreeNode::ConfigurationPtr_t xhtmlConfig</td> </tr> </table> </div><div class="memdoc"> </div> </div> </div><!-- contents --> </div><!-- doc-content --> <hr size="1"><address style="align: right;"><small> Generated for libe-book by <a href="http://www.doxygen.org/index.html"> doxygen</a> 1.8.13</small></address> </body> </html>