1 #ifndef __AIRINV_CMD_DCPPARSERHELPER_HPP 2 #define __AIRINV_CMD_DCPPARSERHELPER_HPP 10 #include <stdair/basic/BasParserTypes.hpp> 11 #include <stdair/command/CmdAbstract.hpp> 14 #include <airinv/bom/DCPRuleStruct.hpp> 23 namespace DCPParserHelper {
42 void operator() (
unsigned int,
43 boost::spirit::qi::unused_type,
44 boost::spirit::qi::unused_type)
const;
52 void operator() (std::vector<char>,
53 boost::spirit::qi::unused_type,
54 boost::spirit::qi::unused_type)
const;
62 void operator() (std::vector<char>,
63 boost::spirit::qi::unused_type,
64 boost::spirit::qi::unused_type)
const;
72 void operator() (boost::spirit::qi::unused_type,
73 boost::spirit::qi::unused_type,
74 boost::spirit::qi::unused_type)
const;
82 void operator() (boost::spirit::qi::unused_type,
83 boost::spirit::qi::unused_type,
84 boost::spirit::qi::unused_type)
const;
92 void operator() (boost::spirit::qi::unused_type,
93 boost::spirit::qi::unused_type,
94 boost::spirit::qi::unused_type)
const;
102 void operator() (boost::spirit::qi::unused_type,
103 boost::spirit::qi::unused_type,
104 boost::spirit::qi::unused_type)
const;
112 void operator() (std::vector<char>,
113 boost::spirit::qi::unused_type,
114 boost::spirit::qi::unused_type)
const;
122 void operator() (
char,
123 boost::spirit::qi::unused_type,
124 boost::spirit::qi::unused_type)
const;
132 void operator() (std::vector<char>,
133 boost::spirit::qi::unused_type,
134 boost::spirit::qi::unused_type)
const;
142 void operator() (
unsigned int,
143 boost::spirit::qi::unused_type,
144 boost::spirit::qi::unused_type)
const;
152 void operator() (
char,
153 boost::spirit::qi::unused_type,
154 boost::spirit::qi::unused_type)
const;
162 void operator() (
char,
163 boost::spirit::qi::unused_type,
164 boost::spirit::qi::unused_type)
const;
172 void operator() (
char,
173 boost::spirit::qi::unused_type,
174 boost::spirit::qi::unused_type)
const;
182 void operator() (
unsigned int,
183 boost::spirit::qi::unused_type,
184 boost::spirit::qi::unused_type)
const;
192 void operator() (
double,
193 boost::spirit::qi::unused_type,
194 boost::spirit::qi::unused_type)
const;
202 void operator() (std::vector<char>,
203 boost::spirit::qi::unused_type,
204 boost::spirit::qi::unused_type)
const;
212 void operator() (std::vector<char>,
213 boost::spirit::qi::unused_type,
214 boost::spirit::qi::unused_type)
const;
220 doEndDCP (stdair::BomRoot&, DCPRuleStruct&);
222 void operator() (boost::spirit::qi::unused_type,
223 boost::spirit::qi::unused_type,
224 boost::spirit::qi::unused_type)
const;
305 public boost::spirit::qi::grammar<stdair::iterator_t,
306 boost::spirit::ascii::space_type> {
312 boost::spirit::ascii::space_type>
313 start, comments, DCP_rule, DCP_rule_end, DCP_key, DCP_id, origin,
315 timeRangeEnd, time, position, cabinCode, channel, advancePurchase,
316 saturdayStay, changeFees, nonRefundable, minimumStay, DCP,
341 const stdair::Filename_T& iFilename);
344 bool generateDCPRules ();
353 stdair::Filename_T _filename;
356 stdair::BomRoot& _bomRoot;
359 DCPRuleStruct _DCPRule;
363 #endif // __AIRINV_CMD_DCPPARSERHELPER_HPP stdair::BomRoot & _bomRoot
stdair::BomRoot & _bomRoot
boost::spirit::qi::rule< stdair::iterator_t, boost::spirit::ascii::space_type > timeRangeStart
boost::spirit::classic::file_iterator< char_t > iterator_t