Fix grammar constraint and enable all plugin links
This commit is contained in:
parent
43d1e40284
commit
e4dace1d51
@ -21,7 +21,6 @@ namespace api
|
|||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T> using is_parameter_t = std::is_base_of<engine::api::BaseParameters, T>;
|
template <typename T> using is_parameter_t = std::is_base_of<engine::api::BaseParameters, T>;
|
||||||
template <typename T> using is_grammar_t = std::is_base_of<BaseParametersGrammar, T>;
|
|
||||||
} // ns detail
|
} // ns detail
|
||||||
|
|
||||||
// Starts parsing and iter and modifies it until iter == end or parsing failed
|
// Starts parsing and iter and modifies it until iter == end or parsing failed
|
||||||
|
@ -3,10 +3,8 @@
|
|||||||
#include "server/api/route_parameters_grammar.hpp"
|
#include "server/api/route_parameters_grammar.hpp"
|
||||||
#include "server/api/table_parameter_grammar.hpp"
|
#include "server/api/table_parameter_grammar.hpp"
|
||||||
#include "server/api/nearest_parameter_grammar.hpp"
|
#include "server/api/nearest_parameter_grammar.hpp"
|
||||||
//#include "server/api/trip_parameter_grammar.hpp"
|
#include "server/api/trip_parameter_grammar.hpp"
|
||||||
//#include "server/api/match_parameter_grammar.hpp"
|
#include "server/api/match_parameter_grammar.hpp"
|
||||||
|
|
||||||
#include <type_traits>
|
|
||||||
|
|
||||||
namespace osrm
|
namespace osrm
|
||||||
{
|
{
|
||||||
@ -17,11 +15,12 @@ namespace api
|
|||||||
|
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
|
template <typename T> using is_grammar_t = std::is_base_of<BaseParametersGrammar, T>;
|
||||||
|
|
||||||
template <typename ParameterT,
|
template <typename ParameterT,
|
||||||
typename GrammarT,
|
typename GrammarT,
|
||||||
typename std::enable_if<detail::is_parameter_t<ParameterT>::value, int>::type = 0,
|
typename std::enable_if<detail::is_parameter_t<ParameterT>::value, int>::type = 0,
|
||||||
typename std::enable_if<detail::is_grammar_t<ParameterT>::value, int>::type = 0>
|
typename std::enable_if<detail::is_grammar_t<GrammarT>::value, int>::type = 0>
|
||||||
boost::optional<ParameterT> parseParameters(std::string::iterator &iter, std::string::iterator end)
|
boost::optional<ParameterT> parseParameters(std::string::iterator &iter, std::string::iterator end)
|
||||||
{
|
{
|
||||||
GrammarT grammar;
|
GrammarT grammar;
|
||||||
@ -57,20 +56,19 @@ boost::optional<engine::api::NearestParameters> parseParameters(std::string::ite
|
|||||||
end);
|
end);
|
||||||
}
|
}
|
||||||
|
|
||||||
// template <>
|
template <>
|
||||||
// boost::optional<engine::api::TripParameters> parseParameters(std::string::iterator &iter,
|
boost::optional<engine::api::TripParameters> parseParameters(std::string::iterator &iter,
|
||||||
// std::string::iterator end)
|
std::string::iterator end)
|
||||||
//{
|
{
|
||||||
// return detail::parseParameters<engine::api::TripParameters, TripParametersGrammar>(iter, end);
|
return detail::parseParameters<engine::api::TripParameters, TripParametersGrammar>(iter, end);
|
||||||
//}
|
}
|
||||||
//
|
|
||||||
// template <>
|
template <>
|
||||||
// boost::optional<engine::api::MatchParameters> parseParameters(std::string::iterator &iter,
|
boost::optional<engine::api::MatchParameters> parseParameters(std::string::iterator &iter,
|
||||||
// std::string::iterator end)
|
std::string::iterator end)
|
||||||
//{
|
{
|
||||||
// return detail::parseParameters<engine::api::MatchParameters, MatchParametersGrammar>(iter,
|
return detail::parseParameters<engine::api::MatchParameters, MatchParametersGrammar>(iter, end);
|
||||||
// end);
|
}
|
||||||
//}
|
|
||||||
|
|
||||||
} // ns api
|
} // ns api
|
||||||
} // ns server
|
} // ns server
|
||||||
|
Loading…
Reference in New Issue
Block a user