Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > by-pkgid > e8cbfa9673da18966abee0a6d7051b87 > files > 201

glibmm2.4-doc-2.16.1-1mdv2008.1.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>glibmm 2.4: Glib::Markup::Parser Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#ffffff">
<table border="0" width="100%">
<tr>
    <td width="10%" height="40"><img src="../../images/gtkmm_logo.gif" alt="logo" border="0" width="100%" height="100%"/></td>
    <td width="90%" height="40"><img src="../../images/top.gif" alt="top" width="100%" height="40"/></td>
</tr>
</table>
<center>
  <a class="qindex" href="../../../../gtkmm-2.4/docs/index.html">Main Page</a> &nbsp;
  <a href="../../../../gtkmm-2.4/docs/reference/html/group__Widgets.html">Widgets</a> &nbsp;
  <a class="qindex" href="namespaces.html">glibmm Namespaces</a> &nbsp;
  <a href="../../../../gtkmm-2.4/docs/tutorial/html/index.html"> Book</a> &nbsp;
</center>
<hr width="100%"/>

<!-- begin main content -->
<div id="content">
<!-- Generated by Doxygen 1.5.3 -->
<div class="nav">
<a class="el" href="namespaceGlib.html">Glib</a>::<a class="el" href="namespaceGlib_1_1Markup.html">Markup</a>::<a class="el" href="classGlib_1_1Markup_1_1Parser.html">Parser</a></div>
<h1>Glib::Markup::Parser Class Reference<br>
<small>
[<a class="el" href="group__Markup.html">Simple XML Subset Parser</a>]</small>
</h1><!-- doxytag: class="Glib::Markup::Parser" --><!-- doxytag: inherits="sigc::trackable" -->The abstract markup parser base class.  
<a href="#_details">More...</a>
<p>
<div class="dynheader">
Inheritance diagram for Glib::Markup::Parser:</div>
<div class="dynsection">
<p><center><img src="classGlib_1_1Markup_1_1Parser__inherit__graph.png" border="0" usemap="#Glib_1_1Markup_1_1Parser__inherit__map" alt="Inheritance graph"></center>
<map name="Glib_1_1Markup_1_1Parser__inherit__map">
<area shape="rect" href="classsigc_1_1trackable.html" title="sigc::trackable" alt="" coords="25,7,137,33"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classGlib_1_1Markup_1_1Parser-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="elRef" doxygen="libstdc++.tag.xml:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/classstd_1_1map.html">std::map</a><br>
&lt; <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>,<br>
 <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>,<br>
 <a class="el" href="classGlib_1_1Markup_1_1AttributeKeyLess.html">Glib::Markup::AttributeKeyLess</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Markup_1_1Parser.html#65bc2af877b64b3077f8635ef81213dc">AttributeMap</a></td></tr>

<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Markup_1_1Parser.html#9932a9141e04ece2d063dad4eefa0380">~Parser</a> ()=0</td></tr>

