[/============================================================================== Copyright (C) 2001-2015 Joel de Guzman Copyright (C) 2001-2011 Hartmut Kaiser 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) ===============================================================================/] [article Spirit [quickbook 1.5] [version 3.0.0] [authors [de Guzman, Joel], [Kaiser, Hartmut]] [copyright 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 Joel de Guzman, Hartmut Kaiser] [/ purpose Parser Library] [license 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]) ] ] [/ May 12, 2015 ] [/============================================================================== Some links and defines ===============================================================================/] [def __version__ V3.0.0] [/ external] [def __boost__ [@http://www.boost.org/ Boost]] [def __spirit__ [@http://boost-spirit.com Spirit]] [def __spirit_list__ [@https://lists.sourceforge.net/lists/listinfo/spirit-general Spirit Mailing List]] [def __spirit_general__ [@news://news.gmane.org/gmane.comp.spirit.general Spirit General NNTP news portal]] [def __gmane__ [@http://www.gmane.org Gmane]] [def __mlist_archive__ [@http://news.gmane.org/gmane.comp.parsers.spirit.general]] [def __boost_tools__ [@http://www.boost.org/tools/index.html Boost Tools]] [def __fusion__ [@boost:/libs/fusion/doc/html/index.html Boost.Fusion]] [def __boost_variant__ [@http://www.boost.org/doc/html/variant.html Boost.Variant]] [def __fwditer__ [@http://www.sgi.com/tech/stl/ForwardIterator.html `ForwardIterator`]] [def __outputiter__ [@http://www.sgi.com/tech/stl/OutputIterator.html `OutputIterator`]] [def __concepts__ [@http://www.boost.org/community/generic_programming.html#concept concepts]] [def __endianness__ [@http://en.wikipedia.org/wiki/Endianness endianness]] [def __iomanip__ [@http://www.cppreference.com/wiki/io/io_flags#manipulators Manipulators]] [def __boost_iterator_range__ [@boost:/libs/range/doc/html/range/reference/utilities/iterator_range.html `boost::iterator_range`]] [/ Some images ] [def __note__ [$./images/note.png]] [def __tip__ [$./images/tip.png]] [def __important__ [$./images/important.png]] [def __caution__ [$./images/caution.png]] [def __danger__ [$./images/alert.png]] [def __x3__ /Spirit.X3/] [def __sd_start_stop__ [$./images/start_stop.png]] [def __sd_terminals__ [$./images/terminal.png]] [def __sd_non_terminals__ [$./images/non-terminal.png]] [def __sd_sequence__ [$./images/sequence.png]] [def __sd_choice__ [$./images/alternative.png]] [def __sd_optional__ [$./images/optional.png]] [def __sd_plus__ [$./images/plus.png]] [def __sd_kleene__ [$./images/kleene.png]] [def __sd_predicate__ [$./images/predicate.png]] [def __sd_and_predicate__ [$./images/and_predicate.png]] [def __sd_not_predicate__ [$./images/not_predicate.png]] [def __pascal_string__ [$./images/pascal_string.png]] [def __rd__ Recursive Descent] [/$$$ TODO: link me $$$] [def __syntax_diagrams__ [link spirit.abstracts.syntax_diagrams Syntax Diagram]] [def __peg__ [link spirit.abstracts.parsing_expression_grammar Parsing Expression Grammar]] [def __ast__ Abstract Syntax Tree] [/$$$ TODO: link me $$$] [def __sec_x3_reference__ [/ link spirit.x3.reference] X3 Reference] [def __sec_x3_primitive__ [/ link spirit.x3.quick_reference.x3_parsers] X3 Parsers] [def __sec_x3_compound__ [/ link spirit.x3.quick_reference.compound_attribute_rules] Parser Compound Attribute Rules] [/ support] [def __info__ `info`] [/ TODO Link Me] [def __x3_error_handler__ Error Handler] [/ TODO Link Me] [def __unused_type__ `unused_type`] [/$$$ TODO: link me $$$] [def __unused__ `unused`] [/$$$ TODO: link me $$$] [def __char_class_types__ Character Class Types] [/$$$ TODO: link me $$$] [/ quick-ref] [def __x3_quickref__ [link spirit.x3.quick_reference X3 Quick Reference]] [def __x3_comp_attr_notation__ [link spirit.x3.quick_reference.compound_attribute_rules.notation Compound Attribute Notation]] [/ concepts] [def __parser_concept__ [/ link spirit.x3.reference.parser_concepts.parser] `Parser`] [def __primitive_parser_concept__ [/ link spirit.x3.reference.parser_concepts.primitiveparser] `PrimitiveParser`] [def __unary_parser_concept__ [/ link spirit.x3.reference.parser_concepts.unaryparser] `UnaryParser`] [def __binary_parser_concept__ [/ link spirit.x3.reference.parser_concepts.binaryparser] `BinaryParser`] [def __nary_parser_concept__ [/ link spirit.x3.reference.parser_concepts.naryparser] `NaryParser`] [def __x3_nonterminal__ [/ link spirit.x3.reference.parser_concepts.nonterminal] `Nonterminal`] [def __x3_nonterminal_attribute__ [/ link spirit.x3.reference.parser_concepts.nonterminal.attributes] `Attribute`] [/ basics] [def __x3_lazy_argument__ [/ link spirit.x3.reference.basics.lazy_argument] Lazy Argument] [def __x3_lazy_arguments__ [/ link spirit.x3.reference.basics.lazy_argument] Lazy Arguments] [def __char_encoding_namespace__ [/ link spirit.x3.reference.basics.character_encoding_namespace] Character Encoding Namespace] [def __x3_basics_examples__ [/ link spirit.x3.reference.basics.examples] Basics Examples] [/ string] [template x3_lit_string[str] [[/ link spirit.x3.reference.string.string] str]] [def __string__ [/ link spirit.x3.reference.basics.string] String] [def __x3_symbols__ [/ link spirit.x3.reference.string.symbols] `symbols`] [/ action] [def __x3_semantic_actions__ Semantic Actions] [/ TODO Link Me] [/ char] [template x3_char[str] [/ link spirit.x3.reference.char.char] [str]] [template x3_char_class[str] [/ link spirit.x3.reference.char.char_class] [str]] [template x3_lit_char[char] [/ link spirit.x3.reference.char.char] [char]] [/ numerics] [template x3_signed_int[str] [/ link spirit.x3.reference.numeric.int] [str]] [template x3_unsigned_int[str] [/ link spirit.x3.reference.numeric.uint] [str]] [template x3_real_number[str] [/ link spirit.x3.reference.numeric.real] [str]] [template x3_boolean[str] [/ link spirit.x3.reference.numeric.boolean] [str]] [/ binary] [template x3_native_binary[str] [/ link spirit.x3.reference.binary.binary_native] [str]] [template x3_little_binary[str] [/ link spirit.x3.reference.binary.binary_little] [str]] [template x3_big_binary[str] [/ link spirit.x3.reference.binary.binary_big] [str]] [/ auxiliary] [def __x3_attr__ [/ link spirit.x3.reference.auxiliary.attr] `attr(attrib)`] [def __x3_eol__ [/ link spirit.x3.reference.auxiliary.eol] `eol`] [def __x3_eoi__ [/ link spirit.x3.reference.auxiliary.eoi] `eoi`] [def __x3_eps__ [/ link spirit.x3.reference.auxiliary.eps] `eps`] [def __x3_lazy__ [/ link spirit.x3.reference.auxiliary.lazy] `lazy`] [/ directives] [def __x3_lexeme__ [/ link spirit.x3.reference.directive.lexeme] `lexeme`] [def __x3_no_case__ [/ link spirit.x3.reference.directive.no_case] `no_case`] [def __x3_omit__ [/ link spirit.x3.reference.directive.omit] `omit`] [def __x3_matches__ [/ link spirit.x3.reference.directive.matches] `matches`] [def __x3_raw__ [/ link spirit.x3.reference.directive.raw] `raw`] [def __x3_repeat__ [/ link spirit.x3.reference.directive.repeat] `repeat`] [template x3_repeat[str] [[/ link spirit.x3.reference.directive.repeat] str]] [def __x3_skip__ [/ link spirit.x3.reference.directive.skip] `skip`] [template x3_no_skip[str] [[/ link spirit.x3.reference.directive.no_skip] str]] [def __x3_hold__ [/ link spirit.x3.reference.directive.hold] `hold`] [def __x3_as__ [/ link spirit.x3.reference.directive.as] `as[]`] [def __x3_as_string__ [/ link spirit.x3.reference.directive.as] `as_string[]`] [def __x3_as_wstring__ [/ link spirit.x3.reference.directive.as] `as_wstring[]`] [/ operator] [def __x3_alternative__ [/ link spirit.x3.reference.operator.alternative] `a | b`] [def __x3_and_predicate__ [/ link spirit.x3.reference.operator.and_predicate] `&a`] [def __x3_difference__ [/ link spirit.x3.reference.operator.difference] `a - b`] [def __x3_expect__ [/ link spirit.x3.reference.operator.expect] `a > b`] [def __x3_expectation_failure__ [/ link spirit.x3.reference.operator.expect.expectation_failure] `expectation_failure`] [def __x3_kleene__ [/ link spirit.x3.reference.operator.kleene] `*a`] [def __x3_list__ [/ link spirit.x3.reference.operator.list] `a % b`] [def __x3_not_predicate__ [/ link spirit.x3.reference.operator.not_predicate] `!a`] [def __x3_optional__ [/ link spirit.x3.reference.operator.optional] `-a`] [def __x3_plus__ [/ link spirit.x3.reference.operator.plus] `+a`] [def __x3_sequence__ [/ link spirit.x3.reference.operator.sequence] `a >> b`] [def __x3_stream__ [/ link spirit.x3.reference.stream.stream] `stream`] [/ nonterminal] [def __x3_rule__ [/ link spirit.x3.reference.nonterminal.rule] rule] [def __x3_rules__ [/ link spirit.x3.reference.nonterminal.rule] rules] [def __x3_grammar__ [/ link spirit.x3.reference.nonterminal.grammar] grammar] [def __x3_grammars__ [/ link spirit.x3.reference.nonterminal.grammar] grammars] [/ stream] [template x3_match[str] [/ link spirit.x3.reference.parse_api.stream_api] str] [template x3_auto[str] [/ link spirit.x3.reference.auto] str] [def __create_parser__ [/ link spirit.x3.reference.parse_api.create_parser] `create_parser`] [def __parse_api__ [/ link spirit.x3.reference.parse_api] The Parse API] [/============================================================================== Documentation Start ===============================================================================/] This is the documentation of the newest version of __spirit__ (currently, __version__). [include preface.qbk] [include introduction.qbk] [include include.qbk] [include abstracts.qbk] [section Tutorials] [include tutorial/tutorial_intro.qbk] [include tutorial/warming_up.qbk] [include tutorial/actions.qbk] [include tutorial/complex.qbk] [include tutorial/sum_tutorial.qbk] [include tutorial/num_list2.qbk] [include tutorial/num_list3.qbk] [include tutorial/num_list4.qbk] [include tutorial/roman.qbk] [include tutorial/employee.qbk] [include tutorial/rexpr.qbk] [endsect] [section Quick Reference] [include quick_reference.qbk] [endsect] [/ section Reference] [/ include concepts.qbk] [/ include basics.qbk] [/ include parse_api.qbk] [/ include action.qbk] [/ include auto.qbk] [/ include auxiliary.qbk] [/ include binary.qbk] [/ include char.qbk] [/ include directive.qbk] [/ include nonterminal.qbk] [/ include numeric.qbk] [/ include operator.qbk] [/ include stream.qbk] [/ include string.qbk] [/ endsect] [/ include x3.qbk] [/ include karma.qbk] [/ include lex.qbk] [/ include advanced.qbk] [/ include support.qbk] [/ include faq.qbk] [/ include notes.qbk] [/ include rationale.qbk] [/ include repository.qbk] [/ include acknowledgments.qbk] [/ include references.qbk]