<?xml version='1.0' encoding='ISO-8859-1' standalone='yes'?>
<doxygen version="1.2.14">
  <compounddef id="SAX__Parser_8h" kind="file">
    <compoundname>SAX_Parser.h</compoundname>
    <includes local="no">map</includes>
    <includes local="no">stack</includes>
    <includes id="classes_8h" local="yes">classes.h</includes>
    <includes id="DefaultXMLTraits_8h" local="yes">DefaultXMLTraits.h</includes>
    <includes id="misc_8h" local="yes">misc.h</includes>
    <includes id="Tokenizer_8h" local="yes">Tokenizer.h</includes>
    <includes id="SAX__EventHandler_8h" local="yes">SAX_EventHandler.h</includes>
    <includes id="XMLString_8h" local="yes">XMLString.h</includes>
    <includes id="AttrMap_8h" local="yes">AttrMap.h</includes>
    <includes local="yes">SAX_Parser.cpp</includes>
    <includedby id="DOM__Parser_8h" local="yes">DOM_Parser.h</includedby>
    <includedby id="MiX_8h" local="yes">MiX.h</includedby>
    <incdepgraph>
      <node id="398">
        <label>AttrMap.h</label>
        <link id="AttrMap_8h"/>
        <childnode id="399" relation="public-inheritance">
        </childnode>
        <childnode id="393" relation="public-inheritance">
        </childnode>
        <childnode id="389" relation="public-inheritance">
        </childnode>
        <childnode id="400" relation="public-inheritance">
        </childnode>
      </node>
      <node id="387">
        <label>DefaultXMLTraits.h</label>
        <link id="DefaultXMLTraits_8h"/>
        <childnode id="386" relation="public-inheritance">
        </childnode>
        <childnode id="385" relation="public-inheritance">
        </childnode>
        <childnode id="388" relation="public-inheritance">
        </childnode>
      </node>
      <node id="392">
        <label>XMLToken.h</label>
        <link id="XMLToken_8h"/>
        <childnode id="384" relation="public-inheritance">
        </childnode>
        <childnode id="389" relation="public-inheritance">
        </childnode>
        <childnode id="393" relation="public-inheritance">
        </childnode>
        <childnode id="395" relation="public-inheritance">
        </childnode>
      </node>
      <node id="390">
        <label>DefaultTraits.h</label>
        <link id="DefaultTraits_8h"/>
        <childnode id="384" relation="public-inheritance">
        </childnode>
      </node>
      <node id="395">
        <label>XMLToken.cpp</label>
      </node>
      <node id="386">
        <label>string</label>
      </node>
      <node id="382">
        <label>map</label>
      </node>
      <node id="391">
        <label>Tokenizer.h</label>
        <link id="Tokenizer_8h"/>
        <childnode id="384" relation="public-inheritance">
        </childnode>
        <childnode id="389" relation="public-inheritance">
        </childnode>
        <childnode id="392" relation="public-inheritance">
        </childnode>
        <childnode id="383" relation="public-inheritance">
        </childnode>
        <childnode id="386" relation="public-inheritance">
        </childnode>
        <childnode id="396" relation="public-inheritance">
        </childnode>
      </node>
      <node id="381">
        <label>SAX_Parser.h</label>
        <link id="SAX_Parser.h"/>
        <childnode id="382" relation="public-inheritance">
        </childnode>
        <childnode id="383" relation="public-inheritance">
        </childnode>
        <childnode id="384" relation="public-inheritance">
        </childnode>
        <childnode id="387" relation="public-inheritance">
        </childnode>
        <childnode id="389" relation="public-inheritance">
        </childnode>
        <childnode id="391" relation="public-inheritance">
        </childnode>
        <childnode id="397" relation="public-inheritance">
        </childnode>
        <childnode id="393" relation="public-inheritance">
        </childnode>
        <childnode id="398" relation="public-inheritance">
        </childnode>
        <childnode id="401" relation="public-inheritance">
        </childnode>
      </node>
      <node id="393">
        <label>XMLString.h</label>
        <link id="XMLString_8h"/>
        <childnode id="386" relation="public-inheritance">
        </childnode>
        <childnode id="394" relation="public-inheritance">
        </childnode>
        <childnode id="385" relation="public-inheritance">
        </childnode>
      </node>
      <node id="384">
        <label>classes.h</label>
        <link id="classes_8h"/>
        <childnode id="385" relation="public-inheritance">
        </childnode>
        <childnode id="386" relation="public-inheritance">
        </childnode>
      </node>
      <node id="396">
        <label>Tokenizer.cpp</label>
      </node>
      <node id="388">
        <label>DefaultXMLTraits.cpp</label>
      </node>
      <node id="399">
        <label>vector</label>
      </node>
      <node id="383">
        <label>stack</label>
      </node>
      <node id="389">
        <label>misc.h</label>
        <link id="misc_8h"/>
        <childnode id="384" relation="public-inheritance">
        </childnode>
        <childnode id="390" relation="public-inheritance">
        </childnode>
      </node>
      <node id="394">
        <label>iostream</label>
      </node>
      <node id="385">
        <label>config.h</label>
        <link id="config_8h"/>
      </node>
      <node id="401">
        <label>SAX_Parser.cpp</label>
      </node>
      <node id="397">
        <label>SAX_EventHandler.h</label>
        <link id="SAX__EventHandler_8h"/>
        <childnode id="384" relation="public-inheritance">
        </childnode>
        <childnode id="389" relation="public-inheritance">
        </childnode>
        <childnode id="391" relation="public-inheritance">
        </childnode>
        <childnode id="393" relation="public-inheritance">
        </childnode>
        <childnode id="398" relation="public-inheritance">
        </childnode>
      </node>
      <node id="400">
        <label>AttrMap.cpp</label>
      </node>
    </incdepgraph>
    <invincdepgraph>
      <node id="403">
        <label>DOM_Parser.h</label>
        <link id="DOM__Parser_8h"/>
        <childnode id="404" relation="public-inheritance">
        </childnode>
      </node>
      <node id="402">
        <label>SAX_Parser.h</label>
        <link id="SAX_Parser.h"/>
        <childnode id="403" relation="public-inheritance">
        </childnode>
        <childnode id="404" relation="public-inheritance">
        </childnode>
      </node>
      <node id="404">
        <label>MiX.h</label>
        <link id="MiX_8h"/>
      </node>
    </invincdepgraph>
    <innernamespace refid="namespaceMiX">MiX</innernamespace>
    <briefdescription>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <programlisting>
