diff options
author | Anas Nashif <anas.nashif@intel.com> | 2013-08-26 08:15:55 -0400 |
---|---|---|
committer | Anas Nashif <anas.nashif@intel.com> | 2013-08-26 08:15:55 -0400 |
commit | bb4dd8289b351fae6b55e303f189127a394a1edd (patch) | |
tree | 77c9c35a31b1459dd7988c2448e797d142530c41 /tools/quickbook/src/block_element_grammar.cpp | |
parent | 1a78a62555be32868418fe52f8e330c9d0f95d5a (diff) | |
download | boost-bb4dd8289b351fae6b55e303f189127a394a1edd.tar.gz boost-bb4dd8289b351fae6b55e303f189127a394a1edd.tar.bz2 boost-bb4dd8289b351fae6b55e303f189127a394a1edd.zip |
Imported Upstream version 1.51.0upstream/1.51.0
Diffstat (limited to 'tools/quickbook/src/block_element_grammar.cpp')
-rw-r--r-- | tools/quickbook/src/block_element_grammar.cpp | 75 |
1 files changed, 41 insertions, 34 deletions
diff --git a/tools/quickbook/src/block_element_grammar.cpp b/tools/quickbook/src/block_element_grammar.cpp index f188e1379f..1f5d5daec4 100644 --- a/tools/quickbook/src/block_element_grammar.cpp +++ b/tools/quickbook/src/block_element_grammar.cpp @@ -9,7 +9,8 @@ =============================================================================*/ #include "utils.hpp" -#include "actions_class.hpp" +#include "state.hpp" +#include "actions.hpp" #include "grammar_impl.hpp" #include "block_tags.hpp" #include "template_tags.hpp" @@ -43,20 +44,26 @@ namespace quickbook block_element_grammar_local& local = cleanup_.add( new block_element_grammar_local); + // Actions + error_action error(state); + element_id_warning_action element_id_warning(state); + raw_char_action raw_char(state.phrase); + scoped_parser<to_value_scoped_action> to_value(state); + local.element_id = !( ':' - >> ( !(qbk_since(105u) >> space) - >> (+(cl::alnum_p | '_')) [actions.values.entry(ph::arg1, ph::arg2, general_tags::element_id)] - | cl::eps_p [actions.element_id_warning] + >> ( !(qbk_ver(105u) >> space) + >> (+(cl::alnum_p | '_')) [state.values.entry(ph::arg1, ph::arg2, general_tags::element_id)] + | cl::eps_p [element_id_warning] ) ) ; local.element_id_1_5 = - !(qbk_since(105u) >> local.element_id); + !(qbk_ver(105u) >> local.element_id); local.element_id_1_6 = - !(qbk_since(106u) >> local.element_id); + !(qbk_ver(106u) >> local.element_id); elements.add ("section", element_info(element_info::block, &local.begin_section, block_tags::begin_section)) @@ -110,10 +117,10 @@ namespace quickbook ; local.preformatted = - ( qbk_before(106) >> space - | qbk_since(106) >> blank >> !eol + ( qbk_ver(0, 106) >> space + | qbk_ver(106) >> blank >> !eol ) - >> actions.to_value() + >> to_value() [ inside_preformatted ] @@ -125,7 +132,7 @@ namespace quickbook local.def_macro = space - >> macro_identifier [actions.values.entry(ph::arg1, ph::arg2)] + >> macro_identifier [state.values.entry(ph::arg1, ph::arg2)] >> blank >> local.inner_phrase ; @@ -144,20 +151,20 @@ namespace quickbook local.template_ = space - >> local.template_id [actions.values.entry(ph::arg1, ph::arg2)] - >> actions.values.list()[ + >> local.template_id [state.values.entry(ph::arg1, ph::arg2)] + >> state.values.list()[ !( space >> '[' >> *( space - >> local.template_id [actions.values.entry(ph::arg1, ph::arg2)] + >> local.template_id [state.values.entry(ph::arg1, ph::arg2)] ) >> space >> ']' ) ] >> ( cl::eps_p(*cl::blank_p >> cl::eol_p) - >> local.template_body [actions.values.entry(ph::arg1, ph::arg2, template_tags::block)] - | local.template_body [actions.values.entry(ph::arg1, ph::arg2, template_tags::phrase)] + >> local.template_body [state.values.entry(ph::arg1, ph::arg2, template_tags::block)] + | local.template_body [state.values.entry(ph::arg1, ph::arg2, template_tags::phrase)] ) ; @@ -180,17 +187,17 @@ namespace quickbook local.varlistentry = space >> cl::ch_p('[') - >> actions.values.list() + >> state.values.list() [ ( local.varlistterm >> ( +local.cell - | cl::eps_p [actions.error] + | cl::eps_p [error] ) >> cl::ch_p(']') >> space ) - | cl::eps_p [actions.error] + | cl::eps_p [error] ] ; @@ -200,7 +207,7 @@ namespace quickbook >> local.inner_phrase >> ( cl::ch_p(']') >> space - | cl::eps_p [actions.error] + | cl::eps_p [error] ) ; @@ -224,22 +231,22 @@ namespace quickbook >> ( ( - actions.values.list(table_tags::row) + state.values.list(table_tags::row) [ *local.cell ] >> cl::ch_p(']') >> space ) - | cl::eps_p [actions.error] + | cl::eps_p [error] ) ; local.table_title = - qbk_before(106) - >> (*(cl::anychar_p - eol)) [actions.values.entry(ph::arg1, ph::arg2, table_tags::title)] + qbk_ver(0, 106) + >> (*(cl::anychar_p - eol)) [state.values.entry(ph::arg1, ph::arg2, table_tags::title)] >> (+eol) - | qbk_since(106) - >> actions.to_value(table_tags::title) + | qbk_ver(106) + >> to_value(table_tags::title) [ table_title_phrase ] @@ -259,7 +266,7 @@ namespace quickbook >> ( local.inner_block >> cl::ch_p(']') >> space - | cl::eps_p [actions.error] + | cl::eps_p [error] ) ; @@ -285,33 +292,33 @@ namespace quickbook !( ':' >> (*((cl::alnum_p | '_') - cl::space_p)) - [actions.values.entry(ph::arg1, ph::arg2, general_tags::include_id)] + [state.values.entry(ph::arg1, ph::arg2, general_tags::include_id)] >> space ) >> local.include_filename ; local.include_filename = - qbk_before(106u) - >> (*(cl::anychar_p - phrase_end)) [actions.values.entry(ph::arg1, ph::arg2)] - | qbk_since(106u) - >> actions.to_value() + qbk_ver(0, 106u) + >> (*(cl::anychar_p - phrase_end)) [state.values.entry(ph::arg1, ph::arg2)] + | qbk_ver(106u) + >> to_value() [ *( raw_escape | (cl::anychar_p - phrase_end) - [actions.raw_char] + [raw_char] ) ] ; local.inner_block = - actions.to_value() + to_value() [ inside_paragraph ] ; local.inner_phrase = - actions.to_value() + to_value() [ paragraph_phrase ] |