|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r56027 - in trunk/libs/spirit: doc/html doc/html/spirit doc/html/spirit/karma/performance_measurements/numeric_performance doc/html/spirit/karma/quick_reference doc/html/spirit/karma/reference doc/html/spirit/karma/reference/auxiliary doc/html/spirit/karma/reference/binary doc/html/spirit/karma/reference/char doc/html/spirit/karma/reference/directive doc/html/spirit/karma/reference/generator_concepts doc/html/spirit/karma/reference/numeric doc/html/spirit/karma/reference/operator doc/html/spirit/karma/tutorials doc/html/spirit/lex doc/html/spirit/lex/abstracts doc/html/spirit/lex/abstracts/lexer_primitives doc/html/spirit/lex/reference doc/html/spirit/lex/reference/concepts doc/html/spirit/lex/tutorials doc/html/spirit/notes doc/html/spirit/qi/reference doc/html/spirit/qi/reference/numeric doc/html/spirit/qi/reference/string doc/html/spirit/support doc/qi example/qi test/qi
From: joel_at_[hidden]
Date: 2009-09-05 02:30:08
Author: djowel
Date: 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
New Revision: 56027
URL: http://svn.boost.org/trac/boost/changeset/56027
Log:
real number parsers
Added:
trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/real.html (contents, props changed)
Text files modified:
trunk/libs/spirit/doc/html/index.html | 2
trunk/libs/spirit/doc/html/spirit/acknowledgments.html | 2
trunk/libs/spirit/doc/html/spirit/faq.html | 8
trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/double_performance.html | 2
trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/format_performance.html | 2
trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/int_performance.html | 2
trunk/libs/spirit/doc/html/spirit/karma/quick_reference/compound_attribute_rules.html | 2
trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary.html | 2
trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/eol.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/eps.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/lazy.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/binary.html | 2
trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_big.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_little.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_native.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/char.html | 2
trunk/libs/spirit/doc/html/spirit/karma/reference/char/char_class.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/char/char_generator.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/directive.html | 2
trunk/libs/spirit/doc/html/spirit/karma/reference/directive/alignment.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/directive/buffer.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/directive/delimit.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/directive/maxwidth.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/directive/omit.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/directive/repeat.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/directive/upperlower.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/binarygenerator.html | 12
trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/generator.html | 10
trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/narygenerator.html | 12
trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/primitivegenerator.html | 10
trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/unarygenerator.html | 12
trunk/libs/spirit/doc/html/spirit/karma/reference/karma_basics.html | 6
trunk/libs/spirit/doc/html/spirit/karma/reference/numeric.html | 2
trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/floating_point.html | 22 +-
trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/signed_int.html | 18 +-
trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/unsigned_int.html | 18 +-
trunk/libs/spirit/doc/html/spirit/karma/reference/operator.html | 2
trunk/libs/spirit/doc/html/spirit/karma/reference/operator/alternative.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/operator/and_predicate.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/operator/kleene.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/operator/list.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/operator/not_predicate.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/operator/optional.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/operator/plus.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/operator/sequence.html | 14
trunk/libs/spirit/doc/html/spirit/karma/reference/stream.html | 18 +-
trunk/libs/spirit/doc/html/spirit/karma/reference/string.html | 14
trunk/libs/spirit/doc/html/spirit/karma/tutorials/karma_attributes.html | 12
trunk/libs/spirit/doc/html/spirit/karma/tutorials/quick_start.html | 2
trunk/libs/spirit/doc/html/spirit/karma/tutorials/semantic_actions.html | 2
trunk/libs/spirit/doc/html/spirit/karma/tutorials/warming_up.html | 10
trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_primitives/lexer_token_values.html | 6
trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_semantic_actions.html | 10
trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_states.html | 6
trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_static_model.html | 4
trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_tokenizing.html | 4
trunk/libs/spirit/doc/html/spirit/lex/lexer_introduction.html | 6
trunk/libs/spirit/doc/html/spirit/lex/reference/concepts/lexer.html | 6
trunk/libs/spirit/doc/html/spirit/lex/reference/lexer_class.html | 8
trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart1.html | 10
trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart2.html | 8
trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart3.html | 8
trunk/libs/spirit/doc/html/spirit/notes/porting_from_spirit_1_8_x.html | 10
trunk/libs/spirit/doc/html/spirit/qi/reference/numeric.html | 21 ++
trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/int.html | 157 +++++++++++++++++-
trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/uint.html | 140 +++++++++++++++-
trunk/libs/spirit/doc/html/spirit/qi/reference/string.html | 10
trunk/libs/spirit/doc/html/spirit/qi/reference/string/string.html | 16
trunk/libs/spirit/doc/html/spirit/qi/reference/string/symbols.html | 20 +-
trunk/libs/spirit/doc/html/spirit/support/multi_pass.html | 28 +-
trunk/libs/spirit/doc/qi/numeric.qbk | 335 +++++++++++++++++++++++++++++++++++++++
trunk/libs/spirit/example/qi/reference.cpp | 86 ++++++++++
trunk/libs/spirit/test/qi/int.cpp | 26 +++
trunk/libs/spirit/test/qi/real.cpp | 25 ++
trunk/libs/spirit/test/qi/uint.cpp | 28 +++
75 files changed, 1134 insertions(+), 376 deletions(-)
Modified: trunk/libs/spirit/doc/html/index.html
==============================================================================
--- trunk/libs/spirit/doc/html/index.html (original)
+++ trunk/libs/spirit/doc/html/index.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -200,7 +200,7 @@
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: September 03, 2009 at 05:36:07 GMT</small></p></td>
+<td align="left"><p><small>Last revised: September 05, 2009 at 06:04:29 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>
Modified: trunk/libs/spirit/doc/html/spirit/acknowledgments.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/acknowledgments.html (original)
+++ trunk/libs/spirit/doc/html/spirit/acknowledgments.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -50,7 +50,7 @@
<span class="bold"><b>FIXME</b></span>: Add more people
</p>
<a name="spirit.acknowledgments.acknowledgements_from_the_spirit_v1__emphasis_classic__emphasis__documentation"></a><h3>
-<a name="id663503"></a>
+<a name="id672431"></a>
<a href="acknowledgments.html#spirit.acknowledgments.acknowledgements_from_the_spirit_v1__emphasis_classic__emphasis__documentation">Acknowledgements
from the Spirit V1 <span class="emphasis"><em>classic</em></span> Documentation</a>
</h3>
Modified: trunk/libs/spirit/doc/html/spirit/faq.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/faq.html (original)
+++ trunk/libs/spirit/doc/html/spirit/faq.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,7 +30,7 @@
<div></div>
</div>
<a name="spirit.faq.i_m_getting_multiple_symbol_definition_errors_while_using_visual_c____anything_i_could_do_about_that_"></a><h3>
-<a name="id653061"></a>
+<a name="id661982"></a>
<a href="faq.html#spirit.faq.i_m_getting_multiple_symbol_definition_errors_while_using_visual_c____anything_i_could_do_about_that_">I'm
getting multiple symbol definition errors while using Visual C++. Anything
I could do about that?</a>
@@ -67,7 +67,7 @@
static_assert.
</p>
<a name="spirit.faq.i_m_very_confused_about_the_header_hell_in_my_boost_spirit_directory__what_s_all_this_about_"></a><h3>
-<a name="id653325"></a>
+<a name="id662246"></a>
<a href="faq.html#spirit.faq.i_m_very_confused_about_the_header_hell_in_my_boost_spirit_directory__what_s_all_this_about_">I'm
very confused about the header hell in my boost/spirit directory. What's all
this about?</a>
@@ -175,7 +175,7 @@
are available.
</p>
<a name="spirit.faq.why_doesn_t_my_symbol_table_work_in_a__code__phrase_role__identifier__no_case__phrase___code__directive_"></a><h3>
-<a name="id654076"></a>
+<a name="id662997"></a>
<a href="faq.html#spirit.faq.why_doesn_t_my_symbol_table_work_in_a__code__phrase_role__identifier__no_case__phrase___code__directive_">Why
doesn't my symbol table work in a <tt class="computeroutput"><span class="identifier">no_case</span></tt>
directive?</a>
@@ -188,7 +188,7 @@
Entries containing one or more uppercase characters will not match any input.
</p>
<a name="spirit.faq.i_m_getting_a_compilation_error_mentioning__code__phrase_role__identifier__boost__phrase__phrase_role__special______phrase__phrase_role__identifier__function__phrase___code__and_or___________code__phrase_role__identifier__boost__phrase__phrase_role__special______phrase__phrase_role__identifier__function4__phrase___code___what_does_this_mean_"></a><h3>
-<a name="id654228"></a>
+<a name="id663149"></a>
<a href="faq.html#spirit.faq.i_m_getting_a_compilation_error_mentioning__code__phrase_role__identifier__boost__phrase__phrase_role__special______phrase__phrase_role__identifier__function__phrase___code__and_or___________code__phrase_role__identifier__boost__phrase__phrase_role__special______phrase__phrase_role__identifier__function4__phrase___code___what_does_this_mean_">I'm
getting a compilation error mentioning <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">function</span></tt>
and/or <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">function4</span></tt>. What does this mean?</a>
Modified: trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/double_performance.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/double_performance.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/double_performance.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -143,7 +143,7 @@
<a href="double_performance.html#spirit.karma.double_performance" title="Figure 4. Performance comparison for a single double">figure</a>.
</p>
<div class="table">
-<a name="id615670"></a><p class="title"><b>Table 7. Performance comparison for a single double (all
+<a name="id624534"></a><p class="title"><b>Table 8. Performance comparison for a single double (all
times in [s], 1000000 iterations)</b></p>
<table class="table" summary="Performance comparison for a single double (all
times in [s], 1000000 iterations)">
Modified: trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/format_performance.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/format_performance.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/format_performance.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -163,7 +163,7 @@
of several items">figure</a>.
</p>
<div class="table">
-<a name="id617661"></a><p class="title"><b>Table 8. Performance comparison for a sequence of several
+<a name="id626526"></a><p class="title"><b>Table 9. Performance comparison for a sequence of several
items (all times in [s], 1000000 iterations)</b></p>
<table class="table" summary="Performance comparison for a sequence of several
items (all times in [s], 1000000 iterations)">
Modified: trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/int_performance.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/int_performance.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/performance_measurements/numeric_performance/int_performance.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -133,7 +133,7 @@
<a href="int_performance.html#spirit.karma.int_performance" title="Figure 3. Performance comparison for a single int">figure</a>.
</p>
<div class="table">
-<a name="id614296"></a><p class="title"><b>Table 6. Performance comparison for a single int (all
+<a name="id623160"></a><p class="title"><b>Table 7. Performance comparison for a single int (all
times in [s], 10000000 iterations)</b></p>
<table class="table" summary="Performance comparison for a single int (all
times in [s], 10000000 iterations)">
Modified: trunk/libs/spirit/doc/html/spirit/karma/quick_reference/compound_attribute_rules.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/quick_reference/compound_attribute_rules.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/quick_reference/compound_attribute_rules.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -47,7 +47,7 @@
<span class="identifier">b</span></tt> will be <tt class="computeroutput"><span class="identifier">tuple</span><span class="special"><</span><span class="identifier">A</span><span class="special">,</span> <span class="identifier">B</span><span class="special">></span></tt>.
</p>
<div class="table">
-<a name="id500943"></a><p class="title"><b>Table 5. Spirit.Karma compound generator attribute types</b></p>
+<a name="id509792"></a><p class="title"><b>Table 6. Spirit.Karma compound generator attribute types</b></p>
<table class="table" summary="Spirit.Karma compound generator attribute types">
<colgroup>
<col>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -41,7 +41,7 @@
and <tt class="computeroutput"><span class="identifier">eps</span></tt>, <tt class="computeroutput"><span class="identifier">lazy</span></tt> generators.
</p>
<a name="spirit.karma.reference.auxiliary.module_header"></a><h5>
-<a name="id562010"></a>
+<a name="id570881"></a>
<a href="auxiliary.html#spirit.karma.reference.auxiliary.module_header">Module Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/auxiliary.hpp>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/eol.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/eol.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/eol.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,7 +30,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.auxiliary.eol.description"></a><h6>
-<a name="id562140"></a>
+<a name="id571012"></a>
<a href="eol.html#spirit.karma.reference.auxiliary.eol.description">Description</a>
</h6>
<p>
@@ -41,7 +41,7 @@
details).
</p>
<a name="spirit.karma.reference.auxiliary.eol.header"></a><h6>
-<a name="id562228"></a>
+<a name="id571099"></a>
<a href="eol.html#spirit.karma.reference.auxiliary.eol.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/auxiliary/eol.hpp>
@@ -51,7 +51,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.auxiliary.eol.model_of"></a><h6>
-<a name="id562341"></a>
+<a name="id571213"></a>
<a href="eol.html#spirit.karma.reference.auxiliary.eol.model_of">Model of</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -64,7 +64,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.auxiliary.eol.expression_semantics"></a><h6>
-<a name="id562394"></a>
+<a name="id571265"></a>
<a href="eol.html#spirit.karma.reference.auxiliary.eol.expression_semantics">Expression
Semantics</a>
</h6>
@@ -97,7 +97,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.auxiliary.eol.attributes"></a><h6>
-<a name="id562512"></a>
+<a name="id571384"></a>
<a href="eol.html#spirit.karma.reference.auxiliary.eol.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -123,7 +123,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.auxiliary.eol.complexity"></a><h6>
-<a name="id562613"></a>
+<a name="id571484"></a>
<a href="eol.html#spirit.karma.reference.auxiliary.eol.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -140,7 +140,7 @@
output.
</p>
<a name="spirit.karma.reference.auxiliary.eol.example"></a><h6>
-<a name="id562654"></a>
+<a name="id571526"></a>
<a href="eol.html#spirit.karma.reference.auxiliary.eol.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/eps.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/eps.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/eps.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -36,7 +36,7 @@
or to insert semantic actions into the generation process.
</p>
<a name="spirit.karma.reference.auxiliary.eps.description"></a><h6>
-<a name="id563697"></a>
+<a name="id572568"></a>
<a href="eps.html#spirit.karma.reference.auxiliary.eps.description">Description</a>
</h6>
<p>
@@ -48,7 +48,7 @@
while using the return value as the criteria to succeed.
</p>
<a name="spirit.karma.reference.auxiliary.eps.header"></a><h6>
-<a name="id563856"></a>
+<a name="id572727"></a>
<a href="eps.html#spirit.karma.reference.auxiliary.eps.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/auxiliary/eps.hpp>
@@ -58,7 +58,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.auxiliary.eps.model_of"></a><h6>
-<a name="id563969"></a>
+<a name="id572840"></a>
<a href="eps.html#spirit.karma.reference.auxiliary.eps.model_of">Model of</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -85,7 +85,7 @@
</dl>
</div>
<a name="spirit.karma.reference.auxiliary.eps.expression_semantics"></a><h6>
-<a name="id564085"></a>
+<a name="id572956"></a>
<a href="eps.html#spirit.karma.reference.auxiliary.eps.expression_semantics">Expression
Semantics</a>
</h6>
@@ -138,7 +138,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.auxiliary.eps.attributes"></a><h6>
-<a name="id564341"></a>
+<a name="id573212"></a>
<a href="eps.html#spirit.karma.reference.auxiliary.eps.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -182,7 +182,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.auxiliary.eps.complexity"></a><h6>
-<a name="id564550"></a>
+<a name="id573421"></a>
<a href="eps.html#spirit.karma.reference.auxiliary.eps.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -198,7 +198,7 @@
The complexity is constant as no output is generated.
</p>
<a name="spirit.karma.reference.auxiliary.eps.example"></a><h6>
-<a name="id564590"></a>
+<a name="id573461"></a>
<a href="eps.html#spirit.karma.reference.auxiliary.eps.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/lazy.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/lazy.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/auxiliary/lazy.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,7 +30,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.auxiliary.lazy.description"></a><h6>
-<a name="id565731"></a>
+<a name="id574603"></a>
<a href="lazy.html#spirit.karma.reference.auxiliary.lazy.description">Description</a>
</h6>
<p>
@@ -40,7 +40,7 @@
its return value as the actual generator to produce the output.
</p>
<a name="spirit.karma.reference.auxiliary.lazy.header"></a><h6>
-<a name="id565778"></a>
+<a name="id574649"></a>
<a href="lazy.html#spirit.karma.reference.auxiliary.lazy.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/auxiliary/lazy.hpp>
@@ -50,7 +50,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.auxiliary.lazy.model_of"></a><h6>
-<a name="id565891"></a>
+<a name="id574762"></a>
<a href="lazy.html#spirit.karma.reference.auxiliary.lazy.model_of">Model
of</a>
</h6>
@@ -88,7 +88,7 @@
Actions</a>).
</p>
<a name="spirit.karma.reference.auxiliary.lazy.expression_semantics"></a><h6>
-<a name="id566100"></a>
+<a name="id574972"></a>
<a href="lazy.html#spirit.karma.reference.auxiliary.lazy.expression_semantics">Expression
Semantics</a>
</h6>
@@ -143,7 +143,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.auxiliary.lazy.attributes"></a><h6>
-<a name="id566324"></a>
+<a name="id575195"></a>
<a href="lazy.html#spirit.karma.reference.auxiliary.lazy.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -183,7 +183,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.auxiliary.lazy.complexity"></a><h6>
-<a name="id566530"></a>
+<a name="id575402"></a>
<a href="lazy.html#spirit.karma.reference.auxiliary.lazy.complexity">Complexity</a>
</h6>
<p>
@@ -192,7 +192,7 @@
<tt class="computeroutput"><span class="identifier">fg</span></tt>.
</p>
<a name="spirit.karma.reference.auxiliary.lazy.example"></a><h6>
-<a name="id566584"></a>
+<a name="id575456"></a>
<a href="lazy.html#spirit.karma.reference.auxiliary.lazy.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/binary.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/binary.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/binary.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -45,7 +45,7 @@
to control padding of the generated output stream.
</p>
<a name="spirit.karma.reference.binary.module_header"></a><h5>
-<a name="id551150"></a>
+<a name="id560019"></a>
<a href="binary.html#spirit.karma.reference.binary.module_header">Module Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/binary.hpp>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_big.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_big.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_big.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.binary.binary_big.description"></a><h6>
-<a name="id558697"></a>
+<a name="id567568"></a>
<a href="binary_big.html#spirit.karma.reference.binary.binary_big.description">Description</a>
</h6>
<p>
@@ -125,7 +125,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.binary.binary_big.header"></a><h6>
-<a name="id559079"></a>
+<a name="id567950"></a>
<a href="binary_big.html#spirit.karma.reference.binary.binary_big.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/binary.hpp>
@@ -135,7 +135,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.binary.binary_big.model_of"></a><h6>
-<a name="id559192"></a>
+<a name="id568064"></a>
<a href="binary_big.html#spirit.karma.reference.binary.binary_big.model_of">Model
of</a>
</h6>
@@ -172,7 +172,7 @@
</dl>
</div>
<a name="spirit.karma.reference.binary.binary_big.expression_semantics"></a><h6>
-<a name="id559357"></a>
+<a name="id568229"></a>
<a href="binary_big.html#spirit.karma.reference.binary.binary_big.expression_semantics">Expression
Semantics</a>
</h6>
@@ -263,7 +263,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.binary.binary_big.attributes"></a><h6>
-<a name="id559690"></a>
+<a name="id568562"></a>
<a href="binary_big.html#spirit.karma.reference.binary.binary_big.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -334,7 +334,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.binary.binary_big.complexity"></a><h6>
-<a name="id560072"></a>
+<a name="id568943"></a>
<a href="binary_big.html#spirit.karma.reference.binary.binary_big.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -347,7 +347,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.binary.binary_big.example"></a><h6>
-<a name="id560109"></a>
+<a name="id568980"></a>
<a href="binary_big.html#spirit.karma.reference.binary.binary_big.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_little.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_little.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_little.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.binary.binary_little.description"></a><h6>
-<a name="id555423"></a>
+<a name="id564293"></a>
<a href="binary_little.html#spirit.karma.reference.binary.binary_little.description">Description</a>
</h6>
<p>
@@ -126,7 +126,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.binary.binary_little.header"></a><h6>
-<a name="id555805"></a>
+<a name="id564675"></a>
<a href="binary_little.html#spirit.karma.reference.binary.binary_little.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/binary.hpp>
@@ -136,7 +136,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.binary.binary_little.model_of"></a><h6>
-<a name="id555920"></a>
+<a name="id564790"></a>
<a href="binary_little.html#spirit.karma.reference.binary.binary_little.model_of">Model
of</a>
</h6>
@@ -173,7 +173,7 @@
</dl>
</div>
<a name="spirit.karma.reference.binary.binary_little.expression_semantics"></a><h6>
-<a name="id556087"></a>
+<a name="id564957"></a>
<a href="binary_little.html#spirit.karma.reference.binary.binary_little.expression_semantics">Expression
Semantics</a>
</h6>
@@ -264,7 +264,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.binary.binary_little.attributes"></a><h6>
-<a name="id556421"></a>
+<a name="id565291"></a>
<a href="binary_little.html#spirit.karma.reference.binary.binary_little.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -335,7 +335,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.binary.binary_little.complexity"></a><h6>
-<a name="id556802"></a>
+<a name="id565673"></a>
<a href="binary_little.html#spirit.karma.reference.binary.binary_little.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -348,7 +348,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.binary.binary_little.example"></a><h6>
-<a name="id556839"></a>
+<a name="id565710"></a>
<a href="binary_little.html#spirit.karma.reference.binary.binary_little.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_native.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_native.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/binary/binary_native.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.binary.binary_native.description"></a><h6>
-<a name="id551282"></a>
+<a name="id560151"></a>
<a href="binary_native.html#spirit.karma.reference.binary.binary_native.description">Description</a>
</h6>
<p>
@@ -143,7 +143,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.binary.binary_native.header"></a><h6>
-<a name="id551742"></a>
+<a name="id560611"></a>
<a href="binary_native.html#spirit.karma.reference.binary.binary_native.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/binary.hpp>
@@ -153,7 +153,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.binary.binary_native.model_of"></a><h6>
-<a name="id551856"></a>
+<a name="id560725"></a>
<a href="binary_native.html#spirit.karma.reference.binary.binary_native.model_of">Model
of</a>
</h6>
@@ -195,7 +195,7 @@
</dl>
</div>
<a name="spirit.karma.reference.binary.binary_native.expression_semantics"></a><h6>
-<a name="id552057"></a>
+<a name="id560926"></a>
<a href="binary_native.html#spirit.karma.reference.binary.binary_native.expression_semantics">Expression
Semantics</a>
</h6>
@@ -306,7 +306,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.binary.binary_native.attributes"></a><h6>
-<a name="id552469"></a>
+<a name="id561338"></a>
<a href="binary_native.html#spirit.karma.reference.binary.binary_native.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -394,7 +394,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.binary.binary_native.complexity"></a><h6>
-<a name="id552955"></a>
+<a name="id561825"></a>
<a href="binary_native.html#spirit.karma.reference.binary.binary_native.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -407,7 +407,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.binary.binary_native.example"></a><h6>
-<a name="id552992"></a>
+<a name="id561862"></a>
<a href="binary_native.html#spirit.karma.reference.binary.binary_native.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/char.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/char.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/char.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -45,7 +45,7 @@
<tt class="computeroutput"><span class="identifier">xdigit</span></tt>, etc.).
</p>
<a name="spirit.karma.reference.char.module_header"></a><h5>
-<a name="id513066"></a>
+<a name="id521917"></a>
<a href="char.html#spirit.karma.reference.char.module_header">Module Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/char.hpp>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/char/char_class.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/char/char_class.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/char/char_class.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.char.char_class.description"></a><h6>
-<a name="id518028"></a>
+<a name="id526879"></a>
<a href="char_class.html#spirit.karma.reference.char.char_class.description">Description</a>
</h6>
<p>
@@ -185,7 +185,7 @@
and will not compile if no attribute is associated.
</p>
<a name="spirit.karma.reference.char.char_class.header"></a><h6>
-<a name="id519024"></a>
+<a name="id527875"></a>
<a href="char_class.html#spirit.karma.reference.char.char_class.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/char/char_class.hpp>
@@ -195,7 +195,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.char.char_class.model_of"></a><h6>
-<a name="id519138"></a>
+<a name="id527989"></a>
<a href="char_class.html#spirit.karma.reference.char.char_class.model_of">Model
of</a>
</h6>
@@ -219,7 +219,7 @@
</dl>
</div>
<a name="spirit.karma.reference.char.char_class.expression_semantics"></a><h6>
-<a name="id519231"></a>
+<a name="id528082"></a>
<a href="char_class.html#spirit.karma.reference.char.char_class.expression_semantics">Expression
Semantics</a>
</h6>
@@ -407,7 +407,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.char.char_class.attributes"></a><h6>
-<a name="id520481"></a>
+<a name="id529331"></a>
<a href="char_class.html#spirit.karma.reference.char.char_class.attributes">Attributes</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -422,7 +422,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.char.char_class.complexity"></a><h6>
-<a name="id520543"></a>
+<a name="id529394"></a>
<a href="char_class.html#spirit.karma.reference.char.char_class.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -439,7 +439,7 @@
per invocation.
</p>
<a name="spirit.karma.reference.char.char_class.example"></a><h6>
-<a name="id520586"></a>
+<a name="id529437"></a>
<a href="char_class.html#spirit.karma.reference.char.char_class.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/char/char_generator.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/char/char_generator.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/char/char_generator.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.char.char_generator.description"></a><h6>
-<a name="id513198"></a>
+<a name="id522048"></a>
<a href="char_generator.html#spirit.karma.reference.char.char_generator.description">Description</a>
</h6>
<p>
@@ -129,7 +129,7 @@
Encoding Namespace</a> used by the corresponding character generator.
</p>
<a name="spirit.karma.reference.char.char_generator.header"></a><h6>
-<a name="id513822"></a>
+<a name="id522673"></a>
<a href="char_generator.html#spirit.karma.reference.char.char_generator.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/char/char.hpp>
@@ -139,7 +139,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.char.char_generator.model_of"></a><h6>
-<a name="id513937"></a>
+<a name="id522788"></a>
<a href="char_generator.html#spirit.karma.reference.char.char_generator.model_of">Model
of</a>
</h6>
@@ -178,7 +178,7 @@
</dl>
</div>
<a name="spirit.karma.reference.char.char_generator.expression_semantics"></a><h6>
-<a name="id514125"></a>
+<a name="id522976"></a>
<a href="char_generator.html#spirit.karma.reference.char.char_generator.expression_semantics">Expression
Semantics</a>
</h6>
@@ -361,7 +361,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.char.char_generator.attributes"></a><h6>
-<a name="id515177"></a>
+<a name="id524028"></a>
<a href="char_generator.html#spirit.karma.reference.char.char_generator.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -451,7 +451,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.char.char_generator.complexity"></a><h6>
-<a name="id515755"></a>
+<a name="id524606"></a>
<a href="char_generator.html#spirit.karma.reference.char.char_generator.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -480,7 +480,7 @@
set, where N is the number of characters in the character set.
</p>
<a name="spirit.karma.reference.char.char_generator.example"></a><h6>
-<a name="id516026"></a>
+<a name="id524877"></a>
<a href="char_generator.html#spirit.karma.reference.char.char_generator.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/directive.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/directive.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/directive.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -54,7 +54,7 @@
controlling case sensitivity (<tt class="computeroutput"><span class="identifier">upper</span><span class="special">[]</span></tt> and <tt class="computeroutput"><span class="identifier">lower</span><span class="special">[]</span></tt>), field width (<tt class="computeroutput"><span class="identifier">maxwidth</span><span class="special">[]</span></tt>), buffering (<tt class="computeroutput"><span class="identifier">buffer</span><span class="special">[]</span></tt>), and attribute handling (<tt class="computeroutput"><span class="identifier">omit</span><span class="special">[]</span></tt>).
</p>
<a name="spirit.karma.reference.directive.module_header"></a><h5>
-<a name="id568482"></a>
+<a name="id577354"></a>
<a href="directive.html#spirit.karma.reference.directive.module_header">Module Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/directive.hpp>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/directive/alignment.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/directive/alignment.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/directive/alignment.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.directive.alignment.description"></a><h6>
-<a name="id568663"></a>
+<a name="id577535"></a>
<a href="alignment.html#spirit.karma.reference.directive.alignment.description">Description</a>
</h6>
<p>
@@ -43,7 +43,7 @@
an arbitrary generator to create the padding.
</p>
<a name="spirit.karma.reference.directive.alignment.header"></a><h6>
-<a name="id568695"></a>
+<a name="id577568"></a>
<a href="alignment.html#spirit.karma.reference.directive.alignment.header">Header</a>
</h6>
<p>
@@ -71,7 +71,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.directive.alignment.model_of"></a><h6>
-<a name="id569030"></a>
+<a name="id577902"></a>
<a href="alignment.html#spirit.karma.reference.directive.alignment.model_of">Model
of</a>
</h6>
@@ -110,7 +110,7 @@
</dl>
</div>
<a name="spirit.karma.reference.directive.alignment.expression_semantics"></a><h6>
-<a name="id569240"></a>
+<a name="id578112"></a>
<a href="alignment.html#spirit.karma.reference.directive.alignment.expression_semantics">Expression
Semantics</a>
</h6>
@@ -337,7 +337,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.directive.alignment.attributes"></a><h6>
-<a name="id570784"></a>
+<a name="id579656"></a>
<a href="alignment.html#spirit.karma.reference.directive.alignment.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -528,7 +528,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.directive.alignment.complexity"></a><h6>
-<a name="id573153"></a>
+<a name="id582026"></a>
<a href="alignment.html#spirit.karma.reference.directive.alignment.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -546,7 +546,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.directive.alignment.example"></a><h6>
-<a name="id573208"></a>
+<a name="id582081"></a>
<a href="alignment.html#spirit.karma.reference.directive.alignment.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/directive/buffer.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/directive/buffer.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/directive/buffer.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.directive.buffer.description"></a><h6>
-<a name="id586039"></a>
+<a name="id599179"></a>
<a href="buffer.html#spirit.karma.reference.directive.buffer.description">Description</a>
</h6>
<p>
@@ -50,7 +50,7 @@
underlying stream only after the embedded generator succeeded.
</p>
<a name="spirit.karma.reference.directive.buffer.header"></a><h6>
-<a name="id586088"></a>
+<a name="id599229"></a>
<a href="buffer.html#spirit.karma.reference.directive.buffer.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/directive/buffer.hpp>
@@ -60,7 +60,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.directive.buffer.model_of"></a><h6>
-<a name="id586203"></a>
+<a name="id599343"></a>
<a href="buffer.html#spirit.karma.reference.directive.buffer.model_of">Model
of</a>
</h6>
@@ -87,7 +87,7 @@
</dl>
</div>
<a name="spirit.karma.reference.directive.buffer.expression_semantics"></a><h6>
-<a name="id586321"></a>
+<a name="id599461"></a>
<a href="buffer.html#spirit.karma.reference.directive.buffer.expression_semantics">Expression
Semantics</a>
</h6>
@@ -136,7 +136,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.directive.buffer.attributes"></a><h6>
-<a name="id586572"></a>
+<a name="id599712"></a>
<a href="buffer.html#spirit.karma.reference.directive.buffer.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -168,7 +168,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.directive.buffer.complexity"></a><h6>
-<a name="id586783"></a>
+<a name="id599923"></a>
<a href="buffer.html#spirit.karma.reference.directive.buffer.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -183,7 +183,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.directive.buffer.example"></a><h6>
-<a name="id586824"></a>
+<a name="id599964"></a>
<a href="buffer.html#spirit.karma.reference.directive.buffer.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/directive/delimit.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/directive/delimit.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/directive/delimit.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.directive.delimit.description"></a><h6>
-<a name="id578075"></a>
+<a name="id586947"></a>
<a href="delimit.html#spirit.karma.reference.directive.delimit.description">Description</a>
</h6>
<p>
@@ -44,7 +44,7 @@
while the directive <tt class="computeroutput"><span class="identifier">delimit</span><span class="special">[]</span></tt> (re-)enable automatic delimiting.
</p>
<a name="spirit.karma.reference.directive.delimit.header"></a><h6>
-<a name="id578173"></a>
+<a name="id587045"></a>
<a href="delimit.html#spirit.karma.reference.directive.delimit.header">Header</a>
</h6>
<p>
@@ -65,7 +65,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.directive.delimit.model_of"></a><h6>
-<a name="id578405"></a>
+<a name="id587278"></a>
<a href="delimit.html#spirit.karma.reference.directive.delimit.model_of">Model
of</a>
</h6>
@@ -99,7 +99,7 @@
</dl>
</div>
<a name="spirit.karma.reference.directive.delimit.expression_semantics"></a><h6>
-<a name="id578579"></a>
+<a name="id587452"></a>
<a href="delimit.html#spirit.karma.reference.directive.delimit.expression_semantics">Expression
Semantics</a>
</h6>
@@ -159,7 +159,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.directive.delimit.attributes"></a><h6>
-<a name="id578917"></a>
+<a name="id587790"></a>
<a href="delimit.html#spirit.karma.reference.directive.delimit.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -221,7 +221,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.directive.delimit.complexity"></a><h6>
-<a name="id579500"></a>
+<a name="id588373"></a>
<a href="delimit.html#spirit.karma.reference.directive.delimit.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -237,7 +237,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.directive.delimit.example"></a><h6>
-<a name="id579572"></a>
+<a name="id588446"></a>
<a href="delimit.html#spirit.karma.reference.directive.delimit.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/directive/maxwidth.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/directive/maxwidth.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/directive/maxwidth.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.directive.maxwidth.description"></a><h6>
-<a name="id583763"></a>
+<a name="id592637"></a>
<a href="maxwidth.html#spirit.karma.reference.directive.maxwidth.description">Description</a>
</h6>
<p>
@@ -44,7 +44,7 @@
generated by the embedded generator.
</p>
<a name="spirit.karma.reference.directive.maxwidth.header"></a><h6>
-<a name="id583810"></a>
+<a name="id592684"></a>
<a href="maxwidth.html#spirit.karma.reference.directive.maxwidth.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/directive/maxwidth.hpp>
@@ -54,7 +54,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.directive.maxwidth.model_of"></a><h6>
-<a name="id583925"></a>
+<a name="id597066"></a>
<a href="maxwidth.html#spirit.karma.reference.directive.maxwidth.model_of">Model
of</a>
</h6>
@@ -86,7 +86,7 @@
</dl>
</div>
<a name="spirit.karma.reference.directive.maxwidth.expression_semantics"></a><h6>
-<a name="id584078"></a>
+<a name="id597218"></a>
<a href="maxwidth.html#spirit.karma.reference.directive.maxwidth.expression_semantics">Expression
Semantics</a>
</h6>
@@ -163,7 +163,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.directive.maxwidth.attributes"></a><h6>
-<a name="id584467"></a>
+<a name="id597608"></a>
<a href="maxwidth.html#spirit.karma.reference.directive.maxwidth.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -211,7 +211,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.directive.maxwidth.complexity"></a><h6>
-<a name="id584857"></a>
+<a name="id597998"></a>
<a href="maxwidth.html#spirit.karma.reference.directive.maxwidth.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -227,7 +227,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.directive.maxwidth.example"></a><h6>
-<a name="id584926"></a>
+<a name="id598067"></a>
<a href="maxwidth.html#spirit.karma.reference.directive.maxwidth.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/directive/omit.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/directive/omit.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/directive/omit.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.directive.omit.description"></a><h6>
-<a name="id588187"></a>
+<a name="id601327"></a>
<a href="omit.html#spirit.karma.reference.directive.omit.description">Description</a>
</h6>
<p>
@@ -42,7 +42,7 @@
any output.
</p>
<a name="spirit.karma.reference.directive.omit.header"></a><h6>
-<a name="id588217"></a>
+<a name="id601358"></a>
<a href="omit.html#spirit.karma.reference.directive.omit.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/directive/omit.hpp>
@@ -52,7 +52,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.directive.omit.model_of"></a><h6>
-<a name="id588332"></a>
+<a name="id601472"></a>
<a href="omit.html#spirit.karma.reference.directive.omit.model_of">Model
of</a>
</h6>
@@ -79,7 +79,7 @@
</dl>
</div>
<a name="spirit.karma.reference.directive.omit.expression_semantics"></a><h6>
-<a name="id588449"></a>
+<a name="id601590"></a>
<a href="omit.html#spirit.karma.reference.directive.omit.expression_semantics">Expression
Semantics</a>
</h6>
@@ -112,7 +112,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.directive.omit.attributes"></a><h6>
-<a name="id588606"></a>
+<a name="id601746"></a>
<a href="omit.html#spirit.karma.reference.directive.omit.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -144,7 +144,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.directive.omit.complexity"></a><h6>
-<a name="id588817"></a>
+<a name="id601958"></a>
<a href="omit.html#spirit.karma.reference.directive.omit.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -158,7 +158,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.directive.omit.example"></a><h6>
-<a name="id588867"></a>
+<a name="id602008"></a>
<a href="omit.html#spirit.karma.reference.directive.omit.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/directive/repeat.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/directive/repeat.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/directive/repeat.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.directive.repeat.description"></a><h6>
-<a name="id574712"></a>
+<a name="id583584"></a>
<a href="repeat.html#spirit.karma.reference.directive.repeat.description">Description</a>
</h6>
<p>
@@ -43,7 +43,7 @@
while optionally specifying the lower and upper repetition counts.
</p>
<a name="spirit.karma.reference.directive.repeat.header"></a><h6>
-<a name="id574743"></a>
+<a name="id583616"></a>
<a href="repeat.html#spirit.karma.reference.directive.repeat.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/directive/repeat.hpp>
@@ -53,7 +53,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.directive.repeat.model_of"></a><h6>
-<a name="id574856"></a>
+<a name="id583729"></a>
<a href="repeat.html#spirit.karma.reference.directive.repeat.model_of">Model
of</a>
</h6>
@@ -85,7 +85,7 @@
</dl>
</div>
<a name="spirit.karma.reference.directive.repeat.expression_semantics"></a><h6>
-<a name="id575021"></a>
+<a name="id583894"></a>
<a href="repeat.html#spirit.karma.reference.directive.repeat.expression_semantics">Expression
Semantics</a>
</h6>
@@ -171,7 +171,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.directive.repeat.attributes"></a><h6>
-<a name="id575598"></a>
+<a name="id584471"></a>
<a href="repeat.html#spirit.karma.reference.directive.repeat.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -264,7 +264,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.directive.repeat.complexity"></a><h6>
-<a name="id576556"></a>
+<a name="id585429"></a>
<a href="repeat.html#spirit.karma.reference.directive.repeat.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -279,7 +279,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.directive.repeat.example"></a><h6>
-<a name="id576597"></a>
+<a name="id585470"></a>
<a href="repeat.html#spirit.karma.reference.directive.repeat.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/directive/upperlower.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/directive/upperlower.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/directive/upperlower.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.directive.upperlower.description"></a><h6>
-<a name="id580939"></a>
+<a name="id589813"></a>
<a href="upperlower.html#spirit.karma.reference.directive.upperlower.description">Description</a>
</h6>
<p>
@@ -45,7 +45,7 @@
Encoding Namespace</a>).
</p>
<a name="spirit.karma.reference.directive.upperlower.header"></a><h6>
-<a name="id581046"></a>
+<a name="id589919"></a>
<a href="upperlower.html#spirit.karma.reference.directive.upperlower.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/directive/upper_lower_case.hpp>
@@ -55,7 +55,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.directive.upperlower.model_of"></a><h6>
-<a name="id581160"></a>
+<a name="id590034"></a>
<a href="upperlower.html#spirit.karma.reference.directive.upperlower.model_of">Model
of</a>
</h6>
@@ -87,7 +87,7 @@
</dl>
</div>
<a name="spirit.karma.reference.directive.upperlower.expression_semantics"></a><h6>
-<a name="id581328"></a>
+<a name="id590202"></a>
<a href="upperlower.html#spirit.karma.reference.directive.upperlower.expression_semantics">Expression
Semantics</a>
</h6>
@@ -185,7 +185,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.directive.upperlower.attributes"></a><h6>
-<a name="id582181"></a>
+<a name="id591054"></a>
<a href="upperlower.html#spirit.karma.reference.directive.upperlower.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -233,7 +233,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.directive.upperlower.complexity"></a><h6>
-<a name="id582600"></a>
+<a name="id591474"></a>
<a href="upperlower.html#spirit.karma.reference.directive.upperlower.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -250,7 +250,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.directive.upperlower.example"></a><h6>
-<a name="id582692"></a>
+<a name="id591566"></a>
<a href="upperlower.html#spirit.karma.reference.directive.upperlower.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/binarygenerator.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/binarygenerator.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/binarygenerator.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -31,7 +31,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.generator_concepts.binarygenerator.description"></a><h6>
-<a name="id508850"></a>
+<a name="id517700"></a>
<a href="binarygenerator.html#spirit.karma.reference.generator_concepts.binarygenerator.description">Description</a>
</h6>
<p>
@@ -43,7 +43,7 @@
Design Pattern.
</p>
<a name="spirit.karma.reference.generator_concepts.binarygenerator.refinement_of"></a><h6>
-<a name="id508930"></a>
+<a name="id517780"></a>
<a href="binarygenerator.html#spirit.karma.reference.generator_concepts.binarygenerator.refinement_of">Refinement
of</a>
</h6>
@@ -70,7 +70,7 @@
</dl>
</div>
<a name="spirit.karma.reference.generator_concepts.binarygenerator.valid_expressions"></a><h6>
-<a name="id509040"></a>
+<a name="id517890"></a>
<a href="binarygenerator.html#spirit.karma.reference.generator_concepts.binarygenerator.valid_expressions">Valid
Expressions</a>
</h6>
@@ -121,7 +121,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.binarygenerator.type_expressions"></a><h6>
-<a name="id509262"></a>
+<a name="id518112"></a>
<a href="binarygenerator.html#spirit.karma.reference.generator_concepts.binarygenerator.type_expressions">Type
Expressions</a>
</h6>
@@ -170,7 +170,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.binarygenerator.invariants"></a><h6>
-<a name="id509528"></a>
+<a name="id518378"></a>
<a href="binarygenerator.html#spirit.karma.reference.generator_concepts.binarygenerator.invariants">Invariants</a>
</h6>
<p>
@@ -186,7 +186,7 @@
</li>
</ul></div>
<a name="spirit.karma.reference.generator_concepts.binarygenerator.models"></a><h6>
-<a name="id509728"></a>
+<a name="id518579"></a>
<a href="binarygenerator.html#spirit.karma.reference.generator_concepts.binarygenerator.models">Models</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/generator.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/generator.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/generator.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -32,7 +32,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.generator_concepts.generator.description"></a><h6>
-<a name="id505933"></a>
+<a name="id514784"></a>
<a href="generator.html#spirit.karma.reference.generator_concepts.generator.description">Description</a>
</h6>
<p>
@@ -86,7 +86,7 @@
</dl>
</div>
<a name="spirit.karma.reference.generator_concepts.generator.valid_expressions"></a><h6>
-<a name="id506301"></a>
+<a name="id515151"></a>
<a href="generator.html#spirit.karma.reference.generator_concepts.generator.valid_expressions">Valid
Expressions</a>
</h6>
@@ -153,7 +153,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.generator.type_expressions"></a><h6>
-<a name="id506669"></a>
+<a name="id515520"></a>
<a href="generator.html#spirit.karma.reference.generator_concepts.generator.type_expressions">Type
Expressions</a>
</h6>
@@ -204,7 +204,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.generator.postcondition"></a><h6>
-<a name="id507036"></a>
+<a name="id515887"></a>
<a href="generator.html#spirit.karma.reference.generator_concepts.generator.postcondition">Postcondition</a>
</h6>
<p>
@@ -226,7 +226,7 @@
</li>
</ul></div>
<a name="spirit.karma.reference.generator_concepts.generator.models"></a><h6>
-<a name="id507143"></a>
+<a name="id515994"></a>
<a href="generator.html#spirit.karma.reference.generator_concepts.generator.models">Models</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/narygenerator.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/narygenerator.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/narygenerator.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -31,7 +31,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.generator_concepts.narygenerator.description"></a><h6>
-<a name="id509818"></a>
+<a name="id518668"></a>
<a href="narygenerator.html#spirit.karma.reference.generator_concepts.narygenerator.description">Description</a>
</h6>
<p>
@@ -41,7 +41,7 @@
Design Pattern.
</p>
<a name="spirit.karma.reference.generator_concepts.narygenerator.refinement_of"></a><h6>
-<a name="id509872"></a>
+<a name="id518723"></a>
<a href="narygenerator.html#spirit.karma.reference.generator_concepts.narygenerator.refinement_of">Refinement
of</a>
</h6>
@@ -68,7 +68,7 @@
</dl>
</div>
<a name="spirit.karma.reference.generator_concepts.narygenerator.valid_expressions"></a><h6>
-<a name="id509982"></a>
+<a name="id518832"></a>
<a href="narygenerator.html#spirit.karma.reference.generator_concepts.narygenerator.valid_expressions">Valid
Expressions</a>
</h6>
@@ -107,7 +107,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.narygenerator.type_expressions"></a><h6>
-<a name="id510150"></a>
+<a name="id519000"></a>
<a href="narygenerator.html#spirit.karma.reference.generator_concepts.narygenerator.type_expressions">Type
Expressions</a>
</h6>
@@ -148,7 +148,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.narygenerator.invariants"></a><h6>
-<a name="id510376"></a>
+<a name="id519226"></a>
<a href="narygenerator.html#spirit.karma.reference.generator_concepts.narygenerator.invariants">Invariants</a>
</h6>
<p>
@@ -160,7 +160,7 @@
<tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_generator</span><span class="special"><</span><span class="identifier">E</span><span class="special">>::</span><span class="identifier">type</span></tt> evaluates to <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
</li></ul></div>
<a name="spirit.karma.reference.generator_concepts.narygenerator.models"></a><h6>
-<a name="id510500"></a>
+<a name="id519351"></a>
<a href="narygenerator.html#spirit.karma.reference.generator_concepts.narygenerator.models">Models</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/primitivegenerator.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/primitivegenerator.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/primitivegenerator.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -31,7 +31,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.generator_concepts.primitivegenerator.description"></a><h6>
-<a name="id507205"></a>
+<a name="id516056"></a>
<a href="primitivegenerator.html#spirit.karma.reference.generator_concepts.primitivegenerator.description">Description</a>
</h6>
<p>
@@ -39,7 +39,7 @@
that the client uses to build more complex generators.
</p>
<a name="spirit.karma.reference.generator_concepts.primitivegenerator.refinement_of"></a><h6>
-<a name="id507240"></a>
+<a name="id516091"></a>
<a href="primitivegenerator.html#spirit.karma.reference.generator_concepts.primitivegenerator.refinement_of">Refinement
of</a>
</h6>
@@ -53,7 +53,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.generator_concepts.primitivegenerator.post_delimit"></a><h6>
-<a name="id507297"></a>
+<a name="id516147"></a>
<a href="primitivegenerator.html#spirit.karma.reference.generator_concepts.primitivegenerator.post_delimit">Post-delimit</a>
</h6>
<p>
@@ -66,7 +66,7 @@
<pre class="programlisting"><span class="identifier">karma</span><span class="special">::</span><span class="identifier">delimit_out</span><span class="special">(</span><span class="identifier">sink</span><span class="special">,</span> <span class="identifier">delimit</span><span class="special">);</span>
</pre>
<a name="spirit.karma.reference.generator_concepts.primitivegenerator.type_expressions"></a><h6>
-<a name="id507415"></a>
+<a name="id516266"></a>
<a href="primitivegenerator.html#spirit.karma.reference.generator_concepts.primitivegenerator.type_expressions">Type
Expressions</a>
</h6>
@@ -97,7 +97,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.primitivegenerator.models"></a><h6>
-<a name="id507604"></a>
+<a name="id516454"></a>
<a href="primitivegenerator.html#spirit.karma.reference.generator_concepts.primitivegenerator.models">Models</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/unarygenerator.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/unarygenerator.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/generator_concepts/unarygenerator.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -31,7 +31,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.generator_concepts.unarygenerator.description"></a><h6>
-<a name="id507742"></a>
+<a name="id516592"></a>
<a href="unarygenerator.html#spirit.karma.reference.generator_concepts.unarygenerator.description">Description</a>
</h6>
<p>
@@ -40,7 +40,7 @@
following the Delegate Design Pattern.
</p>
<a name="spirit.karma.reference.generator_concepts.unarygenerator.refinement_of"></a><h6>
-<a name="id507778"></a>
+<a name="id516629"></a>
<a href="unarygenerator.html#spirit.karma.reference.generator_concepts.unarygenerator.refinement_of">Refinement
of</a>
</h6>
@@ -67,7 +67,7 @@
</dl>
</div>
<a name="spirit.karma.reference.generator_concepts.unarygenerator.valid_expressions"></a><h6>
-<a name="id507886"></a>
+<a name="id516737"></a>
<a href="unarygenerator.html#spirit.karma.reference.generator_concepts.unarygenerator.valid_expressions">Valid
Expressions</a>
</h6>
@@ -105,7 +105,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.unarygenerator.type_expressions"></a><h6>
-<a name="id508045"></a>
+<a name="id516896"></a>
<a href="unarygenerator.html#spirit.karma.reference.generator_concepts.unarygenerator.type_expressions">Type
Expressions</a>
</h6>
@@ -146,7 +146,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.generator_concepts.unarygenerator.invariants"></a><h6>
-<a name="id508272"></a>
+<a name="id517122"></a>
<a href="unarygenerator.html#spirit.karma.reference.generator_concepts.unarygenerator.invariants">Invariants</a>
</h6>
<p>
@@ -157,7 +157,7 @@
<tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_generator</span><span class="special"><</span><span class="identifier">G</span><span class="special">::</span><span class="identifier">subject_type</span><span class="special">>::</span><span class="identifier">type</span></tt> evaluates to <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
</li></ul></div>
<a name="spirit.karma.reference.generator_concepts.unarygenerator.models"></a><h6>
-<a name="id508395"></a>
+<a name="id517245"></a>
<a href="unarygenerator.html#spirit.karma.reference.generator_concepts.unarygenerator.models">Models</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/karma_basics.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/karma_basics.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/karma_basics.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,7 +30,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.karma_basics.lazy_argument"></a><h5>
-<a name="id510613"></a>
+<a name="id519464"></a>
<a href="karma_basics.html#spirit.karma.reference.karma_basics.lazy_argument">Lazy
Argument</a>
</h5>
@@ -56,7 +56,7 @@
Actions</a>).
</p>
<a name="spirit.karma.reference.karma_basics.character_encoding_namespace"></a><h5>
-<a name="id510833"></a>
+<a name="id519684"></a>
<a href="karma_basics.html#spirit.karma.reference.karma_basics.character_encoding_namespace">Character
Encoding Namespace</a>
</h5>
@@ -117,7 +117,7 @@
</li>
</ul></div>
<a name="spirit.karma.reference.karma_basics.examples"></a><h5>
-<a name="id511109"></a>
+<a name="id519961"></a>
<a href="karma_basics.html#spirit.karma.reference.karma_basics.examples">Examples</a>
</h5>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/numeric.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/numeric.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/numeric.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -44,7 +44,7 @@
integer, and floating point number generators.
</p>
<a name="spirit.karma.reference.numeric.module_header"></a><h5>
-<a name="id525105"></a>
+<a name="id533956"></a>
<a href="numeric.html#spirit.karma.reference.numeric.module_header">Module Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/numeric.hpp>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/floating_point.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/floating_point.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/floating_point.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.numeric.floating_point.description"></a><h6>
-<a name="id537398"></a>
+<a name="id546262"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.description">Description</a>
</h6>
<p>
@@ -202,7 +202,7 @@
of Floating Point Numeric Generators</a>
</p>
<a name="spirit.karma.reference.numeric.floating_point.header"></a><h6>
-<a name="id538312"></a>
+<a name="id547176"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/numeric/real.hpp>
@@ -212,7 +212,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.numeric.floating_point.model_of"></a><h6>
-<a name="id538427"></a>
+<a name="id547291"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.model_of">Model
of</a>
</h6>
@@ -242,7 +242,7 @@
</dl>
</div>
<a name="spirit.karma.reference.numeric.floating_point.expression_semantics"></a><h6>
-<a name="id538568"></a>
+<a name="id547432"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.expression_semantics">Expression
Semantics</a>
</h6>
@@ -371,7 +371,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.numeric.floating_point.template_parameters"></a><h6>
-<a name="id539329"></a>
+<a name="id548193"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.template_parameters">Template
parameters</a>
</h6>
@@ -422,7 +422,7 @@
see below).
</p>
<a name="spirit.karma.reference.numeric.floating_point.additional_requirements"></a><h6>
-<a name="id539540"></a>
+<a name="id548404"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.additional_requirements">Additional
Requirements</a>
</h6>
@@ -461,7 +461,7 @@
</li>
</ul></div>
<a name="spirit.karma.reference.numeric.floating_point.attributes"></a><h6>
-<a name="id540013"></a>
+<a name="id548877"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -583,7 +583,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.numeric.floating_point.floating_point_formatting_policies"></a><h6>
-<a name="id540640"></a>
+<a name="id549504"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.floating_point_formatting_policies">Floating
Point Formatting Policies</a>
</h6>
@@ -616,7 +616,7 @@
will be used as the attribute type of the created floating point generator.
</p>
<a name="spirit.karma.reference.numeric.floating_point.floating_point_formatting_policy_expression_semantics"></a><h6>
-<a name="id541144"></a>
+<a name="id550008"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.floating_point_formatting_policy_expression_semantics">Floating
Point Formatting Policy Expression Semantics</a>
</h6>
@@ -1136,7 +1136,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.numeric.floating_point.complexity"></a><h6>
-<a name="id544766"></a>
+<a name="id553636"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -1151,7 +1151,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.numeric.floating_point.example"></a><h6>
-<a name="id544818"></a>
+<a name="id553688"></a>
<a href="floating_point.html#spirit.karma.reference.numeric.floating_point.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/signed_int.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/signed_int.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/signed_int.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.numeric.signed_int.description"></a><h6>
-<a name="id525235"></a>
+<a name="id534086"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.description">Description</a>
</h6>
<p>
@@ -238,7 +238,7 @@
of Numeric Generators</a>
</p>
<a name="spirit.karma.reference.numeric.signed_int.header"></a><h6>
-<a name="id526414"></a>
+<a name="id535265"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/numeric/int.hpp>
@@ -248,7 +248,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.numeric.signed_int.model_of"></a><h6>
-<a name="id526528"></a>
+<a name="id535379"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.model_of">Model
of</a>
</h6>
@@ -292,7 +292,7 @@
</dl>
</div>
<a name="spirit.karma.reference.numeric.signed_int.expression_semantics"></a><h6>
-<a name="id526797"></a>
+<a name="id535648"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.expression_semantics">Expression
Semantics</a>
</h6>
@@ -449,7 +449,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.numeric.signed_int.template_parameters"></a><h6>
-<a name="id527727"></a>
+<a name="id536584"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.template_parameters">Template
parameters</a>
</h6>
@@ -508,7 +508,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.numeric.signed_int.additional_requirements"></a><h6>
-<a name="id527951"></a>
+<a name="id536807"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.additional_requirements">Additional
Requirements</a>
</h6>
@@ -564,7 +564,7 @@
</li>
</ul></div>
<a name="spirit.karma.reference.numeric.signed_int.attributes"></a><h6>
-<a name="id528641"></a>
+<a name="id537497"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -706,7 +706,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.numeric.signed_int.complexity"></a><h6>
-<a name="id529400"></a>
+<a name="id538256"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -720,7 +720,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.numeric.signed_int.example"></a><h6>
-<a name="id529450"></a>
+<a name="id538306"></a>
<a href="signed_int.html#spirit.karma.reference.numeric.signed_int.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/unsigned_int.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/unsigned_int.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/numeric/unsigned_int.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.numeric.unsigned_int.description"></a><h6>
-<a name="id531136"></a>
+<a name="id539991"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.description">Description</a>
</h6>
<p>
@@ -309,7 +309,7 @@
of Numeric Generators</a>
</p>
<a name="spirit.karma.reference.numeric.unsigned_int.header"></a><h6>
-<a name="id532645"></a>
+<a name="id541500"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/numeric/uint.hpp>
@@ -319,7 +319,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.numeric.unsigned_int.model_of"></a><h6>
-<a name="id532760"></a>
+<a name="id541615"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.model_of">Model
of</a>
</h6>
@@ -356,7 +356,7 @@
</dl>
</div>
<a name="spirit.karma.reference.numeric.unsigned_int.expression_semantics"></a><h6>
-<a name="id532974"></a>
+<a name="id541829"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.expression_semantics">Expression
Semantics</a>
</h6>
@@ -540,7 +540,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.numeric.unsigned_int.template_parameters"></a><h6>
-<a name="id533908"></a>
+<a name="id542772"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.template_parameters">Template
parameters</a>
</h6>
@@ -587,7 +587,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.numeric.unsigned_int.additional_requirements"></a><h6>
-<a name="id534078"></a>
+<a name="id542942"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.additional_requirements">Additional
Requirements</a>
</h6>
@@ -641,7 +641,7 @@
</li>
</ul></div>
<a name="spirit.karma.reference.numeric.unsigned_int.attributes"></a><h6>
-<a name="id534712"></a>
+<a name="id543575"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -819,7 +819,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.numeric.unsigned_int.complexity"></a><h6>
-<a name="id535674"></a>
+<a name="id544538"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -833,7 +833,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.numeric.unsigned_int.example"></a><h6>
-<a name="id535723"></a>
+<a name="id544587"></a>
<a href="unsigned_int.html#spirit.karma.reference.numeric.unsigned_int.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -59,7 +59,7 @@
and the <span class="emphasis"><em>not</em></span> predicate (unary <tt class="computeroutput"><span class="special">!</span></tt>).
</p>
<a name="spirit.karma.reference.operator.module_header"></a><h5>
-<a name="id590811"></a>
+<a name="id603952"></a>
<a href="operator.html#spirit.karma.reference.operator.module_header">Module Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator.hpp>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator/alternative.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator/alternative.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator/alternative.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.operator.alternative.description"></a><h6>
-<a name="id597925"></a>
+<a name="id606798"></a>
<a href="alternative.html#spirit.karma.reference.operator.alternative.description">Description</a>
</h6>
<p>
@@ -44,7 +44,7 @@
from left to right until one of them succeeds.
</p>
<a name="spirit.karma.reference.operator.alternative.header"></a><h6>
-<a name="id597957"></a>
+<a name="id606830"></a>
<a href="alternative.html#spirit.karma.reference.operator.alternative.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator/alternative.hpp>
@@ -54,7 +54,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.operator.alternative.model_of"></a><h6>
-<a name="id598073"></a>
+<a name="id606945"></a>
<a href="alternative.html#spirit.karma.reference.operator.alternative.model_of">Model
of</a>
</h6>
@@ -68,7 +68,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.alternative.expression_semantics"></a><h6>
-<a name="id598127"></a>
+<a name="id607000"></a>
<a href="alternative.html#spirit.karma.reference.operator.alternative.expression_semantics">Expression
Semantics</a>
</h6>
@@ -112,7 +112,7 @@
an element succeeded.
</p>
<a name="spirit.karma.reference.operator.alternative.attributes"></a><h6>
-<a name="id598295"></a>
+<a name="id607168"></a>
<a href="alternative.html#spirit.karma.reference.operator.alternative.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -168,7 +168,7 @@
an example of this behavior.
</p>
<a name="spirit.karma.reference.operator.alternative.complexity"></a><h6>
-<a name="id598966"></a>
+<a name="id607839"></a>
<a href="alternative.html#spirit.karma.reference.operator.alternative.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -184,7 +184,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.alternative.example"></a><h6>
-<a name="id599006"></a>
+<a name="id607879"></a>
<a href="alternative.html#spirit.karma.reference.operator.alternative.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator/and_predicate.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator/and_predicate.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator/and_predicate.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.operator.and_predicate.description"></a><h6>
-<a name="id609200"></a>
+<a name="id618064"></a>
<a href="and_predicate.html#spirit.karma.reference.operator.and_predicate.description">Description</a>
</h6>
<p>
@@ -44,7 +44,7 @@
succeeds.
</p>
<a name="spirit.karma.reference.operator.and_predicate.header"></a><h6>
-<a name="id609234"></a>
+<a name="id618097"></a>
<a href="and_predicate.html#spirit.karma.reference.operator.and_predicate.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator/and_predicate.hpp>
@@ -54,7 +54,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.operator.and_predicate.model_of"></a><h6>
-<a name="id609349"></a>
+<a name="id618213"></a>
<a href="and_predicate.html#spirit.karma.reference.operator.and_predicate.model_of">Model
of</a>
</h6>
@@ -68,7 +68,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.and_predicate.expression_semantics"></a><h6>
-<a name="id609404"></a>
+<a name="id618268"></a>
<a href="and_predicate.html#spirit.karma.reference.operator.and_predicate.expression_semantics">Expression
Semantics</a>
</h6>
@@ -107,7 +107,7 @@
its embedded generator into a discarding device.
</p>
<a name="spirit.karma.reference.operator.and_predicate.attributes"></a><h6>
-<a name="id609548"></a>
+<a name="id618412"></a>
<a href="and_predicate.html#spirit.karma.reference.operator.and_predicate.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -147,7 +147,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.operator.and_predicate.complexity"></a><h6>
-<a name="id609713"></a>
+<a name="id618577"></a>
<a href="and_predicate.html#spirit.karma.reference.operator.and_predicate.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -162,7 +162,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.and_predicate.example"></a><h6>
-<a name="id609754"></a>
+<a name="id618618"></a>
<a href="and_predicate.html#spirit.karma.reference.operator.and_predicate.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator/kleene.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator/kleene.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator/kleene.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.operator.kleene.description"></a><h6>
-<a name="id600503"></a>
+<a name="id609376"></a>
<a href="kleene.html#spirit.karma.reference.operator.kleene.description">Description</a>
</h6>
<p>
@@ -44,7 +44,7 @@
generator, the Kleene star generator always succeeds.
</p>
<a name="spirit.karma.reference.operator.kleene.header"></a><h6>
-<a name="id600536"></a>
+<a name="id609409"></a>
<a href="kleene.html#spirit.karma.reference.operator.kleene.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator/kleene.hpp>
@@ -54,7 +54,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.operator.kleene.model_of"></a><h6>
-<a name="id600649"></a>
+<a name="id609522"></a>
<a href="kleene.html#spirit.karma.reference.operator.kleene.model_of">Model
of</a>
</h6>
@@ -68,7 +68,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.kleene.expression_semantics"></a><h6>
-<a name="id600701"></a>
+<a name="id609574"></a>
<a href="kleene.html#spirit.karma.reference.operator.kleene.expression_semantics">Expression
Semantics</a>
</h6>
@@ -104,7 +104,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.operator.kleene.attributes"></a><h6>
-<a name="id600851"></a>
+<a name="id609724"></a>
<a href="kleene.html#spirit.karma.reference.operator.kleene.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -198,7 +198,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.operator.kleene.complexity"></a><h6>
-<a name="id601318"></a>
+<a name="id610191"></a>
<a href="kleene.html#spirit.karma.reference.operator.kleene.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -215,7 +215,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.kleene.example"></a><h6>
-<a name="id601360"></a>
+<a name="id610233"></a>
<a href="kleene.html#spirit.karma.reference.operator.kleene.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator/list.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator/list.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator/list.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -32,7 +32,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.operator.list.description"></a><h6>
-<a name="id604837"></a>
+<a name="id613711"></a>
<a href="list.html#spirit.karma.reference.operator.list.description">Description</a>
</h6>
<p>
@@ -42,7 +42,7 @@
at least once.
</p>
<a name="spirit.karma.reference.operator.list.header"></a><h6>
-<a name="id604871"></a>
+<a name="id613744"></a>
<a href="list.html#spirit.karma.reference.operator.list.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator/list.hpp>
@@ -52,7 +52,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.operator.list.model_of"></a><h6>
-<a name="id604985"></a>
+<a name="id613859"></a>
<a href="list.html#spirit.karma.reference.operator.list.model_of">Model of</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -65,7 +65,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.list.expression_semantics"></a><h6>
-<a name="id605037"></a>
+<a name="id613910"></a>
<a href="list.html#spirit.karma.reference.operator.list.expression_semantics">Expression
Semantics</a>
</h6>
@@ -110,7 +110,7 @@
the list generator.
</p>
<a name="spirit.karma.reference.operator.list.attributes"></a><h6>
-<a name="id605295"></a>
+<a name="id614168"></a>
<a href="list.html#spirit.karma.reference.operator.list.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -219,7 +219,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.operator.list.complexity"></a><h6>
-<a name="id605874"></a>
+<a name="id614738"></a>
<a href="list.html#spirit.karma.reference.operator.list.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -235,7 +235,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.list.example"></a><h6>
-<a name="id605916"></a>
+<a name="id614779"></a>
<a href="list.html#spirit.karma.reference.operator.list.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator/not_predicate.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator/not_predicate.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator/not_predicate.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.operator.not_predicate.description"></a><h6>
-<a name="id611207"></a>
+<a name="id620070"></a>
<a href="not_predicate.html#spirit.karma.reference.operator.not_predicate.description">Description</a>
</h6>
<p>
@@ -43,7 +43,7 @@
fails.
</p>
<a name="spirit.karma.reference.operator.not_predicate.header"></a><h6>
-<a name="id611239"></a>
+<a name="id620103"></a>
<a href="not_predicate.html#spirit.karma.reference.operator.not_predicate.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator/not_predicate.hpp>
@@ -53,7 +53,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.operator.not_predicate.model_of"></a><h6>
-<a name="id611354"></a>
+<a name="id620218"></a>
<a href="not_predicate.html#spirit.karma.reference.operator.not_predicate.model_of">Model
of</a>
</h6>
@@ -67,7 +67,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.not_predicate.expression_semantics"></a><h6>
-<a name="id611408"></a>
+<a name="id620273"></a>
<a href="not_predicate.html#spirit.karma.reference.operator.not_predicate.expression_semantics">Expression
Semantics</a>
</h6>
@@ -106,7 +106,7 @@
its embedded generator into a discarding device.
</p>
<a name="spirit.karma.reference.operator.not_predicate.attributes"></a><h6>
-<a name="id611553"></a>
+<a name="id620418"></a>
<a href="not_predicate.html#spirit.karma.reference.operator.not_predicate.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -146,7 +146,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.operator.not_predicate.complexity"></a><h6>
-<a name="id611718"></a>
+<a name="id620583"></a>
<a href="not_predicate.html#spirit.karma.reference.operator.not_predicate.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -161,7 +161,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.not_predicate.example"></a><h6>
-<a name="id611758"></a>
+<a name="id620623"></a>
<a href="not_predicate.html#spirit.karma.reference.operator.not_predicate.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator/optional.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator/optional.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator/optional.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.operator.optional.description"></a><h6>
-<a name="id607138"></a>
+<a name="id616002"></a>
<a href="optional.html#spirit.karma.reference.operator.optional.description">Description</a>
</h6>
<p>
@@ -42,7 +42,7 @@
It succeeds always.
</p>
<a name="spirit.karma.reference.operator.optional.header"></a><h6>
-<a name="id607169"></a>
+<a name="id616033"></a>
<a href="optional.html#spirit.karma.reference.operator.optional.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator/optional.hpp>
@@ -52,7 +52,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.operator.optional.model_of"></a><h6>
-<a name="id607283"></a>
+<a name="id616147"></a>
<a href="optional.html#spirit.karma.reference.operator.optional.model_of">Model
of</a>
</h6>
@@ -66,7 +66,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.optional.expression_semantics"></a><h6>
-<a name="id607337"></a>
+<a name="id616200"></a>
<a href="optional.html#spirit.karma.reference.operator.optional.expression_semantics">Expression
Semantics</a>
</h6>
@@ -100,7 +100,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.operator.optional.attributes"></a><h6>
-<a name="id607474"></a>
+<a name="id616337"></a>
<a href="optional.html#spirit.karma.reference.operator.optional.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -177,7 +177,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.operator.optional.complexity"></a><h6>
-<a name="id607890"></a>
+<a name="id616754"></a>
<a href="optional.html#spirit.karma.reference.operator.optional.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -192,7 +192,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.optional.example"></a><h6>
-<a name="id607930"></a>
+<a name="id616793"></a>
<a href="optional.html#spirit.karma.reference.operator.optional.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator/plus.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator/plus.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator/plus.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.operator.plus.description"></a><h6>
-<a name="id602608"></a>
+<a name="id611482"></a>
<a href="plus.html#spirit.karma.reference.operator.plus.description">Description</a>
</h6>
<p>
@@ -43,7 +43,7 @@
executed at least once.
</p>
<a name="spirit.karma.reference.operator.plus.header"></a><h6>
-<a name="id602641"></a>
+<a name="id611514"></a>
<a href="plus.html#spirit.karma.reference.operator.plus.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator/plus.hpp>
@@ -53,7 +53,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.operator.plus.model_of"></a><h6>
-<a name="id602755"></a>
+<a name="id611628"></a>
<a href="plus.html#spirit.karma.reference.operator.plus.model_of">Model of</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -66,7 +66,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.plus.expression_semantics"></a><h6>
-<a name="id602806"></a>
+<a name="id611680"></a>
<a href="plus.html#spirit.karma.reference.operator.plus.expression_semantics">Expression
Semantics</a>
</h6>
@@ -103,7 +103,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.operator.plus.attributes"></a><h6>
-<a name="id602951"></a>
+<a name="id611824"></a>
<a href="plus.html#spirit.karma.reference.operator.plus.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -197,7 +197,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.operator.plus.complexity"></a><h6>
-<a name="id603419"></a>
+<a name="id612292"></a>
<a href="plus.html#spirit.karma.reference.operator.plus.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -213,7 +213,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.plus.example"></a><h6>
-<a name="id603459"></a>
+<a name="id612332"></a>
<a href="plus.html#spirit.karma.reference.operator.plus.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/operator/sequence.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/operator/sequence.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/operator/sequence.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.karma.reference.operator.sequence.description"></a><h6>
-<a name="id590960"></a>
+<a name="id604100"></a>
<a href="sequence.html#spirit.karma.reference.operator.sequence.description">Description</a>
</h6>
<p>
@@ -43,7 +43,7 @@
to right as long as they succeed.
</p>
<a name="spirit.karma.reference.operator.sequence.header"></a><h6>
-<a name="id590993"></a>
+<a name="id604133"></a>
<a href="sequence.html#spirit.karma.reference.operator.sequence.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/operator/sequence.hpp>
@@ -53,7 +53,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.operator.sequence.model_of"></a><h6>
-<a name="id591106"></a>
+<a name="id604247"></a>
<a href="sequence.html#spirit.karma.reference.operator.sequence.model_of">Model
of</a>
</h6>
@@ -67,7 +67,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.sequence.expression_semantics"></a><h6>
-<a name="id595427"></a>
+<a name="id604301"></a>
<a href="sequence.html#spirit.karma.reference.operator.sequence.expression_semantics">Expression
Semantics</a>
</h6>
@@ -132,7 +132,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.reference.operator.sequence.attributes"></a><h6>
-<a name="id595701"></a>
+<a name="id604574"></a>
<a href="sequence.html#spirit.karma.reference.operator.sequence.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -199,7 +199,7 @@
the attribute supplied
</p>
<a name="spirit.karma.reference.operator.sequence.complexity"></a><h6>
-<a name="id596777"></a>
+<a name="id605650"></a>
<a href="sequence.html#spirit.karma.reference.operator.sequence.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -214,7 +214,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.operator.sequence.example"></a><h6>
-<a name="id596817"></a>
+<a name="id605690"></a>
<a href="sequence.html#spirit.karma.reference.operator.sequence.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/stream.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/stream.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/stream.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -36,7 +36,7 @@
be used to utilize existing streaming operators (<tt class="computeroutput"><span class="keyword">operator</span><span class="special"><<()</span></tt>) for output generation.
</p>
<a name="spirit.karma.reference.stream.description"></a><h5>
-<a name="id546623"></a>
+<a name="id555492"></a>
<a href="stream.html#spirit.karma.reference.stream.description">Description</a>
</h5>
<p>
@@ -132,7 +132,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.stream.header"></a><h5>
-<a name="id547153"></a>
+<a name="id556023"></a>
<a href="stream.html#spirit.karma.reference.stream.header">Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/stream.hpp>
@@ -142,7 +142,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.stream.model_of"></a><h5>
-<a name="id547266"></a>
+<a name="id556136"></a>
<a href="stream.html#spirit.karma.reference.stream.model_of">Model of</a>
</h5>
<div class="blockquote"><blockquote class="blockquote">
@@ -174,7 +174,7 @@
</dl>
</div>
<a name="spirit.karma.reference.stream.expression_semantics"></a><h5>
-<a name="id547423"></a>
+<a name="id556293"></a>
<a href="stream.html#spirit.karma.reference.stream.expression_semantics">Expression
Semantics</a>
</h5>
@@ -313,7 +313,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.stream.template_parameters"></a><h5>
-<a name="id548140"></a>
+<a name="id557011"></a>
<a href="stream.html#spirit.karma.reference.stream.template_parameters">Template
parameters</a>
</h5>
@@ -347,7 +347,7 @@
</tr></tbody>
</table></div>
<a name="spirit.karma.reference.stream.additional_requirements"></a><h5>
-<a name="id548257"></a>
+<a name="id557127"></a>
<a href="stream.html#spirit.karma.reference.stream.additional_requirements">Additional
Requirements</a>
</h5>
@@ -390,7 +390,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.stream.attributes"></a><h5>
-<a name="id548588"></a>
+<a name="id557458"></a>
<a href="stream.html#spirit.karma.reference.stream.attributes">Attributes</a>
</h5>
<div class="informaltable"><table class="table">
@@ -474,7 +474,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.stream.complexity"></a><h5>
-<a name="id549034"></a>
+<a name="id557904"></a>
<a href="stream.html#spirit.karma.reference.stream.complexity">Complexity</a>
</h5>
<div class="blockquote"><blockquote class="blockquote">
@@ -487,7 +487,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.stream.example"></a><h5>
-<a name="id549070"></a>
+<a name="id557940"></a>
<a href="stream.html#spirit.karma.reference.stream.example">Example</a>
</h5>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/reference/string.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/reference/string.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/reference/string.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -36,7 +36,7 @@
generator.
</p>
<a name="spirit.karma.reference.string.description"></a><h5>
-<a name="id521853"></a>
+<a name="id530704"></a>
<a href="string.html#spirit.karma.reference.string.description">Description</a>
</h5>
<p>
@@ -100,7 +100,7 @@
Encoding Namespace</a> used by the corresponding string generator.
</p>
<a name="spirit.karma.reference.string.header"></a><h5>
-<a name="id522213"></a>
+<a name="id531064"></a>
<a href="string.html#spirit.karma.reference.string.header">Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/karma/string/lit.hpp>
@@ -110,7 +110,7 @@
Also, see Include Structure.
</p>
<a name="spirit.karma.reference.string.model_of"></a><h5>
-<a name="id522327"></a>
+<a name="id531178"></a>
<a href="string.html#spirit.karma.reference.string.model_of">Model of</a>
</h5>
<div class="blockquote"><blockquote class="blockquote">
@@ -140,7 +140,7 @@
</dl>
</div>
<a name="spirit.karma.reference.string.expression_semantics"></a><h5>
-<a name="id522456"></a>
+<a name="id531307"></a>
<a href="string.html#spirit.karma.reference.string.expression_semantics">Expression
Semantics</a>
</h5>
@@ -222,7 +222,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.reference.string.attributes"></a><h5>
-<a name="id522897"></a>
+<a name="id531748"></a>
<a href="string.html#spirit.karma.reference.string.attributes">Attributes</a>
</h5>
<div class="informaltable"><table class="table">
@@ -278,7 +278,7 @@
</tbody>
</table></div>
<a name="spirit.karma.reference.string.complexity"></a><h5>
-<a name="id523181"></a>
+<a name="id532032"></a>
<a href="string.html#spirit.karma.reference.string.complexity">Complexity</a>
</h5>
<div class="blockquote"><blockquote class="blockquote">
@@ -291,7 +291,7 @@
</p>
</blockquote></div>
<a name="spirit.karma.reference.string.example"></a><h5>
-<a name="id523217"></a>
+<a name="id532068"></a>
<a href="string.html#spirit.karma.reference.string.example">Example</a>
</h5>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/tutorials/karma_attributes.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/tutorials/karma_attributes.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/tutorials/karma_attributes.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.karma.tutorials.karma_attributes.attributes_of_primitive_generators"></a><h5>
-<a name="id486951"></a>
+<a name="id495798"></a>
<a href="karma_attributes.html#spirit.karma.tutorials.karma_attributes.attributes_of_primitive_generators">Attributes
of Primitive Generators</a>
</h5>
@@ -67,7 +67,7 @@
<span class="identifier">generate</span><span class="special">(</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">double_</span><span class="special">,</span> <span class="number">1</span><span class="special">);</span>
</pre>
<a name="spirit.karma.tutorials.karma_attributes.attributes_of_compound_generators"></a><h5>
-<a name="id487247"></a>
+<a name="id496094"></a>
<a href="karma_attributes.html#spirit.karma.tutorials.karma_attributes.attributes_of_compound_generators">Attributes
of Compound Generators</a>
</h5>
@@ -127,7 +127,7 @@
Attribute Rules</a>.
</p>
<a name="spirit.karma.tutorials.karma_attributes.the_attribute_of_sequence_generators"></a><h5>
-<a name="id487751"></a>
+<a name="id496598"></a>
<a href="karma_attributes.html#spirit.karma.tutorials.karma_attributes.the_attribute_of_sequence_generators">The
Attribute of Sequence Generators</a>
</h5>
@@ -194,7 +194,7 @@
</td></tr>
</table></div>
<a name="spirit.karma.tutorials.karma_attributes.the_attribute_of_alternative_generators"></a><h5>
-<a name="id488366"></a>
+<a name="id497213"></a>
<a href="karma_attributes.html#spirit.karma.tutorials.karma_attributes.the_attribute_of_alternative_generators">The
Attribute of Alternative Generators</a>
</h5>
@@ -223,7 +223,7 @@
well. We will apply this rule later for our complex number generators.
</p>
<a name="spirit.karma.tutorials.karma_attributes.more_about_attributes_of_compound_generators"></a><h5>
-<a name="id488654"></a>
+<a name="id497501"></a>
<a href="karma_attributes.html#spirit.karma.tutorials.karma_attributes.more_about_attributes_of_compound_generators">More
About Attributes of Compound Generators</a>
</h5>
@@ -330,7 +330,7 @@
again, allowing to simplify the overall attribute type of an expression.
</p>
<a name="spirit.karma.tutorials.karma_attributes.attributes_of_rules_and_grammars"></a><h5>
-<a name="id489728"></a>
+<a name="id498575"></a>
<a href="karma_attributes.html#spirit.karma.tutorials.karma_attributes.attributes_of_rules_and_grammars">Attributes
of Rules and Grammars</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/karma/tutorials/quick_start.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/tutorials/quick_start.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/tutorials/quick_start.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,7 +30,7 @@
<div></div>
</div>
<a name="spirit.karma.tutorials.quick_start.spirit_karma___what_s_that_"></a><h5>
-<a name="id482141"></a>
+<a name="id490977"></a>
<a href="quick_start.html#spirit.karma.tutorials.quick_start.spirit_karma___what_s_that_">Spirit.Karma
- what's that?</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/karma/tutorials/semantic_actions.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/tutorials/semantic_actions.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/tutorials/semantic_actions.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -273,7 +273,7 @@
The examples above can be found here: actions.cpp
</p>
<a name="spirit.karma.tutorials.semantic_actions.phoenix"></a><h5>
-<a name="id485648"></a>
+<a name="id494496"></a>
<a href="semantic_actions.html#spirit.karma.tutorials.semantic_actions.phoenix">Phoenix</a>
</h5>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/karma/tutorials/warming_up.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/karma/tutorials/warming_up.html (original)
+++ trunk/libs/spirit/doc/html/spirit/karma/tutorials/warming_up.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
We will start from trivial examples, ramping up as we go.
</p>
<a name="spirit.karma.tutorials.warming_up.trivial_example__1_generating_a_number"></a><h5>
-<a name="id482347"></a>
+<a name="id491183"></a>
<a href="warming_up.html#spirit.karma.tutorials.warming_up.trivial_example__1_generating_a_number">Trivial
Example #1 Generating a number</a>
</h5>
@@ -54,7 +54,7 @@
to a floating point generator or parser: <tt class="computeroutput"><span class="identifier">double_</span></tt>.
</p>
<a name="spirit.karma.tutorials.warming_up.trivial_example__2_generating_two_numbers"></a><h5>
-<a name="id482419"></a>
+<a name="id491254"></a>
<a href="warming_up.html#spirit.karma.tutorials.warming_up.trivial_example__2_generating_two_numbers">Trivial
Example #2 Generating two numbers</a>
</h5>
@@ -92,7 +92,7 @@
</p></td></tr>
</table></div>
<a name="spirit.karma.tutorials.warming_up.trivial_example__3_generating_one_or_more_numbers"></a><h5>
-<a name="id482572"></a>
+<a name="id491408"></a>
<a href="warming_up.html#spirit.karma.tutorials.warming_up.trivial_example__3_generating_one_or_more_numbers">Trivial
Example #3 Generating one or more numbers</a>
</h5>
@@ -117,7 +117,7 @@
numbers, if needed.
</p>
<a name="spirit.karma.tutorials.warming_up.trivial_example__4_generating_a_comma_delimited_list_of_numbers"></a><h5>
-<a name="id482661"></a>
+<a name="id491497"></a>
<a href="warming_up.html#spirit.karma.tutorials.warming_up.trivial_example__4_generating_a_comma_delimited_list_of_numbers">Trivial
Example #4 Generating a comma-delimited list of numbers</a>
</h5>
@@ -140,7 +140,7 @@
in the generated output zero or more times.
</p>
<a name="spirit.karma.tutorials.warming_up.let_s_generate_"></a><h5>
-<a name="id482860"></a>
+<a name="id491696"></a>
<a href="warming_up.html#spirit.karma.tutorials.warming_up.let_s_generate_">Let's
Generate!</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_primitives/lexer_token_values.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_primitives/lexer_token_values.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_primitives/lexer_token_values.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -58,7 +58,7 @@
of the <span class="emphasis"><em>Spirit.Lex</em></span> library.
</p>
<a name="spirit.lex.abstracts.lexer_primitives.lexer_token_values.the_anatomy_of_a_token"></a><h6>
-<a name="id630105"></a>
+<a name="id639002"></a>
<a href="lexer_token_values.html#spirit.lex.abstracts.lexer_primitives.lexer_token_values.the_anatomy_of_a_token">The
Anatomy of a Token</a>
</h6>
@@ -195,7 +195,7 @@
when it is requested for the first time.
</p>
<a name="spirit.lex.abstracts.lexer_primitives.lexer_token_values.the_physiognomy_of_a_token_definition"></a><h6>
-<a name="id630867"></a>
+<a name="id639764"></a>
<a href="lexer_token_values.html#spirit.lex.abstracts.lexer_primitives.lexer_token_values.the_physiognomy_of_a_token_definition">The
Physiognomy of a Token Definition</a>
</h6>
@@ -268,7 +268,7 @@
</td></tr>
</table></div>
<a name="spirit.lex.abstracts.lexer_primitives.lexer_token_values.examples_of_using__link_linkend__spirit_lex_reference_token_class___code__phrase_role__identifier__lexertl_token__phrase__phrase_role__special___lt__gt___phrase___code___link_"></a><h6>
-<a name="id631278"></a>
+<a name="id640175"></a>
<a href="lexer_token_values.html#spirit.lex.abstracts.lexer_primitives.lexer_token_values.examples_of_using__link_linkend__spirit_lex_reference_token_class___code__phrase_role__identifier__lexertl_token__phrase__phrase_role__special___lt__gt___phrase___code___link_">Examples
of using lexertl_token<></a>
</h6>
Modified: trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_semantic_actions.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_semantic_actions.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_semantic_actions.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -112,7 +112,7 @@
<span class="keyword">void</span> <span class="identifier">f</span> <span class="special">();</span>
</pre>
<a name="spirit.lex.abstracts.lexer_semantic_actions.the_context_of_a_lexer_semantic_action"></a><h5>
-<a name="id635996"></a>
+<a name="id644893"></a>
<a href="lexer_semantic_actions.html#spirit.lex.abstracts.lexer_semantic_actions.the_context_of_a_lexer_semantic_action">The
context of a lexer semantic action</a>
</h5>
@@ -127,7 +127,7 @@
of the available functionality.
</p>
<div class="table">
-<a name="id636040"></a><p class="title"><b>Table 9. Functions exposed by any context passed to a lexer
+<a name="id644937"></a><p class="title"><b>Table 10. Functions exposed by any context passed to a lexer
semantic action</b></p>
<table class="table" summary="Functions exposed by any context passed to a lexer
semantic action">
@@ -220,7 +220,7 @@
</table>
</div>
<a name="spirit.lex.abstracts.lexer_semantic_actions.lexer_semantic_actions_using_phoenix"></a><h5>
-<a name="id636764"></a>
+<a name="id645663"></a>
<a href="lexer_semantic_actions.html#spirit.lex.abstracts.lexer_semantic_actions.lexer_semantic_actions_using_phoenix">Lexer
Semantic Actions Using Phoenix</a>
</h5>
@@ -232,7 +232,7 @@
predefined Spirit placeholders:
</p>
<div class="table">
-<a name="id636806"></a><p class="title"><b>Table 10. Predefined Phoenix placeholders for lexer semantic
+<a name="id645705"></a><p class="title"><b>Table 11. Predefined Phoenix placeholders for lexer semantic
actions</b></p>
<table class="table" summary="Predefined Phoenix placeholders for lexer semantic
actions">
@@ -331,7 +331,7 @@
table lists the available support functions and describes their functionality:
</p>
<div class="table">
-<a name="id637186"></a><p class="title"><b>Table 11. Support functions usable from Phoenix expressions
+<a name="id646085"></a><p class="title"><b>Table 12. Support functions usable from Phoenix expressions
inside lexer semantic actions</b></p>
<table class="table" summary="Support functions usable from Phoenix expressions
inside lexer semantic actions">
Modified: trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_states.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_states.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_states.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,17 +30,17 @@
<div></div>
</div>
<a name="spirit.lex.abstracts.lexer_states.controlling_the_lexer_state_from_lexer_semantic_actions"></a><h5>
-<a name="id641090"></a>
+<a name="id650007"></a>
<a href="lexer_states.html#spirit.lex.abstracts.lexer_states.controlling_the_lexer_state_from_lexer_semantic_actions">Controlling
the Lexer State from Lexer Semantic Actions</a>
</h5>
<a name="spirit.lex.abstracts.lexer_states.controlling_the_lexer_state_from_parser_semantic_actions"></a><h5>
-<a name="id641118"></a>
+<a name="id650035"></a>
<a href="lexer_states.html#spirit.lex.abstracts.lexer_states.controlling_the_lexer_state_from_parser_semantic_actions">Controlling
the Lexer State from Parser Semantic Actions</a>
</h5>
<a name="spirit.lex.abstracts.lexer_states.using_a_lexer_state_for_the_skip_parser"></a><h5>
-<a name="id641147"></a>
+<a name="id650064"></a>
<a href="lexer_states.html#spirit.lex.abstracts.lexer_states.using_a_lexer_state_for_the_skip_parser">Using
a Lexer State for the Skip Parser</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_static_model.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_static_model.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_static_model.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -183,7 +183,7 @@
<p>
</p>
<a name="spirit.lex.abstracts.lexer_static_model.generating_the_static_analyzer"></a><h5>
-<a name="id639229"></a>
+<a name="id648128"></a>
<a href="lexer_static_model.html#spirit.lex.abstracts.lexer_static_model.generating_the_static_analyzer">Generating
the Static Analyzer</a>
</h5>
@@ -232,7 +232,7 @@
the next topic (the full generated code can be viewed here).
</p>
<a name="spirit.lex.abstracts.lexer_static_model.modifying_the_dynamic_analyzer"></a><h5>
-<a name="id639694"></a>
+<a name="id648592"></a>
<a href="lexer_static_model.html#spirit.lex.abstracts.lexer_static_model.modifying_the_dynamic_analyzer">Modifying
the Dynamic Analyzer</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_tokenizing.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_tokenizing.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/abstracts/lexer_tokenizing.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -35,7 +35,7 @@
<div></div>
</div>
<a name="spirit.lex.abstracts.lexer_tokenizing.the_tokenize_function"></a><h5>
-<a name="id632085"></a>
+<a name="id640982"></a>
<a href="lexer_tokenizing.html#spirit.lex.abstracts.lexer_tokenizing.the_tokenize_function">The
tokenize function</a>
</h5>
@@ -237,7 +237,7 @@
</dl>
</div>
<a name="spirit.lex.abstracts.lexer_tokenizing.the_generate_static_function"></a><h5>
-<a name="id635090"></a>
+<a name="id643987"></a>
<a href="lexer_tokenizing.html#spirit.lex.abstracts.lexer_tokenizing.the_generate_static_function">The
generate_static function</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/lex/lexer_introduction.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/lexer_introduction.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/lexer_introduction.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -60,7 +60,7 @@
</li>
</ul></div>
<a name="spirit.lex.lexer_introduction.why_use_a_separate_lexer_"></a><h4>
-<a name="id618110"></a>
+<a name="id626974"></a>
<a href="lexer_introduction.html#spirit.lex.lexer_introduction.why_use_a_separate_lexer_">Why
Use a Separate Lexer?</a>
</h4>
@@ -159,7 +159,7 @@
grammar recognizers.
</p>
<a name="spirit.lex.lexer_introduction.advantages_of_using__emphasis_spirit_lex__emphasis_"></a><h4>
-<a name="id618461"></a>
+<a name="id627339"></a>
<a href="lexer_introduction.html#spirit.lex.lexer_introduction.advantages_of_using__emphasis_spirit_lex__emphasis_">Advantages
of using <span class="emphasis"><em>Spirit.Lex</em></span></a>
</h4>
@@ -208,7 +208,7 @@
application.
</p>
<a name="spirit.lex.lexer_introduction.the_library_structure_of__emphasis_spirit_lex__emphasis_"></a><h4>
-<a name="id618633"></a>
+<a name="id627511"></a>
<a href="lexer_introduction.html#spirit.lex.lexer_introduction.the_library_structure_of__emphasis_spirit_lex__emphasis_">The
Library Structure of <span class="emphasis"><em>Spirit.Lex</em></span></a>
</h4>
Modified: trunk/libs/spirit/doc/html/spirit/lex/reference/concepts/lexer.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/reference/concepts/lexer.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/reference/concepts/lexer.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,7 +30,7 @@
<div></div>
</div>
<div class="table">
-<a name="id641243"></a><p class="title"><b>Table 12. Regular expressions support</b></p>
+<a name="id650160"></a><p class="title"><b>Table 13. Regular expressions support</b></p>
<table class="table" summary="Regular expressions support">
<colgroup>
<col>
@@ -361,7 +361,7 @@
</p></td></tr>
</table></div>
<a name="spirit.lex.reference.concepts.lexer.regular_expression_precedence"></a><h6>
-<a name="id643332"></a>
+<a name="id652249"></a>
<a href="lexer.html#spirit.lex.reference.concepts.lexer.regular_expression_precedence">Regular
Expression Precedence</a>
</h6>
@@ -380,7 +380,7 @@
</li>
</ul></div>
<a name="spirit.lex.reference.concepts.lexer.macros"></a><h6>
-<a name="id643488"></a>
+<a name="id652405"></a>
<a href="lexer.html#spirit.lex.reference.concepts.lexer.macros">Macros</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/lex/reference/lexer_class.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/reference/lexer_class.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/reference/lexer_class.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,22 +30,22 @@
<div></div>
</div>
<a name="spirit.lex.reference.lexer_class.the_lexertl_lexer_class_implementing_the_dynamic_model"></a><h5>
-<a name="id643678"></a>
+<a name="id652595"></a>
<a href="lexer_class.html#spirit.lex.reference.lexer_class.the_lexertl_lexer_class_implementing_the_dynamic_model">The
lexertl_lexer Class Implementing the Dynamic Model</a>
</h5>
<a name="spirit.lex.reference.lexer_class.the_lexertl_actor_lexer_class_implementing_the_dynamic_model"></a><h5>
-<a name="id643705"></a>
+<a name="id652622"></a>
<a href="lexer_class.html#spirit.lex.reference.lexer_class.the_lexertl_actor_lexer_class_implementing_the_dynamic_model">The
lexertl_actor_lexer Class Implementing the Dynamic Model</a>
</h5>
<a name="spirit.lex.reference.lexer_class.the_lexertl_static_lexer_class_implementing_the_static_model"></a><h5>
-<a name="id643733"></a>
+<a name="id652650"></a>
<a href="lexer_class.html#spirit.lex.reference.lexer_class.the_lexertl_static_lexer_class_implementing_the_static_model">The
lexertl_static_lexer Class Implementing the Static Model</a>
</h5>
<a name="spirit.lex.reference.lexer_class.the_lexertl_static_actor_lexer_class_implementing_the_static_model"></a><h5>
-<a name="id643762"></a>
+<a name="id652679"></a>
<a href="lexer_class.html#spirit.lex.reference.lexer_class.the_lexertl_static_actor_lexer_class_implementing_the_static_model">The
lexertl_static_actor_lexer Class Implementing the Static Model</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart1.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart1.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart1.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -47,7 +47,7 @@
(for the full example code see here: word_count_functor.cpp).
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.prerequisites"></a><h5>
-<a name="id619077"></a>
+<a name="id627962"></a>
<a href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.prerequisites">Prerequisites</a>
</h5>
<p>
@@ -86,7 +86,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.defining_tokens"></a><h5>
-<a name="id619425"></a>
+<a name="id628310"></a>
<a href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.defining_tokens">Defining
Tokens</a>
</h5>
@@ -141,7 +141,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.doing_the_useful_work"></a><h5>
-<a name="id619874"></a>
+<a name="id628760"></a>
<a href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.doing_the_useful_work">Doing
the Useful Work</a>
</h5>
@@ -206,7 +206,7 @@
as well.
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.pulling_everything_together"></a><h5>
-<a name="id620572"></a>
+<a name="id629458"></a>
<a href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.pulling_everything_together">Pulling
Everything Together</a>
</h5>
@@ -259,7 +259,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.comparing__emphasis_spirit_lex__emphasis__with__ulink_url__http___flex_sourceforge_net___flex__ulink_"></a><h5>
-<a name="id621703"></a>
+<a name="id630589"></a>
<a href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.comparing__emphasis_spirit_lex__emphasis__with__ulink_url__http___flex_sourceforge_net___flex__ulink_">Comparing
<span class="emphasis"><em>Spirit.Lex</em></span> with Flex</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart2.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart2.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart2.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -49,7 +49,7 @@
options along the lines (for the full example code see here: word_count_lexer.cpp).
</p>
<a name="spirit.lex.tutorials.lexer_quickstart2.prerequisites"></a><h5>
-<a name="id622761"></a>
+<a name="id631646"></a>
<a href="lexer_quickstart2.html#spirit.lex.tutorials.lexer_quickstart2.prerequisites">Prerequisites</a>
</h5>
<p>
@@ -123,7 +123,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart2.semantic_actions_in__emphasis_spirit_lex__emphasis_"></a><h5>
-<a name="id623650"></a>
+<a name="id632536"></a>
<a href="lexer_quickstart2.html#spirit.lex.tutorials.lexer_quickstart2.semantic_actions_in__emphasis_spirit_lex__emphasis_">Semantic
Actions in <span class="emphasis"><em>Spirit.Lex</em></span></a>
</h5>
@@ -183,7 +183,7 @@
Semantic Actions</a>.
</p>
<a name="spirit.lex.tutorials.lexer_quickstart2.associating_token_definitions_with_the_lexer"></a><h5>
-<a name="id624507"></a>
+<a name="id633392"></a>
<a href="lexer_quickstart2.html#spirit.lex.tutorials.lexer_quickstart2.associating_token_definitions_with_the_lexer">Associating
Token Definitions with the Lexer</a>
</h5>
@@ -220,7 +220,7 @@
with the constant defined by <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">lex</span><span class="special">::</span><span class="identifier">min_token_id</span></tt>.
</p>
<a name="spirit.lex.tutorials.lexer_quickstart2.pulling_everything_together"></a><h5>
-<a name="id624933"></a>
+<a name="id633819"></a>
<a href="lexer_quickstart2.html#spirit.lex.tutorials.lexer_quickstart2.pulling_everything_together">Pulling
everything together</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart3.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart3.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart3.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -74,7 +74,7 @@
code see here: word_count.cpp).
</p>
<a name="spirit.lex.tutorials.lexer_quickstart3.prerequisites"></a><h5>
-<a name="id626361"></a>
+<a name="id635251"></a>
<a href="lexer_quickstart3.html#spirit.lex.tutorials.lexer_quickstart3.prerequisites">Prerequisites</a>
</h5>
<p>
@@ -124,7 +124,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart3.defining_tokens"></a><h5>
-<a name="id626967"></a>
+<a name="id635858"></a>
<a href="lexer_quickstart3.html#spirit.lex.tutorials.lexer_quickstart3.defining_tokens">Defining
Tokens</a>
</h5>
@@ -179,7 +179,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart3.using_token_definition_instances_as_parsers"></a><h5>
-<a name="id627443"></a>
+<a name="id636333"></a>
<a href="lexer_quickstart3.html#spirit.lex.tutorials.lexer_quickstart3.using_token_definition_instances_as_parsers">Using
Token Definition Instances as Parsers</a>
</h5>
@@ -318,7 +318,7 @@
<span class="identifier">size</span><span class="special">(</span><span class="identifier">_1</span><span class="special">)</span></tt>.
</p>
<a name="spirit.lex.tutorials.lexer_quickstart3.pulling_everything_together"></a><h5>
-<a name="id628651"></a>
+<a name="id637548"></a>
<a href="lexer_quickstart3.html#spirit.lex.tutorials.lexer_quickstart3.pulling_everything_together">Pulling
Everything Together</a>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/notes/porting_from_spirit_1_8_x.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/notes/porting_from_spirit_1_8_x.html (original)
+++ trunk/libs/spirit/doc/html/spirit/notes/porting_from_spirit_1_8_x.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -45,7 +45,7 @@
<a href="http://spirit.sourceforge.net" target="_top">Spirit</a>.
</p>
<a name="spirit.notes.porting_from_spirit_1_8_x.include_files"></a><h4>
-<a name="id654562"></a>
+<a name="id663490"></a>
<a href="porting_from_spirit_1_8_x.html#spirit.notes.porting_from_spirit_1_8_x.include_files">Include
Files</a>
</h4>
@@ -182,7 +182,7 @@
</tbody>
</table></div>
<a name="spirit.notes.porting_from_spirit_1_8_x.the_free_parse_functions"></a><h4>
-<a name="id655423"></a>
+<a name="id664351"></a>
<a href="porting_from_spirit_1_8_x.html#spirit.notes.porting_from_spirit_1_8_x.the_free_parse_functions">The
Free Parse Functions</a>
</h4>
@@ -367,7 +367,7 @@
Encoding Namespace</a> for more information.
</p>
<a name="spirit.notes.porting_from_spirit_1_8_x.naming_conventions"></a><h4>
-<a name="id658328"></a>
+<a name="id667256"></a>
<a href="porting_from_spirit_1_8_x.html#spirit.notes.porting_from_spirit_1_8_x.naming_conventions">Naming
Conventions</a>
</h4>
@@ -386,7 +386,7 @@
parser primitives, directives and operators.
</p>
<a name="spirit.notes.porting_from_spirit_1_8_x.parser_attributes"></a><h4>
-<a name="id658441"></a>
+<a name="id667369"></a>
<a href="porting_from_spirit_1_8_x.html#spirit.notes.porting_from_spirit_1_8_x.parser_attributes">Parser
Attributes</a>
</h4>
@@ -404,7 +404,7 @@
it is helpful to get access to the underlying matched input sequence.
</p>
<a name="spirit.notes.porting_from_spirit_1_8_x.grammars_and_rules"></a><h4>
-<a name="id658524"></a>
+<a name="id667452"></a>
<a href="porting_from_spirit_1_8_x.html#spirit.notes.porting_from_spirit_1_8_x.grammars_and_rules">Grammars
and Rules</a>
</h4>
Modified: trunk/libs/spirit/doc/html/spirit/qi/reference/numeric.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi/reference/numeric.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi/reference/numeric.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -36,6 +36,8 @@
(<tt class="computeroutput"><span class="identifier">uint_</span></tt>, etc.)</a></span></dt>
<dt><span class="section"><a href="numeric/int.html"> Signed Integers
(<tt class="computeroutput"><span class="identifier">int_</span></tt>, etc.)</a></span></dt>
+<dt><span class="section"><a href="numeric/real.html"> Real Numbers (<tt class="computeroutput"><span class="identifier">float_</span></tt>, <tt class="computeroutput"><span class="identifier">double_</span></tt>,
+ etc.)</a></span></dt>
</dl></div>
<p>
The library includes a couple of predefined objects for parsing signed
@@ -47,6 +49,25 @@
the most common real number formats but the user can supply her own when
needed.
</p>
+<p>
+ The numeric parsers are fine tuned (employing loop unrolling and extensive
+ template metaprogramming) with exceptional performance that rivals the
+ low level C functions such as <tt class="computeroutput"><span class="identifier">atof</span></tt>,
+ <tt class="computeroutput"><span class="identifier">strtod</span></tt>, <tt class="computeroutput"><span class="identifier">atol</span></tt>,
+ <tt class="computeroutput"><span class="identifier">strtol</span></tt>. Benchmarks reveal
+ up to 4X speed over the C counterparts. This goes to show that you can
+ write extremely tight generic C++ code that rivals, if not surpasses C.
+ </p>
+<a name="spirit.qi.reference.numeric.module_header"></a><h5>
+<a name="id471768"></a>
+ Module Header
+ </h5>
+<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/qi/numeric.hpp>
+</span><span class="preprocessor">#include</span> <span class="special"><</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">qi_numeric</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
+</pre>
+<p>
+ Also, see Include Structure.
+ </p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
Modified: trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/int.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/int.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/int.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -9,7 +9,8 @@
<link rel="up" href="../numeric.html" title="Numeric">
<link rel="previous" href="uint.html" title=" Unsigned Integers
(uint_, etc.)">
-<link rel="next" href="../string.html" title="String">
+<link rel="next" href="real.html" title=" Real Numbers (float_, double_,
+ etc.)">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@@ -22,7 +23,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="uint.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../numeric.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../string.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="uint.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../numeric.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="real.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage">
@@ -34,7 +35,7 @@
<div></div>
</div>
<a name="spirit.qi.reference.numeric.int.description"></a><h6>
-<a name="id474174"></a>
+<a name="id475088"></a>
<a href="int.html#spirit.qi.reference.numeric.int.description">Description</a>
</h6>
<p>
@@ -45,8 +46,14 @@
or <tt class="computeroutput"><span class="char">'-'</span></tt> sign preceding the number.
The class interface is the same as that of the <tt class="computeroutput"><span class="identifier">uint_parser</span></tt>.
</p>
+<p>
+ The <tt class="computeroutput"><span class="identifier">int_parser</span></tt> parser
+ can be used to parse ordinary primitive C/C++ integers or even user defined
+ scalars such as bigints (unlimited precision integers) as long as the
+ type follows certain expression requirements (documented below).
+ </p>
<a name="spirit.qi.reference.numeric.int.header"></a><h6>
-<a name="id474264"></a>
+<a name="id475196"></a>
<a href="int.html#spirit.qi.reference.numeric.int.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/qi/numeric/int.hpp>
@@ -56,7 +63,7 @@
Also, see Include Structure.
</p>
<a name="spirit.qi.reference.numeric.int.namespace"></a><h6>
-<a name="id474378"></a>
+<a name="id475310"></a>
<a href="int.html#spirit.qi.reference.numeric.int.namespace">Namespace</a>
</h6>
<div class="informaltable"><table class="table">
@@ -97,7 +104,7 @@
</p></td></tr>
</table></div>
<a name="spirit.qi.reference.numeric.int.synopsis"></a><h6>
-<a name="id474688"></a>
+<a name="id475621"></a>
<a href="int.html#spirit.qi.reference.numeric.int.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span>
@@ -108,7 +115,7 @@
<span class="keyword">struct</span> <span class="identifier">int_parser</span><span class="special">;</span>
</pre>
<a name="spirit.qi.reference.numeric.int.template_parameters"></a><h6>
-<a name="id474822"></a>
+<a name="id475755"></a>
<a href="int.html#spirit.qi.reference.numeric.int.template_parameters">Template
parameters</a>
</h6>
@@ -178,7 +185,7 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.numeric.int.model_of"></a><h6>
-<a name="id475039"></a>
+<a name="id475972"></a>
<a href="int.html#spirit.qi.reference.numeric.int.model_of">Model of</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -198,10 +205,15 @@
An instance of <tt class="computeroutput"><span class="identifier">int_parser</span></tt>
(type).
</p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">n</span></tt></span></dt>
+<dd><p>
+ An object of <tt class="computeroutput"><span class="identifier">T</span></tt>, the
+ numeric base type.
+ </p></dd>
</dl>
</div>
<a name="spirit.qi.reference.numeric.int.expression_semantics"></a><h6>
-<a name="id475134"></a>
+<a name="id476101"></a>
<a href="int.html#spirit.qi.reference.numeric.int.expression_semantics">Expression
Semantics</a>
</h6>
@@ -270,7 +282,7 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.numeric.int.attributes"></a><h6>
-<a name="id475643"></a>
+<a name="id476611"></a>
<a href="int.html#spirit.qi.reference.numeric.int.attributes">Attributes</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -284,20 +296,137 @@
</p>
</blockquote></div>
<a name="spirit.qi.reference.numeric.int.complexity"></a><h6>
-<a name="id475691"></a>
+<a name="id476658"></a>
<a href="int.html#spirit.qi.reference.numeric.int.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
<p>
</p>
<p>
- O(N), where N is the number of digits being parsed.
+ O(N), where N is the number of digits being parsed plus the sign.
</p>
<p>
</p>
</blockquote></div>
+<a name="spirit.qi.reference.numeric.int.minimum_expression_requirements_for__code__phrase_role__identifier__t__phrase___code_"></a><h6>
+<a name="id476698"></a>
+ <a href="int.html#spirit.qi.reference.numeric.int.minimum_expression_requirements_for__code__phrase_role__identifier__t__phrase___code_">Minimum
+ Expression Requirements for <tt class="computeroutput"><span class="identifier">T</span></tt></a>
+ </h6>
+<p>
+ The numeric base type, <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ the expression requirements below must be valid:
+ </p>
+<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>
+ <tt class="computeroutput"><span class="identifier">T</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Default construct.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">T</span><span class="special">(</span><span class="number">0</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Construct from an <tt class="computeroutput"><span class="keyword">int</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">n</span> <span class="special">+</span>
+ <span class="identifier">n</span></tt>
+ </p></td>
+<td><p>
+ Addition.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">n</span> <span class="special">-</span>
+ <span class="identifier">n</span></tt>
+ </p></td>
+<td><p>
+ Subtraction.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">n</span> <span class="special">*</span>
+ <span class="identifier">n</span></tt>
+ </p></td>
+<td><p>
+ Multiplication.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">is_bounded</span></tt>
+ </p></td>
+<td><p>
+ <tt class="computeroutput"><span class="keyword">true</span></tt> or <tt class="computeroutput"><span class="keyword">false</span></tt> if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">digits</span></tt>
+ </p></td>
+<td><p>
+ Maximum Digits for <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ radix digits. Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">digits10</span></tt>
+ </p></td>
+<td><p>
+ Maximum Digits for <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ base 10. Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">max</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Maximum value for <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">min</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Minimum value for <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+</tbody>
+</table></div>
<a name="spirit.qi.reference.numeric.int.example"></a><h6>
-<a name="id475726"></a>
+<a name="id477441"></a>
<a href="int.html#spirit.qi.reference.numeric.int.example">Example</a>
</h6>
<p>
@@ -341,7 +470,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="uint.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../numeric.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../string.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="uint.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../numeric.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="real.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>
Added: trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/real.html
==============================================================================
--- (empty file)
+++ trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/real.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -0,0 +1,895 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Real Numbers (float_, double_,
+ etc.)</title>
+<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
+<link rel="home" href="../../../../index.html" title="Spirit 2.1">
+<link rel="up" href="../numeric.html" title="Numeric">
+<link rel="previous" href="int.html" title=" Signed Integers
+ (int_, etc.)">
+<link rel="next" href="../string.html" title="String">
+</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">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="int.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../numeric.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../string.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage">
+<div><div><h5 class="title">
+<a name="spirit.qi.reference.numeric.real"></a><a href="real.html" title=" Real Numbers (float_, double_,
+ etc.)"> Real Numbers (<tt class="computeroutput"><span class="identifier">float_</span></tt>, <tt class="computeroutput"><span class="identifier">double_</span></tt>,
+ etc.)</a>
+</h5></div></div>
+<div></div>
+</div>
+<a name="spirit.qi.reference.numeric.real.description"></a><h6>
+<a name="id477656"></a>
+ Description
+ </h6>
+<p>
+ The <tt class="computeroutput"><span class="identifier">real_parser</span></tt> can parse
+ real numbers of arbitrary length and size limited by its template parameter,
+ <tt class="computeroutput"><span class="identifier">T</span></tt>. The numeric base type
+ <tt class="computeroutput"><span class="identifier">T</span></tt> can be a user defined
+ numeric type such as fixed_point (fixed point reals) and bignum (unlimited
+ precision numbers) as long as the type follows certain expression requirements
+ (documented below).
+ </p>
+<a name="spirit.qi.reference.numeric.real.header"></a><h6>
+<a name="id477722"></a>
+ Header
+ </h6>
+<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/qi/numeric/real.hpp>
+</span><span class="preprocessor">#include</span> <span class="special"><</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">qi_real</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
+</pre>
+<p>
+ Also, see Include Structure.
+ </p>
+<a name="spirit.qi.reference.numeric.real.namespace"></a><h6>
+<a name="id477835"></a>
+ Namespace
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup><col></colgroup>
+<thead><tr><th><p>
+ Name
+ </p></th></tr></thead>
+<tbody>
+<tr><td><p>
+ <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">float_</span> <span class="comment">// alias:
+ boost::spirit::qi::float_</span></tt>
+ </p></td></tr>
+<tr><td><p>
+ <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">double_</span> <span class="comment">//
+ alias: boost::spirit::qi::double_</span></tt>
+ </p></td></tr>
+<tr><td><p>
+ <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">long_double</span> <span class="comment">//
+ alias: boost::spirit::qi::long_double</span></tt>
+ </p></td></tr>
+</tbody>
+</table></div>
+<a name="spirit.qi.reference.numeric.real.synopsis"></a><h6>
+<a name="id478037"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">RealPolicies</span><span class="special">></span>
+<span class="keyword">struct</span> <span class="identifier">real_parser</span><span class="special">;</span>
+</pre>
+<a name="spirit.qi.reference.numeric.real.template_parameters"></a><h6>
+<a name="id478131"></a>
+ <a href="real.html#spirit.qi.reference.numeric.real.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>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p></td>
+<td><p>
+ The numeric base type of the numeric parser.
+ </p></td>
+<td><p>
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RealPolicies</span></tt>
+ </p></td>
+<td><p>
+ Policies control the parser's behavior.
+ </p></td>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">real_policies</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span></tt>
+ </p></td>
+</tr>
+</tbody>
+</table></div>
+<a name="spirit.qi.reference.numeric.real.model_of"></a><h6>
+<a name="id478297"></a>
+ Model of
+ </h6>
+<div class="blockquote"><blockquote class="blockquote">
+<p>
+ </p>
+<p>
+ PrimitiveParser
+ </p>
+<p>
+ </p>
+</blockquote></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">NP</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">real_parser</span></tt>
+ (type).
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">RP</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">RealPolicies</span></tt> (type).
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">n</span></tt></span></dt>
+<dd><p>
+ An object of <tt class="computeroutput"><span class="identifier">T</span></tt>, the
+ numeric base type.
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">exp</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="keyword">int</span></tt> exponent.
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">b</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="keyword">bool</span></tt> flag.
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt>,
+ <tt class="computeroutput"><span class="identifier">l</span></tt></span></dt>
+<dd><p>
+ <tt class="computeroutput"><span class="identifier">ForwardIterator</span></tt>.
+ first/last iterator pair.
+ </p></dd>
+</dl>
+</div>
+<a name="spirit.qi.reference.numeric.real.expression_semantics"></a><h6>
+<a name="id478576"></a>
+ <a href="real.html#spirit.qi.reference.numeric.real.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<p>
+ Semantics of an expression is defined only where it differs from, or
+ is not defined in PrimitiveParser.
+ </p>
+<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>
+ <tt class="computeroutput"><span class="identifier">NP</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Instantiate and (default) construct an <tt class="computeroutput"><span class="identifier">real_parser</span></tt>
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">float_</span></tt>
+ </p></td>
+<td><p>
+ Create an <tt class="computeroutput"><span class="identifier">real_parser</span><span class="special"><</span><span class="keyword">float</span><span class="special">,</span> <span class="identifier">real_policies</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span> <span class="special">></span></tt>
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">double_</span></tt>
+ </p></td>
+<td><p>
+ Create an <tt class="computeroutput"><span class="identifier">real_parser</span><span class="special"><</span><span class="keyword">double</span><span class="special">,</span> <span class="identifier">real_policies</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span> <span class="special">></span></tt>
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">long_double</span></tt>
+ </p></td>
+<td><p>
+ Create an <tt class="computeroutput"><span class="identifier">real_parser</span><span class="special"><</span><span class="keyword">long</span>
+ <span class="keyword">double</span><span class="special">,</span>
+ <span class="identifier">real_policies</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span>
+ <span class="special">></span></tt>
+ </p></td>
+</tr>
+</tbody>
+</table></div>
+<a name="spirit.qi.reference.numeric.real.attributes"></a><h6>
+<a name="id478964"></a>
+ Attributes
+ </h6>
+<div class="blockquote"><blockquote class="blockquote">
+<p>
+ </p>
+<p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>, The numeric base
+ type of the numeric parser.
+ </p>
+<p>
+ </p>
+</blockquote></div>
+<a name="spirit.qi.reference.numeric.real.complexity"></a><h6>
+<a name="id479011"></a>
+ Complexity
+ </h6>
+<div class="blockquote"><blockquote class="blockquote">
+<p>
+ </p>
+<p>
+ O(N), where N is the number of characters (including the digits,
+ exponent, sign, etc.) being parsed.
+ </p>
+<p>
+ </p>
+</blockquote></div>
+<a name="spirit.qi.reference.numeric.real.minimum_expression_requirements_for__code__phrase_role__identifier__t__phrase___code_"></a><h6>
+<a name="id479052"></a>
+ <a href="real.html#spirit.qi.reference.numeric.real.minimum_expression_requirements_for__code__phrase_role__identifier__t__phrase___code_">Minimum
+ Expression Requirements for <tt class="computeroutput"><span class="identifier">T</span></tt></a>
+ </h6>
+<p>
+ The numeric base type, <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ the minimum expression requirements listed below must be valid. Take
+ note that additional requirements may be imposed by custom policies.
+ </p>
+<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>
+ <tt class="computeroutput"><span class="identifier">T</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Default construct.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">T</span><span class="special">(</span><span class="number">0</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Construct from an <tt class="computeroutput"><span class="keyword">int</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">n</span> <span class="special">+</span>
+ <span class="identifier">n</span></tt>
+ </p></td>
+<td><p>
+ Addition.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">n</span> <span class="special">-</span>
+ <span class="identifier">n</span></tt>
+ </p></td>
+<td><p>
+ Subtraction.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">n</span> <span class="special">*</span>
+ <span class="identifier">n</span></tt>
+ </p></td>
+<td><p>
+ Multiplication.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">is_bounded</span></tt>
+ </p></td>
+<td><p>
+ <tt class="computeroutput"><span class="keyword">true</span></tt> or <tt class="computeroutput"><span class="keyword">false</span></tt> if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">digits</span></tt>
+ </p></td>
+<td><p>
+ Maximum Digits for <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ radix digits. Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">digits10</span></tt>
+ </p></td>
+<td><p>
+ Maximum Digits for <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ base 10. Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">max</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Maximum value for <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">min</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Minimum value for <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt 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><span class="special">::</span><span class="identifier">scale</span><span class="special">(</span><span class="identifier">exp</span><span class="special">,</span>
+ <span class="identifier">n</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Multiply <tt class="computeroutput"><span class="identifier">n</span></tt> by
+ <tt class="computeroutput"><span class="number">10</span><span class="special">^</span><span class="identifier">exp</span></tt>. Default implementation
+ is provided for <tt class="computeroutput"><span class="keyword">float</span></tt>,
+ <tt class="computeroutput"><span class="keyword">double</span></tt> and <tt class="computeroutput"><span class="keyword">long</span> <span class="keyword">double</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt 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><span class="special">::</span><span class="identifier">negate</span><span class="special">(</span><span class="identifier">b</span><span class="special">,</span>
+ <span class="identifier">n</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Negate <tt class="computeroutput"><span class="identifier">n</span></tt> if
+ <tt class="computeroutput"><span class="identifier">b</span></tt> is <tt class="computeroutput"><span class="keyword">true</span></tt>. Default implementation is
+ provided for <tt class="computeroutput"><span class="keyword">float</span></tt>,
+ <tt class="computeroutput"><span class="keyword">double</span></tt> and <tt class="computeroutput"><span class="keyword">long</span> <span class="keyword">double</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt 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><span class="special">::</span><span class="identifier">is_equal_to_one</span><span class="special">(</span><span class="identifier">n</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Return <tt class="computeroutput"><span class="keyword">true</span></tt> if
+ <tt class="computeroutput"><span class="identifier">n</span></tt> is equal to
+ <tt class="computeroutput"><span class="number">1.0</span></tt>. Default implementation
+ is provided for <tt class="computeroutput"><span class="keyword">float</span></tt>,
+ <tt class="computeroutput"><span class="keyword">double</span></tt> and <tt class="computeroutput"><span class="keyword">long</span> <span class="keyword">double</span></tt>.
+ </p></td>
+</tr>
+</tbody>
+</table></div>
+<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 colspan="2" align="left" valign="top"><p>
+ The additional spirit real number traits above are provided to allow
+ custom implementations to implement efficient real number parsers.
+ For example, for certain custom real numbers, scaling to a base 10
+ exponent is a very cheap operation.
+ </p></td></tr>
+</table></div>
+<a name="spirit.qi.reference.numeric.real._code__phrase_role__identifier__realpolicies__phrase___code_"></a><h6>
+<a name="id480284"></a>
+ RealPolicies
+ </h6>
+<p>
+ The <tt class="computeroutput"><span class="identifier">RealPolicies</span></tt> template
+ parameter is a class that groups all the policies that control the parser's
+ behavior. It defaults to <tt class="computeroutput"><span class="identifier">real_policies</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span></tt>. Policies control the real number
+ parsers' behavior.
+ </p>
+<p>
+ The default policies provided are designed to parse C/C++ style real
+ numbers of the form <tt class="computeroutput"><span class="identifier">nnn</span><span class="special">.</span><span class="identifier">fff</span><span class="special">.</span><span class="identifier">Eeee</span></tt>
+ where <tt class="computeroutput"><span class="identifier">nnn</span></tt> is the whole
+ number part, <tt class="computeroutput"><span class="identifier">fff</span></tt> is the
+ fractional part, <tt class="computeroutput"><span class="identifier">E</span></tt> is
+ <tt class="computeroutput"><span class="char">'e'</span></tt> or <tt class="computeroutput"><span class="char">'E'</span></tt>
+ and <tt class="computeroutput"><span class="identifier">eee</span></tt> is the exponent
+ optionally preceded by <tt class="computeroutput"><span class="char">'-'</span></tt>
+ or <tt class="computeroutput"><span class="char">'+'</span></tt> with the additional
+ detection of NaN and Inf. This corresponds to the following (pseudo)
+ grammar:
+ </p>
+<pre class="programlisting"><span class="identifier">realliteral</span>
+ <span class="special">=</span> <span class="special">-(</span><span class="identifier">lit</span><span class="special">(</span><span class="char">'+'</span><span class="special">)</span> <span class="special">|</span> <span class="char">'-'</span><span class="special">)</span> <span class="special">>></span>
+ <span class="special">(</span>
+ <span class="special">-</span><span class="identifier">lit</span><span class="special">(</span><span class="string">"1.0#"</span><span class="special">)</span> <span class="special">>></span> <span class="special">(</span><span class="identifier">lit</span><span class="special">(</span><span class="string">"NAN"</span><span class="special">)</span> <span class="special">|</span> <span class="string">"nan"</span><span class="special">)</span>
+ <span class="special">|</span> <span class="identifier">lexeme</span><span class="special">[</span><span class="identifier">lit</span><span class="special">(</span><span class="string">"INF"</span><span class="special">)</span> <span class="special">>></span> <span class="special">-</span><span class="identifier">lit</span><span class="special">(</span><span class="string">"INITY"</span><span class="special">)]</span>
+ <span class="special">|</span> <span class="identifier">lexeme</span><span class="special">[</span><span class="identifier">lit</span><span class="special">(</span><span class="string">"inf"</span><span class="special">)</span> <span class="special">>></span> <span class="special">-</span><span class="identifier">lit</span><span class="special">(</span><span class="string">"inity"</span><span class="special">)]</span>
+ <span class="special">|</span> <span class="identifier">fractionalconstant</span> <span class="special">>></span> <span class="special">!</span><span class="identifier">exponentpart</span>
+ <span class="special">|</span> <span class="special">+</span><span class="identifier">digit</span> <span class="special">>></span> <span class="identifier">exponentpart</span>
+ <span class="special">)</span>
+ <span class="special">;</span>
+
+<span class="identifier">fractionalconstant</span>
+ <span class="special">=</span> <span class="special">*</span><span class="identifier">digit</span> <span class="special">>></span> <span class="char">'.'</span> <span class="special">>></span> <span class="special">+</span><span class="identifier">digit</span>
+ <span class="special">|</span> <span class="special">+</span><span class="identifier">digit</span> <span class="special">>></span> <span class="special">-</span><span class="identifier">lit</span><span class="special">(</span><span class="char">'.'</span><span class="special">)</span>
+ <span class="special">;</span>
+
+<span class="identifier">exponentpart</span>
+ <span class="special">=</span> <span class="special">(</span><span class="identifier">lit</span><span class="special">(</span><span class="char">'e'</span><span class="special">)</span> <span class="special">|</span> <span class="char">'E'</span><span class="special">)</span> <span class="special">>></span> <span class="special">-(</span><span class="identifier">lit</span><span class="special">(</span><span class="char">'+'</span><span class="special">)</span> <span class="special">|</span> <span class="char">'-'</span><span class="special">)</span> <span class="special">>></span> <span class="special">+</span><span class="identifier">digit</span>
+ <span class="special">;</span>
+</pre>
+<p>
+ The default policies are provided to take care of the most common case
+ (there are many ways to represent, and hence parse, real numbers). In
+ most cases, the default setting of the real_parser is sufficient and
+ can be used straight out of the box.
+ </p>
+<p>
+ The default policies implementation recognizes representations of NaN
+ and Inf as mandated by the C99 Standard and as proposed for inclusion
+ into the C++0x Standard: nan, nan(...), inf and infinity (the matching
+ is performed case-insensitively).
+ </p>
+<p>
+ There are four <tt class="computeroutput"><span class="identifier">RealPolicies</span></tt>
+ pre-defined for immediate use:
+ </p>
+<div class="table">
+<a name="id481117"></a><p class="title"><b>Table 5. Predefined Policies</b></p>
+<table class="table" summary="Predefined Policies">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th><p>
+ Policy
+ </p></th>
+<th><p>
+ Description
+ </p></th>
+</tr></thead>
+<tbody>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">ureal_policies</span><span class="special"><</span><span class="keyword">double</span><span class="special">></span> <span class="special">></span></tt>
+ </p></td>
+<td><p>
+ Without sign.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">real_policies</span><span class="special"><</span><span class="keyword">double</span><span class="special">></span>
+ <span class="special">></span></tt>
+ </p></td>
+<td><p>
+ With sign.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">strict_ureal_policies</span><span class="special"><</span><span class="keyword">double</span><span class="special">></span> <span class="special">></span></tt>
+ </p></td>
+<td><p>
+ Without sign, dot required.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">strict_real_policies</span><span class="special"><</span><span class="keyword">double</span><span class="special">></span> <span class="special">></span></tt>
+ </p></td>
+<td><p>
+ With sign, dot required.
+ </p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<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 colspan="2" align="left" valign="top"><p>
+ Integers are considered a subset of real numbers, so for instance,
+ <tt class="computeroutput"><span class="identifier">double_</span></tt> recognizes
+ integer numbers (without a dot) just as well. To avoid this ambiguity,
+ <tt class="computeroutput"><span class="identifier">strict_ureal_policies</span></tt>
+ and <tt class="computeroutput"><span class="identifier">strict_real_policies</span></tt>
+ require a dot to be present for a number to be considered a successful
+ match.
+ </p></td></tr>
+</table></div>
+<a name="spirit.qi.reference.numeric.real._code__phrase_role__identifier__realpolicies__phrase___code__expression_requirements"></a><h6>
+<a name="id481423"></a>
+ RealPolicies Expression Requirements
+ </h6>
+<p>
+ For models of <tt class="computeroutput"><span class="identifier">RealPolicies</span></tt>
+ the following expressions must be valid:
+ </p>
+<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>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">allow_leading_dot</span></tt>
+ </p></td>
+<td><p>
+ Allow leading dot.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">allow_trailing_dot</span></tt>
+ </p></td>
+<td><p>
+ Allow trailing dot.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">expect_dot</span></tt>
+ </p></td>
+<td><p>
+ Require a dot.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">parse_sign</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>
+ <span class="identifier">l</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Parse the prefix sign (e.g. '-'). Return <tt class="computeroutput"><span class="keyword">true</span></tt>
+ if successful, otherwise <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">parse_n</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>
+ <span class="identifier">l</span><span class="special">,</span>
+ <span class="identifier">n</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Parse the integer at the left of the decimal point. Return <tt class="computeroutput"><span class="keyword">true</span></tt> if successful, otherwise
+ <tt class="computeroutput"><span class="keyword">false</span></tt>. If successful,
+ place the result into <tt class="computeroutput"><span class="identifier">n</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">parse_dot</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>
+ <span class="identifier">l</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Parse the decimal point. Return <tt class="computeroutput"><span class="keyword">true</span></tt>
+ if successful, otherwise <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">parse_frac_n</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>
+ <span class="identifier">l</span><span class="special">,</span>
+ <span class="identifier">n</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Parse the fraction after the decimal point. Return <tt class="computeroutput"><span class="keyword">true</span></tt> if successful, otherwise
+ <tt class="computeroutput"><span class="keyword">false</span></tt>. If successful,
+ place the result into <tt class="computeroutput"><span class="identifier">n</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">parse_exp</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>
+ <span class="identifier">l</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Parse the exponent prefix (e.g. 'e'). Return <tt class="computeroutput"><span class="keyword">true</span></tt>
+ if successful, otherwise <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">parse_exp_n</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>
+ <span class="identifier">l</span><span class="special">,</span>
+ <span class="identifier">n</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Parse the actual exponent. Return <tt class="computeroutput"><span class="keyword">true</span></tt>
+ if successful, otherwise <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ If successful, place the result into <tt class="computeroutput"><span class="identifier">n</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">parse_nan</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>
+ <span class="identifier">l</span><span class="special">,</span>
+ <span class="identifier">n</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Parse a NaN. Return <tt class="computeroutput"><span class="keyword">true</span></tt>
+ if successful, otherwise <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ If successful, place the result into <tt class="computeroutput"><span class="identifier">n</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">RP</span><span class="special">::</span><span class="identifier">parse_inf</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>
+ <span class="identifier">l</span><span class="special">,</span>
+ <span class="identifier">n</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Parse an Inf. Return <tt class="computeroutput"><span class="keyword">true</span></tt>
+ if successful, otherwise <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ If successful, place the result into <tt class="computeroutput"><span class="identifier">n</span></tt>.
+ </p></td>
+</tr>
+</tbody>
+</table></div>
+<p>
+ The <tt class="computeroutput"><span class="identifier">parse_nan</span></tt> and <tt class="computeroutput"><span class="identifier">parse_inf</span></tt> functions get called whenever:
+ </p>
+<div class="blockquote"><blockquote class="blockquote">
+<p>
+ </p>
+<p>
+ a number to parse does not start with a digit (after having successfully
+ parsed an optional sign)
+ </p>
+<p>
+ </p>
+</blockquote></div>
+<p>
+ or
+ </p>
+<div class="blockquote"><blockquote class="blockquote">
+<p>
+ </p>
+<p>
+ after a real number of the value 1 (having no exponential part and
+ a fractional part value of 0) has been parsed.
+ </p>
+<p>
+ </p>
+</blockquote></div>
+<p>
+ The first call recognizes representations of NaN or Inf starting with
+ a non-digit character (such as NaN, Inf, QNaN etc.). The second call
+ allows to recognize representation formats starting with a <tt class="computeroutput"><span class="number">1.0</span></tt> (such as <tt class="computeroutput"><span class="number">1.0</span><span class="preprocessor">#QNAN</span></tt> or <tt class="computeroutput"><span class="number">1.0</span><span class="preprocessor">#INF</span></tt> etc.).
+ </p>
+<p>
+ The functions should return true if a Nan or Inf has been found. In this
+ case the attribute <tt class="computeroutput"><span class="identifier">n</span></tt>
+ should be set to the matched value (NaN or Inf). The optional sign will
+ be automatically applied afterwards.
+ </p>
+<a name="spirit.qi.reference.numeric.real._code__phrase_role__identifier__realpolicies__phrase___code__specializations"></a><h6>
+<a name="id482594"></a>
+ RealPolicies Specializations
+ </h6>
+<p>
+ The easiest way to implement a proper real parsing policy is to derive
+ a new type from the the type <tt class="computeroutput"><span class="identifier">real_policies</span></tt>
+ while overriding the aspects of the parsing which need to be changed.
+ For example, here's the implementation of thye redefined <tt class="computeroutput"><span class="identifier">strict_real_policies</span></tt>:
+ </p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">></span>
+<span class="keyword">struct</span> <span class="identifier">strict_real_policies</span> <span class="special">:</span> <span class="identifier">real_policies</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span>
+<span class="special">{</span>
+ <span class="keyword">static</span> <span class="keyword">bool</span> <span class="keyword">const</span> <span class="identifier">expect_dot</span> <span class="special">=</span> <span class="keyword">true</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<a name="spirit.qi.reference.numeric.real.example"></a><h6>
+<a name="id482793"></a>
+ Example
+ </h6>
+<p>
+ Some using declarations:
+ </p>
+<p>
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">qi</span><span class="special">::</span><span class="identifier">double_</span><span class="special">;</span>
+<span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">qi</span><span class="special">::</span><span class="identifier">real_parser</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ Basic real number parsing:
+ </p>
+<p>
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="identifier">test_parser</span><span class="special">(</span><span class="string">"+12345e6"</span><span class="special">,</span> <span class="identifier">double_</span><span class="special">);</span>
+</pre>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ A custom real number policy:
+ </p>
+<p>
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="comment">///////////////////////////////////////////////////////////////////////////////
+</span><span class="comment">// These policies can be used to parse thousand separated
+</span><span class="comment">// numbers with at most 2 decimal digits after the decimal
+</span><span class="comment">// point. e.g. 123,456,789.01
+</span><span class="comment">///////////////////////////////////////////////////////////////////////////////
+</span><span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">></span>
+<span class="keyword">struct</span> <span class="identifier">ts_real_policies</span> <span class="special">:</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">qi</span><span class="special">::</span><span class="identifier">ureal_policies</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span>
+<span class="special">{</span>
+ <span class="comment">// 2 decimal places Max
+</span> <span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Attribute</span><span class="special">></span>
+ <span class="keyword">static</span> <span class="keyword">bool</span>
+ <span class="identifier">parse_frac_n</span><span class="special">(</span><span class="identifier">Iterator</span><span class="special">&</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">Iterator</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">Attribute</span><span class="special">&</span> <span class="identifier">attr</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">qi</span><span class="special">::</span>
+ <span class="identifier">extract_uint</span><span class="special"><</span><span class="identifier">T</span><span class="special">,</span> <span class="number">10</span><span class="special">,</span> <span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="keyword">true</span><span class="special">>::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">attr</span><span class="special">);</span>
+ <span class="special">}</span>
+
+ <span class="comment">// No exponent
+</span> <span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">></span>
+ <span class="keyword">static</span> <span class="keyword">bool</span>
+ <span class="identifier">parse_exp</span><span class="special">(</span><span class="identifier">Iterator</span><span class="special">&,</span> <span class="identifier">Iterator</span> <span class="keyword">const</span><span class="special">&)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="keyword">false</span><span class="special">;</span>
+ <span class="special">}</span>
+
+ <span class="comment">// No exponent
+</span> <span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Attribute</span><span class="special">></span>
+ <span class="keyword">static</span> <span class="keyword">bool</span>
+ <span class="identifier">parse_exp_n</span><span class="special">(</span><span class="identifier">Iterator</span><span class="special">&,</span> <span class="identifier">Iterator</span> <span class="keyword">const</span><span class="special">&,</span> <span class="identifier">Attribute</span><span class="special">&)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="keyword">false</span><span class="special">;</span>
+ <span class="special">}</span>
+
+ <span class="comment">// Thousands separated numbers
+</span> <span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Attribute</span><span class="special">></span>
+ <span class="keyword">static</span> <span class="keyword">bool</span>
+ <span class="identifier">parse_n</span><span class="special">(</span><span class="identifier">Iterator</span><span class="special">&</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">Iterator</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">Attribute</span><span class="special">&</span> <span class="identifier">attr</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">qi</span><span class="special">::</span><span class="identifier">uint_parser</span><span class="special">;</span>
+ <span class="keyword">namespace</span> <span class="identifier">qi</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">qi</span><span class="special">;</span>
+
+ <span class="identifier">uint_parser</span><span class="special"><</span><span class="keyword">unsigned</span><span class="special">,</span> <span class="number">10</span><span class="special">,</span> <span class="number">1</span><span class="special">,</span> <span class="number">3</span><span class="special">></span> <span class="identifier">uint3</span><span class="special">;</span>
+ <span class="identifier">uint_parser</span><span class="special"><</span><span class="keyword">unsigned</span><span class="special">,</span> <span class="number">10</span><span class="special">,</span> <span class="number">3</span><span class="special">,</span> <span class="number">3</span><span class="special">></span> <span class="identifier">uint3_3</span><span class="special">;</span>
+
+ <span class="identifier">T</span> <span class="identifier">result</span> <span class="special">=</span> <span class="number">0</span><span class="special">;</span>
+ <span class="keyword">if</span> <span class="special">(</span><span class="identifier">parse</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">uint3</span><span class="special">,</span> <span class="identifier">result</span><span class="special">))</span>
+ <span class="special">{</span>
+ <span class="keyword">bool</span> <span class="identifier">hit</span> <span class="special">=</span> <span class="keyword">false</span><span class="special">;</span>
+ <span class="identifier">T</span> <span class="identifier">n</span><span class="special">;</span>
+ <span class="identifier">Iterator</span> <span class="identifier">save</span> <span class="special">=</span> <span class="identifier">first</span><span class="special">;</span>
+
+ <span class="keyword">while</span> <span class="special">(</span><span class="identifier">qi</span><span class="special">::</span><span class="identifier">parse</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="char">','</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">qi</span><span class="special">::</span><span class="identifier">parse</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">uint3_3</span><span class="special">,</span> <span class="identifier">n</span><span class="special">))</span>
+ <span class="special">{</span>
+ <span class="identifier">result</span> <span class="special">=</span> <span class="identifier">result</span> <span class="special">*</span> <span class="number">1000</span> <span class="special">+</span> <span class="identifier">n</span><span class="special">;</span>
+ <span class="identifier">save</span> <span class="special">=</span> <span class="identifier">first</span><span class="special">;</span>
+ <span class="identifier">hit</span> <span class="special">=</span> <span class="keyword">true</span><span class="special">;</span>
+ <span class="special">}</span>
+
+ <span class="identifier">first</span> <span class="special">=</span> <span class="identifier">save</span><span class="special">;</span>
+ <span class="keyword">if</span> <span class="special">(</span><span class="identifier">hit</span><span class="special">)</span>
+ <span class="identifier">attr</span> <span class="special">=</span> <span class="identifier">result</span><span class="special">;</span>
+ <span class="keyword">return</span> <span class="identifier">hit</span><span class="special">;</span>
+ <span class="special">}</span>
+ <span class="keyword">return</span> <span class="keyword">false</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+</pre>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ And its use:
+ </p>
+<p>
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="identifier">real_parser</span><span class="special"><</span><span class="keyword">double</span><span class="special">,</span> <span class="identifier">ts_real_policies</span><span class="special"><</span><span class="keyword">double</span><span class="special">></span> <span class="special">></span> <span class="identifier">ts_real</span><span class="special">;</span>
+<span class="identifier">test_parser</span><span class="special">(</span><span class="string">"123,456,789.01"</span><span class="special">,</span> <span class="identifier">ts_real</span><span class="special">);</span>
+</pre>
+<p>
+ </p>
+<p>
+ </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 © 2001-2009 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 http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="int.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../numeric.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../string.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>
Modified: trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/uint.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/uint.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi/reference/numeric/uint.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -34,7 +34,7 @@
<div></div>
</div>
<a name="spirit.qi.reference.numeric.uint.description"></a><h6>
-<a name="id471740"></a>
+<a name="id471911"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.description">Description</a>
</h6>
<p>
@@ -42,12 +42,13 @@
is the simplest among the members of the numerics package. The <tt class="computeroutput"><span class="identifier">uint_parser</span></tt> can parse unsigned integers
of arbitrary length and size. The <tt class="computeroutput"><span class="identifier">uint_parser</span></tt>
parser can be used to parse ordinary primitive C/C++ integers or even
- user defined scalars such as bigints (unlimited precision integers).
- The <tt class="computeroutput"><span class="identifier">uint_parser</span></tt> is a
- template class. Template parameters fine tune its behavior.
+ user defined scalars such as bigints (unlimited precision integers) as
+ long as the type follows certain expression requirements (documented
+ below). The <tt class="computeroutput"><span class="identifier">uint_parser</span></tt>
+ is a template class. Template parameters fine tune its behavior.
</p>
<a name="spirit.qi.reference.numeric.uint.header"></a><h6>
-<a name="id471820"></a>
+<a name="id471993"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/qi/numeric/uint.hpp>
@@ -57,7 +58,7 @@
Also, see Include Structure.
</p>
<a name="spirit.qi.reference.numeric.uint.namespace"></a><h6>
-<a name="id471934"></a>
+<a name="id472106"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.namespace">Namespace</a>
</h6>
<div class="informaltable"><table class="table">
@@ -110,7 +111,7 @@
</p></td></tr>
</table></div>
<a name="spirit.qi.reference.numeric.uint.synopsis"></a><h6>
-<a name="id472390"></a>
+<a name="id472563"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span>
@@ -121,7 +122,7 @@
<span class="keyword">struct</span> <span class="identifier">uint_parser</span><span class="special">;</span>
</pre>
<a name="spirit.qi.reference.numeric.uint.template_parameters"></a><h6>
-<a name="id472524"></a>
+<a name="id472697"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.template_parameters">Template
parameters</a>
</h6>
@@ -191,7 +192,7 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.numeric.uint.model_of"></a><h6>
-<a name="id472741"></a>
+<a name="id472914"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.model_of">Model of</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -211,10 +212,15 @@
An instance of <tt class="computeroutput"><span class="identifier">uint_parser</span></tt>
(type).
</p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">n</span></tt></span></dt>
+<dd><p>
+ An object of <tt class="computeroutput"><span class="identifier">T</span></tt>, the
+ numeric base type.
+ </p></dd>
</dl>
</div>
<a name="spirit.qi.reference.numeric.uint.expression_semantics"></a><h6>
-<a name="id472836"></a>
+<a name="id473044"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.expression_semantics">Expression
Semantics</a>
</h6>
@@ -316,7 +322,7 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.numeric.uint.attributes"></a><h6>
-<a name="id473650"></a>
+<a name="id473858"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.attributes">Attributes</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -330,7 +336,7 @@
</p>
</blockquote></div>
<a name="spirit.qi.reference.numeric.uint.complexity"></a><h6>
-<a name="id473697"></a>
+<a name="id473905"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -342,8 +348,116 @@
<p>
</p>
</blockquote></div>
+<a name="spirit.qi.reference.numeric.uint.minimum_expression_requirements_for__code__phrase_role__identifier__t__phrase___code_"></a><h6>
+<a name="id473944"></a>
+ <a href="uint.html#spirit.qi.reference.numeric.uint.minimum_expression_requirements_for__code__phrase_role__identifier__t__phrase___code_">Minimum
+ Expression Requirements for <tt class="computeroutput"><span class="identifier">T</span></tt></a>
+ </h6>
+<p>
+ The numeric base type, <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ the expression requirements below must be valid:
+ </p>
+<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>
+ <tt class="computeroutput"><span class="identifier">T</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Default construct.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">T</span><span class="special">(</span><span class="number">0</span><span class="special">)</span></tt>
+ </p></td>
+<td><p>
+ Construct from an <tt class="computeroutput"><span class="keyword">int</span></tt>.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">n</span> <span class="special">+</span>
+ <span class="identifier">n</span></tt>
+ </p></td>
+<td><p>
+ Addition.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">n</span> <span class="special">*</span>
+ <span class="identifier">n</span></tt>
+ </p></td>
+<td><p>
+ Multiplication.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">is_bounded</span></tt>
+ </p></td>
+<td><p>
+ <tt class="computeroutput"><span class="keyword">true</span></tt> or <tt class="computeroutput"><span class="keyword">false</span></tt> if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">digits</span></tt>
+ </p></td>
+<td><p>
+ Maximum Digits for <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ radix digits. Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">digits10</span></tt>
+ </p></td>
+<td><p>
+ Maximum Digits for <tt class="computeroutput"><span class="identifier">T</span></tt>,
+ base 10. Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">max</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Maximum value for <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+<tr>
+<td><p>
+ <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">min</span><span class="special">()</span></tt>
+ </p></td>
+<td><p>
+ Minimum value for <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ Required only if <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is bounded.
+ </p></td>
+</tr>
+</tbody>
+</table></div>
<a name="spirit.qi.reference.numeric.uint.example"></a><h6>
-<a name="id473733"></a>
+<a name="id474647"></a>
<a href="uint.html#spirit.qi.reference.numeric.uint.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/qi/reference/string.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi/reference/string.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi/reference/string.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -6,8 +6,8 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Spirit 2.1">
<link rel="up" href="../reference.html" title="Reference">
-<link rel="previous" href="numeric/int.html" title=" Signed Integers
- (int_, etc.)">
+<link rel="previous" href="numeric/real.html" title=" Real Numbers (float_, double_,
+ etc.)">
<link rel="next" href="string/string.html" title=" String (string, lit)">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -21,7 +21,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="numeric/int.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="string/string.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="numeric/real.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="string/string.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage">
@@ -39,7 +39,7 @@
the literal and string parsers and the symbol table.
</p>
<a name="spirit.qi.reference.string.module_header"></a><h5>
-<a name="id475925"></a>
+<a name="id484770"></a>
<a href="string.html#spirit.qi.reference.string.module_header">Module Header</a>
</h5>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/qi/string.hpp>
@@ -60,7 +60,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="numeric/int.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="string/string.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="numeric/real.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="string/string.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>
Modified: trunk/libs/spirit/doc/html/spirit/qi/reference/string/string.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi/reference/string/string.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi/reference/string/string.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,7 +30,7 @@
<div></div>
</div>
<a name="spirit.qi.reference.string.string.description"></a><h6>
-<a name="id476078"></a>
+<a name="id484924"></a>
<a href="string.html#spirit.qi.reference.string.string.description">Description</a>
</h6>
<p>
@@ -57,14 +57,14 @@
<span class="identifier">lit</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span> <span class="comment">// s is a std::string
</span></pre>
<a name="spirit.qi.reference.string.string.header"></a><h6>
-<a name="id476419"></a>
+<a name="id485266"></a>
<a href="string.html#spirit.qi.reference.string.string.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/qi/string/lit.hpp>
</span><span class="preprocessor">#include</span> <span class="special"><</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">qi_lit</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
</pre>
<a name="spirit.qi.reference.string.string.namespace"></a><h6>
-<a name="id476519"></a>
+<a name="id485367"></a>
<a href="string.html#spirit.qi.reference.string.string.namespace">Namespace</a>
</h6>
<div class="informaltable"><table class="table">
@@ -88,7 +88,7 @@
Encoding Namespace</a>.
</p>
<a name="spirit.qi.reference.string.string.model_of"></a><h6>
-<a name="id476679"></a>
+<a name="id485527"></a>
<a href="string.html#spirit.qi.reference.string.string.model_of">Model of</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -117,7 +117,7 @@
</dl>
</div>
<a name="spirit.qi.reference.string.string.expression_semantics"></a><h6>
-<a name="id476823"></a>
+<a name="id485670"></a>
<a href="string.html#spirit.qi.reference.string.string.expression_semantics">Expression
Semantics</a>
</h6>
@@ -167,7 +167,7 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.string.string.attributes"></a><h6>
-<a name="id477082"></a>
+<a name="id485930"></a>
<a href="string.html#spirit.qi.reference.string.string.attributes">Attributes</a>
</h6>
<div class="informaltable"><table class="table">
@@ -213,7 +213,7 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.string.string.complexity"></a><h6>
-<a name="id477350"></a>
+<a name="id486198"></a>
<a href="string.html#spirit.qi.reference.string.string.complexity">Complexity</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -230,7 +230,7 @@
of characters in the string to be parsed.
</p>
<a name="spirit.qi.reference.string.string.example"></a><h6>
-<a name="id477402"></a>
+<a name="id486250"></a>
<a href="string.html#spirit.qi.reference.string.string.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/qi/reference/string/symbols.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi/reference/string/symbols.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi/reference/string/symbols.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -30,7 +30,7 @@
<div></div>
</div>
<a name="spirit.qi.reference.string.symbols.description"></a><h6>
-<a name="id478231"></a>
+<a name="id487077"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.description">Description</a>
</h6>
<p>
@@ -50,7 +50,7 @@
its behavior.
</p>
<a name="spirit.qi.reference.string.symbols.header"></a><h6>
-<a name="id478310"></a>
+<a name="id487145"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.header">Header</a>
</h6>
<pre class="programlisting"><span class="comment">// forwards to <boost/spirit/home/qi/string/symbols.hpp>
@@ -60,7 +60,7 @@
Also, see Include Structure.
</p>
<a name="spirit.qi.reference.string.symbols.namespace"></a><h6>
-<a name="id478424"></a>
+<a name="id487259"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.namespace">Namespace</a>
</h6>
<div class="informaltable"><table class="table">
@@ -81,14 +81,14 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.string.symbols.synopsis"></a><h6>
-<a name="id478633"></a>
+<a name="id487469"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Char</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Lookup</span><span class="special">></span>
<span class="keyword">struct</span> <span class="identifier">symbols</span><span class="special">;</span>
</pre>
<a name="spirit.qi.reference.string.symbols.template_parameters"></a><h6>
-<a name="id478746"></a>
+<a name="id487581"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.template_parameters">Template
parameters</a>
</h6>
@@ -147,7 +147,7 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.string.symbols.model_of"></a><h6>
-<a name="id478983"></a>
+<a name="id487818"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.model_of">Model of</a>
</h6>
<div class="blockquote"><blockquote class="blockquote">
@@ -205,7 +205,7 @@
</dl>
</div>
<a name="spirit.qi.reference.string.symbols.expression_semantics"></a><h6>
-<a name="id479368"></a>
+<a name="id488203"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.expression_semantics">Expression
Semantics</a>
</h6>
@@ -384,14 +384,14 @@
</tbody>
</table></div>
<a name="spirit.qi.reference.string.symbols.attributes"></a><h6>
-<a name="id480904"></a>
+<a name="id489740"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.attributes">Attributes</a>
</h6>
<p>
The attribute of <tt class="computeroutput"><span class="identifier">symbol</span><span class="special"><</span><span class="identifier">Char</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span></tt> is <tt class="computeroutput"><span class="identifier">T</span></tt>.
</p>
<a name="spirit.qi.reference.string.symbols.complexity"></a><h6>
-<a name="id480982"></a>
+<a name="id489818"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.complexity">Complexity</a>
</h6>
<p>
@@ -441,7 +441,7 @@
<pre class="programlisting"><span class="identifier">symbols</span><span class="special"><</span><span class="identifier">Char</span><span class="special">,</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">tst_map</span><span class="special"><</span><span class="identifier">Char</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">></span> <span class="identifier">sym</span><span class="special">;</span>
</pre>
<a name="spirit.qi.reference.string.symbols.example"></a><h6>
-<a name="id481192"></a>
+<a name="id490028"></a>
<a href="symbols.html#spirit.qi.reference.string.symbols.example">Example</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/support/multi_pass.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/support/multi_pass.html (original)
+++ trunk/libs/spirit/doc/html/spirit/support/multi_pass.html 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -64,7 +64,7 @@
iterator was created.
</p>
<a name="spirit.support.multi_pass.using_the_multi_pass"></a><h4>
-<a name="id644002"></a>
+<a name="id652918"></a>
<a href="multi_pass.html#spirit.support.multi_pass.using_the_multi_pass">Using the
multi_pass</a>
</h4>
@@ -212,7 +212,7 @@
<p>
</p>
<a name="spirit.support.multi_pass.using_the_flush_multi_pass_parser"></a><h4>
-<a name="id645789"></a>
+<a name="id654704"></a>
<a href="multi_pass.html#spirit.support.multi_pass.using_the_flush_multi_pass_parser">Using
the flush_multi_pass parser</a>
</h4>
@@ -234,7 +234,7 @@
thrown.
</p>
<a name="spirit.support.multi_pass.the_multi_pass_policies"></a><h4>
-<a name="id645944"></a>
+<a name="id654859"></a>
<a href="multi_pass.html#spirit.support.multi_pass.the_multi_pass_policies">The multi_pass
Policies</a>
</h4>
@@ -275,7 +275,7 @@
the functionality groups:
</p>
<div class="table">
-<a name="id646108"></a><p class="title"><b>Table 13. Policies needed for default_policy template</b></p>
+<a name="id655028"></a><p class="title"><b>Table 14. Policies needed for default_policy template</b></p>
<table class="table" summary="Policies needed for default_policy template">
<colgroup>
<col>
@@ -337,7 +337,7 @@
we will give some guidelines how you can write your own policy implementations.
</p>
<a name="spirit.support.multi_pass.predefined_policies"></a><h4>
-<a name="id646372"></a>
+<a name="id655293"></a>
<a href="multi_pass.html#spirit.support.multi_pass.predefined_policies">Predefined
policies</a>
</h4>
@@ -346,7 +346,7 @@
policies are defined in the namespace <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">iterator_policies</span></tt>.
</p>
<div class="table">
-<a name="id646436"></a><p class="title"><b>Table 14. Predefined policy classes</b></p>
+<a name="id655357"></a><p class="title"><b>Table 15. Predefined policy classes</b></p>
<table class="table" summary="Predefined policy classes">
<colgroup>
<col>
@@ -527,7 +527,7 @@
</table>
</div>
<a name="spirit.support.multi_pass.combinations__how_to_specify_your_own_custom_multi_pass"></a><h4>
-<a name="id647384"></a>
+<a name="id656305"></a>
<a href="multi_pass.html#spirit.support.multi_pass.combinations__how_to_specify_your_own_custom_multi_pass">Combinations:
How to specify your own custom multi_pass</a>
</h4>
@@ -573,7 +573,7 @@
behaviors while wrapping an <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">istream_iterator</span><span class="special"><</span><span class="keyword">char</span><span class="special">></span></tt>.
</p>
<a name="spirit.support.multi_pass.dealing_with_constant_look_ahead"></a><h4>
-<a name="id648002"></a>
+<a name="id656923"></a>
<a href="multi_pass.html#spirit.support.multi_pass.dealing_with_constant_look_ahead">Dealing
with constant look ahead</a>
</h4>
@@ -592,7 +592,7 @@
StoragePolicy.
</p>
<a name="spirit.support.multi_pass.how_to_write_a_functor_for_use_with_the__code__phrase_role__identifier__functor_input__phrase___code__inputpolicy"></a><h4>
-<a name="id648217"></a>
+<a name="id657138"></a>
<a href="multi_pass.html#spirit.support.multi_pass.how_to_write_a_functor_for_use_with_the__code__phrase_role__identifier__functor_input__phrase___code__inputpolicy">How
to write a functor for use with the <tt class="computeroutput"><span class="identifier">functor_input</span></tt>
InputPolicy</a>
@@ -651,7 +651,7 @@
<span class="special">}</span>
</pre>
<a name="spirit.support.multi_pass.how_to_write_policies_for_use_with_multi_pass"></a><h4>
-<a name="id649036"></a>
+<a name="id657956"></a>
<a href="multi_pass.html#spirit.support.multi_pass.how_to_write_policies_for_use_with_multi_pass">How
to write policies for use with multi_pass</a>
</h4>
@@ -668,7 +668,7 @@
copies of a particular <tt class="computeroutput"><span class="identifier">multi_pass</span></tt>.
</p>
<a name="spirit.support.multi_pass.inputpolicy"></a><h4>
-<a name="id649162"></a>
+<a name="id658083"></a>
<a href="multi_pass.html#spirit.support.multi_pass.inputpolicy">InputPolicy</a>
</h4>
<p>
@@ -764,7 +764,7 @@
constructor of <tt class="computeroutput"><span class="identifier">shared</span></tt>.
</p>
<a name="spirit.support.multi_pass.ownershippolicy"></a><h4>
-<a name="id650371"></a>
+<a name="id659291"></a>
<a href="multi_pass.html#spirit.support.multi_pass.ownershippolicy">OwnershipPolicy</a>
</h4>
<p>
@@ -831,7 +831,7 @@
constructor of <tt class="computeroutput"><span class="identifier">shared</span></tt>.
</p>
<a name="spirit.support.multi_pass.checkingpolicy"></a><h4>
-<a name="id651115"></a>
+<a name="id660035"></a>
<a href="multi_pass.html#spirit.support.multi_pass.checkingpolicy">CheckingPolicy</a>
</h4>
<p>
@@ -890,7 +890,7 @@
constructor of <tt class="computeroutput"><span class="identifier">shared</span></tt>.
</p>
<a name="spirit.support.multi_pass.storagepolicy"></a><h4>
-<a name="id651750"></a>
+<a name="id660671"></a>
<a href="multi_pass.html#spirit.support.multi_pass.storagepolicy">StoragePolicy</a>
</h4>
<p>
Modified: trunk/libs/spirit/doc/qi/numeric.qbk
==============================================================================
--- trunk/libs/spirit/doc/qi/numeric.qbk (original)
+++ trunk/libs/spirit/doc/qi/numeric.qbk 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -17,7 +17,19 @@
predefined policies covering the most common real number formats but the
user can supply her own when needed.
+The numeric parsers are fine tuned (employing loop unrolling and
+extensive template metaprogramming) with exceptional performance that
+rivals the low level C functions such as `atof`, `strtod`, `atol`,
+`strtol`. Benchmarks reveal up to 4X speed over the C counterparts. This
+goes to show that you can write extremely tight generic C++ code that
+rivals, if not surpasses C.
+[heading Module Header]
+
+ // forwards to <boost/spirit/home/qi/numeric.hpp>
+ #include <boost/spirit/include/qi_numeric.hpp>
+
+Also, see __include_structure__.
[/------------------------------------------------------------------------------]
[section:uint Unsigned Integers (`uint_`, etc.)]
@@ -28,8 +40,9 @@
numerics package. The `uint_parser` can parse unsigned integers of
arbitrary length and size. The `uint_parser` parser can be used to parse
ordinary primitive C/C++ integers or even user defined scalars such as
-bigints (unlimited precision integers). The `uint_parser` is a template
-class. Template parameters fine tune its behavior.
+bigints (unlimited precision integers) as long as the type follows
+certain expression requirements (documented below). The `uint_parser` is
+a template class. Template parameters fine tune its behavior.
[heading Header]
@@ -87,6 +100,7 @@
[variablelist Notation
[[`NP`] [An instance of `uint_parser` (type).]]
+ [[`n`] [An object of `T`, the numeric base type.]]
]
[heading Expression Semantics]
@@ -114,6 +128,28 @@
[:O(N), where N is the number of digits being parsed.]
+[heading Minimum Expression Requirements for `T`]
+
+The numeric base type, `T`, the expression requirements below must be
+valid:
+
+[table
+ [[Expression] [Semantics]]
+ [[`T()`] [Default construct.]]
+ [[`T(0)`] [Construct from an `int`.]]
+ [[`n + n`] [Addition.]]
+ [[`n * n`] [Multiplication.]]
+ [[`std::numeric_limits<T>::is_bounded`] [`true` or `false` if `T` bounded.]]
+ [[`std::numeric_limits<T>::digits`] [Maximum Digits for `T`, radix digits.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::digits10`] [Maximum Digits for `T`, base 10.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::max()`] [Maximum value for `T`.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::min()`] [Minimum value for `T`.
+ Required only if `T` is bounded.]]
+]
+
[heading Example]
Some using declarations:
@@ -138,6 +174,11 @@
additional task of parsing the `'+'` or `'-'` sign preceding the number.
The class interface is the same as that of the `uint_parser`.
+The `int_parser` parser can be used to parse ordinary primitive C/C++
+integers or even user defined scalars such as bigints (unlimited
+precision integers) as long as the type follows certain expression
+requirements (documented below).
+
[heading Header]
// forwards to <boost/spirit/home/qi/numeric/int.hpp>
@@ -190,6 +231,7 @@
[variablelist Notation
[[`NP`] [An instance of `int_parser` (type).]]
+ [[`n`] [An object of `T`, the numeric base type.]]
]
[heading Expression Semantics]
@@ -212,7 +254,30 @@
[heading Complexity]
-[:O(N), where N is the number of digits being parsed.]
+[:O(N), where N is the number of digits being parsed plus the sign.]
+
+[heading Minimum Expression Requirements for `T`]
+
+The numeric base type, `T`, the expression requirements below must be
+valid:
+
+[table
+ [[Expression] [Semantics]]
+ [[`T()`] [Default construct.]]
+ [[`T(0)`] [Construct from an `int`.]]
+ [[`n + n`] [Addition.]]
+ [[`n - n`] [Subtraction.]]
+ [[`n * n`] [Multiplication.]]
+ [[`std::numeric_limits<T>::is_bounded`] [`true` or `false` if `T` bounded.]]
+ [[`std::numeric_limits<T>::digits`] [Maximum Digits for `T`, radix digits.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::digits10`] [Maximum Digits for `T`, base 10.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::max()`] [Maximum value for `T`.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::min()`] [Minimum value for `T`.
+ Required only if `T` is bounded.]]
+]
[heading Example]
@@ -226,4 +291,268 @@
[endsect] [/ Signed Integers]
+[/------------------------------------------------------------------------------]
+[section:real Real Numbers (`float_`, `double_`, etc.)]
+
+[heading Description]
+
+The `real_parser` can parse real numbers of arbitrary length and size
+limited by its template parameter, `T`. The numeric base type `T` can be
+a user defined numeric type such as fixed_point (fixed point reals) and
+bignum (unlimited precision numbers) as long as the type follows certain
+expression requirements (documented below).
+
+[heading Header]
+
+ // forwards to <boost/spirit/home/qi/numeric/real.hpp>
+ #include <boost/spirit/include/qi_real.hpp>
+
+Also, see __include_structure__.
+
+[heading Namespace]
+
+[table
+ [[Name]]
+ [[`boost::spirit::float_ // alias: boost::spirit::qi::float_`]]
+ [[`boost::spirit::double_ // alias: boost::spirit::qi::double_`]]
+ [[`boost::spirit::long_double // alias: boost::spirit::qi::long_double`]]
+]
+
+[heading Synopsis]
+
+ template <typename T, typename RealPolicies>
+ struct real_parser;
+
+[heading Template parameters]
+
+[table
+ [[Parameter] [Description] [Default]]
+ [[`T`] [The numeric base type of the
+ numeric parser.] []]
+ [[`RealPolicies`] [Policies control the
+ parser's behavior.] [`real_policies<T>`]]
+]
+
+[heading Model of]
+
+[:__primitive_parser_concept__]
+
+[variablelist Notation
+ [[`NP`] [An instance of `real_parser` (type).]]
+ [[`RP`] [A `RealPolicies` (type).]]
+ [[`n`] [An object of `T`, the numeric base type.]]
+ [[`exp`] [A `int` exponent.]]
+ [[`b`] [A `bool` flag.]]
+ [[`f`, `l`] [`ForwardIterator`. first/last iterator pair.]]
+]
+
+[heading Expression Semantics]
+
+Semantics of an expression is defined only where it differs from, or is
+not defined in __primitive_parser_concept__.
+
+[table
+ [[Expression] [Semantics]]
+ [[`NP()`] [Instantiate and (default) construct an `real_parser`]]
+ [[`float_`] [Create an `real_parser<float, real_policies<T> >`]]
+ [[`double_`] [Create an `real_parser<double, real_policies<T> >`]]
+ [[`long_double`] [Create an `real_parser<long double, real_policies<T> >`]]
+]
+
+[heading Attributes]
+
+[:`T`, The numeric base type of the numeric parser.]
+
+[heading Complexity]
+
+[:O(N), where N is the number of characters (including the digits,
+exponent, sign, etc.) being parsed.]
+
+[heading Minimum Expression Requirements for `T`]
+
+The numeric base type, `T`, the minimum expression requirements listed
+below must be valid. Take note that additional requirements may be
+imposed by custom policies.
+
+[table
+ [[Expression] [Semantics]]
+ [[`T()`] [Default construct.]]
+ [[`T(0)`] [Construct from an `int`.]]
+ [[`n + n`] [Addition.]]
+ [[`n - n`] [Subtraction.]]
+ [[`n * n`] [Multiplication.]]
+ [[`std::numeric_limits<T>::is_bounded`] [`true` or `false` if `T` bounded.]]
+ [[`std::numeric_limits<T>::digits`] [Maximum Digits for `T`, radix digits.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::digits10`] [Maximum Digits for `T`, base 10.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::max()`] [Maximum value for `T`.
+ Required only if `T` is bounded.]]
+ [[`std::numeric_limits<T>::min()`] [Minimum value for `T`.
+ Required only if `T` is bounded.]]
+
+
+ [[`boost::spirit::traits::scale(exp, n)`]
+ [Multiply `n` by `10^exp`. Default implementation
+ is provided for `float`, `double` and `long double`.]]
+
+ [[`boost::spirit::traits::negate(b, n)`]
+ [Negate `n` if `b` is `true`. Default implementation
+ is provided for `float`, `double` and `long double`.]]
+
+ [[`boost::spirit::traits::is_equal_to_one(n)`]
+ [Return `true` if `n` is equal to `1.0`. Default implementation
+ is provided for `float`, `double` and `long double`.]]
+
+]
+
+[note The additional spirit real number traits above are provided to
+allow custom implementations to implement efficient real number parsers.
+For example, for certain custom real numbers, scaling to a base 10
+exponent is a very cheap operation.]
+
+[heading `RealPolicies`]
+
+The `RealPolicies` template parameter is a class that groups all the
+policies that control the parser's behavior. It defaults to
+`real_policies<T>`. Policies control the real number parsers' behavior.
+
+The default policies provided are designed to parse C/C++ style real
+numbers of the form `nnn.fff.Eeee` where `nnn` is the whole number part,
+`fff` is the fractional part, `E` is `'e'` or `'E'` and `eee` is the
+exponent optionally preceded by `'-'` or `'+'` with the additional
+detection of NaN and Inf. This corresponds to the following (pseudo)
+grammar:
+
+ realliteral
+ = -(lit('+') | '-') >>
+ (
+ -lit("1.0#") >> (lit("NAN") | "nan")
+ | lexeme[lit("INF") >> -lit("INITY")]
+ | lexeme[lit("inf") >> -lit("inity")]
+ | fractionalconstant >> !exponentpart
+ | +digit >> exponentpart
+ )
+ ;
+
+ fractionalconstant
+ = *digit >> '.' >> +digit
+ | +digit >> -lit('.')
+ ;
+
+ exponentpart
+ = (lit('e') | 'E') >> -(lit('+') | '-') >> +digit
+ ;
+
+The default policies are provided to take care of the most common case
+(there are many ways to represent, and hence parse, real numbers). In
+most cases, the default setting of the real_parser is sufficient and can
+be used straight out of the box.
+
+The default policies implementation recognizes representations of NaN
+and Inf as mandated by the C99 Standard and as proposed for inclusion
+into the C++0x Standard: nan, nan(...), inf and infinity (the matching
+is performed case-insensitively).
+
+There are four `RealPolicies` pre-defined for immediate use:
+
+[table Predefined Policies
+
+ [[Policy] [Description]]
+ [[`ureal_policies<double> >`] [Without sign.]]
+ [[`real_policies<double> >`] [With sign.]]
+ [[`strict_ureal_policies<double> >`] [Without sign, dot required.]]
+ [[`strict_real_policies<double> >`] [With sign, dot required.]]
+]
+
+[note Integers are considered a subset of real numbers, so for instance,
+`double_` recognizes integer numbers (without a dot) just as well. To
+avoid this ambiguity, `strict_ureal_policies` and `strict_real_policies`
+require a dot to be present for a number to be considered a successful
+match.]
+
+[heading `RealPolicies` Expression Requirements]
+
+For models of `RealPolicies` the following expressions must be valid:
+
+[table
+ [[Expression] [Semantics]]
+ [[`RP::allow_leading_dot`] [Allow leading dot.]]
+ [[`RP::allow_trailing_dot`] [Allow trailing dot.]]
+ [[`RP::expect_dot`] [Require a dot.]]
+ [[`RP::parse_sign(f, l)`] [Parse the prefix sign (e.g. '-').
+ Return `true` if successful, otherwise `false`.]]
+ [[`RP::parse_n(f, l, n)`] [Parse the integer at the left of the decimal point.
+ Return `true` if successful, otherwise `false`.
+ If successful, place the result into `n`.]]
+ [[`RP::parse_dot(f, l)`] [Parse the decimal point.
+ Return `true` if successful, otherwise `false`.]]
+ [[`RP::parse_frac_n(f, l, n)`] [Parse the fraction after the decimal point.
+ Return `true` if successful, otherwise `false`.
+ If successful, place the result into `n`.]]
+ [[`RP::parse_exp(f, l)`] [Parse the exponent prefix (e.g. 'e').
+ Return `true` if successful, otherwise `false`.]]
+ [[`RP::parse_exp_n(f, l, n)`] [Parse the actual exponent.
+ Return `true` if successful, otherwise `false`.
+ If successful, place the result into `n`.]]
+ [[`RP::parse_nan(f, l, n)`] [Parse a NaN.
+ Return `true` if successful, otherwise `false`.
+ If successful, place the result into `n`.]]
+ [[`RP::parse_inf(f, l, n)`] [Parse an Inf.
+ Return `true` if successful, otherwise `false`.
+ If successful, place the result into `n`.]]
+]
+
+The `parse_nan` and `parse_inf` functions get called whenever:
+
+[:a number to parse does not start with a digit (after having
+successfully parsed an optional sign)]
+
+or
+
+[:after a real number of the value 1 (having no exponential
+part and a fractional part value of 0) has been parsed.]
+
+The first call recognizes representations of NaN or Inf starting with a
+non-digit character (such as NaN, Inf, QNaN etc.). The second call
+allows to recognize representation formats starting with a `1.0` (such
+as `1.0#QNAN` or `1.0#INF` etc.).
+
+The functions should return true if a Nan or Inf has been found. In this
+case the attribute `n` should be set to the matched value (NaN or Inf).
+The optional sign will be automatically applied afterwards.
+
+[heading `RealPolicies` Specializations]
+
+The easiest way to implement a proper real parsing policy is to derive a
+new type from the the type `real_policies` while overriding the aspects
+of the parsing which need to be changed. For example, here's the
+implementation of thye redefined `strict_real_policies`:
+
+ template <typename T>
+ struct strict_real_policies : real_policies<T>
+ {
+ static bool const expect_dot = true;
+ };
+
+[heading Example]
+
+Some using declarations:
+
+[reference_using_declarations_real]
+
+Basic real number parsing:
+
+[reference_real]
+
+A custom real number policy:
+
+[reference_test_real_policy]
+
+And its use:
+
+[reference_custom_real]
+
+[endsect] [/ Real Numbers]
+
[endsect]
Modified: trunk/libs/spirit/example/qi/reference.cpp
==============================================================================
--- trunk/libs/spirit/example/qi/reference.cpp (original)
+++ trunk/libs/spirit/example/qi/reference.cpp 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -39,6 +39,75 @@
}
//]
+//[reference_test_real_policy
+///////////////////////////////////////////////////////////////////////////////
+// These policies can be used to parse thousand separated
+// numbers with at most 2 decimal digits after the decimal
+// point. e.g. 123,456,789.01
+///////////////////////////////////////////////////////////////////////////////
+template <typename T>
+struct ts_real_policies : boost::spirit::qi::ureal_policies<T>
+{
+ // 2 decimal places Max
+ template <typename Iterator, typename Attribute>
+ static bool
+ parse_frac_n(Iterator& first, Iterator const& last, Attribute& attr)
+ {
+ return boost::spirit::qi::
+ extract_uint<T, 10, 1, 2, true>::call(first, last, attr);
+ }
+
+ // No exponent
+ template <typename Iterator>
+ static bool
+ parse_exp(Iterator&, Iterator const&)
+ {
+ return false;
+ }
+
+ // No exponent
+ template <typename Iterator, typename Attribute>
+ static bool
+ parse_exp_n(Iterator&, Iterator const&, Attribute&)
+ {
+ return false;
+ }
+
+ // Thousands separated numbers
+ template <typename Iterator, typename Attribute>
+ static bool
+ parse_n(Iterator& first, Iterator const& last, Attribute& attr)
+ {
+ using boost::spirit::qi::uint_parser;
+ namespace qi = boost::spirit::qi;
+
+ uint_parser<unsigned, 10, 1, 3> uint3;
+ uint_parser<unsigned, 10, 3, 3> uint3_3;
+
+ T result = 0;
+ if (parse(first, last, uint3, result))
+ {
+ bool hit = false;
+ T n;
+ Iterator save = first;
+
+ while (qi::parse(first, last, ',') && qi::parse(first, last, uint3_3, n))
+ {
+ result = result * 1000 + n;
+ save = first;
+ hit = true;
+ }
+
+ first = save;
+ if (hit)
+ attr = result;
+ return hit;
+ }
+ return false;
+ }
+};
+//]
+
int
main()
{
@@ -283,6 +352,23 @@
test_parser("-12345", int_);
//]
}
+
+ // real
+ {
+ //[reference_using_declarations_real
+ using boost::spirit::qi::double_;
+ using boost::spirit::qi::real_parser;
+ //]
+
+ //[reference_real
+ test_parser("+12345e6", double_);
+ //]
+
+ //[reference_custom_real
+ real_parser<double, ts_real_policies<double> > ts_real;
+ test_parser("123,456,789.01", ts_real);
+ //]
+ }
return 0;
}
Modified: trunk/libs/spirit/test/qi/int.cpp
==============================================================================
--- trunk/libs/spirit/test/qi/int.cpp (original)
+++ trunk/libs/spirit/test/qi/int.cpp 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -58,6 +58,19 @@
char const* long_long_underflow = "-9223372036854775809";
#endif
+///////////////////////////////////////////////////////////////////////////////
+// A custom int type
+struct custom_int
+{
+ int n;
+ custom_int() : n(0) {}
+ explicit custom_int(int n_) : n(n_) {}
+ custom_int& operator=(int n_) { n = n_; return *this; }
+ friend custom_int operator*(custom_int a, custom_int b) { return custom_int(a.n * b.n); }
+ friend custom_int operator+(custom_int a, custom_int b) { return custom_int(a.n + b.n); }
+ friend custom_int operator-(custom_int a, custom_int b) { return custom_int(a.n - b.n); }
+};
+
int
main()
{
@@ -190,6 +203,19 @@
BOOST_TEST(test(" 456", int_[ref(n) = _1], space));
BOOST_TEST(n == 456);
}
+
+ ///////////////////////////////////////////////////////////////////////////
+ // custom int tests
+ ///////////////////////////////////////////////////////////////////////////
+ {
+ using boost::spirit::qi::int_;
+ using boost::spirit::qi::int_parser;
+ custom_int i;
+
+ BOOST_TEST(test_attr("-123456", int_, i));
+ int_parser<custom_int, 10, 1, 2> int2;
+ BOOST_TEST(test_attr("-12", int2, i));
+ }
return boost::report_errors();
}
Modified: trunk/libs/spirit/test/qi/real.cpp
==============================================================================
--- trunk/libs/spirit/test/qi/real.cpp (original)
+++ trunk/libs/spirit/test/qi/real.cpp 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -105,6 +105,21 @@
return (delta >= -eps) && (delta <= eps);
}
+///////////////////////////////////////////////////////////////////////////////
+// A custom real type
+struct custom_real
+{
+ double n;
+ custom_real() : n(0) {}
+ custom_real(double n_) : n(n_) {}
+ friend custom_real operator*(custom_real a, custom_real b)
+ { return custom_real(a.n * b.n); }
+ friend custom_real operator+(custom_real a, custom_real b)
+ { return custom_real(a.n + b.n); }
+ friend custom_real operator-(custom_real a, custom_real b)
+ { return custom_real(a.n - b.n); }
+};
+
int
main()
{
@@ -384,6 +399,16 @@
BOOST_TEST(!test("-1.2e", custom_real));
BOOST_TEST(!test_attr("-1.2e", custom_real, d));
}
+
+ ///////////////////////////////////////////////////////////////////////////
+ // custom real tests
+ ///////////////////////////////////////////////////////////////////////////
+ //~ {
+ //~ using boost::spirit::qi::double_;
+ //~ custom_real n;
+
+ //~ BOOST_TEST(test_attr("-123456e6", double_, n));
+ //~ }
return boost::report_errors();
}
Modified: trunk/libs/spirit/test/qi/uint.cpp
==============================================================================
--- trunk/libs/spirit/test/qi/uint.cpp (original)
+++ trunk/libs/spirit/test/qi/uint.cpp 2009-09-05 02:30:00 EDT (Sat, 05 Sep 2009)
@@ -38,6 +38,20 @@
char const* max_hex = "FFFFFFFF";
char const* hex_overflow = "100000000";
+///////////////////////////////////////////////////////////////////////////////
+// A custom int type
+struct custom_int
+{
+ int n;
+ custom_int() : n(0) {}
+ explicit custom_int(int n_) : n(n_) {}
+ custom_int& operator=(int n_) { n = n_; return *this; }
+ friend custom_int operator*(custom_int a, custom_int b)
+ { return custom_int(a.n * b.n); }
+ friend custom_int operator+(custom_int a, custom_int b)
+ { return custom_int(a.n + b.n); }
+};
+
int
main()
{
@@ -193,6 +207,20 @@
BOOST_TEST(!test_attr("999", uint_, u));
}
+
+ ///////////////////////////////////////////////////////////////////////////
+ // custom uint tests
+ ///////////////////////////////////////////////////////////////////////////
+ {
+ using boost::spirit::qi::uint_;
+ using boost::spirit::qi::uint_parser;
+ custom_int u;
+
+ BOOST_TEST(test_attr("123456", uint_, u));
+
+ uint_parser<custom_int, 10, 1, 2> uint2;
+ BOOST_TEST(test_attr("12", uint2, u));
+ }
return boost::report_errors();
}
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk