|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r53100 - in trunk/libs/spirit/doc: . html html/images html/spirit html/spirit/lex html/spirit/lex/abstracts html/spirit/lex/reference html/spirit/lex/tutorials html/spirit/notes html/spirit/qi_and_karma html/spirit/qi_and_karma/abstracts notes
From: hartmut.kaiser_at_[hidden]
Date: 2009-05-18 17:50:29
Author: hkaiser
Date: 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
New Revision: 53100
URL: http://svn.boost.org/trac/boost/changeset/53100
Log:
Spirit: More work on docs
Added:
trunk/libs/spirit/doc/html/images/flowofcontrol.png (contents, props changed)
Binary files modified:
trunk/libs/spirit/doc/html/images/lexerflow.png
Text files modified:
trunk/libs/spirit/doc/html/index.html | 22 ++--
trunk/libs/spirit/doc/html/spirit/acknowledgments.html | 2
trunk/libs/spirit/doc/html/spirit/introduction.html | 116 ++++++++++++++------------
trunk/libs/spirit/doc/html/spirit/lex.html | 6
trunk/libs/spirit/doc/html/spirit/lex/abstracts.html | 6
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/reference.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 | 6
trunk/libs/spirit/doc/html/spirit/lex/tutorials/lexer_quickstart3.html | 8
trunk/libs/spirit/doc/html/spirit/notes/style_guide.html | 8
trunk/libs/spirit/doc/html/spirit/qi_and_karma.html | 64 +++++++-------
trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/mini_xml___error_handling.html | 6
trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/parsing.html | 10 +-
trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/parsing_and_generating.html | 10 +-
trunk/libs/spirit/doc/html/spirit/qi_and_karma/quick_reference.html | 14 +-
trunk/libs/spirit/doc/html/spirit/qi_and_karma/reference.html | 10 +-
trunk/libs/spirit/doc/html/spirit/what_s_new.html | 173 ++++++++++++++++++++++++---------------
trunk/libs/spirit/doc/notes/style_guide.qbk | 10 +-
trunk/libs/spirit/doc/what_s_new.qbk | 49 +++++-----
23 files changed, 300 insertions(+), 258 deletions(-)
Added: trunk/libs/spirit/doc/html/images/flowofcontrol.png
==============================================================================
Binary file. No diff available.
Modified: trunk/libs/spirit/doc/html/images/lexerflow.png
==============================================================================
Binary files. No diff available.
Modified: trunk/libs/spirit/doc/html/index.html
==============================================================================
--- trunk/libs/spirit/doc/html/index.html (original)
+++ trunk/libs/spirit/doc/html/index.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -34,7 +34,7 @@
<div><p class="copyright">Copyright © 2001-2009 Joel
de Guzman, Hartmut Kaiser</p></div>
<div><div class="legalnotice" title="Legal Notice">
-<a name="id683678"></a><p>
+<a name="id659648"></a><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>
@@ -185,11 +185,11 @@
</p>
</blockquote></div>
<a name="spirit.preface.history"></a><h4>
-<a name="id683729"></a>
+<a name="id659699"></a>
<a class="link" href="index.html#spirit.preface.history">History</a>
</h4>
<a name="spirit.preface._emphasis_80s__emphasis_"></a><h4>
-<a name="id683742"></a>
+<a name="id659712"></a>
<a class="link" href="index.html#spirit.preface._emphasis_80s__emphasis_"><span class="emphasis"><em>80s</em></span></a>
</h4>
<p>
@@ -203,7 +203,7 @@
recursive-descent parser. This worked very well.
</p>
<a name="spirit.preface._emphasis_90s__emphasis_"></a><h4>
-<a name="id683760"></a>
+<a name="id659730"></a>
<a class="link" href="index.html#spirit.preface._emphasis_90s__emphasis_"><span class="emphasis"><em>90s</em></span></a>
</h4>
<p>
@@ -247,7 +247,7 @@
here: pre-Spirit.
</p>
<a name="spirit.preface._emphasis_2001_to_2006__emphasis_"></a><h4>
-<a name="id683802"></a>
+<a name="id659772"></a>
<a class="link" href="index.html#spirit.preface._emphasis_2001_to_2006__emphasis_"><span class="emphasis"><em>2001
to 2006</em></span></a>
</h4>
@@ -277,7 +277,7 @@
for design and implementation quality, robustness, and reusability.
</p>
<a name="spirit.preface._emphasis_2007__emphasis_"></a><h4>
-<a name="id683837"></a>
+<a name="id659807"></a>
<a class="link" href="index.html#spirit.preface._emphasis_2007__emphasis_"><span class="emphasis"><em>2007</em></span></a>
</h4>
<p>
@@ -307,7 +307,7 @@
Templates</a> library called Boost.Proto.
</p>
<a name="spirit.preface.new_ideas__spirit_v2"></a><h4>
-<a name="id683909"></a>
+<a name="id659879"></a>
<a class="link" href="index.html#spirit.preface.new_ideas__spirit_v2">New Ideas: Spirit V2</a>
</h4>
<p>
@@ -345,7 +345,7 @@
same underlying component library as for the parser and generator libraries.
</p>
<a name="spirit.preface.how_to_use_this_manual"></a><h4>
-<a name="id683959"></a>
+<a name="id659929"></a>
<a class="link" href="index.html#spirit.preface.how_to_use_this_manual">How to use this manual</a>
</h4>
<p>
@@ -376,7 +376,7 @@
icons precede some text to indicate:
</p>
<div class="table">
-<a name="id684007"></a><p class="title"><b>Table 1. Icons</b></p>
+<a name="id659977"></a><p class="title"><b>Table 1. Icons</b></p>
<div class="table-contents"><table class="table" summary="Icons">
<colgroup>
<col>
@@ -497,7 +497,7 @@
Tools</a>.
</p>
<a name="spirit.preface.support"></a><h4>
-<a name="id684248"></a>
+<a name="id660218"></a>
<a class="link" href="index.html#spirit.preface.support">Support</a>
</h4>
<p>
@@ -513,7 +513,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: May 18, 2009 at 21:08:21 GMT</small></p></td>
+<td align="left"><p><small>Last revised: May 18, 2009 at 21:35:49 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-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -47,7 +47,7 @@
<span class="bold"><strong>FIXME</strong></span>: Add more people
</p>
<a name="spirit.acknowledgments.acknowledgements_from_the_spirit_v1__emphasis_classic__emphasis__documentation"></a><h4>
-<a name="id750416"></a>
+<a name="id728843"></a>
<a class="link" 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>
</h4>
Modified: trunk/libs/spirit/doc/html/spirit/introduction.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/introduction.html (original)
+++ trunk/libs/spirit/doc/html/spirit/introduction.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -27,72 +27,78 @@
<a name="spirit.introduction"></a><a class="link" href="introduction.html" title="Introduction">Introduction</a>
</h2></div></div></div>
<p>
-Boost Spirit is an object-oriented, recursive-descent parser and output generation
-library for C++. It allows you to write grammars and format descriptions using a
-format similar to EBNF (Extended Backus Naur Form, see [4]) directly in
-C++. These inline grammar specifications can mix freely with other C++ code and,
-thanks to the generative power of C++ templates, are immediately executable.
-In retrospect, conventional compiler-compilers or parser-generators have to
-perform an additional translation step from the source EBNF code to C or C++
-code.</p>
-<p>
-The syntax and semantics of the libraries' API directly form domain-specific
-embedded languages (DSEL). In fact, Spirit exposes 3 different DSELs to the
-user:</p>
+ Boost Spirit is an object-oriented, recursive-descent parser and output generation
+ library for C++. It allows you to write grammars and format descriptions using
+ a format similar to EBNF (Extended Backus Naur Form, see [4]) directly in C++.
+ These inline grammar specifications can mix freely with other C++ code and,
+ thanks to the generative power of C++ templates, are immediately executable.
+ In retrospect, conventional compiler-compilers or parser-generators have to
+ perform an additional translation step from the source EBNF code to C or C++
+ code.
+ </p>
+<p>
+ The syntax and semantics of the libraries' API directly form domain-specific
+ embedded languages (DSEL). In fact, Spirit exposes 3 different DSELs to the
+ user:
+ </p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
-one for creating parser grammars,
-</li>
+ one for creating parser grammars,
+ </li>
<li class="listitem">
-one for the specification of the required tokens to be used for parsing,
-</li>
+ one for the specification of the required tokens to be used for parsing,
+ </li>
<li class="listitem">
-and one for the description of the required output formats.
-</li>
+ and one for the description of the required output formats.
+ </li>
</ul></div>
<p>
-Since the target input grammars and output formats are written entirely in C++
-we do not need any separate tools to compile, preprocess or integrate those
-into the build process. Spirit allows seamless integration of the parsing
-and output generation process with other C++ code. Often this allows for
-simpler and more efficient code.</p>
-<p>
-Both the created parsers and generators are fully attributed which allows you to
-easily build and handle hierarchical data structures in memory. These data
-structures resemble the structure of the input data and can directly be used to
-generate arbitrarily-formatted output.</p>
-<p>
-The <a class="link" href="introduction.html#spirit.spiritstructure" title="Figure 1. The overall structure of the Boost Spirit library">figure</a> below depicts the overall structure
-of the Boost Spirit library. The library consists of 4 major parts:</p>
+ Since the target input grammars and output formats are written entirely in
+ C++ we do not need any separate tools to compile, preprocess or integrate those
+ into the build process. Spirit
+ allows seamless integration of the parsing and output generation process with
+ other C++ code. Often this allows for simpler and more efficient code.
+ </p>
+<p>
+ Both the created parsers and generators are fully attributed which allows you
+ to easily build and handle hierarchical data structures in memory. These data
+ structures resemble the structure of the input data and can directly be used
+ to generate arbitrarily-formatted output.
+ </p>
+<p>
+ The <a class="link" href="introduction.html#spirit.spiritstructure" title="Figure 1. The overall structure of the Boost Spirit library">figure</a> below depicts the
+ overall structure of the Boost Spirit library. The library consists of 4 major
+ parts:
+ </p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
-<span class="emphasis"><em>Spirit.Classic</em></span>: This is the almost-unchanged code base taken from the
- former Boost Spirit V1.8 distribution. It has been moved into the namespace
- boost::spirit::classic. A special compatibility layer has been added to
- ensure complete compatibility with existing code using Spirit V1.8.
-</li>
+<span class="emphasis"><em>Spirit.Classic</em></span>: This is the almost-unchanged code base
+ taken from the former Boost Spirit V1.8 distribution. It has been moved into
+ the namespace boost::spirit::classic. A special compatibility layer has been
+ added to ensure complete compatibility with existing code using Spirit V1.8.
+ </li>
<li class="listitem">
-<span class="emphasis"><em>Spirit.Qi</em></span>: This is the parser library allowing you to build recursive
- descent parsers. The exposed domain-specific language can be used to describe
- the grammars to implement, and the rules for storing the parsed information.
-</li>
+<span class="emphasis"><em>Spirit.Qi</em></span>: This is the parser library allowing you to
+ build recursive descent parsers. The exposed domain-specific language can
+ be used to describe the grammars to implement, and the rules for storing
+ the parsed information.
+ </li>
<li class="listitem">
-<span class="emphasis"><em>Spirit.Lex</em></span>: This is the library usable to create tokenizers (lexers). The
- domain-specific language exposed by <span class="emphasis"><em>Spirit.Lex</em></span>
+<span class="emphasis"><em>Spirit.Lex</em></span>: This is the library usable to create tokenizers
+ (lexers). The domain-specific language exposed by <span class="emphasis"><em>Spirit.Lex</em></span>
</li>
<li class="listitem">
-<span class="emphasis"><em>Spirit.Karma</em></span>: This is the generator library allowing you to create code for
- recursive descent, data type-driven output formatting. The exposed
- domain-specific language is almost equivalent to the parser description language
- used in <span class="emphasis"><em>Spirit.Qi</em></span>, except that it is used to describe the required output
- format to generate from a given data structure.
-</li>
+<span class="emphasis"><em>Spirit.Karma</em></span>: This is the generator library allowing
+ you to create code for recursive descent, data type-driven output formatting.
+ The exposed domain-specific language is almost equivalent to the parser description
+ language used in <span class="emphasis"><em>Spirit.Qi</em></span>, except that it is used to
+ describe the required output format to generate from a given data structure.
+ </li>
</ul></div>
<p>
- </p>
+ </p>
<div class="figure">
-<a name="spirit.spiritstructure"></a><p class="title"><b>Figure 1. The overall structure
- of the Boost Spirit library</b></p>
+<a name="spirit.spiritstructure"></a><p class="title"><b>Figure 1. The overall structure of the Boost Spirit library</b></p>
<div class="figure-contents"><span class="inlinemediaobject"><img src=".././images/spiritstructure.png" alt="The overall structure of the Boost Spirit library"></span></div>
</div>
<p><br class="figure-break">
@@ -124,7 +130,7 @@
<p><br class="figure-break">
</p>
<a name="spirit.introduction.a_quick_overview_of_parsing_with__emphasis_spirit_qi__emphasis_"></a><h4>
-<a name="id685074"></a>
+<a name="id663380"></a>
<a class="link" href="introduction.html#spirit.introduction.a_quick_overview_of_parsing_with__emphasis_spirit_qi__emphasis_">A
Quick Overview of Parsing with <span class="emphasis"><em>Spirit.Qi</em></span></a>
</h4>
@@ -214,7 +220,7 @@
<code class="computeroutput"><span class="special">;</span></code>.
</p>
<a name="spirit.introduction.a_quick_overview_of_output_generation_with__emphasis_spirit_karma__emphasis_"></a><h4>
-<a name="id687529"></a>
+<a name="id664333"></a>
<a class="link" href="introduction.html#spirit.introduction.a_quick_overview_of_output_generation_with__emphasis_spirit_karma__emphasis_">A
Quick Overview of Output Generation with <span class="emphasis"><em>Spirit.Karma</em></span></a>
</h4>
@@ -247,7 +253,7 @@
of the same <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span><span class="keyword">int</span><span class="special">></span></code>:
</p>
<div class="table">
-<a name="id687870"></a><p class="title"><b>Table 2. Different output formats for `std::vector<int>`</b></p>
+<a name="id664674"></a><p class="title"><b>Table 2. Different output formats for `std::vector<int>`</b></p>
<div class="table-contents"><table class="table" summary="Different output formats for `std::vector<int>`">
<colgroup>
<col>
@@ -362,7 +368,7 @@
next table gives some related examples.
</p>
<div class="table">
-<a name="id688243"></a><p class="title"><b>Table 3. Different data types usable with the output format
+<a name="id666158"></a><p class="title"><b>Table 3. Different data types usable with the output format
`*(int_ << eol)`</b></p>
<div class="table-contents"><table class="table" summary="Different data types usable with the output format
`*(int_ << eol)`">
Modified: trunk/libs/spirit/doc/html/spirit/lex.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -98,7 +98,7 @@
</li>
</ul></div>
<a name="spirit.lex.lexer_introduction.why_use_a_separate_lexer_"></a><h5>
-<a name="id731904"></a>
+<a name="id708755"></a>
<a class="link" href="lex.html#spirit.lex.lexer_introduction.why_use_a_separate_lexer_">Why
Use a Separate Lexer?</a>
</h5>
@@ -197,7 +197,7 @@
grammar recognizers.
</p>
<a name="spirit.lex.lexer_introduction.advantages_of_using__emphasis_spirit_lex__emphasis_"></a><h5>
-<a name="id732113"></a>
+<a name="id708963"></a>
<a class="link" href="lex.html#spirit.lex.lexer_introduction.advantages_of_using__emphasis_spirit_lex__emphasis_">Advantages
of using <span class="emphasis"><em>Spirit.Lex</em></span></a>
</h5>
@@ -245,7 +245,7 @@
application.
</p>
<a name="spirit.lex.lexer_introduction.the_library_structure_of__emphasis_spirit_lex__emphasis_"></a><h5>
-<a name="id732216"></a>
+<a name="id709067"></a>
<a class="link" href="lex.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>
</h5>
Modified: trunk/libs/spirit/doc/html/spirit/lex/abstracts.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/abstracts.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/abstracts.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -84,7 +84,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="id741365"></a>
+<a name="id719872"></a>
<a class="link" href="abstracts.html#spirit.lex.abstracts.lexer_primitives.lexer_token_values.the_anatomy_of_a_token">The
Anatomy of a Token</a>
</h6>
@@ -220,7 +220,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="id743739"></a>
+<a name="id720398"></a>
<a class="link" href="abstracts.html#spirit.lex.abstracts.lexer_primitives.lexer_token_values.the_physiognomy_of_a_token_definition">The
Physiognomy of a Token Definition</a>
</h6>
@@ -293,7 +293,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="id743994"></a>
+<a name="id720653"></a>
<a class="link" href="abstracts.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 <a class="link" href="reference/token_class.html" title="Token Class"><code class="computeroutput"><span class="identifier">lexertl_token</span><span class="special"><></span></code></a></a>
</h6>
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-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -27,17 +27,17 @@
<a name="spirit.lex.abstracts.lexer_states"></a><a class="link" href="lexer_states.html" title="Lexer States"> Lexer States</a>
</h4></div></div></div>
<a name="spirit.lex.abstracts.lexer_states.controlling_the_lexer_state_from_lexer_semantic_actions"></a><h6>
-<a name="id747721"></a>
+<a name="id724729"></a>
<a class="link" 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>
</h6>
<a name="spirit.lex.abstracts.lexer_states.controlling_the_lexer_state_from_parser_semantic_actions"></a><h6>
-<a name="id747735"></a>
+<a name="id724742"></a>
<a class="link" 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>
</h6>
<a name="spirit.lex.abstracts.lexer_states.using_a_lexer_state_for_the_skip_parser"></a><h6>
-<a name="id747748"></a>
+<a name="id724755"></a>
<a class="link" 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>
</h6>
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-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -176,7 +176,7 @@
<p>
</p>
<a name="spirit.lex.abstracts.lexer_static_model.generating_the_static_analyzer"></a><h6>
-<a name="id746391"></a>
+<a name="id723227"></a>
<a class="link" href="lexer_static_model.html#spirit.lex.abstracts.lexer_static_model.generating_the_static_analyzer">Generating
the Static Analyzer</a>
</h6>
@@ -222,7 +222,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><h6>
-<a name="id746766"></a>
+<a name="id723603"></a>
<a class="link" href="lexer_static_model.html#spirit.lex.abstracts.lexer_static_model.modifying_the_dynamic_analyzer">Modifying
the Dynamic Analyzer</a>
</h6>
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-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -28,12 +28,12 @@
Input Data</a>
</h4></div></div></div>
<a name="spirit.lex.abstracts.lexer_tokenizing._tokenize_function_the_tokenize___function"></a><h6>
-<a name="id744519"></a>
+<a name="id721178"></a>
<a class="link" href="lexer_tokenizing.html#spirit.lex.abstracts.lexer_tokenizing._tokenize_function_the_tokenize___function">:tokenize_function
The tokenize() function</a>
</h6>
<a name="spirit.lex.abstracts.lexer_tokenizing._generate_static_function_the_generate_static___function"></a><h6>
-<a name="id744532"></a>
+<a name="id721191"></a>
<a class="link" href="lexer_tokenizing.html#spirit.lex.abstracts.lexer_tokenizing._generate_static_function_the_generate_static___function">:generate_static_function
The generate_static() function</a>
</h6>
Modified: trunk/libs/spirit/doc/html/spirit/lex/reference.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/lex/reference.html (original)
+++ trunk/libs/spirit/doc/html/spirit/lex/reference.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -48,7 +48,7 @@
<a name="spirit.lex.reference.concepts.lexer"></a><a class="link" href="reference.html#spirit.lex.reference.concepts.lexer" title="Lexer">Lexer</a>
</h5></div></div></div>
<div class="table">
-<a name="id747799"></a><p class="title"><b>Table 8. Regular expressions support</b></p>
+<a name="id724807"></a><p class="title"><b>Table 8. Regular expressions support</b></p>
<div class="table-contents"><table class="table" summary="Regular expressions support">
<colgroup>
<col>
@@ -523,7 +523,7 @@
</p></td></tr>
</table></div>
<a name="spirit.lex.reference.concepts.lexer.regular_expression_precedence"></a><h6>
-<a name="id749473"></a>
+<a name="id726385"></a>
<a class="link" href="reference.html#spirit.lex.reference.concepts.lexer.regular_expression_precedence">Regular
Expression Precedence</a>
</h6>
@@ -542,7 +542,7 @@
</li>
</ul></div>
<a name="spirit.lex.reference.concepts.lexer.macros"></a><h6>
-<a name="id749576"></a>
+<a name="id726488"></a>
<a class="link" href="reference.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-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -27,22 +27,22 @@
<a name="spirit.lex.reference.lexer_class"></a><a class="link" href="lexer_class.html" title="Lexer Class">Lexer Class</a>
</h4></div></div></div>
<a name="spirit.lex.reference.lexer_class.the_lexertl_lexer_class_implementing_the_dynamic_model"></a><h6>
-<a name="id749699"></a>
+<a name="id726610"></a>
<a class="link" 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>
</h6>
<a name="spirit.lex.reference.lexer_class.the_lexertl_actor_lexer_class_implementing_the_dynamic_model"></a><h6>
-<a name="id749712"></a>
+<a name="id726624"></a>
<a class="link" 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>
</h6>
<a name="spirit.lex.reference.lexer_class.the_lexertl_static_lexer_class_implementing_the_static_model"></a><h6>
-<a name="id749725"></a>
+<a name="id726637"></a>
<a class="link" 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>
</h6>
<a name="spirit.lex.reference.lexer_class.the_lexertl_static_actor_lexer_class_implementing_the_static_model"></a><h6>
-<a name="id749738"></a>
+<a name="id726650"></a>
<a class="link" 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>
</h6>
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-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -39,7 +39,7 @@
(for the full example code see here: word_count_functor.cpp).
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.prerequisites"></a><h6>
-<a name="id732485"></a>
+<a name="id709335"></a>
<a class="link" href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.prerequisites">Prerequisites</a>
</h6>
<p>
@@ -78,7 +78,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.defining_tokens"></a><h6>
-<a name="id732730"></a>
+<a name="id709822"></a>
<a class="link" href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.defining_tokens">Defining
Tokens</a>
</h6>
@@ -133,7 +133,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.doing_the_useful_work"></a><h6>
-<a name="id733038"></a>
+<a name="id710130"></a>
<a class="link" href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.doing_the_useful_work">Doing
the Useful Work</a>
</h6>
@@ -198,7 +198,7 @@
as well.
</p>
<a name="spirit.lex.tutorials.lexer_quickstart1.pulling_everything_together"></a><h6>
-<a name="id733802"></a>
+<a name="id710629"></a>
<a class="link" href="lexer_quickstart1.html#spirit.lex.tutorials.lexer_quickstart1.pulling_everything_together">Pulling
Everything Together</a>
</h6>
@@ -253,7 +253,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><h6>
-<a name="id734625"></a>
+<a name="id711453"></a>
<a class="link" 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>
</h6>
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-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -40,7 +40,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><h6>
-<a name="id735401"></a>
+<a name="id713327"></a>
<a class="link" href="lexer_quickstart2.html#spirit.lex.tutorials.lexer_quickstart2.prerequisites">Prerequisites</a>
</h6>
<p>
@@ -114,7 +114,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart2.semantic_actions_in__emphasis_spirit_lex__emphasis_"></a><h6>
-<a name="id737157"></a>
+<a name="id713976"></a>
<a class="link" 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>
</h6>
@@ -226,7 +226,7 @@
to the internal lexer context.
</p>
<a name="spirit.lex.tutorials.lexer_quickstart2.associating_token_definitions_with_the_lexer"></a><h6>
-<a name="id738129"></a>
+<a name="id714948"></a>
<a class="link" href="lexer_quickstart2.html#spirit.lex.tutorials.lexer_quickstart2.associating_token_definitions_with_the_lexer">Associating
Token Definitions with the Lexer</a>
</h6>
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-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -65,7 +65,7 @@
code see here: word_count.cpp).
</p>
<a name="spirit.lex.tutorials.lexer_quickstart3.prerequisites"></a><h6>
-<a name="id738510"></a>
+<a name="id715498"></a>
<a class="link" href="lexer_quickstart3.html#spirit.lex.tutorials.lexer_quickstart3.prerequisites">Prerequisites</a>
</h6>
<p>
@@ -115,7 +115,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart3.defining_tokens"></a><h6>
-<a name="id738941"></a>
+<a name="id715929"></a>
<a class="link" href="lexer_quickstart3.html#spirit.lex.tutorials.lexer_quickstart3.defining_tokens">Defining
Tokens</a>
</h6>
@@ -168,7 +168,7 @@
<p>
</p>
<a name="spirit.lex.tutorials.lexer_quickstart3.using_token_definition_instances_as_parsers"></a><h6>
-<a name="id739461"></a>
+<a name="id716266"></a>
<a class="link" href="lexer_quickstart3.html#spirit.lex.tutorials.lexer_quickstart3.using_token_definition_instances_as_parsers">Using
Token Definition Instances as Parsers</a>
</h6>
@@ -339,7 +339,7 @@
</p></td></tr>
</table></div>
<a name="spirit.lex.tutorials.lexer_quickstart3.pulling_everything_together"></a><h6>
-<a name="id740406"></a>
+<a name="id717212"></a>
<a class="link" href="lexer_quickstart3.html#spirit.lex.tutorials.lexer_quickstart3.pulling_everything_together">Pulling
Everything Together</a>
</h6>
Modified: trunk/libs/spirit/doc/html/spirit/notes/style_guide.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/notes/style_guide.html (original)
+++ trunk/libs/spirit/doc/html/spirit/notes/style_guide.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -33,10 +33,10 @@
to the Spirit code, the following coding styleguide is advised.
</p>
<p>
- This coding style is adapted and extended from the ANTLR/PCCTS style (Terrence
- Parr) and <a href="http://groups.yahoo.com/group/boost/files/coding_guidelines.html" target="_top">Boost
- coding guidelines</a> (David Abrahams and Nathan Myers) and is the combined
- work of Joel de Guzman, Chris Uzdavinis and Hartmut Kaiser.
+ This coding style is adapted and extended from the ANTLR/PCCTS style and
+ <a href="http://www.boost.org/development/requirements.html" target="_top">Boost Library
+ Requirements and Guidelines</a> and is the combined work of Joel de Guzman,
+ Chris Uzdavinis, and Hartmut Kaiser.
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
Modified: trunk/libs/spirit/doc/html/spirit/qi_and_karma.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi_and_karma.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi_and_karma.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -123,7 +123,7 @@
<a name="spirit.qi_and_karma.tutorials.quick_start"></a><a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.quick_start" title="Quick Start">Quick Start</a>
</h4></div></div></div>
<a name="spirit.qi_and_karma.tutorials.quick_start.why_would_you_want_to_use_spirit_qi_"></a><h6>
-<a name="id688482"></a>
+<a name="id666397"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.quick_start.why_would_you_want_to_use_spirit_qi_">Why
would you want to use Spirit.Qi?</a>
</h6>
@@ -171,7 +171,7 @@
on how to build parsers from the simplest parser, building up as we go.
</p>
<a name="spirit.qi_and_karma.tutorials.warming_up.trivial_example__1_parsing_a_number"></a><h6>
-<a name="id688527"></a>
+<a name="id666443"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.warming_up.trivial_example__1_parsing_a_number">Trivial
Example #1 Parsing a number</a>
</h6>
@@ -186,7 +186,7 @@
parsers and consistent naming conventions help you keep from going insane!
</p>
<a name="spirit.qi_and_karma.tutorials.warming_up.trivial_example__2_parsing_two_numbers"></a><h6>
-<a name="id688556"></a>
+<a name="id666471"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.warming_up.trivial_example__2_parsing_two_numbers">Trivial
Example #2 Parsing two numbers</a>
</h6>
@@ -219,7 +219,7 @@
</p></td></tr>
</table></div>
<a name="spirit.qi_and_karma.tutorials.warming_up.trivial_example__3_parsing_one_or_more_numbers"></a><h6>
-<a name="id688617"></a>
+<a name="id666533"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.warming_up.trivial_example__3_parsing_one_or_more_numbers">Trivial
Example #3 Parsing one or more numbers</a>
</h6>
@@ -243,7 +243,7 @@
in most places.
</p>
<a name="spirit.qi_and_karma.tutorials.warming_up.trivial_example__4_parsing_a_comma_delimited_list_of_numbers"></a><h6>
-<a name="id688662"></a>
+<a name="id666577"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.warming_up.trivial_example__4_parsing_a_comma_delimited_list_of_numbers">Trivial
Example #4 Parsing a comma-delimited list of numbers</a>
</h6>
@@ -266,7 +266,7 @@
star encloses the complete expression above.
</p>
<a name="spirit.qi_and_karma.tutorials.warming_up.let_s_parse_"></a><h6>
-<a name="id688792"></a>
+<a name="id666708"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.warming_up.let_s_parse_">Let's
Parse!</a>
</h6>
@@ -631,7 +631,7 @@
The examples above can be found here: ../../example/qi/actions.cpp
</p>
<a name="spirit.qi_and_karma.tutorials.semantic_actions.phoenix"></a><h6>
-<a name="id691769"></a>
+<a name="id670276"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.semantic_actions.phoenix">Phoenix</a>
</h6>
<p>
@@ -1202,7 +1202,7 @@
</li>
</ul></div>
<a name="spirit.qi_and_karma.tutorials.roman_numerals.symbol_table"></a><h6>
-<a name="id697127"></a>
+<a name="id673996"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.roman_numerals.symbol_table">Symbol
Table</a>
</h6>
@@ -1334,7 +1334,7 @@
They are all parsers.
</p>
<a name="spirit.qi_and_karma.tutorials.roman_numerals.rules"></a><h6>
-<a name="id698105"></a>
+<a name="id676612"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.roman_numerals.rules">Rules</a>
</h6>
<p>
@@ -1414,7 +1414,7 @@
<pre class="programlisting"><span class="identifier">r</span> <span class="special">=</span> <span class="identifier">double_</span> <span class="special">>></span> <span class="special">*(</span><span class="char">','</span> <span class="special">>></span> <span class="identifier">double_</span><span class="special">);</span>
</pre>
<a name="spirit.qi_and_karma.tutorials.roman_numerals.grammars"></a><h6>
-<a name="id700136"></a>
+<a name="id677005"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.roman_numerals.grammars">Grammars</a>
</h6>
<p>
@@ -1519,7 +1519,7 @@
</li>
</ul></div>
<a name="spirit.qi_and_karma.tutorials.roman_numerals.let_s_parse_"></a><h6>
-<a name="id700866"></a>
+<a name="id677734"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.roman_numerals.let_s_parse_">Let's
Parse!</a>
</h6>
@@ -1720,7 +1720,7 @@
has a <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code> attribute.
</p>
<a name="spirit.qi_and_karma.tutorials.employee___parsing_into_structs.lexeme"></a><h6>
-<a name="id702604"></a>
+<a name="id679687"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.employee___parsing_into_structs.lexeme">Lexeme</a>
</h6>
<pre class="programlisting"><span class="identifier">lexeme</span><span class="special">[</span><span class="char">'"'</span> <span class="special">>></span> <span class="special">+(</span><span class="identifier">char_</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>
@@ -1737,7 +1737,7 @@
a double quote.
</p>
<a name="spirit.qi_and_karma.tutorials.employee___parsing_into_structs.difference"></a><h6>
-<a name="id702712"></a>
+<a name="id679795"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.employee___parsing_into_structs.difference">Difference</a>
</h6>
<p>
@@ -1756,7 +1756,7 @@
is just <code class="computeroutput"><span class="keyword">char</span></code>.
</p>
<a name="spirit.qi_and_karma.tutorials.employee___parsing_into_structs.plus"></a><h6>
-<a name="id702815"></a>
+<a name="id679898"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.employee___parsing_into_structs.plus">Plus</a>
</h6>
<pre class="programlisting"><span class="special">+</span><span class="identifier">a</span>
@@ -1775,7 +1775,7 @@
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span><span class="keyword">char</span><span class="special">></span>
</pre>
<a name="spirit.qi_and_karma.tutorials.employee___parsing_into_structs.sequence_attribute"></a><h6>
-<a name="id702939"></a>
+<a name="id680022"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.employee___parsing_into_structs.sequence_attribute">Sequence
Attribute</a>
</h6>
@@ -1816,7 +1816,7 @@
</p></td></tr>
</table></div>
<a name="spirit.qi_and_karma.tutorials.employee___parsing_into_structs.attribute_collapsing"></a><h6>
-<a name="id703161"></a>
+<a name="id680244"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.employee___parsing_into_structs.attribute_collapsing">Attribute
Collapsing</a>
</h6>
@@ -1848,7 +1848,7 @@
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span><span class="keyword">char</span><span class="special">></span>
</pre>
<a name="spirit.qi_and_karma.tutorials.employee___parsing_into_structs.auto_rules"></a><h6>
-<a name="id703397"></a>
+<a name="id681859"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.employee___parsing_into_structs.auto_rules">Auto
Rules</a>
</h6>
@@ -1886,7 +1886,7 @@
directly into the rule's attribute, in-situ.
</p>
<a name="spirit.qi_and_karma.tutorials.employee___parsing_into_structs.finally"></a><h6>
-<a name="id703712"></a>
+<a name="id682174"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.employee___parsing_into_structs.finally">Finally</a>
</h6>
<p>
@@ -2007,7 +2007,7 @@
for testing purposes. "4.toyxml" has an error in it.
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.first_cut"></a><h6>
-<a name="id705998"></a>
+<a name="id682822"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.first_cut">First
Cut</a>
</h6>
@@ -2084,7 +2084,7 @@
by the placeholder <code class="computeroutput"><span class="identifier">_val</span></code>).
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.alternates"></a><h6>
-<a name="id707184"></a>
+<a name="id684012"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.alternates">Alternates</a>
</h6>
<pre class="programlisting"><span class="identifier">rule</span><span class="special"><</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">mini_xml_node</span><span class="special">(),</span> <span class="identifier">space_type</span><span class="special">></span> <span class="identifier">node</span><span class="special">;</span>
@@ -2114,7 +2114,7 @@
<span class="special">;</span>
</pre>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.not_predicate"></a><h6>
-<a name="id707516"></a>
+<a name="id684345"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.not_predicate">Not
Predicate</a>
</h6>
@@ -2141,7 +2141,7 @@
at this point.
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.inherited_attribute"></a><h6>
-<a name="id707671"></a>
+<a name="id684499"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.inherited_attribute">Inherited
Attribute</a>
</h6>
@@ -2167,7 +2167,7 @@
<code class="computeroutput"><span class="identifier">_r3</span></code>, etc. if you have more).
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.a_lazy_lit"></a><h6>
-<a name="id707866"></a>
+<a name="id684694"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.a_lazy_lit">A
Lazy Lit</a>
</h6>
@@ -2201,7 +2201,7 @@
accessors, provided by Phoenix.
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.how_it_all_works"></a><h6>
-<a name="id708202"></a>
+<a name="id685030"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.how_it_all_works">How
it all works</a>
</h6>
@@ -2248,7 +2248,7 @@
as <code class="computeroutput"><span class="identifier">_r1</span></code>.
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.the_structures"></a><h6>
-<a name="id708503"></a>
+<a name="id685331"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.the_structures">The
Structures</a>
</h6>
@@ -2281,7 +2281,7 @@
<p>
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.of_alternates_and_variants"></a><h6>
-<a name="id708699"></a>
+<a name="id685527"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.of_alternates_and_variants">Of
Alternates and Variants</a>
</h6>
@@ -2308,7 +2308,7 @@
of <code class="computeroutput"><span class="identifier">a</span></code> and <code class="computeroutput"><span class="identifier">B</span></code> is the attribute of <code class="computeroutput"><span class="identifier">b</span></code>.
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.adapting_structs_again"></a><h6>
-<a name="id708874"></a>
+<a name="id685702"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.adapting_structs_again">Adapting
structs again</a>
</h6>
@@ -2334,7 +2334,7 @@
<p>
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.one_more_take"></a><h6>
-<a name="id709015"></a>
+<a name="id685842"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.one_more_take">One
More Take</a>
</h6>
@@ -2403,7 +2403,7 @@
in the <code class="computeroutput"><span class="identifier">xml</span></code> rule:
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___asts_.local_variables"></a><h6>
-<a name="id709935"></a>
+<a name="id689016"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___asts_.local_variables">Local
Variables</a>
</h6>
@@ -2465,7 +2465,7 @@
What's new?
</p>
<a name="spirit.qi_and_karma.tutorials.mini_xml___error_handling.readable_names"></a><h6>
-<a name="id710240"></a>
+<a name="id689321"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___error_handling.readable_names">Readable
Names</a>
</h6>
@@ -2484,7 +2484,7 @@
<span class="identifier">end_tag</span><span class="special">.</span><span class="identifier">name</span><span class="special">(</span><span class="string">"end_tag"</span><span class="special">);</span>
</pre>
<a name="spirit.qi_and_karma.tutorials.mini_xml___error_handling.on_error"></a><h6>
-<a name="id712125"></a>
+<a name="id689498"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___error_handling.on_error">On
Error</a>
</h6>
@@ -2662,7 +2662,7 @@
</tbody>
</table></div>
<a name="spirit.qi_and_karma.tutorials.mini_xml___error_handling.expectation_points"></a><h6>
-<a name="id712633"></a>
+<a name="id690007"></a>
<a class="link" href="qi_and_karma.html#spirit.qi_and_karma.tutorials.mini_xml___error_handling.expectation_points">Expectation
Points</a>
</h6>
Modified: trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/mini_xml___error_handling.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/mini_xml___error_handling.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/mini_xml___error_handling.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -44,7 +44,7 @@
What's new?
</p>
<a name="spirit.qi_and_karma.abstracts.mini_xml___error_handling.readable_names"></a><h6>
-<a name="id713217"></a>
+<a name="id690590"></a>
<a class="link" href="mini_xml___error_handling.html#spirit.qi_and_karma.abstracts.mini_xml___error_handling.readable_names">Readable
Names</a>
</h6>
@@ -63,7 +63,7 @@
<span class="identifier">end_tag</span><span class="special">.</span><span class="identifier">name</span><span class="special">(</span><span class="string">"end_tag"</span><span class="special">);</span>
</pre>
<a name="spirit.qi_and_karma.abstracts.mini_xml___error_handling.on_error"></a><h6>
-<a name="id713394"></a>
+<a name="id690947"></a>
<a class="link" href="mini_xml___error_handling.html#spirit.qi_and_karma.abstracts.mini_xml___error_handling.on_error">On
Error</a>
</h6>
@@ -241,7 +241,7 @@
</tbody>
</table></div>
<a name="spirit.qi_and_karma.abstracts.mini_xml___error_handling.expectation_points"></a><h6>
-<a name="id713903"></a>
+<a name="id691456"></a>
<a class="link" href="mini_xml___error_handling.html#spirit.qi_and_karma.abstracts.mini_xml___error_handling.expectation_points">Expectation
Points</a>
</h6>
Modified: trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/parsing.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/parsing.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/parsing.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -56,27 +56,27 @@
main reason for Spirit's extensibility.
</p>
<a name="spirit.qi_and_karma.abstracts.parsing.the_api_functions_exposed_by__emphasis_spirit_qi__emphasis__"></a><h6>
-<a name="id712941"></a>
+<a name="id690314"></a>
<a class="link" href="parsing.html#spirit.qi_and_karma.abstracts.parsing.the_api_functions_exposed_by__emphasis_spirit_qi__emphasis__">The
API functions exposed by <span class="emphasis"><em>Spirit.Qi</em></span> </a>
</h6>
<a name="spirit.qi_and_karma.abstracts.parsing.the_parse___function"></a><h6>
-<a name="id712960"></a>
+<a name="id690334"></a>
<a class="link" href="parsing.html#spirit.qi_and_karma.abstracts.parsing.the_parse___function">The
parse() function</a>
</h6>
<a name="spirit.qi_and_karma.abstracts.parsing.the_phrase_parse___function"></a><h6>
-<a name="id712975"></a>
+<a name="id690349"></a>
<a class="link" href="parsing.html#spirit.qi_and_karma.abstracts.parsing.the_phrase_parse___function">The
phrase_parse() function</a>
</h6>
<a name="spirit.qi_and_karma.abstracts.parsing.the_tokenize_and_parse___function"></a><h6>
-<a name="id712989"></a>
+<a name="id690362"></a>
<a class="link" href="parsing.html#spirit.qi_and_karma.abstracts.parsing.the_tokenize_and_parse___function">The
tokenize_and_parse() function</a>
</h6>
<a name="spirit.qi_and_karma.abstracts.parsing.the_tokenize_and_phrase_parse___function"></a><h6>
-<a name="id713002"></a>
+<a name="id690376"></a>
<a class="link" href="parsing.html#spirit.qi_and_karma.abstracts.parsing.the_tokenize_and_phrase_parse___function">The
tokenize_and_phrase_parse() function</a>
</h6>
Modified: trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/parsing_and_generating.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/parsing_and_generating.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi_and_karma/abstracts/parsing_and_generating.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -28,27 +28,27 @@
and Generating</a>
</h4></div></div></div>
<a name="spirit.qi_and_karma.abstracts.parsing_and_generating.the_api_functions_exposed_by__emphasis_spirit_qi__emphasis__"></a><h6>
-<a name="id713026"></a>
+<a name="id690400"></a>
<a class="link" href="parsing_and_generating.html#spirit.qi_and_karma.abstracts.parsing_and_generating.the_api_functions_exposed_by__emphasis_spirit_qi__emphasis__">The
API functions exposed by <span class="emphasis"><em>Spirit.Qi</em></span> </a>
</h6>
<a name="spirit.qi_and_karma.abstracts.parsing_and_generating.the_parse___function"></a><h6>
-<a name="id713043"></a>
+<a name="id690416"></a>
<a class="link" href="parsing_and_generating.html#spirit.qi_and_karma.abstracts.parsing_and_generating.the_parse___function">The
parse() function</a>
</h6>
<a name="spirit.qi_and_karma.abstracts.parsing_and_generating.the_phrase_parse___function"></a><h6>
-<a name="id713056"></a>
+<a name="id690430"></a>
<a class="link" href="parsing_and_generating.html#spirit.qi_and_karma.abstracts.parsing_and_generating.the_phrase_parse___function">The
phrase_parse() function</a>
</h6>
<a name="spirit.qi_and_karma.abstracts.parsing_and_generating.the_tokenize_and_parse___function"></a><h6>
-<a name="id713069"></a>
+<a name="id690443"></a>
<a class="link" href="parsing_and_generating.html#spirit.qi_and_karma.abstracts.parsing_and_generating.the_tokenize_and_parse___function">The
tokenize_and_parse() function</a>
</h6>
<a name="spirit.qi_and_karma.abstracts.parsing_and_generating.the_tokenize_and_phrase_parse___function"></a><h6>
-<a name="id713082"></a>
+<a name="id690456"></a>
<a class="link" href="parsing_and_generating.html#spirit.qi_and_karma.abstracts.parsing_and_generating.the_tokenize_and_phrase_parse___function">The
tokenize_and_phrase_parse() function</a>
</h6>
Modified: trunk/libs/spirit/doc/html/spirit/qi_and_karma/quick_reference.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi_and_karma/quick_reference.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi_and_karma/quick_reference.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -126,7 +126,7 @@
</dl>
</div>
<div class="table">
-<a name="id715488"></a><p class="title"><b>Table 4. Predefined /Spirit.Qi/ primitive parsers</b></p>
+<a name="id692333"></a><p class="title"><b>Table 4. Predefined /Spirit.Qi/ primitive parsers</b></p>
<div class="table-contents"><table class="table" summary="Predefined /Spirit.Qi/ primitive parsers">
<colgroup>
<col>
@@ -1261,7 +1261,7 @@
</table></div>
</div>
<br class="table-break"><div class="table">
-<a name="id718928"></a><p class="title"><b>Table 5. Predefined /Spirit.Karma/ primitive generators</b></p>
+<a name="id696871"></a><p class="title"><b>Table 5. Predefined /Spirit.Karma/ primitive generators</b></p>
<div class="table-contents"><table class="table" summary="Predefined /Spirit.Karma/ primitive generators">
<colgroup>
<col>
@@ -2437,7 +2437,7 @@
</table></div>
</div>
<br class="table-break"><a name="spirit.qi_and_karma.quick_reference.compound_attribute_rules"></a><h5>
-<a name="id723636"></a>
+<a name="id700487"></a>
<a class="link" href="quick_reference.html#spirit.qi_and_karma.quick_reference.compound_attribute_rules">Compound
Attribute Rules</a>
</h5>
@@ -2454,7 +2454,7 @@
<span class="identifier">B</span><span class="special">></span></code>.
</p>
<div class="table">
-<a name="id723826"></a><p class="title"><b>Table 6. /Spirit.Qi/ compound parser attribute types</b></p>
+<a name="id700676"></a><p class="title"><b>Table 6. /Spirit.Qi/ compound parser attribute types</b></p>
<div class="table-contents"><table class="table" summary="/Spirit.Qi/ compound parser attribute types">
<colgroup>
<col>
@@ -2739,7 +2739,7 @@
</table></div>
</div>
<br class="table-break"><div class="table">
-<a name="id726513"></a><p class="title"><b>Table 7. /Spirit.Karma/ compound generator attribute
+<a name="id705003"></a><p class="title"><b>Table 7. /Spirit.Karma/ compound generator attribute
types</b></p>
<div class="table-contents"><table class="table" summary="/Spirit.Karma/ compound generator attribute
types">
@@ -2924,7 +2924,7 @@
</table></div>
</div>
<br class="table-break"><a name="spirit.qi_and_karma.quick_reference.lazy_arguments"></a><h5>
-<a name="id729694"></a>
+<a name="id706545"></a>
<a class="link" href="quick_reference.html#spirit.qi_and_karma.quick_reference.lazy_arguments">Lazy Arguments</a>
</h5>
<p>
@@ -2957,7 +2957,7 @@
since <code class="computeroutput"><span class="identifier">phoenix</span><span class="special">::</span><span class="identifier">ref</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></code> is a function that returns a <code class="computeroutput"><span class="keyword">bool</span></code>.
</p>
<a name="spirit.qi_and_karma.quick_reference.non_terminals"></a><h5>
-<a name="id729923"></a>
+<a name="id707321"></a>
<a class="link" href="quick_reference.html#spirit.qi_and_karma.quick_reference.non_terminals">Non-terminals</a>
</h5>
<div class="variablelist" title="Notation">
Modified: trunk/libs/spirit/doc/html/spirit/qi_and_karma/reference.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/qi_and_karma/reference.html (original)
+++ trunk/libs/spirit/doc/html/spirit/qi_and_karma/reference.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -53,7 +53,7 @@
<a name="spirit.qi_and_karma.reference.concepts.parser"></a><a class="link" href="reference.html#spirit.qi_and_karma.reference.concepts.parser" title="Parser">Parser</a>
</h5></div></div></div>
<a name="spirit.qi_and_karma.reference.concepts.parser.description"></a><h6>
-<a name="id731442"></a>
+<a name="id708293"></a>
<a class="link" href="reference.html#spirit.qi_and_karma.reference.concepts.parser.description">Description</a>
</h6>
<p>
@@ -69,7 +69,7 @@
</dl>
</div>
<a name="spirit.qi_and_karma.reference.concepts.parser.valid_expressions"></a><h6>
-<a name="id731489"></a>
+<a name="id708339"></a>
<a class="link" href="reference.html#spirit.qi_and_karma.reference.concepts.parser.valid_expressions">Valid
Expressions</a>
</h6>
@@ -129,7 +129,7 @@
</tr></tbody>
</table></div>
<a name="spirit.qi_and_karma.reference.concepts.parser.type_requirements"></a><h6>
-<a name="id731599"></a>
+<a name="id708450"></a>
<a class="link" href="reference.html#spirit.qi_and_karma.reference.concepts.parser.type_requirements">Type
Requirements</a>
</h6>
@@ -164,14 +164,14 @@
</tr></tbody>
</table></div>
<a name="spirit.qi_and_karma.reference.concepts.parser.invariants"></a><h6>
-<a name="id731682"></a>
+<a name="id708533"></a>
<a class="link" href="reference.html#spirit.qi_and_karma.reference.concepts.parser.invariants">Invariants</a>
</h6>
<p>
For any Parser xxx the following invariants always hold:
</p>
<a name="spirit.qi_and_karma.reference.concepts.parser.models"></a><h6>
-<a name="id731701"></a>
+<a name="id708552"></a>
<a class="link" href="reference.html#spirit.qi_and_karma.reference.concepts.parser.models">Models</a>
</h6>
<p>
Modified: trunk/libs/spirit/doc/html/spirit/what_s_new.html
==============================================================================
--- trunk/libs/spirit/doc/html/spirit/what_s_new.html (original)
+++ trunk/libs/spirit/doc/html/spirit/what_s_new.html 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -27,7 +27,7 @@
<a name="spirit.what_s_new"></a><a class="link" href="what_s_new.html" title="What's New">What's New</a>
</h2></div></div></div>
<a name="spirit.what_s_new.spirit_classic"></a><h4>
-<a name="id684301"></a>
+<a name="id660271"></a>
<a class="link" href="what_s_new.html#spirit.what_s_new.spirit_classic">Spirit Classic</a>
</h4>
<p>
@@ -66,11 +66,11 @@
for existing applications.
</p>
<a name="spirit.what_s_new.spirit_v2_1"></a><h4>
-<a name="id684492"></a>
+<a name="id660462"></a>
<a class="link" href="what_s_new.html#spirit.what_s_new.spirit_v2_1">Spirit V2.1</a>
</h4>
<a name="spirit.what_s_new.what_s_changed_in__emphasis_spirit_qi__emphasis__and__emphasis_spirit_karma__emphasis__from_v2_0_to_2_x"></a><h4>
-<a name="id684505"></a>
+<a name="id660475"></a>
<a class="link" href="what_s_new.html#spirit.what_s_new.what_s_changed_in__emphasis_spirit_qi__emphasis__and__emphasis_spirit_karma__emphasis__from_v2_0_to_2_x">What's
changed in <span class="emphasis"><em>Spirit.Qi</em></span> and <span class="emphasis"><em>Spirit.Karma</em></span>
from V2.0 to 2.x</a>
@@ -81,15 +81,18 @@
the newest version of Boost.Proto
</li>
<li class="listitem">
- qi::phrase_parse, qi::phrase_format now post-skip by default.
+<code class="computeroutput"><span class="identifier">qi</span><span class="special">::</span><span class="identifier">phrase_parse</span></code>, <code class="computeroutput"><span class="identifier">qi</span><span class="special">::</span><span class="identifier">phrase_format</span></code>
+ now post-skip by default.
</li>
<li class="listitem">
- karma::generate_delimited and karma::format_delimited now don't do pre- delimiting
- by default.
+<code class="computeroutput"><span class="identifier">karma</span><span class="special">::</span><span class="identifier">generate_delimited</span></code> and <code class="computeroutput"><span class="identifier">karma</span><span class="special">::</span><span class="identifier">format_delimited</span></code>
+ now don't do pre- delimiting by default.
</li>
<li class="listitem">
- Changed parameter sequence of qi::phrase_parse, qi::phrase_match, karma::generate_delimited,
- and match_delimited. The attribute is now the last parameter.
+ Changed parameter sequence of <code class="computeroutput"><span class="identifier">qi</span><span class="special">::</span><span class="identifier">phrase_parse</span></code>,
+ <code class="computeroutput"><span class="identifier">qi</span><span class="special">::</span><span class="identifier">phrase_match</span></code>, <code class="computeroutput"><span class="identifier">karma</span><span class="special">::</span><span class="identifier">generate_delimited</span></code>,
+ and <code class="computeroutput"><span class="identifier">match_delimited</span></code>. The
+ attribute is now always the last parameter.
</li>
<li class="listitem">
Added new overloads of those functions allowing to explicitely specify the
@@ -99,43 +102,62 @@
multi attribute API functions
</li>
<li class="listitem">
- removed grammar_def<>
+ removed <code class="computeroutput"><span class="identifier">grammar_def</span><span class="special"><></span></code>
+</li>
+<li class="listitem">
+ removed functions <code class="computeroutput"><span class="identifier">make_parser</span><span class="special">()</span></code> and <code class="computeroutput"><span class="identifier">make_generator</span><span class="special">()</span></code>
+</li>
+<li class="listitem">
+ removed <code class="computeroutput"><span class="identifier">qi</span><span class="special">::</span><span class="identifier">none</span></code> and <code class="computeroutput"><span class="identifier">karma</span><span class="special">::</span><span class="identifier">none</span></code>
+</li>
+<li class="listitem">
+ sequences and lists now accept a standard container as its attribute
</li>
<li class="listitem">
- removed functions make_parser() and make<span class="underline">generator()
- * removed qi::none and karma::none * sequences and lists now accept a standard
- container as its attribute * The string placeholder terminal now can take
- other strings as its parameter (i.e. std::string) * all terminals taking
- literals now accept a (lazy) function object as well * All placeholders for
- terminals and directives (such as int</span>, double<span class="underline">,
- verbatim, etc.) were previously defined in the namespace boost::spirit only.
- Now these are additionally imported into the namespaces spirit::qi, spirit::karma,
- and spirit::lex (if they are supported by the corresponding sub-library.
- * The terminal placeholders char</span> and string are not defined in
- the namespace boost::spirit anymore as they have been moved to the character
- set namespaces, allowing to do proper character set handling based on the
- used namespace (as spirit::ascii, etc.)
+ The string placeholder terminal now can take other strings as its parameter
+ (i.e. std::string)
</li>
<li class="listitem">
- The uint, ushort, ulong, and byte terminal placeholders have been renamed
- to uint<span class="underline">, ushort</span>, ulong<span class="underline">,
- and byte</span>.
+ all terminals taking literals now accept a (lazy) function object as well
</li>
<li class="listitem">
- qi: skip[] now re-enables outer skipper if used inside lexeme[]
+ All placeholders for terminals and directives (such as <code class="computeroutput"><span class="identifier">int_</span></code>,
+ <code class="computeroutput"><span class="identifier">double_</span></code>, <code class="computeroutput"><span class="identifier">verbatim</span></code>,
+ etc.) were previously defined in the namespace <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span></code>
+ only. Now these are additionally imported into the namespaces <code class="computeroutput"><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">qi</span></code>, <code class="computeroutput"><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">karma</span></code>,
+ and <code class="computeroutput"><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">lex</span></code> (if they are supported by the corresponding
+ sub-library.
</li>
<li class="listitem">
- karma: maxwidth[] directive
+ The terminal placeholders <code class="computeroutput"><span class="identifier">char_</span></code>
+ and <code class="computeroutput"><span class="identifier">string</span></code> are not defined
+ in the namespace <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">spirit</span></code> anymore as they have been moved
+ to the character set namespaces, allowing to do proper character set handling
+ based on the used namespace (as <code class="computeroutput"><span class="identifier">spirit</span><span class="special">::</span><span class="identifier">ascii</span></code>,
+ etc.)
</li>
<li class="listitem">
- karma: delimit[] now re-enables outer delimiter if used inside verbatim[]
+ The <code class="computeroutput"><span class="identifier">uint</span></code>, <code class="computeroutput"><span class="identifier">ushort</span></code>,
+ <code class="computeroutput"><span class="identifier">ulong</span></code>, and <code class="computeroutput"><span class="identifier">byte</span></code> terminal placeholders have been renamed
+ to <code class="computeroutput"><span class="identifier">uint_</span></code>, <code class="computeroutput"><span class="identifier">ushort_</span></code>,
+ <code class="computeroutput"><span class="identifier">ulong_</span></code>, and <code class="computeroutput"><span class="identifier">byte_</span></code>.
</li>
<li class="listitem">
- karma: added and-predicate (operator&()) and not-predicate (operator!())
+ qi::skip[]<code class="computeroutput"> <span class="identifier">now</span> <span class="identifier">re</span><span class="special">-</span><span class="identifier">enables</span> <span class="identifier">outer</span> <span class="identifier">skipper</span>
+ <span class="keyword">if</span> <span class="identifier">used</span>
+ <span class="identifier">inside</span> </code>lexeme[]<code class="computeroutput"> <span class="special">*</span>
+ <span class="identifier">Added</span> </code>karma::maxwidth[]<code class="computeroutput">
+ <span class="identifier">directive</span> <span class="special">*</span>
+ </code>karma::delimit[]<code class="computeroutput"> <span class="identifier">now</span> <span class="identifier">re</span><span class="special">-</span><span class="identifier">enables</span>
+ <span class="identifier">outer</span> <span class="identifier">delimiter</span>
+ <span class="keyword">if</span> <span class="identifier">used</span>
+ <span class="identifier">inside</span> </code>verbatim[]<code class="computeroutput"> <span class="special">*</span> <span class="identifier">karma</span><span class="special">:</span> <span class="identifier">added</span> <span class="keyword">and</span><span class="special">-</span><span class="identifier">predicate</span>
+ <span class="special">(</span></code>operator&()<code class="computeroutput"><span class="special">)</span>
+ <span class="keyword">and</span> <span class="keyword">not</span><span class="special">-</span><span class="identifier">predicate</span> <span class="special">(</span></code>operator!()`)
</li>
</ul></div>
<a name="spirit.what_s_new.what_s_changed_in__emphasis_spirit_lex__emphasis__from_v2_0_to_2_x"></a><h4>
-<a name="id684607"></a>
+<a name="id661106"></a>
<a class="link" href="what_s_new.html#spirit.what_s_new.what_s_changed_in__emphasis_spirit_lex__emphasis__from_v2_0_to_2_x">What's
changed in <span class="emphasis"><em>Spirit.Lex</em></span> from V2.0 to 2.x</a>
</h4>
@@ -156,9 +178,7 @@
The lex::lexer class does not have the function <code class="computeroutput"><span class="identifier">def</span><span class="special">(</span><span class="identifier">Self</span><span class="special">&</span>
<span class="identifier">self</span><span class="special">)</span></code>
anymore, token definitions can be added to the lexer at any time, usually
- in the constructor of the user defined lexer class:
- </li>
-</ul></div>
+ in the constructor of the user defined lexer class:
<pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Lexer</span><span class="special">></span>
<span class="keyword">struct</span> <span class="identifier">example_tokens</span> <span class="special">:</span> <span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexer</span><span class="special"><</span><span class="identifier">Lexer</span><span class="special">></span>
<span class="special">{</span>
@@ -169,42 +189,57 @@
<span class="special">}</span>
<span class="special">};</span>
</pre>
-<p>
- template <typename Lexer> struct example_tokens : lex::lexer<Lexer>
- { example_lexer() { <span class="emphasis"><em>/ your token definitions here this->self =
- ... } }; * The new lexer class now can be directly used, their is no need anymore
- to wrap it using the `make_lexer()` template as before. Therefor the function
- `make_lexer()` has been removed. * The `lex::tokenize_and_parse()` and `lex::tokenize_and_phrase_parse()`
- functions have been changed to match the parameter sequence as implemented
- by the `qi::parse()` and `qi::phrase_parse()` functions. Both take a possibly
- arbitrary number of attribute arguments as its last parameters (well, the number
- of attributes is limited by the macro `SPIRIT_ARGUMENTS_LIMIT`, which defaults
- to `PHOENIX_LIMIT`). * The `lex::lexertl_lexer`, `lex::lexertl_token_set`,
- and `lex::lexertl_token` classes has been moved to the `lex::lexertl` namespace
- and the names have been changed to `lex::lexertl::lexer`, `lex::lexertl::token_set`,
- `lex::lexertl::token` (the same applies to the `lex::lexert_actor_lexer`, and
- the `static_lexertl_*` family of types). * The __lexer__ library has been updated
- to use the newest version of Ben Hansons __lexertl__ lexer construction library
- (Boost review pending). * The `lex::lexer<Lexer>` template constructor
- now takes an optional parameter specifying the `match_flags` to be used for
- table generation. Currently, there are the following flags available: ''' match_flags::match_default,
- /</em></span> no flags match_flags::match_not_dot_newline, <span class="emphasis"><em>/ the regex
- '.' doesn't match newlines match_flags::match_icase /</em></span> all matching
- operations are case insensitive If no parameter is passed to the constructor, `match_flags::match_default` is
- used, i.e. the `.` matches newlines and matching is case sensitive.
-* Now the `char_()` and `string()` placeholders can be used for token
- definitions as a replacement for `token_def`, although it is still
- possible to use the latter one.
-
-[endsect]
-
-
-'''
- If no parameter is passed to the constructor, <code class="computeroutput"><span class="identifier">match_flags</span><span class="special">::</span><span class="identifier">match_default</span></code> is
- used, i.e. the <code class="computeroutput"><span class="special">.</span></code> matches newlines and matching is case sensitive.
-* Now the <code class="computeroutput"><span class="identifier">char_</span><span class="special">()</span></code> and <code class="computeroutput"><span class="identifier">string</span><span class="special">()</span></code> placeholders can be used for token
- definitions as a replacement for <code class="computeroutput"><span class="identifier">token_def</span></code>, although it is still
- possible to use the latter one.</p>
+</li>
+<li class="listitem">
+ The new lexer class now can be directly used, their is no need anymore to
+ wrap it using the <code class="computeroutput"><span class="identifier">make_lexer</span><span class="special">()</span></code> template as before. Therefor the function
+ <code class="computeroutput"><span class="identifier">make_lexer</span><span class="special">()</span></code>
+ has been removed.
+ </li>
+<li class="listitem">
+ The <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">tokenize_and_parse</span><span class="special">()</span></code>
+ and <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">tokenize_and_phrase_parse</span><span class="special">()</span></code>
+ functions have been changed to match the parameter sequence as implemented
+ by the <code class="computeroutput"><span class="identifier">qi</span><span class="special">::</span><span class="identifier">parse</span><span class="special">()</span></code>
+ and <code class="computeroutput"><span class="identifier">qi</span><span class="special">::</span><span class="identifier">phrase_parse</span><span class="special">()</span></code>
+ functions. Both take a possibly arbitrary number of attribute arguments as
+ its last parameters (well, the number of attributes is limited by the macro
+ <code class="computeroutput"><span class="identifier">SPIRIT_ARGUMENTS_LIMIT</span></code>, which
+ defaults to <code class="computeroutput"><span class="identifier">PHOENIX_LIMIT</span></code>).
+ </li>
+<li class="listitem">
+ The <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexertl_lexer</span></code>, <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexertl_token_set</span></code>,
+ and <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexertl_token</span></code> classes has been moved to
+ the <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexertl</span></code> namespace and the names have been
+ changed to <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexertl</span><span class="special">::</span><span class="identifier">lexer</span></code>, <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexertl</span><span class="special">::</span><span class="identifier">token_set</span></code>,
+ <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexertl</span><span class="special">::</span><span class="identifier">token</span></code> (the same applies to the <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexert_actor_lexer</span></code>,
+ and the <code class="computeroutput"><span class="identifier">static_lexertl_</span><span class="special">*</span></code>
+ family of types).
+ </li>
+<li class="listitem">
+ The <span class="emphasis"><em>Spirit.Lex</em></span> library has been updated to use the newest
+ version of Ben Hansons Lexertl
+ lexer construction library (Boost review pending).
+ </li>
+<li class="listitem">
+ The <code class="computeroutput"><span class="identifier">lex</span><span class="special">::</span><span class="identifier">lexer</span><span class="special"><</span><span class="identifier">Lexer</span><span class="special">></span></code>
+ template constructor now takes an optional parameter specifying the <code class="computeroutput"><span class="identifier">match_flags</span></code> to be used for table generation.
+ Currently, there are the following flags available:
+<pre class="programlisting"><span class="identifier">match_flags</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">,</span> <span class="comment">// no flags
+</span><span class="identifier">match_flags</span><span class="special">::</span><span class="identifier">match_not_dot_newline</span><span class="special">,</span> <span class="comment">// the regex '.' doesn't match newlines
+</span><span class="identifier">match_flags</span><span class="special">::</span><span class="identifier">match_icase</span> <span class="comment">// all matching operations are case insensitive
+</span></pre>
+ If no parameter is passed to the constructor, <code class="computeroutput"><span class="identifier">match_flags</span><span class="special">::</span><span class="identifier">match_default</span></code>
+ is used, i.e. the <code class="computeroutput"><span class="special">.</span></code> matches
+ newlines and matching is case sensitive.
+ </li>
+<li class="listitem">
+ Now the <code class="computeroutput"><span class="identifier">char_</span><span class="special">()</span></code>
+ and <code class="computeroutput"><span class="identifier">string</span><span class="special">()</span></code>
+ placeholders can be used for token definitions as a replacement for <code class="computeroutput"><span class="identifier">token_def</span></code>, although it is still possible
+ to use the latter one.
+ </li>
+</ul></div>
</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/notes/style_guide.qbk
==============================================================================
--- trunk/libs/spirit/doc/notes/style_guide.qbk (original)
+++ trunk/libs/spirit/doc/notes/style_guide.qbk 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -1,5 +1,5 @@
[/==============================================================================
- Copyright (C) 2001-2008 Joel de Guzman
+ Copyright (C) 2001-2009 Joel de Guzman
Copyright (C) 2001-2009 Hartmut Kaiser
Distributed under the Boost Software License, Version 1.0. (See accompanying
@@ -11,10 +11,10 @@
keep an easy-to-read, consistent en aesthetically pleasing look to the Spirit
code, the following coding styleguide is advised.
-This coding style is adapted and extended from the ANTLR\/PCCTS style (Terrence
-Parr) and [@http://groups.yahoo.com/group/boost/files/coding_guidelines.html
-Boost coding guidelines] (David Abrahams and Nathan Myers) and is the
-combined work of Joel de Guzman, Chris Uzdavinis and Hartmut Kaiser.
+This coding style is adapted and extended from the ANTLR\/PCCTS style and
+[@http://www.boost.org/development/requirements.html Boost Library Requirements
+and Guidelines] and is the combined work of Joel de Guzman, Chris Uzdavinis,
+and Hartmut Kaiser.
* Rule names use std C++ (Boost) convention. The rule name may be very long.
* The '=' is neatly indented 4 spaces below. Like in Boost, use spaces instead
Modified: trunk/libs/spirit/doc/what_s_new.qbk
==============================================================================
--- trunk/libs/spirit/doc/what_s_new.qbk (original)
+++ trunk/libs/spirit/doc/what_s_new.qbk 2009-05-18 17:50:25 EDT (Mon, 18 May 2009)
@@ -46,37 +46,37 @@
[heading What's changed in __qi__ and __karma__ from V2.0 to 2.x]
* __spirit__ is now based on the newest version of __boost_proto__
-* qi::phrase_parse, qi::phrase_format now post-skip by default.
-* karma::generate_delimited and karma::format_delimited now don't do pre-
+* `qi::phrase_parse`, `qi::phrase_format` now post-skip by default.
+* `karma::generate_delimited` and `karma::format_delimited` now don't do pre-
delimiting by default.
-* Changed parameter sequence of qi::phrase_parse, qi::phrase_match,
- karma::generate_delimited, and match_delimited. The attribute is now the last
- parameter.
+* Changed parameter sequence of `qi::phrase_parse`, `qi::phrase_match`,
+ `karma::generate_delimited`, and `match_delimited`. The attribute is now
+ always the last parameter.
* Added new overloads of those functions allowing to explicitely specify the
post-skipping and pre-delimiting behavior.
* multi attribute API functions
-* removed grammar_def<>
-* removed functions make_parser() and make_generator()
-* removed qi::none and karma::none
+* removed `grammar_def<>`
+* removed functions `make_parser()` and `make_generator()`
+* removed `qi::none` and `karma::none`
* sequences and lists now accept a standard container as its attribute
* The string placeholder terminal now can take other strings as its parameter
(i.e. std::string)
* all terminals taking literals now accept a (lazy) function object as well
-* All placeholders for terminals and directives (such as int_, double_,
- verbatim, etc.) were previously defined in the namespace boost::spirit
+* All placeholders for terminals and directives (such as `int_`, `double_`,
+ `verbatim`, etc.) were previously defined in the namespace `boost::spirit`
only. Now these are additionally imported into the namespaces
- spirit::qi, spirit::karma, and spirit::lex (if they are supported by
+ `spirit::qi`, `spirit::karma`, and `spirit::lex` (if they are supported by
the corresponding sub-library.
-* The terminal placeholders char_ and string are not defined in the
- namespace boost::spirit anymore as they have been moved to the
+* The terminal placeholders `char_` and `string` are not defined in the
+ namespace `boost::spirit` anymore as they have been moved to the
character set namespaces, allowing to do proper character set
- handling based on the used namespace (as spirit::ascii, etc.)
-* The uint, ushort, ulong, and byte terminal placeholders have been renamed to
- uint_, ushort_, ulong_, and byte_.
-* qi: skip[] now re-enables outer skipper if used inside lexeme[]
-* karma: maxwidth[] directive
-* karma: delimit[] now re-enables outer delimiter if used inside verbatim[]
-* karma: added and-predicate (operator&()) and not-predicate (operator!())
+ handling based on the used namespace (as `spirit::ascii`, etc.)
+* The `uint`, `ushort`, `ulong`, and `byte` terminal placeholders have been
+ renamed to `uint_`, `ushort_`, `ulong_`, and `byte_`.
+* qi::skip[]` now re-enables outer skipper if used inside `lexeme[]`
+* Added `karma::maxwidth[]` directive
+* `karma::delimit[]` now re-enables outer delimiter if used inside `verbatim[]`
+* karma: added and-predicate (`operator&()`) and not-predicate (`operator!()`)
[heading What's changed in __lex__ from V2.0 to 2.x]
@@ -93,7 +93,7 @@
* The lex::lexer class does not have the function `def(Self& self)` anymore,
token definitions can be added to the lexer at any time, usually in the
constructor of the user defined lexer class:
-
+``
template <typename Lexer>
struct example_tokens : lex::lexer<Lexer>
{
@@ -103,6 +103,7 @@
this->self = ...
}
};
+``
* The new lexer class now can be directly used, their is no need anymore to
wrap it using the `make_lexer()` template as before. Therefor the function
`make_lexer()` has been removed.
@@ -117,16 +118,16 @@
changed to `lex::lexertl::lexer`, `lex::lexertl::token_set`, `lex::lexertl::token`
(the same applies to the `lex::lexert_actor_lexer`, and the `static_lexertl_*`
family of types).
-* The __lexer__ library has been updated to use the newest version of Ben
+* The __lex__ library has been updated to use the newest version of Ben
Hansons __lexertl__ lexer construction library (Boost review pending).
* The `lex::lexer<Lexer>` template constructor now takes an optional parameter
specifying the `match_flags` to be used for table generation. Currently, there
are the following flags available:
-'''
+``
match_flags::match_default, // no flags
match_flags::match_not_dot_newline, // the regex '.' doesn't match newlines
match_flags::match_icase // all matching operations are case insensitive
-'''
+``
If no parameter is passed to the constructor, `match_flags::match_default` is
used, i.e. the `.` matches newlines and matching is case sensitive.
* Now the `char_()` and `string()` placeholders can be used for token
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