Stan  2.5.0
probability, sampling & optimization
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
program_grammar.hpp
Go to the documentation of this file.
1 #ifndef STAN__GM__PARSER__PROGRAM_GRAMMAR__HPP
2 #define STAN__GM__PARSER__PROGRAM_GRAMMAR__HPP
3 
4 #include <string>
5 #include <sstream>
6 #include <vector>
7 
8 #include <boost/spirit/include/qi.hpp>
9 
10 #include <stan/gm/ast.hpp>
16 
17 namespace stan {
18 
19  namespace gm {
20 
21  template <typename Iterator>
23  : boost::spirit::qi::grammar<Iterator,
24  program(),
25  whitespace_grammar<Iterator> > {
26 
27  program_grammar(const std::string& model_name);
28 
29  // global info for parses
30  std::string model_name_;
32  std::stringstream error_msgs_;
33 
34  // grammars
39 
40  // rules
41 
42  boost::spirit::qi::rule<Iterator,
43  std::vector<var_decl>(),
46 
47  boost::spirit::qi::rule<Iterator,
48  std::pair<std::vector<var_decl>,
49  std::vector<statement> >(),
52 
53  boost::spirit::qi::rule<Iterator,
54  std::pair<std::vector<var_decl>,
55  std::vector<statement> >(),
58 
59  boost::spirit::qi::rule<Iterator,
60  std::pair<std::vector<var_decl>,
61  std::vector<statement> >(),
64 
65  boost::spirit::qi::rule<Iterator,
66  statement(),
69 
70  boost::spirit::qi::rule<Iterator,
71  std::vector<var_decl>(),
74 
75 
76  boost::spirit::qi::rule<Iterator,
77  program(),
80 
81  };
82 
83 
84  }
85 }
86 
87 #endif
boost::spirit::qi::rule< Iterator, std::vector< var_decl >), whitespace_grammar< Iterator > > data_var_decls_r
boost::spirit::qi::rule< Iterator, std::pair< std::vector< var_decl >, std::vector< statement > >), whitespace_grammar< Iterator > > derived_data_var_decls_r
boost::spirit::qi::rule< Iterator, std::pair< std::vector< var_decl >, std::vector< statement > >), whitespace_grammar< Iterator > > derived_var_decls_r
boost::spirit::qi::rule< Iterator, program(), whitespace_grammar< Iterator > > program_r
boost::spirit::qi::rule< Iterator, statement(), whitespace_grammar< Iterator > > model_r
program_grammar(const std::string &model_name)
statement_grammar< Iterator > statement_g
std::stringstream error_msgs_
functions_grammar< Iterator > functions_g
boost::spirit::qi::rule< Iterator, std::pair< std::vector< var_decl >, std::vector< statement > >), whitespace_grammar< Iterator > > generated_var_decls_r
boost::spirit::qi::rule< Iterator, std::vector< var_decl >), whitespace_grammar< Iterator > > param_var_decls_r
expression_grammar< Iterator > expression_g
var_decls_grammar< Iterator > var_decls_g

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