I stumbled over a piece of code that I do not understand. In one file:
namespace traits {
template <typename... Base>
struct use_ : Base... {
};
/* some more stuff here */
using useDefaults = use_<>;
}
and in another file:
template<typename T>
using InputHandle_t = typename Traits::useDefaults::template InputHandle<T>;
What I do not understand the useDefaults::template something
syntax.
What does this do?
PS: If I did not give enough context to understand my problem, please let me know!