<linenumber line="1"/><codeline><highlight class="comment">// -*- mode: c++ -*-</highlight></codeline>
<linenumber line="2"/><codeline></codeline>
<linenumber line="3"/><codeline><highlight class="preprocessor">#ifndef MiX_SAXPARSER_H_</highlight></codeline>
<linenumber line="4"/><codeline><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define MiX_SAXPARSER_H_</highlight></codeline>
<linenumber line="5"/><codeline><highlight class="preprocessor"></highlight></codeline>
<linenumber line="6"/><codeline><highlight class="preprocessor">#include &lt;map&gt;</highlight></codeline>
<linenumber line="7"/><codeline><highlight class="preprocessor">#include &lt;stack&gt;</highlight></codeline>
<linenumber line="8"/><codeline></codeline>
<linenumber line="9"/><codeline><highlight class="preprocessor">#include &quot;<ref refid="classes_8h" kindref="compound">classes.h</ref>&quot;</highlight></codeline>
<linenumber line="10"/><codeline><highlight class="preprocessor">#include &quot;<ref refid="DefaultXMLTraits_8h" kindref="compound">DefaultXMLTraits.h</ref>&quot;</highlight></codeline>
<linenumber line="11"/><codeline><highlight class="preprocessor">#include &quot;<ref refid="misc_8h" kindref="compound">misc.h</ref>&quot;</highlight></codeline>
<linenumber line="12"/><codeline><highlight class="preprocessor">#include &quot;<ref refid="Tokenizer_8h" kindref="compound">Tokenizer.h</ref>&quot;</highlight></codeline>
<linenumber line="13"/><codeline><highlight class="preprocessor">#include &quot;<ref refid="SAX__EventHandler_8h" kindref="compound">SAX_EventHandler.h</ref>&quot;</highlight></codeline>
<linenumber line="14"/><codeline><highlight class="preprocessor">#include &quot;<ref refid="XMLString_8h" kindref="compound">XMLString.h</ref>&quot;</highlight></codeline>
<linenumber line="15"/><codeline><highlight class="preprocessor">#include &quot;<ref refid="AttrMap_8h" kindref="compound">AttrMap.h</ref>&quot;</highlight></codeline>
<linenumber line="16"/><codeline></codeline>
<linenumber line="17"/><codeline><highlight class="keyword">namespace </highlight>MiX{</codeline>
<linenumber line="18"/><codeline>  <highlight class="keyword">template</highlight> &lt;<highlight class="keyword">class</highlight> <highlight class="keywordtype">char</highlight>T,<highlight class="keyword">class</highlight> <highlight class="keywordtype">char</highlight>_traits,<highlight class="keyword">class</highlight> xml_traits&gt;</codeline>
<linenumber line="19" refid="classMiX_1_1SAX__Parser" kindref="compound"/><codeline>  <highlight class="keyword">class </highlight>SAX_Parser{</codeline>
<linenumber line="20"/><codeline>  <highlight class="keyword">public</highlight>:</codeline>
<linenumber line="21"/><codeline>    <ref refid="classMiX_1_1SAX__Parser_1a0" kindref="member">MiX_Template_Typedef</ref>(charT,char_traits,xml_traits);</codeline>
<linenumber line="22" refid="classMiX_1_1SAX__Parser_1s0" kindref="member"/><codeline>    <highlight class="keyword">typedef</highlight> SAX_Parser&lt;charT,char_traits,xml_traits&gt; <ref refid="classMiX_1_1SAX__Parser_1s0" kindref="member">this_type</ref>;</codeline>
<linenumber line="23" refid="classMiX_1_1SAX__Parser_1s1" kindref="member"/><codeline>    <highlight class="keyword">typedef</highlight> XMLToken&lt;charT,char_traits,xml_traits&gt; <ref refid="classMiX_1_1SAX__Parser_1s1" kindref="member">token_type</ref>;</codeline>
<linenumber line="24" refid="classMiX_1_1SAX__Parser_1s2" kindref="member"/><codeline>    <highlight class="keyword">typedef</highlight> SAX_EventHandler&lt;charT,char_traits,xml_traits&gt; <ref refid="classMiX_1_1SAX__Parser_1s2" kindref="member">handler_type</ref>;</codeline>
<linenumber line="25" refid="classMiX_1_1SAX__Parser_1s3" kindref="member"/><codeline>    <highlight class="keyword">typedef</highlight> Tokenizer&lt;charT,char_traits,xml_traits&gt; <ref refid="classMiX_1_1SAX__Parser_1s3" kindref="member">tokenizer_type</ref>;</codeline>
<linenumber line="26"/><codeline>  <highlight class="keyword">private</highlight>:</codeline>
<linenumber line="27"/><codeline>    <highlight class="keyword">enum</highlight> State{</codeline>
<linenumber line="28"/><codeline>      STATE_Text,</codeline>
<linenumber line="29"/><codeline>      STATE_Tag,</codeline>
<linenumber line="30"/><codeline>      STATE_Reference,</codeline>
<linenumber line="31"/><codeline>      STATE_Comment,</codeline>
<linenumber line="32"/><codeline>      STATE_Complete,</codeline>
<linenumber line="33"/><codeline>      STATE_Declaration,</codeline>
<linenumber line="34"/><codeline>      STATE_XMLDeclaration,</codeline>
<linenumber line="35"/><codeline>      STATE_Escape,</codeline>
<linenumber line="36"/><codeline>      STATE_Exception</codeline>
<linenumber line="37"/><codeline>    };</codeline>
<linenumber line="38"/><codeline>    State state_;</codeline>
<linenumber line="39"/><codeline>    <ref refid="classMiX_1_1SAX__Parser_1s3" kindref="member">tokenizer_type</ref> tokenizer_;</codeline>
<linenumber line="40"/><codeline>    <ref refid="classMiX_1_1SAX__Parser_1s2" kindref="member">handler_type</ref>* handler_;</codeline>
<linenumber line="41"/><codeline>    std::stack&lt;string_type&gt; validator_;</codeline>
<linenumber line="42"/><codeline></codeline>
<linenumber line="43"/><codeline>    <highlight class="keywordtype">bool</highlight> ignore_space_;</codeline>
<linenumber line="44"/><codeline></codeline>
<linenumber line="45"/><codeline>    <highlight class="keywordtype">void</highlight> skipSpaceTokens();</codeline>
<linenumber line="46"/><codeline></codeline>
<linenumber line="47"/><codeline>    <highlight class="keywordtype">bool</highlight> parsingLoop();</codeline>
<linenumber line="48"/><codeline></codeline>
<linenumber line="49"/><codeline>    State parseText();</codeline>
<linenumber line="50"/><codeline>    State parseTag();</codeline>
<linenumber line="51"/><codeline>    State parseComment();</codeline>
<linenumber line="52"/><codeline>    State parseDeclaration();</codeline>
<linenumber line="53"/><codeline>    State parseXMLDeclaration();</codeline>
<linenumber line="54"/><codeline></codeline>
<linenumber line="55"/><codeline>    attrmap_type parseAttributes();</codeline>
<linenumber line="56"/><codeline>    string_type parseReference();</codeline>
<linenumber line="57"/><codeline></codeline>
<linenumber line="58"/><codeline>    <highlight class="keywordtype">void</highlight> trimRight(string_type&amp; str);</codeline>
<linenumber line="59"/><codeline>  <highlight class="keyword">public</highlight>:</codeline>
<linenumber line="61" refid="classMiX_1_1SAX__Parser_1a1" kindref="member"/><codeline>    <ref refid="classMiX_1_1SAX__Parser_1a1" kindref="member">SAX_Parser</ref>(){ handler_ = NULL; ignore_space_ = <highlight class="keyword">false</highlight>; }</codeline>
<linenumber line="68" refid="classMiX_1_1SAX__Parser_1a2" kindref="member"/><codeline>    <highlight class="keywordtype">void</highlight> <ref refid="classMiX_1_1SAX__Parser_1a2" kindref="member">setEventHandler</ref>(<ref refid="classMiX_1_1SAX__Parser_1s2" kindref="member">handler_type</ref>* handler){</codeline>
<linenumber line="69"/><codeline>      handler_ = handler;</codeline>
<linenumber line="70"/><codeline>    };</codeline>
<linenumber line="77" refid="classMiX_1_1SAX__Parser_1a3" kindref="member"/><codeline>    <highlight class="keywordtype">void</highlight> <ref refid="classMiX_1_1SAX__Parser_1a3" kindref="member">setIgnoreSpace</ref>(<highlight class="keywordtype">bool</highlight> flag) { ignore_space_ = flag; };</codeline>
<linenumber line="84"/><codeline>    <highlight class="keywordtype">bool</highlight> <ref refid="classMiX_1_1SAX__Parser_1a4" kindref="member">parse</ref>(<highlight class="keyword">const</highlight> string_type&amp; text);</codeline>
<linenumber line="91"/><codeline>    <highlight class="keywordtype">bool</highlight> <ref refid="classMiX_1_1SAX__Parser_1a4" kindref="member">parse</ref>(std::basic_istream&lt;charT, char_traits&gt;&amp; is);</codeline>
<linenumber line="92"/><codeline>  };</codeline>
<linenumber line="93"/><codeline>}</codeline>
<linenumber line="94"/><codeline></codeline>
<linenumber line="95"/><codeline><highlight class="preprocessor">#ifndef MiX_SAXPARSER_CPP_</highlight></codeline>
<linenumber line="96"/><codeline><highlight class="preprocessor"></highlight><highlight class="preprocessor">#include &quot;SAX_Parser.cpp&quot;</highlight></codeline>
<linenumber line="97"/><codeline><highlight class="preprocessor">#endif</highlight></codeline>
<linenumber line="98"/><codeline><highlight class="preprocessor"></highlight></codeline>
<linenumber line="99"/><codeline><highlight class="preprocessor">#endif</highlight></codeline>
    </programlisting>
    <location file="/home/yotaro/prog/MiX-0.5.0/src/MiX/SAX_Parser.h"/>
  </compounddef>
</doxygen>
