AirSched Logo  0.1.4
C++ Simulated Airline Schedule Manager Library
airsched Namespace Reference

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_TPlaceList_T
typedef std::vector< Date_TDateList_T
typedef std::vector< Airline_TAirlineList_T
typedef std::vector< Passenger_TPassengerList_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 Documentation

List of Place strucutres.

Definition at line 24 of file BookingRequestParser.hpp.

List of Date strucutres.

Definition at line 49 of file BookingRequestParser.hpp.

List of Airline strucutres.

Definition at line 68 of file BookingRequestParser.hpp.

List of Passenger strucutres.

Definition at line 91 of file BookingRequestParser.hpp.


Function Documentation

SearchString_T airsched::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.


Variable Documentation

boost::spirit::classic::int_parser<unsigned int, 10, 1, 1> airsched::int1_p

1-digit-integer parser

Definition at line 203 of file BookingRequestParser.cpp.

boost::spirit::classic::uint_parser<unsigned int, 10, 1, 1> airsched::uint1_p

1-digit-integer parser

Definition at line 205 of file BookingRequestParser.cpp.

Referenced by airsched::SearchStringParser::definition::definition().

boost::spirit::classic::uint_parser<unsigned int, 10, 1, 2> airsched::uint1_2_p

Up-to-2-digit-integer parser

Definition at line 207 of file BookingRequestParser.cpp.

Referenced by airsched::SearchStringParser::definition::definition().

boost::spirit::classic::uint_parser<int, 10, 2, 2> airsched::uint2_p

2-digit-integer parser

Definition at line 209 of file BookingRequestParser.cpp.

Referenced by airsched::SearchStringParser::definition::definition().

boost::spirit::classic::uint_parser<int, 10, 2, 4> airsched::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> airsched::uint4_p

4-digit-integer parser

Definition at line 213 of file BookingRequestParser.cpp.

Referenced by airsched::SearchStringParser::definition::definition().

boost::spirit::classic::uint_parser<int, 10, 1, 4> airsched::uint1_4_p

Up-to-4-digit-integer parser

Definition at line 215 of file BookingRequestParser.cpp.