<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Markup_1_1Parser.html#b36908e49f4d711f0490837f4d1cdfe7">Parser</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a <a class="el" href="classGlib_1_1Markup_1_1Parser.html" title="The abstract markup parser base class.">Parser</a> object.  <a href="#b36908e49f4d711f0490837f4d1cdfe7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Markup_1_1Parser.html#e6d6ae3c4f3aab7c2ee22a079fcb7915">on_start_element</a> (<a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp; context, const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; element_name, const <a class="elRef" doxygen="libstdc++.tag.xml:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/classstd_1_1map.html">AttributeMap</a>&amp; attributes)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called for open tags <code>&lt;foo bar="baz"&gt;</code>.  <a href="#e6d6ae3c4f3aab7c2ee22a079fcb7915"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Markup_1_1Parser.html#c0917070686ec7dc72d544feeda24942">on_end_element</a> (<a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp; context, const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; element_name)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called for close tags <code>&lt;/foo&gt;</code>.  <a href="#c0917070686ec7dc72d544feeda24942"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Markup_1_1Parser.html#481ae1c7007fe49e968bfc4393b9ad3d">on_text</a> (<a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp; context, const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; text)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called for character data.  <a href="#481ae1c7007fe49e968bfc4393b9ad3d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Markup_1_1Parser.html#2f01a92bf1571497c23cfc38137751a5">on_passthrough</a> (<a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp; context, const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; passthrough_text)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called for strings that should be re-saved verbatim in this same position, but are not otherwise interpretable.  <a href="#2f01a92bf1571497c23cfc38137751a5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Markup_1_1Parser.html#ddad19d661fea6b71fa0a88cb677b3cc">on_error</a> (<a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp; context, const <a class="el" href="classGlib_1_1MarkupError.html">MarkupError</a>&amp; error)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called on error, including one thrown by an overridden virtual method.  <a href="#ddad19d661fea6b71fa0a88cb677b3cc"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The abstract markup parser base class. 
<p>
To implement a parser for your markup format, derive from <a class="el" href="classGlib_1_1Markup_1_1Parser.html" title="The abstract markup parser base class.">Glib::Markup::Parser</a> and implement the virtual methods.<p>
You don't have to override all of the virtual methods. If a particular method is not implement the data passed to it will be ignored. Except for the error method, any of these callbacks can throw an error exception; in particular the <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a72a63efd807b6e40451b57e128b34d9f5">MarkupError::UNKNOWN_ELEMENT</a>, <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a7ef0a541fa2885ffc56d0703a55afa735">MarkupError::UNKNOWN_ATTRIBUTE</a>, and <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a74051754fb4e8f11408fe06445e99761e">MarkupError::INVALID_CONTENT</a> errors are intended to be thrown from these overridden methods. If you throw an error from a method, <a class="el" href="classGlib_1_1Markup_1_1ParseContext.html#1158f306b9d7211d97fa02fdfbfddf50" title="Feed some data to the ParseContext.">Glib::Markup::ParseContext::parse()</a> will report that error back to its caller. <hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="65bc2af877b64b3077f8635ef81213dc"></a><!-- doxytag: member="Glib::Markup::Parser::AttributeMap" ref="65bc2af877b64b3077f8635ef81213dc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="elRef" doxygen="libstdc++.tag.xml:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/classstd_1_1map.html">std::map</a>&lt;<a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>, <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>, <a class="el" href="classGlib_1_1Markup_1_1AttributeKeyLess.html">Glib::Markup::AttributeKeyLess</a>&gt; <a class="elRef" doxygen="libstdc++.tag.xml:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/classstd_1_1map.html">Glib::Markup::Parser::AttributeMap</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="9932a9141e04ece2d063dad4eefa0380"></a><!-- doxytag: member="Glib::Markup::Parser::~Parser" ref="9932a9141e04ece2d063dad4eefa0380" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual Glib::Markup::Parser::~Parser           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="b36908e49f4d711f0490837f4d1cdfe7"></a><!-- doxytag: member="Glib::Markup::Parser::Parser" ref="b36908e49f4d711f0490837f4d1cdfe7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Glib::Markup::Parser::Parser           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructs a <a class="el" href="classGlib_1_1Markup_1_1Parser.html" title="The abstract markup parser base class.">Parser</a> object. 
<p>
Note that <a class="el" href="classGlib_1_1Markup_1_1Parser.html" title="The abstract markup parser base class.">Markup::Parser</a> is an abstract class which can't be instantiated directly. To implement the parser for your markup format, derive from <a class="el" href="classGlib_1_1Markup_1_1Parser.html" title="The abstract markup parser base class.">Markup::Parser</a> and implement the virtual methods. 
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="e6d6ae3c4f3aab7c2ee22a079fcb7915"></a><!-- doxytag: member="Glib::Markup::Parser::on_start_element" ref="e6d6ae3c4f3aab7c2ee22a079fcb7915" args="(ParseContext &amp;context, const Glib::ustring &amp;element_name, const AttributeMap &amp;attributes)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Glib::Markup::Parser::on_start_element           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>element_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" doxygen="libstdc++.tag.xml:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/classstd_1_1map.html">AttributeMap</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>attributes</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Called for open tags <code>&lt;foo bar="baz"&gt;</code>. 
<p>
This virtual method is invoked when the opening tag of an element is seen. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The <a class="el" href="classGlib_1_1Markup_1_1ParseContext.html" title="A parse context is used to parse marked-up documents.">Markup::ParseContext</a> object the parsed data belongs to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>element_name</em>&nbsp;</td><td>The name of the element. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>attributes</em>&nbsp;</td><td>A map of attribute name/value pairs. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classGlib_1_1MarkupError.html" title="Exception class for markup parsing errors.">Glib::MarkupError</a></em>&nbsp;</td><td>An exception <em>you</em> should throw if something went wrong, for instance if an unknown attribute name was encountered. In particular the <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a72a63efd807b6e40451b57e128b34d9f5">MarkupError::UNKNOWN_ELEMENT</a>, <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a7ef0a541fa2885ffc56d0703a55afa735">MarkupError::UNKNOWN_ATTRIBUTE</a>, and <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a74051754fb4e8f11408fe06445e99761e">MarkupError::INVALID_CONTENT</a> errors are intended to be thrown from user-implemented methods. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="c0917070686ec7dc72d544feeda24942"></a><!-- doxytag: member="Glib::Markup::Parser::on_end_element" ref="c0917070686ec7dc72d544feeda24942" args="(ParseContext &amp;context, const Glib::ustring &amp;element_name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Glib::Markup::Parser::on_end_element           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>element_name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Called for close tags <code>&lt;/foo&gt;</code>. 
<p>
This virtual method is invoked when the closing tag of an element is seen. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The <a class="el" href="classGlib_1_1Markup_1_1ParseContext.html" title="A parse context is used to parse marked-up documents.">Markup::ParseContext</a> object the parsed data belongs to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>element_name</em>&nbsp;</td><td>The name of the element. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classGlib_1_1MarkupError.html" title="Exception class for markup parsing errors.">Glib::MarkupError</a></em>&nbsp;</td><td>An exception <em>you</em> should throw if something went wrong, for instance if an unknown attribute name was encountered. In particular the <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a72a63efd807b6e40451b57e128b34d9f5">MarkupError::UNKNOWN_ELEMENT</a>, <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a7ef0a541fa2885ffc56d0703a55afa735">MarkupError::UNKNOWN_ATTRIBUTE</a>, and <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a74051754fb4e8f11408fe06445e99761e">MarkupError::INVALID_CONTENT</a> errors are intended to be thrown from user-implemented methods. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="481ae1c7007fe49e968bfc4393b9ad3d"></a><!-- doxytag: member="Glib::Markup::Parser::on_text" ref="481ae1c7007fe49e968bfc4393b9ad3d" args="(ParseContext &amp;context, const Glib::ustring &amp;text)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Glib::Markup::Parser::on_text           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>text</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Called for character data. 
<p>
This virtual method is invoked when some text is seen (text is always inside an element). <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The <a class="el" href="classGlib_1_1Markup_1_1ParseContext.html" title="A parse context is used to parse marked-up documents.">Markup::ParseContext</a> object the parsed data belongs to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The parsed text in UTF-8 encoding. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classGlib_1_1MarkupError.html" title="Exception class for markup parsing errors.">Glib::MarkupError</a></em>&nbsp;</td><td>An exception <em>you</em> should throw if something went wrong, for instance if an unknown attribute name was encountered. In particular the <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a72a63efd807b6e40451b57e128b34d9f5">MarkupError::UNKNOWN_ELEMENT</a>, <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a7ef0a541fa2885ffc56d0703a55afa735">MarkupError::UNKNOWN_ATTRIBUTE</a>, and <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a74051754fb4e8f11408fe06445e99761e">MarkupError::INVALID_CONTENT</a> errors are intended to be thrown from user-implemented methods. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="2f01a92bf1571497c23cfc38137751a5"></a><!-- doxytag: member="Glib::Markup::Parser::on_passthrough" ref="2f01a92bf1571497c23cfc38137751a5" args="(ParseContext &amp;context, const Glib::ustring &amp;passthrough_text)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Glib::Markup::Parser::on_passthrough           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>passthrough_text</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Called for strings that should be re-saved verbatim in this same position, but are not otherwise interpretable. 
<p>
This virtual method is invoked for comments, processing instructions and doctype declarations; if you're re-writing the parsed document, write the passthrough text back out in the same position. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The <a class="el" href="classGlib_1_1Markup_1_1ParseContext.html" title="A parse context is used to parse marked-up documents.">Markup::ParseContext</a> object the parsed data belongs to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>passthrough_text</em>&nbsp;</td><td>The text that should be passed through. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classGlib_1_1MarkupError.html" title="Exception class for markup parsing errors.">Glib::MarkupError</a></em>&nbsp;</td><td>An exception <em>you</em> should throw if something went wrong, for instance if an unknown attribute name was encountered. In particular the <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a72a63efd807b6e40451b57e128b34d9f5">MarkupError::UNKNOWN_ELEMENT</a>, <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a7ef0a541fa2885ffc56d0703a55afa735">MarkupError::UNKNOWN_ATTRIBUTE</a>, and <a class="el" href="group__Markup.html#g1422c4a583441bbe490b8ed47d7fe1a74051754fb4e8f11408fe06445e99761e">MarkupError::INVALID_CONTENT</a> errors are intended to be thrown from user-implemented methods. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="ddad19d661fea6b71fa0a88cb677b3cc"></a><!-- doxytag: member="Glib::Markup::Parser::on_error" ref="ddad19d661fea6b71fa0a88cb677b3cc" args="(ParseContext &amp;context, const MarkupError &amp;error)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Glib::Markup::Parser::on_error           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGlib_1_1Markup_1_1ParseContext.html">ParseContext</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1MarkupError.html">MarkupError</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>error</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Called on error, including one thrown by an overridden virtual 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>context</em>&nbsp;</td><td>The <a class="el" href="classGlib_1_1Markup_1_1ParseContext.html" title="A parse context is used to parse marked-up documents.">Markup::ParseContext</a> object the parsed data belongs to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>error</em>&nbsp;</td><td>A <a class="el" href="classGlib_1_1MarkupError.html" title="Exception class for markup parsing errors.">MarkupError</a> object with detailed information about the error. </td></tr>
  </table>
</dl>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="markup_8h.html">markup.h</a></ul>
</div> <!-- end main content -->

<hr><address><small>
Generated for glibmm 2.4 by <a href="http://www.doxygen.org/index.html">
Doxygen</a> 1.5.3 &copy;&nbsp;1997-2001</small></address>
</body>
</html>