Classes | |
struct | store_place_element |
struct | store_date |
struct | store_airline_sign |
struct | store_airline_code |
struct | store_airline_name |
struct | store_passenger_number |
struct | store_adult_passenger_type |
struct | store_child_passenger_type |
struct | store_pet_passenger_type |
struct | SearchStringParser |
struct | Place_T |
struct | Date_T |
struct | Airline_T |
struct | Passenger_T |
struct | SearchString_T |
Typedefs | |
typedef std::vector< Place_T > | PlaceList_T |
typedef std::vector< Date_T > | DateList_T |
typedef std::vector< Airline_T > | AirlineList_T |
typedef std::vector< Passenger_T > | PassengerList_T |
Functions | |
SearchString_T | parseBookingRequest (const std::string &iSearchString) |
Variables | |
boost::spirit::classic::int_parser < unsigned int, 10, 1, 1 > | int1_p |
boost::spirit::classic::uint_parser < unsigned int, 10, 1, 1 > | uint1_p |
boost::spirit::classic::uint_parser < unsigned int, 10, 1, 2 > | uint1_2_p |
boost::spirit::classic::uint_parser < int, 10, 2, 2 > | uint2_p |
boost::spirit::classic::uint_parser < int, 10, 2, 4 > | uint2_4_p |
boost::spirit::classic::uint_parser < int, 10, 4, 4 > | uint4_p |
boost::spirit::classic::uint_parser < int, 10, 1, 4 > | uint1_4_p |
typedef std::vector<Place_T> airtsp::PlaceList_T |
List of Place strucutres.
Definition at line 24 of file BookingRequestParser.hpp.
typedef std::vector<Date_T> airtsp::DateList_T |
List of Date strucutres.
Definition at line 49 of file BookingRequestParser.hpp.
typedef std::vector<Airline_T> airtsp::AirlineList_T |
List of Airline strucutres.
Definition at line 68 of file BookingRequestParser.hpp.
typedef std::vector<Passenger_T> airtsp::PassengerList_T |
List of Passenger strucutres.
Definition at line 91 of file BookingRequestParser.hpp.
SearchString_T airtsp::parseBookingRequest | ( | const std::string & | iSearchString | ) |
Parse the booking request.
Sample guadeloupe rio de janeiro 07/22/2009 +aa -ua 2 adults 1 dog
Grammar: search_string ::= places [dates] (preferred_airlines) (passengers) dates ::= board_date [off_date] places ::= [board_place] off_place board_place ::= place_elements off_place ::= place_elements place_elements ::= country | city | airport country ::= country_code | country_name city ::= city_code | city_name airport ::= airport_code | airport_name preferred_airlines ::= [+|-] airline_code | airline_name passengers ::= adult_number adult_description [child_number child_description] [pet_number pet_description] adult_description ::= 'adult' | 'adults' | 'pax' | 'passengers' child_description ::= 'child' | 'children' | 'kid' | 'kids' pet_description ::= 'dog' | 'dogs' | 'cat' | 'cats'
Definition at line 373 of file BookingRequestParser.cpp.
boost::spirit::classic::int_parser<unsigned int, 10, 1, 1> airtsp::int1_p |
1-digit-integer parser
Definition at line 203 of file BookingRequestParser.cpp.
boost::spirit::classic::uint_parser<unsigned int, 10, 1, 1> airtsp::uint1_p |
1-digit-integer parser
Definition at line 205 of file BookingRequestParser.cpp.
Referenced by airtsp::SearchStringParser::definition< ScannerT >::definition().
boost::spirit::classic::uint_parser<unsigned int, 10, 1, 2> airtsp::uint1_2_p |
Up-to-2-digit-integer parser
Definition at line 207 of file BookingRequestParser.cpp.
Referenced by airtsp::SearchStringParser::definition< ScannerT >::definition().
boost::spirit::classic::uint_parser<int, 10, 2, 2> airtsp::uint2_p |
2-digit-integer parser
Definition at line 209 of file BookingRequestParser.cpp.
Referenced by airtsp::SearchStringParser::definition< ScannerT >::definition().
boost::spirit::classic::uint_parser<int, 10, 2, 4> airtsp::uint2_4_p |
Up-to-4-digit-integer parser
Definition at line 211 of file BookingRequestParser.cpp.
boost::spirit::classic::uint_parser<int, 10, 4, 4> airtsp::uint4_p |
4-digit-integer parser
Definition at line 213 of file BookingRequestParser.cpp.
Referenced by airtsp::SearchStringParser::definition< ScannerT >::definition().
boost::spirit::classic::uint_parser<int, 10, 1, 4> airtsp::uint1_4_p |
Up-to-4-digit-integer parser
Definition at line 215 of file BookingRequestParser.cpp.