1 #ifndef __STAN__GM__PARSER__STATEMENT_GRAMMAR__HPP__
2 #define __STAN__GM__PARSER__STATEMENT_GRAMMAR__HPP__
8 #include <boost/spirit/include/qi.hpp>
19 template <
typename Iterator>
21 : boost::spirit::qi::grammar<Iterator,
22 statement(bool,var_origin),
23 whitespace_grammar<Iterator> > {
28 std::stringstream& error_msgs);
40 boost::spirit::qi::rule<Iterator,
45 boost::spirit::qi::rule<Iterator,
46 std::vector<expression>(),
50 boost::spirit::qi::rule<Iterator,
55 boost::spirit::qi::rule<Iterator,
56 boost::spirit::qi::locals<std::string>,
61 boost::spirit::qi::rule<Iterator,
66 boost::spirit::qi::rule<Iterator,
71 boost::spirit::qi::rule<Iterator,
77 boost::spirit::qi::rule<Iterator,
82 boost::spirit::qi::rule<Iterator,
83 std::vector<var_decl>(),
87 boost::spirit::qi::rule<Iterator,
92 boost::spirit::qi::rule<Iterator,
93 std::vector<expression>(),
97 boost::spirit::qi::rule<Iterator,
102 boost::spirit::qi::rule<Iterator,
107 boost::spirit::qi::rule<Iterator,
112 boost::spirit::qi::rule<Iterator,
113 boost::spirit::qi::locals<std::vector<var_decl> >,
118 boost::spirit::qi::rule<Iterator,
123 boost::spirit::qi::rule<Iterator,