Stan  2.10.0
probability, sampling & optimization
statement_grammar.hpp
Go to the documentation of this file.
1 #ifndef STAN_LANG_GRAMMARS_STATEMENT_GRAMMAR_HPP
2 #define STAN_LANG_GRAMMARS_STATEMENT_GRAMMAR_HPP
3 
4 #include <stan/lang/ast.hpp>
11 #include <boost/spirit/include/qi.hpp>
12 #include <sstream>
13 #include <string>
14 #include <vector>
15 
16 namespace stan {
17 
18  namespace lang {
19 
20  template <typename Iterator>
21  struct statement_grammar
22  : boost::spirit::qi::grammar<Iterator,
23  statement(bool, var_origin, bool),
24  whitespace_grammar<Iterator> > {
25  statement_grammar(variable_map& var_map,
26  std::stringstream& error_msgs);
27 
29  std::stringstream& error_msgs_;
34 
35  boost::spirit::qi::rule<Iterator,
39 
40  boost::spirit::qi::rule<Iterator,
44 
45  boost::spirit::qi::rule<Iterator,
46  boost::spirit::qi::unused_type,
49 
50 
51  boost::spirit::qi::rule<Iterator,
55 
56 
57  boost::spirit::qi::rule<Iterator,
58  std::vector<expression>(var_origin),
61 
62  boost::spirit::qi::rule<Iterator,
66 
67 
68  boost::spirit::qi::rule<Iterator,
72 
73 
74  boost::spirit::qi::rule<Iterator,
78 
79  boost::spirit::qi::rule<Iterator,
83 
84  boost::spirit::qi::rule<Iterator,
85  boost::spirit::qi::locals<std::string>,
86  for_statement(bool, var_origin, bool),
89 
90 
91  boost::spirit::qi::rule<Iterator,
92  while_statement(bool, var_origin, bool),
95 
96 
97  boost::spirit::qi::rule<Iterator,
101 
102  boost::spirit::qi::rule<Iterator,
106 
107 
108  boost::spirit::qi::rule<Iterator,
112 
113  boost::spirit::qi::rule<Iterator,
117 
118  boost::spirit::qi::rule<Iterator,
122 
123  boost::spirit::qi::rule<Iterator,
124  std::string(),
127 
128 
129  boost::spirit::qi::rule<Iterator,
130  std::string(),
133 
134  boost::spirit::qi::rule<Iterator,
135  std::vector<var_decl>(),
138 
139  boost::spirit::qi::rule<Iterator,
140  no_op_statement(),
143 
144  boost::spirit::qi::rule<Iterator,
145  std::vector<expression>(var_origin),
148 
149  boost::spirit::qi::rule<Iterator,
150  range(var_origin),
153 
154  boost::spirit::qi::rule<Iterator,
155  sample(bool, var_origin),
158 
159  boost::spirit::qi::rule<Iterator,
160  statement(bool, var_origin, bool),
163 
164  boost::spirit::qi::rule<Iterator,
165  statement(bool, var_origin, bool),
168 
169  boost::spirit::qi::rule<Iterator,
170  boost::spirit::qi::locals<std::vector<var_decl> >,
171  statements(bool, var_origin, bool),
174 
175  boost::spirit::qi::rule<Iterator,
176  range(var_origin),
179 
180  boost::spirit::qi::rule<Iterator,
184 
185  boost::spirit::qi::rule<Iterator,
189  };
190 
191  }
192 }
193 #endif
boost::spirit::qi::rule< Iterator, increment_log_prob_statement(bool, var_origin), whitespace_grammar< Iterator > > increment_target_statement_r
boost::spirit::qi::rule< Iterator, std::vector< expression >var_origin), whitespace_grammar< Iterator > > dims_r
indexes_grammar< Iterator > indexes_g
boost::spirit::qi::rule< Iterator, assignment(var_origin), whitespace_grammar< Iterator > > assignment_r
boost::spirit::qi::rule< Iterator, range(var_origin), whitespace_grammar< Iterator > > range_r
boost::spirit::qi::rule< Iterator, std::vector< var_decl >), whitespace_grammar< Iterator > > local_var_decls_r
void sample(stan::mcmc::base_mcmc *sampler, int num_warmup, int num_samples, int num_thin, int refresh, bool save, stan::services::sample::mcmc_writer< Model, SampleRecorder, DiagnosticRecorder, MessageRecorder > &mcmc_writer, stan::mcmc::sample &init_s, Model &model, RNG &base_rng, const std::string &prefix, const std::string &suffix, std::ostream &o, StartTransitionCallback &callback, interface_callbacks::writer::base_writer &info_writer, interface_callbacks::writer::base_writer &error_writer)
Definition: sample.hpp:17
Probability, optimization and sampling library.
boost::spirit::qi::rule< Iterator, variable(var_origin), whitespace_grammar< Iterator > > var_r
boost::spirit::qi::rule< Iterator, printable(var_origin), whitespace_grammar< Iterator > > printable_r
boost::spirit::qi::rule< Iterator, statement(bool, var_origin, bool), whitespace_grammar< Iterator > > statement_r
boost::spirit::qi::rule< Iterator, statement(bool, var_origin, bool), whitespace_grammar< Iterator > > statement_sub_r
boost::spirit::qi::rule< Iterator, boost::spirit::qi::unused_type, whitespace_grammar< Iterator > > assignment_operator_r
expression_grammar< Iterator > expression_g
statement_grammar(variable_map &var_map, std::stringstream &error_msgs)
boost::spirit::qi::rule< Iterator, distribution(var_origin), whitespace_grammar< Iterator > > distribution_r
boost::spirit::qi::rule< Iterator, boost::spirit::qi::locals< std::vector< var_decl > >, statements(bool, var_origin, bool), 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, range(var_origin), whitespace_grammar< Iterator > > truncation_range_r
boost::spirit::qi::rule< Iterator, print_statement(var_origin), whitespace_grammar< Iterator > > print_statement_r
boost::spirit::qi::rule< Iterator, while_statement(bool, var_origin, bool), whitespace_grammar< Iterator > > while_statement_r
int var_origin
Definition: ast.hpp:76
boost::spirit::qi::rule< Iterator, sample(bool, var_origin), whitespace_grammar< Iterator > > sample_r
boost::spirit::qi::rule< Iterator, assgn(var_origin), whitespace_grammar< Iterator > > assgn_r
boost::spirit::qi::rule< Iterator, return_statement(var_origin), whitespace_grammar< Iterator > > return_statement_r
boost::spirit::qi::rule< Iterator, boost::spirit::qi::locals< std::string >, for_statement(bool, var_origin, bool), whitespace_grammar< Iterator > > for_statement_r
boost::spirit::qi::rule< Iterator, expression(var_origin), whitespace_grammar< Iterator > > expression_rhs_r
boost::spirit::qi::rule< Iterator, reject_statement(var_origin), whitespace_grammar< Iterator > > reject_statement_r
boost::spirit::qi::rule< Iterator, std::string(), whitespace_grammar< Iterator > > identifier_r
boost::spirit::qi::rule< Iterator, std::vector< expression >var_origin), whitespace_grammar< Iterator > > opt_dims_r
boost::spirit::qi::rule< Iterator, std::string(), whitespace_grammar< Iterator > > printable_string_r
boost::spirit::qi::rule< Iterator, variable_dims(var_origin), whitespace_grammar< Iterator > > var_lhs_r
statement_2_grammar< Iterator > statement_2_g
var_decls_grammar< Iterator > var_decls_g
boost::spirit::qi::rule< Iterator, return_statement(var_origin), whitespace_grammar< Iterator > > void_return_statement_r
boost::spirit::qi::rule< Iterator, expression(var_origin), whitespace_grammar< Iterator > > non_lvalue_assign_r
boost::spirit::qi::rule< Iterator, increment_log_prob_statement(bool, var_origin), whitespace_grammar< Iterator > > increment_log_prob_statement_r

     [ Stan Home Page ] © 2011–2016, Stan Development Team.