The following code is taken from cpp-netlib but I've seen similar declarations elsewhere.
template <class Handler>
struct server : server_base<tags::http_server, Handler>::type
{
typedef typename server_base<tags::http_server, Handler>::type server_base;
typedef server_options<tags::http_server, Handler> options;
explicit server(options const &options) : server_base(options) {}
};
Please can someone explain what the significance is of using ::type
in the declaration. Searching with the word 'type' in the search box is throwing up far too many unrelated results to find an answer.
TIA