Make public RouteParameters header no longer depend on Spirit

And includes the optional header that was transitively included by the
spirit header before. Hopefully this will speed up compile times, as the
RouteParameters header is used in a lot of translation units.
This commit is contained in:
Daniel J. Hofmann 2016-01-21 12:03:33 +01:00 committed by Patrick Niklaus
parent bf455c8d20
commit 54a9173107
3 changed files with 2 additions and 4 deletions

View File

@ -31,7 +31,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "osrm/coordinate.hpp"
#include <boost/fusion/container/vector/vector_fwd.hpp>
#include <boost/spirit/include/qi.hpp>
#include <boost/optional/optional.hpp>
#include <string>
#include <vector>
@ -78,7 +78,6 @@ struct RouteParameters
void AddTimestamp(const unsigned timestamp);
void AddBearing(const boost::fusion::vector<int, boost::optional<int>> &received_bearing,
boost::spirit::qi::unused_type unused,
bool &pass);
void SetLanguage(const std::string &language);

View File

@ -64,7 +64,7 @@ template <typename Iterator, class HandlerT> struct APIGrammar : qi::grammar<Ite
bearing = (-qi::lit('&')) >> qi::lit("b") >> '=' >>
(qi::int_ >>
-(qi::lit(',') >> qi::int_ |
qi::attr(10)))[boost::bind(&HandlerT::AddBearing, handler, ::_1, ::_2, ::_3)];
qi::attr(10)))[boost::bind(&HandlerT::AddBearing, handler, ::_1, ::_3)];
u = (-qi::lit('&')) >> qi::lit("u") >> '=' >>
qi::bool_[boost::bind(&HandlerT::SetUTurn, handler, ::_1)];
uturns = (-qi::lit('&')) >> qi::lit("uturns") >> '=' >>

View File

@ -100,7 +100,6 @@ void RouteParameters::AddTimestamp(const unsigned timestamp)
void RouteParameters::AddBearing(
const boost::fusion::vector<int, boost::optional<int>> &received_bearing,
boost::spirit::qi::unused_type /* unused */,
bool &pass)
{
pass = false;