Template Struct module_overload

Struct Documentation

template<typename Function, template<typename> class CompositorT = compositors::transparent>
struct udho::module_overload

Public Types

typedef Function function_type
typedef module_overload<Function, CompositorT> self_type
typedef internal::function_signature<Function>::return_type return_type
typedef internal::function_signature<Function>::tuple_type tuple_type
typedef internal::function_signature<Function>::arguments_type arguments_type
typedef CompositorT<return_type> compositor_type
typedef compositor_type::response_type response_type

Public Functions

module_overload(boost::beast::http::verb request_method, function_type f, compositor_type compositor = compositor_type())
module_overload(const self_type &other)
std::string pattern() const
self_type &operator=(const std::string &pattern)
bool feasible(boost::beast::http::verb request_method, const std::string &subject) const

check number of arguments supplied on runtime and number of arguments with which this overload has been prepared at compile time.

template<typename T>
return_type call(T &value, const std::vector<std::string> &args)
template<typename T>
response_type operator()(T &value, const std::vector<std::string> &args)
template<typename T>
response_type operator()(T &value, const std::string &subject)
module_info info() const

Public Members

boost::beast::http::verb _request_method
std::string _pattern
function_type _function
compositor_type _compositor