1 #ifndef __STAN__GM__PARSER__STATEMENT_GRAMMAR__HPP__
2 #define __STAN__GM__PARSER__STATEMENT_GRAMMAR__HPP__
8 #include <boost/spirit/include/qi.hpp>
20 template <
typename Iterator>
22 : boost::spirit::qi::grammar<Iterator,
23 statement(bool,var_origin),
24 whitespace_grammar<Iterator> > {
29 std::stringstream& error_msgs);
42 boost::spirit::qi::rule<Iterator,
48 boost::spirit::qi::rule<Iterator,
49 std::vector<expression>(),
54 boost::spirit::qi::rule<Iterator,
60 boost::spirit::qi::rule<Iterator,
61 boost::spirit::qi::locals<std::string>,
67 boost::spirit::qi::rule<Iterator,
73 boost::spirit::qi::rule<Iterator,
79 boost::spirit::qi::rule<Iterator,
84 boost::spirit::qi::rule<Iterator,
90 boost::spirit::qi::rule<Iterator,
95 boost::spirit::qi::rule<Iterator,
96 std::vector<var_decl>(),
100 boost::spirit::qi::rule<Iterator,
105 boost::spirit::qi::rule<Iterator,
106 std::vector<expression>(),
110 boost::spirit::qi::rule<Iterator,
115 boost::spirit::qi::rule<Iterator,
120 boost::spirit::qi::rule<Iterator,
125 boost::spirit::qi::rule<Iterator,
126 boost::spirit::qi::locals<std::vector<var_decl> >,
131 boost::spirit::qi::rule<Iterator,
136 boost::spirit::qi::rule<Iterator,
Probability, optimization and sampling library.
boost::spirit::qi::rule< Iterator, range(), whitespace_grammar< Iterator > > truncation_range_r
boost::spirit::qi::rule< Iterator, boost::spirit::qi::locals< std::vector< var_decl > >, statements(bool, var_origin), whitespace_grammar< Iterator > > statement_seq_r
boost::spirit::qi::rule< Iterator, no_op_statement(), whitespace_grammar< Iterator > > no_op_statement_r
boost::spirit::qi::rule< Iterator, distribution(), whitespace_grammar< Iterator > > distribution_r
boost::spirit::qi::rule< Iterator, range(), whitespace_grammar< Iterator > > range_r
boost::spirit::qi::rule< Iterator, std::string(), whitespace_grammar< Iterator > > identifier_r
boost::spirit::qi::rule< Iterator, std::vector< expression >), whitespace_grammar< Iterator > > dims_r
boost::spirit::qi::rule< Iterator, boost::spirit::qi::locals< std::string >, for_statement(bool, var_origin), whitespace_grammar< Iterator > > for_statement_r
boost::spirit::qi::rule< Iterator, std::string(), whitespace_grammar< Iterator > > printable_string_r
statement_2_grammar< Iterator > statement_2_g
std::stringstream & error_msgs_
statement_grammar(variable_map &var_map, std::stringstream &error_msgs)
var_decls_grammar< Iterator > var_decls_g
boost::spirit::qi::rule< Iterator, print_statement(), whitespace_grammar< Iterator > > print_statement_r
expression_grammar< Iterator > expression_g
boost::spirit::qi::rule< Iterator, while_statement(bool, var_origin), whitespace_grammar< Iterator > > while_statement_r
boost::spirit::qi::rule< Iterator, variable_dims(), whitespace_grammar< Iterator > > var_lhs_r
boost::spirit::qi::rule< Iterator, std::vector< var_decl >), whitespace_grammar< Iterator > > local_var_decls_r
boost::spirit::qi::rule< Iterator, printable(), whitespace_grammar< Iterator > > printable_r
boost::spirit::qi::rule< Iterator, assignment(), whitespace_grammar< Iterator > > assignment_r
boost::spirit::qi::rule< Iterator, sample(bool), whitespace_grammar< Iterator > > sample_r
boost::spirit::qi::rule< Iterator, statement(bool, var_origin), whitespace_grammar< Iterator > > statement_r
boost::spirit::qi::rule< Iterator, std::vector< expression >), whitespace_grammar< Iterator > > opt_dims_r