<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Dereference the Iterator pointing into a Container Attribute</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<link rel="home" href="../../../../index.html" title="Spirit 2.4.1">
<link rel="up" href="../iterate.html" title="Extract Attribute Values to Generate Output from a Container (Karma)">
<link rel="prev" href="next_iterator.html" title="Increment the Iterator pointing into a Container Attribute">
<link rel="next" href="compare_iterators.html" title="Compare two Iterator pointing into a Container Attribute for Equality">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="next_iterator.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterate.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="compare_iterators.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="spirit.advanced.customize.iterate.deref_iterator"></a><a class="link" href="deref_iterator.html" title="Dereference the Iterator pointing into a Container Attribute">Dereference
          the Iterator pointing into a Container Attribute</a>
</h5></div></div></div>
<a name="spirit.advanced.customize.iterate.deref_iterator.deref_iterator"></a><h6>
<a name="id1192619"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.deref_iterator">deref_iterator</a>
          </h6>
<p>
            The template <code class="computeroutput"><span class="identifier">deref_iterator</span></code>
            is a type used as an attribute customization point. It is invoked by
            the <span class="emphasis"><em>Karma</em></span> repetitive generators (such as <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List
            (<code class="computeroutput"><span class="special">%</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/kleene.html" title="Kleene Star (*a)">Kleene
            (unary <code class="computeroutput"><span class="special">*</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/plus.html" title="Plus (+a)">Plus (unary <code class="computeroutput"><span class="special">+</span></code>)</a>, and <a class="link" href="../../../karma/reference/directive/repeat.html" title="Repetition Directive (repeat[])">Repeat</a>)
            in order to dereference an iterator pointing to an element of a container
            holding the attributes to generate output from.
          </p>
<a name="spirit.advanced.customize.iterate.deref_iterator.module_headers"></a><h6>
<a name="id1192692"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.module_headers">Module
            Headers</a>
          </h6>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">spirit</span><span class="special">/</span><span class="identifier">home</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">container</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<p>
            Also, see <a class="link" href="../../../structure/include.html" title="Include">Include Structure</a>.
          </p>
<div class="note"><table border="0" summary="Note">
<tr>
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../images/note.png"></td>
<th align="left">Note</th>
</tr>
<tr><td align="left" valign="top"><p>
              This header file does not need to be included directly by any user
              program as it is normally included by other Spirit header files relying
              on its content.
            </p></td></tr>
</table></div>
<a name="spirit.advanced.customize.iterate.deref_iterator.namespace"></a><h6>
<a name="id1193882"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.namespace">Namespace</a>
          </h6>
<div class="informaltable"><table class="table">
<colgroup><col></colgroup>
<thead><tr><th>
                    <p>
                      Name
                    </p>
                  </th></tr></thead>
<tbody><tr><td>
                    <p>
                      <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">traits</span></code>
                    </p>
                  </td></tr></tbody>
</table></div>
<a name="spirit.advanced.customize.iterate.deref_iterator.synopsis"></a><h6>
<a name="id1193960"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.synopsis">Synopsis</a>
          </h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Enable</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <span class="identifier">deref_iterator</span>
<span class="special">{</span>
    <span class="keyword">typedef</span> <span class="special">&lt;</span><span class="identifier">unspecified</span><span class="special">&gt;</span> <span class="identifier">type</span><span class="special">;</span>
    <span class="keyword">static</span> <span class="identifier">type</span> <span class="identifier">call</span><span class="special">(</span><span class="identifier">Iterator</span><span class="special">&amp;</span> <span class="identifier">it</span><span class="special">);</span>
<span class="special">};</span>
</pre>
<a name="spirit.advanced.customize.iterate.deref_iterator.template_parameters"></a><h6>
<a name="id1194092"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.template_parameters">Template
            parameters</a>
          </h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                    <p>
                      Parameter
                    </p>
                  </th>
<th>
                    <p>
                      Description
                    </p>
                  </th>
<th>
                    <p>
                      Default
                    </p>
                  </th>
</tr></thead>
<tbody>
<tr>
<td>
                    <p>
                      <code class="computeroutput"><span class="identifier">Iterator</span></code>
                    </p>
                  </td>
<td>
                    <p>
                      The type, <code class="computeroutput"><span class="identifier">Iterator</span></code>
                      of the iterator to dereference. This is the same as the type
                      returned by the customization point <a class="link" href="container_iterator.html" title="Determine the Type of the Iterator of a Container (Karma)"><code class="computeroutput"><span class="identifier">container_iterator</span></code></a>.
                    </p>
                  </td>
<td>
                    <p>
                      none
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <code class="computeroutput"><span class="identifier">Enable</span></code>
                    </p>
                  </td>
<td>
                    <p>
                      Helper template parameter usable to selectively enable or disable
                      certain specializations of <code class="computeroutput"><span class="identifier">deref_iterator</span></code>
                      utilizing SFINAE (i.e. <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">enable_if</span></code>
                      or <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">disable_if</span></code>).
                    </p>
                  </td>
<td>
                    <p>
                      <code class="computeroutput"><span class="keyword">void</span></code>
                    </p>
                  </td>
</tr>
</tbody>
</table></div>
<a name="spirit.advanced.customize.iterate.deref_iterator.notation"></a><h6>
<a name="id1194274"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.notation">Notation</a>
          </h6>
<div class="variablelist">
<p class="title"><b></b></p>
<dl>
<dt><span class="term"><code class="computeroutput"><span class="identifier">Iterator</span></code></span></dt>
<dd><p>
                  An iterator type.
                </p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">it</span></code></span></dt>
<dd><p>
                  An instance of an iterator of type <code class="computeroutput"><span class="identifier">Iterator</span></code>.
                </p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">C</span></code></span></dt>
<dd><p>
                  A container type whose iterator type is <code class="computeroutput"><span class="identifier">Iterator</span></code>.
                </p></dd>
</dl>
</div>
<a name="spirit.advanced.customize.iterate.deref_iterator.expression_semantics"></a><h6>
<a name="id1194369"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.expression_semantics">Expression
            Semantics</a>
          </h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                    <p>
                      Expression
                    </p>
                  </th>
<th>
                    <p>
                      Semantics
                    </p>
                  </th>
</tr></thead>
<tbody>
<tr>
<td>
                    <p>
                      <code class="computeroutput"><span class="identifier">deref_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
                    </p>
                  </td>
<td>
                    <p>
                      Metafunction result evaluating to the type returned by dereferencing
                      the iterator.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <code class="computeroutput"><span class="identifier">deref_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">it</span><span class="special">)</span></code>
                    </p>
                  </td>
<td>
                    <p>
                      Return the element in the container referred to by the iterator.
                      The type of the returned value is the same as returned by the
                      metafunction result <code class="computeroutput"><span class="identifier">type</span></code>.
                    </p>
                  </td>
</tr>
</tbody>
</table></div>
<a name="spirit.advanced.customize.iterate.deref_iterator.predefined_specializations"></a><h6>
<a name="id1194514"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.predefined_specializations">Predefined
            Specializations</a>
          </h6>
<p>
            <a href="http://boost-spirit.com" target="_top">Spirit</a> predefines specializations
            of this customization point for several types. The following table lists
            those types together with the types returned by the embedded typedef
            <code class="computeroutput"><span class="identifier">type</span></code>:
          </p>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                    <p>
                      Template Parameters
                    </p>
                  </th>
<th>
                    <p>
                      Value
                    </p>
                  </th>
</tr></thead>
<tbody>
<tr>
<td>
                    <p>
                      <code class="computeroutput"><span class="identifier">Iterator</span></code>
                    </p>
                  </td>
<td>
                    <p>
                      The metafunction result <code class="computeroutput"><span class="identifier">type</span></code>
                      evaluates to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">detail</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;::</span><span class="identifier">reference</span></code>
                      and the function <code class="computeroutput"><span class="identifier">call</span><span class="special">()</span></code> returns <code class="computeroutput"><span class="special">*</span><span class="identifier">it</span></code>.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <code class="computeroutput"><span class="identifier">unused_type</span></code><code class="computeroutput">
                      <span class="keyword">const</span><span class="special">*</span></code>
                    </p>
                  </td>
<td>
                    <p>
                      The metafunction result <code class="computeroutput"><span class="identifier">type</span></code>
                      evaluates to <code class="computeroutput"><span class="identifier">unused_type</span></code>
                      and the function <code class="computeroutput"><span class="identifier">call</span><span class="special">()</span></code> returns <code class="computeroutput"><span class="identifier">unused</span></code>.
                    </p>
                  </td>
</tr>
</tbody>
</table></div>
<a name="spirit.advanced.customize.iterate.deref_iterator.when_to_implement"></a><h6>
<a name="id1194738"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.when_to_implement">When
            to implement</a>
          </h6>
<p>
            The customization point <code class="computeroutput"><span class="identifier">deref_iterator</span></code>
            needs to be implemented for a specific iterator type whenever the container
            this iterator belongs to is to be used as an attribute in place of a
            STL container. It is applicable for generators (<span class="emphasis"><em>Spirit.Karma</em></span>)
            only. As a rule of thumb: it has to be implemented whenever a certain
            iterator type belongs to a container which is to be passed as an attribute
            to a generator normally exposing a STL container, <code class="computeroutput"><span class="identifier">C</span></code>
            and if the container type does not expose the interface of a STL container
            (i.e. <code class="computeroutput"><span class="identifier">is_container</span><span class="special">&lt;</span><span class="identifier">C</span><span class="special">&gt;::</span><span class="identifier">type</span></code> would normally return <code class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></code>).
          </p>
<a name="spirit.advanced.customize.iterate.deref_iterator.related_attribute_customization_points"></a><h6>
<a name="id1194808"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.related_attribute_customization_points">Related
            Attribute Customization Points</a>
          </h6>
<p>
            If this customization point is implemented, the following other customization
            points might need to be implemented as well.
          </p>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                    <p>
                      Name
                    </p>
                  </th>
<th>
                    <p>
                      When to implement
                    </p>
                  </th>
</tr></thead>
<tbody>
<tr>
<td>
                    <p>
                      <a class="link" href="../is_container.html" title="Determine if a Type Should be Treated as a Container (Qi and Karma)"><code class="computeroutput"><span class="identifier">is_container</span></code></a>
                    </p>
                  </td>
<td>
                    <p>
                      Needs to be implemented whenever a type is to be used as a
                      container attribute in <span class="emphasis"><em>Karma</em></span>.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <a class="link" href="container_iterator.html" title="Determine the Type of the Iterator of a Container (Karma)"><code class="computeroutput"><span class="identifier">container_iterator</span></code></a>
                    </p>
                  </td>
<td>
                    <p>
                      Karma: <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List
                      (<code class="computeroutput"><span class="special">%</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/kleene.html" title="Kleene Star (*a)">Kleene (unary
                      <code class="computeroutput"><span class="special">*</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/plus.html" title="Plus (+a)">Plus (unary
                      <code class="computeroutput"><span class="special">+</span></code>)</a>, <a class="link" href="../../../karma/reference/directive/repeat.html" title="Repetition Directive (repeat[])">Repeat</a>.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <a class="link" href="begin_container.html" title="Get the Iterator pointing to the Begin of a Container Attribute"><code class="computeroutput"><span class="identifier">begin_container</span></code></a>
                    </p>
                  </td>
<td>
                    <p>
                      Karma: <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List
                      (<code class="computeroutput"><span class="special">%</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/kleene.html" title="Kleene Star (*a)">Kleene (unary
                      <code class="computeroutput"><span class="special">*</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/plus.html" title="Plus (+a)">Plus (unary
                      <code class="computeroutput"><span class="special">+</span></code>)</a>, <a class="link" href="../../../karma/reference/directive/repeat.html" title="Repetition Directive (repeat[])">Repeat</a>.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <a class="link" href="end_container.html" title="Get the Iterator pointing to the End of a Container Attribute"><code class="computeroutput"><span class="identifier">end_container</span></code></a>
                    </p>
                  </td>
<td>
                    <p>
                      Karma: <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List
                      (<code class="computeroutput"><span class="special">%</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/kleene.html" title="Kleene Star (*a)">Kleene (unary
                      <code class="computeroutput"><span class="special">*</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/plus.html" title="Plus (+a)">Plus (unary
                      <code class="computeroutput"><span class="special">+</span></code>)</a>, <a class="link" href="../../../karma/reference/directive/repeat.html" title="Repetition Directive (repeat[])">Repeat</a>.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <a class="link" href="deref_iterator.html" title="Dereference the Iterator pointing into a Container Attribute"><code class="computeroutput"><span class="identifier">deref_iterator</span></code></a>
                    </p>
                  </td>
<td>
                    <p>
                      Karma: <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List
                      (<code class="computeroutput"><span class="special">%</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/kleene.html" title="Kleene Star (*a)">Kleene (unary
                      <code class="computeroutput"><span class="special">*</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/plus.html" title="Plus (+a)">Plus (unary
                      <code class="computeroutput"><span class="special">+</span></code>)</a>, <a class="link" href="../../../karma/reference/directive/repeat.html" title="Repetition Directive (repeat[])">Repeat</a>.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <a class="link" href="next_iterator.html" title="Increment the Iterator pointing into a Container Attribute"><code class="computeroutput"><span class="identifier">next_iterator</span></code></a>
                    </p>
                  </td>
<td>
                    <p>
                      Karma: <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List
                      (<code class="computeroutput"><span class="special">%</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/kleene.html" title="Kleene Star (*a)">Kleene (unary
                      <code class="computeroutput"><span class="special">*</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/plus.html" title="Plus (+a)">Plus (unary
                      <code class="computeroutput"><span class="special">+</span></code>)</a>, <a class="link" href="../../../karma/reference/directive/repeat.html" title="Repetition Directive (repeat[])">Repeat</a>.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      <a class="link" href="compare_iterators.html" title="Compare two Iterator pointing into a Container Attribute for Equality"><code class="computeroutput"><span class="identifier">compare_iterators</span></code></a>
                    </p>
                  </td>
<td>
                    <p>
                      Karma: <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List
                      (<code class="computeroutput"><span class="special">%</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/kleene.html" title="Kleene Star (*a)">Kleene (unary
                      <code class="computeroutput"><span class="special">*</span></code>)</a>, <a class="link" href="../../../karma/reference/operator/plus.html" title="Plus (+a)">Plus (unary
                      <code class="computeroutput"><span class="special">+</span></code>)</a>, <a class="link" href="../../../karma/reference/directive/repeat.html" title="Repetition Directive (repeat[])">Repeat</a>.
                    </p>
                  </td>
</tr>
</tbody>
</table></div>
<a name="spirit.advanced.customize.iterate.deref_iterator.example"></a><h6>
<a name="id1195305"></a>
            <a class="link" href="deref_iterator.html#spirit.advanced.customize.iterate.deref_iterator.example">Example</a>
          </h6>
<p>
            Here are the header files needed to make the example code below compile:
          </p>
<p>
            
</p>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">spirit</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">karma</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">vector</span><span class="special">&gt;</span>
</pre>
<p>
          </p>
<p>
            The example (for the full source code please see here: <a href="../../../../../../example/karma/customize_counter.cpp" target="_top">customize_counter.cpp</a>)
            uses the data structure
          </p>
<p>
            
</p>
<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">client</span>
<span class="special">{</span>
    <span class="keyword">struct</span> <span class="identifier">counter</span>
    <span class="special">{</span>
        <span class="comment">// expose the current value of the counter as our iterator
</span>        <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">iterator</span><span class="special">;</span>

        <span class="comment">// expose 'int' as the type of each generated element
</span>        <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">type</span><span class="special">;</span>

        <span class="identifier">counter</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">max_count</span><span class="special">)</span> 
          <span class="special">:</span> <span class="identifier">counter_</span><span class="special">(</span><span class="number">0</span><span class="special">),</span> <span class="identifier">max_count_</span><span class="special">(</span><span class="identifier">max_count</span><span class="special">)</span>
        <span class="special">{}</span>

        <span class="keyword">int</span> <span class="identifier">counter_</span><span class="special">;</span>
        <span class="keyword">int</span> <span class="identifier">max_count_</span><span class="special">;</span>
    <span class="special">};</span>
<span class="special">}</span>
</pre>
<p>
          </p>
<p>
            as a direct attribute to the <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List
            (<code class="computeroutput"><span class="special">%</span></code>)</a> generator. This
            type does not expose any of the interfaces of an STL container. It does
            not even expose the usual semantics of a container. The presented customization
            points build a counter instance which is incremented each time it is
            accessed. The examples shows how to enable its use as an attribute to
            <span class="emphasis"><em>Karma's</em></span> repetitive generators.
          </p>
<p>
            In order to make this data structure compatible we need to specialize
            a couple of attribute customization points: <a class="link" href="../is_container.html" title="Determine if a Type Should be Treated as a Container (Qi and Karma)"><code class="computeroutput"><span class="identifier">is_container</span></code></a>, <a class="link" href="container_iterator.html" title="Determine the Type of the Iterator of a Container (Karma)"><code class="computeroutput"><span class="identifier">container_iterator</span></code></a>, <a class="link" href="begin_container.html" title="Get the Iterator pointing to the Begin of a Container Attribute"><code class="computeroutput"><span class="identifier">begin_container</span></code></a>, and <a class="link" href="end_container.html" title="Get the Iterator pointing to the End of a Container Attribute"><code class="computeroutput"><span class="identifier">end_container</span></code></a>. In addition,
            we specialize one of the iterator related customization points as well:
            <a class="link" href="deref_iterator.html" title="Dereference the Iterator pointing into a Container Attribute"><code class="computeroutput"><span class="identifier">deref_iterator</span></code></a>.
          </p>
<p>
            
</p>
<pre class="programlisting"><span class="comment">// All specializations of attribute customization points have to be placed into
</span><span class="comment">// the namespace boost::spirit::traits.
</span><span class="comment">//
</span><span class="comment">// Note that all templates below are specialized using the 'const' type.
</span><span class="comment">// This is necessary as all attributes in Karma are 'const'.
</span><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">spirit</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">traits</span>
<span class="special">{</span>
    <span class="comment">// The specialization of the template 'is_container&lt;&gt;' will tell the 
</span>    <span class="comment">// library to treat the type 'client::counter' as a container providing 
</span>    <span class="comment">// the items to generate output from.
</span>    <span class="keyword">template</span> <span class="special">&lt;&gt;</span>
    <span class="keyword">struct</span> <span class="identifier">is_container</span><span class="special">&lt;</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span> <span class="keyword">const</span><span class="special">&gt;</span>
      <span class="special">:</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span>
    <span class="special">{};</span>

    <span class="comment">// The specialization of the template 'container_iterator&lt;&gt;' will be
</span>    <span class="comment">// invoked by the library to evaluate the iterator type to be used
</span>    <span class="comment">// for iterating the data elements in the container. 
</span>    <span class="keyword">template</span> <span class="special">&lt;&gt;</span>
    <span class="keyword">struct</span> <span class="identifier">container_iterator</span><span class="special">&lt;</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span> <span class="keyword">const</span><span class="special">&gt;</span>
    <span class="special">{</span>
        <span class="keyword">typedef</span> <span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span><span class="special">::</span><span class="identifier">iterator</span> <span class="identifier">type</span><span class="special">;</span>
    <span class="special">};</span>

    <span class="comment">// The specialization of the templates 'begin_container&lt;&gt;' and 
</span>    <span class="comment">// 'end_container&lt;&gt;' below will be used by the library to get the iterators 
</span>    <span class="comment">// pointing to the begin and the end of the data to generate output from. 
</span>    <span class="comment">// These specializations respectively return the initial and maximum 
</span>    <span class="comment">// counter values.
</span>    <span class="comment">//
</span>    <span class="comment">// The passed argument refers to the attribute instance passed to the list 
</span>    <span class="comment">// generator.
</span>    <span class="keyword">template</span> <span class="special">&lt;&gt;</span>
    <span class="keyword">struct</span> <span class="identifier">begin_container</span><span class="special">&lt;</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span> <span class="keyword">const</span><span class="special">&gt;</span>
    <span class="special">{</span>
        <span class="keyword">static</span> <span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span><span class="special">::</span><span class="identifier">iterator</span> 
        <span class="identifier">call</span><span class="special">(</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">c</span><span class="special">)</span>
        <span class="special">{</span>
            <span class="keyword">return</span> <span class="identifier">c</span><span class="special">.</span><span class="identifier">counter_</span><span class="special">;</span>
        <span class="special">}</span>
    <span class="special">};</span>

    <span class="keyword">template</span> <span class="special">&lt;&gt;</span>
    <span class="keyword">struct</span> <span class="identifier">end_container</span><span class="special">&lt;</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span> <span class="keyword">const</span><span class="special">&gt;</span>
    <span class="special">{</span>
        <span class="keyword">static</span> <span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span><span class="special">::</span><span class="identifier">iterator</span> 
        <span class="identifier">call</span><span class="special">(</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">c</span><span class="special">)</span>
        <span class="special">{</span>
            <span class="keyword">return</span> <span class="identifier">c</span><span class="special">.</span><span class="identifier">max_count_</span><span class="special">;</span>
        <span class="special">}</span>
    <span class="special">};</span>
<span class="special">}}}</span>
</pre>
<p>
          </p>
<p>
            
</p>
<pre class="programlisting"><span class="comment">// All specializations of attribute customization points have to be placed into
</span><span class="comment">// the namespace boost::spirit::traits.
</span><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">spirit</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">traits</span>
<span class="special">{</span>
    <span class="comment">// The specialization of the template 'deref_iterator&lt;&gt;' will be used to 
</span>    <span class="comment">// dereference the iterator associated with our counter data structure.
</span>    <span class="comment">// Since we expose the current value as the iterator we just return the 
</span>    <span class="comment">// current iterator as the return value.
</span>    <span class="keyword">template</span> <span class="special">&lt;&gt;</span>
    <span class="keyword">struct</span> <span class="identifier">deref_iterator</span><span class="special">&lt;</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span><span class="special">::</span><span class="identifier">iterator</span><span class="special">&gt;</span>
    <span class="special">{</span>
        <span class="keyword">typedef</span> <span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span><span class="special">::</span><span class="identifier">type</span> <span class="identifier">type</span><span class="special">;</span>

        <span class="keyword">static</span> <span class="identifier">type</span> <span class="identifier">call</span><span class="special">(</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span><span class="special">::</span><span class="identifier">iterator</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">it</span><span class="special">)</span>
        <span class="special">{</span>
            <span class="keyword">return</span> <span class="identifier">it</span><span class="special">;</span>
        <span class="special">}</span>
    <span class="special">};</span>
<span class="special">}}}</span>
</pre>
<p>
          </p>
<p>
            The last code snippet shows an example using an instance of the data
            structure <code class="computeroutput"><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span></code> to generate output from a
            <a class="link" href="../../../karma/reference/operator/list.html" title="Lists (a % b)">List (<code class="computeroutput"><span class="special">%</span></code>)</a> generator:
          </p>
<p>
            
</p>
<pre class="programlisting"><span class="comment">// use the instance of a 'client::counter' instead of a STL vector
</span><span class="identifier">client</span><span class="special">::</span><span class="identifier">counter</span> <span class="identifier">count</span><span class="special">(</span><span class="number">4</span><span class="special">);</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">karma</span><span class="special">::</span><span class="identifier">format</span><span class="special">(</span><span class="identifier">karma</span><span class="special">::</span><span class="identifier">int_</span> <span class="special">%</span> <span class="string">", "</span><span class="special">,</span> <span class="identifier">count</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>   <span class="comment">// prints: '0, 1, 2, 3'
</span></pre>
<p>
          </p>
<p>
            As you can see, the specializations for the customization points as defined
            above enable the seamless integration of the custom data structure without
            having to modify the output format or the generator itself.
          </p>
<p>
            For other examples of how to use the customization point <code class="computeroutput"><span class="identifier">deref_iterator</span></code> please see here: <a class="link" href="next_iterator.html#spirit.advanced.customize.iterate.next_iterator.example">use_as_container</a>.
          </p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2001-2010 Joel de Guzman, Hartmut Kaiser<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="next_iterator.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterate.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="compare_iterators.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
