2 #ifndef GAUDIPROPERTYPARSERS_PARSERSGENERATOR_H
3 #define GAUDIPROPERTYPARSERS_PARSERSGENERATOR_H 1
15 #include <boost/mpl/assert.hpp>
16 #include <boost/type_traits.hpp>
26 typedef std::string::const_iterator
IteratorT;
31 parse_(ResultT& result,
const std::string& input){
34 IteratorT iter = input.begin(),
end = input.end();
35 return qi::phrase_parse( iter,
end, g, skipper , result) && (iter==
end);
39 parse_(std::string& result,
const std::string& input){
42 IteratorT iter = input.begin(),
end = input.end();
43 if (!(qi::phrase_parse( iter,
end, g, skipper, result) && (iter==
end))){
51 parse(ResultT& result,
const std::string& input){
53 return parse_(result, input);
59 #endif // GAUDIPROPERTYPARSERS_PARSERSGENERATOR_H
StatusCode parse_(ResultT &result, const std::string &input)
SkipperGrammar< IteratorT > Skipper
StatusCode parse(GaudiUtils::HashMap< K, V > &result, const std::string &input)
Basic parser for the types of HashMap used in DODBasicMapper.
boost::spirit::position_iterator< string::const_iterator > IteratorT
the actual type of position iterator
This class is used for returning status codes from appropriate routines.
Skipping spaces and comments.
Helper functions to set/get the application return code.