1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| struct ArgGrammar : qi::grammar<std::string::iterator, qi::blank_type>
{
ArgGrammar(Arguments & O) : ArgGrammar::base_type(start)
{
using qi::float_;
using qi::uint_;
using qi::char_;
using qi::eol;
using qi::eps;
using qi::blank;
using namespace boost;
param = "\"" >> *(char_[push_back(phoenix::ref(paramb), qi::_1)] - "\"") >> "\"" >>
eps[bind(&Arguments::maFunc, O, qi::_1)("un parametre de type string")];
start = *(l | d | a | i);
}
qi::rule<std::string::iterator, qi::blank_type> start, l, d, a, i, param, hour;
std::string paramb;
float hd, md, ha, ma;
}; |
Partager