Is it possible to specialize a templatized method for enums?
Something like (the invalid code below):
template <typename T>
void f(T value);
void f<enum T>(T value);
unsigned long long
You can use std::enable_if with std::is_enum from <type_traits> to accomplish this.
In an answer to one of my questions, litb posted a very detailed and well-written explanation of how this can be done with the Boost equivalents.