Stan  2.10.0
probability, sampling & optimization
indexes_grammar.hpp
Go to the documentation of this file.
1 #ifndef STAN_LANG_GRAMMARS_INDEXES_GRAMMAR_HPP
2 #define STAN_LANG_GRAMMARS_INDEXES_GRAMMAR_HPP
3 
4 #include <stan/lang/ast.hpp>
8 #include <boost/spirit/include/qi.hpp>
9 #include <string>
10 #include <sstream>
11 #include <vector>
12 
13 namespace stan {
14 
15  namespace lang {
16 
17  // needed to break circularity of expression grammar including indexes
18  template <typename Iterator>
19  struct expression_grammar;
20 
21  template <typename Iterator>
23  : boost::spirit::qi::grammar<Iterator,
24  std::vector<idx>(var_origin),
25  whitespace_grammar<Iterator> > {
27  std::stringstream& error_msgs_;
29 
31  std::stringstream& error_msgs,
33 
34  boost::spirit::qi::rule<Iterator,
35  std::vector<idx>(var_origin),
38 
39  boost::spirit::qi::rule<Iterator,
40  idx(var_origin),
43 
44 
45  boost::spirit::qi::rule<Iterator,
49 
50  boost::spirit::qi::rule<Iterator,
54 
55  boost::spirit::qi::rule<Iterator,
59 
60  boost::spirit::qi::rule<Iterator,
64 
65  boost::spirit::qi::rule<Iterator,
69 
70 
71  boost::spirit::qi::rule<Iterator,
75 
76  boost::spirit::qi::rule<Iterator,
80  };
81 
82  }
83 }
84 #endif
boost::spirit::qi::rule< Iterator, multi_idx(var_origin), whitespace_grammar< Iterator > > multi_index_r
std::stringstream & error_msgs_
Probability, optimization and sampling library.
boost::spirit::qi::rule< Iterator, ub_idx(var_origin), whitespace_grammar< Iterator > > ub_index_r
boost::spirit::qi::rule< Iterator, lub_idx(var_origin), whitespace_grammar< Iterator > > lub_index_r
indexes_grammar(variable_map &var_map, std::stringstream &error_msgs, expression_grammar< Iterator > &eg)
boost::spirit::qi::rule< Iterator, uni_idx(var_origin), whitespace_grammar< Iterator > > uni_index_r
boost::spirit::qi::rule< Iterator, omni_idx(var_origin), whitespace_grammar< Iterator > > omni_index_r
expression_grammar< Iterator > & expression_g
boost::spirit::qi::rule< Iterator, idx(var_origin), whitespace_grammar< Iterator > > index_r
int var_origin
Definition: ast.hpp:76
boost::spirit::qi::rule< Iterator, lb_idx(var_origin), whitespace_grammar< Iterator > > lb_index_r
boost::spirit::qi::rule< Iterator, expression(var_origin), whitespace_grammar< Iterator > > int_expression_r
boost::spirit::qi::rule< Iterator, std::vector< idx >var_origin), whitespace_grammar< Iterator > > indexes_r

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