24 #include <boost/config/warning_disable.hpp>
25 #include <boost/spirit/include/qi.hpp>
26 #include <boost/fusion/include/adapt_struct.hpp>
27 #include <boost/optional.hpp>
29 #define BOOST_SPIRIT_NO_PREDEFINED_TERMINALS
30 #define BOOST_SPIRIT_QI_DEBUG
77 (boost::optional<SDDS::description>, sddsDescription_m)
86 namespace SDDS {
namespace parser
88 namespace qi = boost::spirit::qi;
89 namespace ascii = boost::spirit::ascii;
90 namespace phx = boost::phoenix;
92 template <
typename Iterator>
93 struct file_parser: qi::grammar<Iterator, file(), skipper<Iterator> >
95 file_parser(error_handler<Iterator> & _error_handler);
97 version_parser<Iterator> version_m;
98 description_parser<Iterator> description_m;
99 parameter_parser<Iterator> parameter_m;
100 column_parser<Iterator> column_m;
101 data_parser<Iterator> data_m;
102 associate_parser<Iterator> associate_m;
103 array_parser<Iterator> array_m;
104 include_parser<Iterator> include_m;
105 qi::rule<Iterator, file(), skipper<Iterator> > start;
associateList sddsAssociates_m
BOOST_FUSION_ADAPT_STRUCT(SDDS::column,(boost::optional< std::string >, name_m)(boost::optional< SDDS::ast::datatype >, type_m)(boost::optional< std::string >, units_m)(boost::optional< std::string >, description_m)(SDDS::ast::variant_t, value_m)) namespace SDDS
includeList sddsIncludes_m
parameterList sddsParameters_m
boost::optional< description > sddsDescription_m
std::ostream & operator<<(std::ostream &out, const array &)
Inform & endl(Inform &inf)