Format with clang-format 3.8
This commit is contained in:
@@ -75,8 +75,8 @@ struct BaseParametersGrammar : boost::spirit::qi::grammar<Iterator, Signature>
|
||||
BaseParametersGrammar(qi::rule<Iterator, Signature> &root_rule)
|
||||
: BaseParametersGrammar::base_type(root_rule)
|
||||
{
|
||||
const auto add_hint = [](engine::api::BaseParameters &base_parameters, const boost::optional<std::string> &hint_string)
|
||||
{
|
||||
const auto add_hint = [](engine::api::BaseParameters &base_parameters,
|
||||
const boost::optional<std::string> &hint_string) {
|
||||
if (hint_string)
|
||||
{
|
||||
base_parameters.hints.emplace_back(engine::Hint::FromBase64(hint_string.get()));
|
||||
@@ -87,64 +87,63 @@ struct BaseParametersGrammar : boost::spirit::qi::grammar<Iterator, Signature>
|
||||
}
|
||||
};
|
||||
|
||||
const auto add_bearing = [](engine::api::BaseParameters &base_parameters,
|
||||
boost::optional<boost::fusion::vector2<short, short>> bearing_range)
|
||||
{
|
||||
boost::optional<engine::Bearing> bearing;
|
||||
if (bearing_range)
|
||||
{
|
||||
bearing = engine::Bearing{boost::fusion::at_c<0>(*bearing_range),
|
||||
boost::fusion::at_c<1>(*bearing_range)};
|
||||
}
|
||||
base_parameters.bearings.push_back(std::move(bearing));
|
||||
};
|
||||
const auto add_bearing =
|
||||
[](engine::api::BaseParameters &base_parameters,
|
||||
boost::optional<boost::fusion::vector2<short, short>> bearing_range) {
|
||||
boost::optional<engine::Bearing> bearing;
|
||||
if (bearing_range)
|
||||
{
|
||||
bearing = engine::Bearing{boost::fusion::at_c<0>(*bearing_range),
|
||||
boost::fusion::at_c<1>(*bearing_range)};
|
||||
}
|
||||
base_parameters.bearings.push_back(std::move(bearing));
|
||||
};
|
||||
|
||||
polyline_chars = qi::char_("a-zA-Z0-9_.--[]{}@?|\\%~`^");
|
||||
base64_char = qi::char_("a-zA-Z0-9--_=");
|
||||
unlimited_rule = qi::lit("unlimited")[qi::_val = std::numeric_limits<double>::infinity()];
|
||||
|
||||
bearing_rule
|
||||
= (qi::short_ > ',' > qi::short_)
|
||||
[qi::_val = ph::bind([](short bearing, short range) {
|
||||
return osrm::engine::Bearing{bearing, range};
|
||||
}, qi::_1, qi::_2)]
|
||||
;
|
||||
bearing_rule =
|
||||
(qi::short_ > ',' > qi::short_)[qi::_val = ph::bind(
|
||||
[](short bearing, short range) {
|
||||
return osrm::engine::Bearing{bearing, range};
|
||||
},
|
||||
qi::_1,
|
||||
qi::_2)];
|
||||
|
||||
location_rule
|
||||
= (double_ > qi::lit(',') > double_)
|
||||
[qi::_val = ph::bind([](double lon, double lat) {
|
||||
return util::Coordinate(util::FixedLongitude(lon * COORDINATE_PRECISION),
|
||||
util::FixedLatitude(lat * COORDINATE_PRECISION));
|
||||
}, qi::_1, qi::_2)]
|
||||
;
|
||||
location_rule = (double_ > qi::lit(',') >
|
||||
double_)[qi::_val = ph::bind(
|
||||
[](double lon, double lat) {
|
||||
return util::Coordinate(
|
||||
util::FixedLongitude(lon * COORDINATE_PRECISION),
|
||||
util::FixedLatitude(lat * COORDINATE_PRECISION));
|
||||
},
|
||||
qi::_1,
|
||||
qi::_2)];
|
||||
|
||||
polyline_rule
|
||||
= qi::as_string[qi::lit("polyline(") > +polyline_chars > ')']
|
||||
[qi::_val = ph::bind([](const std::string &polyline) {
|
||||
return engine::decodePolyline(polyline);
|
||||
}, qi::_1)]
|
||||
;
|
||||
polyline_rule = qi::as_string[qi::lit("polyline(") > +polyline_chars > ')']
|
||||
[qi::_val = ph::bind(
|
||||
[](const std::string &polyline) {
|
||||
return engine::decodePolyline(polyline);
|
||||
},
|
||||
qi::_1)];
|
||||
|
||||
query_rule
|
||||
= ((location_rule % ';') | polyline_rule)
|
||||
[ph::bind(&engine::api::BaseParameters::coordinates, qi::_r1) = qi::_1]
|
||||
;
|
||||
query_rule =
|
||||
((location_rule % ';') |
|
||||
polyline_rule)[ph::bind(&engine::api::BaseParameters::coordinates, qi::_r1) = qi::_1];
|
||||
|
||||
radiuses_rule
|
||||
= qi::lit("radiuses=")
|
||||
> (-(qi::double_ | unlimited_rule) % ';')
|
||||
[ph::bind(&engine::api::BaseParameters::radiuses, qi::_r1) = qi::_1]
|
||||
;
|
||||
radiuses_rule = qi::lit("radiuses=") >
|
||||
(-(qi::double_ | unlimited_rule) %
|
||||
';')[ph::bind(&engine::api::BaseParameters::radiuses, qi::_r1) = qi::_1];
|
||||
|
||||
hints_rule
|
||||
= qi::lit("hints=")
|
||||
> (-qi::as_string[qi::repeat(engine::ENCODED_HINT_SIZE)[base64_char]])[ph::bind(add_hint, qi::_r1, qi::_1)] % ';'
|
||||
;
|
||||
hints_rule = qi::lit("hints=") >
|
||||
(-qi::as_string[qi::repeat(engine::ENCODED_HINT_SIZE)[base64_char]])[ph::bind(
|
||||
add_hint, qi::_r1, qi::_1)] %
|
||||
';';
|
||||
|
||||
bearings_rule
|
||||
= qi::lit("bearings=") >
|
||||
(-(qi::short_ > ',' > qi::short_))[ph::bind(add_bearing, qi::_r1, qi::_1)] % ';'
|
||||
;
|
||||
bearings_rule =
|
||||
qi::lit("bearings=") >
|
||||
(-(qi::short_ > ',' > qi::short_))[ph::bind(add_bearing, qi::_r1, qi::_1)] % ';';
|
||||
|
||||
base_rule = radiuses_rule(qi::_r1) | hints_rule(qi::_r1) | bearings_rule(qi::_r1);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#ifndef MATCH_PARAMETERS_GRAMMAR_HPP
|
||||
#define MATCH_PARAMETERS_GRAMMAR_HPP
|
||||
|
||||
#include "engine/api/match_parameters.hpp"
|
||||
#include "server/api/route_parameters_grammar.hpp"
|
||||
#include "engine/api/match_parameters.hpp"
|
||||
|
||||
#include <boost/spirit/include/phoenix.hpp>
|
||||
#include <boost/spirit/include/qi.hpp>
|
||||
@@ -28,15 +28,13 @@ struct MatchParametersGrammar final : public RouteParametersGrammar<Iterator, Si
|
||||
|
||||
MatchParametersGrammar() : BaseGrammar(root_rule)
|
||||
{
|
||||
timestamps_rule
|
||||
= qi::lit("timestamps=")
|
||||
> (qi::uint_ % ';')[ph::bind(&engine::api::MatchParameters::timestamps, qi::_r1) = qi::_1]
|
||||
;
|
||||
timestamps_rule =
|
||||
qi::lit("timestamps=") >
|
||||
(qi::uint_ %
|
||||
';')[ph::bind(&engine::api::MatchParameters::timestamps, qi::_r1) = qi::_1];
|
||||
|
||||
root_rule
|
||||
= BaseGrammar::query_rule(qi::_r1) > -qi::lit(".json")
|
||||
> -('?' > (timestamps_rule(qi::_r1) | BaseGrammar::base_rule(qi::_r1)) % '&')
|
||||
;
|
||||
root_rule = BaseGrammar::query_rule(qi::_r1) > -qi::lit(".json") >
|
||||
-('?' > (timestamps_rule(qi::_r1) | BaseGrammar::base_rule(qi::_r1)) % '&');
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#ifndef NEAREST_PARAMETERS_GRAMMAR_HPP
|
||||
#define NEAREST_PARAMETERS_GRAMMAR_HPP
|
||||
|
||||
#include "engine/api/nearest_parameters.hpp"
|
||||
#include "server/api/base_parameters_grammar.hpp"
|
||||
#include "engine/api/nearest_parameters.hpp"
|
||||
|
||||
#include <boost/spirit/include/phoenix.hpp>
|
||||
#include <boost/spirit/include/qi.hpp>
|
||||
@@ -28,15 +28,12 @@ struct NearestParametersGrammar final : public BaseParametersGrammar<Iterator, S
|
||||
|
||||
NearestParametersGrammar() : BaseGrammar(root_rule)
|
||||
{
|
||||
nearest_rule
|
||||
= (qi::lit("number=") > qi::uint_)
|
||||
[ph::bind(&engine::api::NearestParameters::number_of_results, qi::_r1) = qi::_1]
|
||||
;
|
||||
nearest_rule = (qi::lit("number=") >
|
||||
qi::uint_)[ph::bind(&engine::api::NearestParameters::number_of_results,
|
||||
qi::_r1) = qi::_1];
|
||||
|
||||
root_rule
|
||||
= BaseGrammar::query_rule(qi::_r1) > -qi::lit(".json")
|
||||
> -('?' > (nearest_rule(qi::_r1) | BaseGrammar::base_rule(qi::_r1)) % '&')
|
||||
;
|
||||
root_rule = BaseGrammar::query_rule(qi::_r1) > -qi::lit(".json") >
|
||||
-('?' > (nearest_rule(qi::_r1) | BaseGrammar::base_rule(qi::_r1)) % '&');
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#ifndef ROUTE_PARAMETERS_GRAMMAR_HPP
|
||||
#define ROUTE_PARAMETERS_GRAMMAR_HPP
|
||||
|
||||
#include "engine/api/route_parameters.hpp"
|
||||
#include "server/api/base_parameters_grammar.hpp"
|
||||
#include "engine/api/route_parameters.hpp"
|
||||
|
||||
#include <boost/spirit/include/phoenix.hpp>
|
||||
#include <boost/spirit/include/qi.hpp>
|
||||
@@ -28,39 +28,38 @@ struct RouteParametersGrammar : public BaseParametersGrammar<Iterator, Signature
|
||||
|
||||
RouteParametersGrammar() : RouteParametersGrammar(root_rule)
|
||||
{
|
||||
route_rule
|
||||
= (qi::lit("alternatives=") > qi::bool_[ph::bind(&engine::api::RouteParameters::alternatives, qi::_r1) = qi::_1])
|
||||
| (qi::lit("continue_straight=")
|
||||
> (qi::lit("default")
|
||||
| qi::bool_[ph::bind(&engine::api::RouteParameters::continue_straight, qi::_r1) = qi::_1]))
|
||||
;
|
||||
route_rule =
|
||||
(qi::lit("alternatives=") >
|
||||
qi::bool_[ph::bind(&engine::api::RouteParameters::alternatives, qi::_r1) = qi::_1]) |
|
||||
(qi::lit("continue_straight=") >
|
||||
(qi::lit("default") |
|
||||
qi::bool_[ph::bind(&engine::api::RouteParameters::continue_straight, qi::_r1) =
|
||||
qi::_1]));
|
||||
|
||||
root_rule
|
||||
= query_rule(qi::_r1) > -qi::lit(".json")
|
||||
> -('?' > (route_rule(qi::_r1) | base_rule(qi::_r1)) % '&')
|
||||
;
|
||||
root_rule = query_rule(qi::_r1) > -qi::lit(".json") >
|
||||
-('?' > (route_rule(qi::_r1) | base_rule(qi::_r1)) % '&');
|
||||
}
|
||||
|
||||
RouteParametersGrammar(qi::rule<Iterator, Signature> &root_rule_) : BaseGrammar(root_rule_)
|
||||
{
|
||||
geometries_type.add
|
||||
("geojson", engine::api::RouteParameters::GeometriesType::GeoJSON)
|
||||
("polyline", engine::api::RouteParameters::GeometriesType::Polyline)
|
||||
;
|
||||
geometries_type.add("geojson", engine::api::RouteParameters::GeometriesType::GeoJSON)(
|
||||
"polyline", engine::api::RouteParameters::GeometriesType::Polyline);
|
||||
|
||||
overview_type.add
|
||||
("simplified", engine::api::RouteParameters::OverviewType::Simplified)
|
||||
("full", engine::api::RouteParameters::OverviewType::Full)
|
||||
("false", engine::api::RouteParameters::OverviewType::False)
|
||||
;
|
||||
overview_type.add("simplified", engine::api::RouteParameters::OverviewType::Simplified)(
|
||||
"full", engine::api::RouteParameters::OverviewType::Full)(
|
||||
"false", engine::api::RouteParameters::OverviewType::False);
|
||||
|
||||
base_rule =
|
||||
BaseGrammar::base_rule(qi::_r1)
|
||||
| (qi::lit("steps=") > qi::bool_[ph::bind(&engine::api::RouteParameters::steps, qi::_r1) = qi::_1])
|
||||
| (qi::lit("annotations=") > qi::bool_[ph::bind(&engine::api::RouteParameters::annotations, qi::_r1) = qi::_1])
|
||||
| (qi::lit("geometries=") > geometries_type[ph::bind(&engine::api::RouteParameters::geometries, qi::_r1) = qi::_1])
|
||||
| (qi::lit("overview=") > overview_type[ph::bind(&engine::api::RouteParameters::overview, qi::_r1) = qi::_1])
|
||||
;
|
||||
BaseGrammar::base_rule(qi::_r1) |
|
||||
(qi::lit("steps=") >
|
||||
qi::bool_[ph::bind(&engine::api::RouteParameters::steps, qi::_r1) = qi::_1]) |
|
||||
(qi::lit("annotations=") >
|
||||
qi::bool_[ph::bind(&engine::api::RouteParameters::annotations, qi::_r1) = qi::_1]) |
|
||||
(qi::lit("geometries=") >
|
||||
geometries_type[ph::bind(&engine::api::RouteParameters::geometries, qi::_r1) =
|
||||
qi::_1]) |
|
||||
(qi::lit("overview=") >
|
||||
overview_type[ph::bind(&engine::api::RouteParameters::overview, qi::_r1) = qi::_1]);
|
||||
|
||||
query_rule = BaseGrammar::query_rule(qi::_r1);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#ifndef TABLE_PARAMETERS_GRAMMAR_HPP
|
||||
#define TABLE_PARAMETERS_GRAMMAR_HPP
|
||||
|
||||
#include "engine/api/table_parameters.hpp"
|
||||
#include "server/api/base_parameters_grammar.hpp"
|
||||
#include "engine/api/table_parameters.hpp"
|
||||
|
||||
#include <boost/spirit/include/phoenix.hpp>
|
||||
#include <boost/spirit/include/qi.hpp>
|
||||
@@ -37,22 +37,21 @@ struct TableParametersGrammar final : public BaseParametersGrammar<Iterator, Sig
|
||||
size_t_ = qi::ulong_;
|
||||
#endif
|
||||
|
||||
destinations_rule
|
||||
= qi::lit("destinations=")
|
||||
> (qi::lit("all") | (size_t_ % ';')[ph::bind(&engine::api::TableParameters::destinations, qi::_r1) = qi::_1])
|
||||
;
|
||||
destinations_rule =
|
||||
qi::lit("destinations=") >
|
||||
(qi::lit("all") |
|
||||
(size_t_ %
|
||||
';')[ph::bind(&engine::api::TableParameters::destinations, qi::_r1) = qi::_1]);
|
||||
|
||||
sources_rule
|
||||
= qi::lit("sources=")
|
||||
> (qi::lit("all") | (size_t_ % ';')[ph::bind(&engine::api::TableParameters::sources, qi::_r1) = qi::_1])
|
||||
;
|
||||
sources_rule =
|
||||
qi::lit("sources=") >
|
||||
(qi::lit("all") |
|
||||
(size_t_ % ';')[ph::bind(&engine::api::TableParameters::sources, qi::_r1) = qi::_1]);
|
||||
|
||||
table_rule = destinations_rule(qi::_r1) | sources_rule(qi::_r1);
|
||||
|
||||
root_rule
|
||||
= BaseGrammar::query_rule(qi::_r1) > -qi::lit(".json")
|
||||
> -('?' > (table_rule(qi::_r1) | BaseGrammar::base_rule(qi::_r1)) % '&')
|
||||
;
|
||||
root_rule = BaseGrammar::query_rule(qi::_r1) > -qi::lit(".json") >
|
||||
-('?' > (table_rule(qi::_r1) | BaseGrammar::base_rule(qi::_r1)) % '&');
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
@@ -30,13 +30,11 @@ struct TileParametersGrammar final : boost::spirit::qi::grammar<Iterator, Signat
|
||||
{
|
||||
TileParametersGrammar() : TileParametersGrammar::base_type(root_rule)
|
||||
{
|
||||
root_rule
|
||||
= qi::lit("tile(")
|
||||
> qi::uint_[ph::bind(&engine::api::TileParameters::x, qi::_r1) = qi::_1] > ','
|
||||
> qi::uint_[ph::bind(&engine::api::TileParameters::y, qi::_r1) = qi::_1] > ','
|
||||
> qi::uint_[ph::bind(&engine::api::TileParameters::z, qi::_r1) = qi::_1]
|
||||
> qi::lit(").mvt")
|
||||
;
|
||||
root_rule = qi::lit("tile(") >
|
||||
qi::uint_[ph::bind(&engine::api::TileParameters::x, qi::_r1) = qi::_1] > ',' >
|
||||
qi::uint_[ph::bind(&engine::api::TileParameters::y, qi::_r1) = qi::_1] > ',' >
|
||||
qi::uint_[ph::bind(&engine::api::TileParameters::z, qi::_r1) = qi::_1] >
|
||||
qi::lit(").mvt");
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#ifndef TRIP_PARAMETERS_GRAMMAR_HPP
|
||||
#define TRIP_PARAMETERS_GRAMMAR_HPP
|
||||
|
||||
#include "engine/api/trip_parameters.hpp"
|
||||
#include "server/api/route_parameters_grammar.hpp"
|
||||
#include "engine/api/trip_parameters.hpp"
|
||||
|
||||
#include <boost/spirit/include/qi.hpp>
|
||||
|
||||
@@ -26,10 +26,8 @@ struct TripParametersGrammar final : public RouteParametersGrammar<Iterator, Sig
|
||||
|
||||
TripParametersGrammar() : BaseGrammar(root_rule)
|
||||
{
|
||||
root_rule
|
||||
= BaseGrammar::query_rule(qi::_r1) > -qi::lit(".json")
|
||||
> -('?' > (BaseGrammar::base_rule(qi::_r1)) % '&')
|
||||
;
|
||||
root_rule = BaseGrammar::query_rule(qi::_r1) > -qi::lit(".json") >
|
||||
-('?' > (BaseGrammar::base_rule(qi::_r1)) % '&');
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user