15#define BOOST_PHOENIX_STL_TUPLE_H_
20#include <boost/phoenix/function.hpp>
21#include <boost/phoenix.hpp>
22#include <boost/fusion/adapted.hpp>
25namespace client {
namespace parser
27 template <
typename Iterator>
39 qi::double_type double_;
42 qi::lexeme_type lexeme;
44 qi::no_skip_type no_skip;
53 using boost::phoenix::function;
162 omit [ char_(
"'\"") [_a = _1] ]
163 >> no_skip [ *(char_ - char_(_a)) ]
171 >> raw[lexeme[(alpha |
'_') >> *(alnum |
'_')]]
176 BOOST_SPIRIT_DEBUG_NODES(
196 std::string(
"Error! Expecting "), _4, _3));
std::vector< Iterator > iters
qi::symbols< char > keywords
qi::symbols< char, ast::optoken > unary_op
qi::symbols< char, ast::optoken > multiplicative_op
qi::rule< Iterator, ast::expression(), qi::locals< char >, skipper< Iterator > > additive_expr
qi::symbols< char, ast::optoken > logical_and_op
qi::rule< Iterator, ast::expression(), qi::locals< char >, skipper< Iterator > > relational_expr
qi::rule< Iterator, std::string(), qi::locals< char >, skipper< Iterator > > quoted_string
qi::symbols< char, ast::optoken > relational_op
qi::symbols< char, ast::optoken > additive_op
qi::symbols< char, ast::optoken > logical_or_op
qi::rule< Iterator, ast::expression(), qi::locals< char >, skipper< Iterator > > logical_and_expr
expression(error_handler< Iterator > &error_handler)
qi::rule< Iterator, ast::operand(), qi::locals< char >, skipper< Iterator > > unary_expr
qi::rule< Iterator, ast::expression(), qi::locals< char >, skipper< Iterator > > equality_expr
qi::rule< Iterator, ast::function_call(), qi::locals< char >, skipper< Iterator > > function_call
qi::rule< Iterator, ast::expression(), qi::locals< char >, skipper< Iterator > > expr
qi::rule< Iterator, ast::operand(), qi::locals< char >, skipper< Iterator > > constant_expr
qi::rule< Iterator, ast::expression(), qi::locals< char >, skipper< Iterator > > multiplicative_expr
qi::symbols< char, ast::optoken > equality_op
qi::rule< Iterator, ast::operand(), qi::locals< char >, skipper< Iterator > > primary_expr
qi::rule< Iterator, ast::expression(), qi::locals< char >, skipper< Iterator > > logical_or_expr
qi::rule< Iterator, std::list< ast::function_call_argument >(), qi::locals< char >, skipper< Iterator > > argument_list
qi::rule< Iterator, std::string(), qi::locals< char >, skipper< Iterator > > identifier