Traits pour classes définissant un typedef
Bonjour à tous,
En attendant les concepts de C++0x, j'ai besoin d'écrire des classes de traits à utiliser avec boost::enable_if.
J'ai un ensemble de classes ayant pour point commun de définir un typedef tail_sequence_node_t. J'aimerais écrire une classe de traits permettant de savoir si le type donné fait partie de cet ensemble de classes.
Cette première tentative infructueuse me renvoie un message d'erreur à la compilation :
Code:
1 2 3 4 5 6 7 8 9 10 11
| template<class T>
struct is_sequence_node
{
static const bool value = false;
};
template<class T>
struct is_sequence_node<typename T::tail_sequence_node_t>
{
static const bool value = true;
}; |
Code:
erreur: paramètres du patron ne sont pas utilisés dans la spécialisation partielle: 'T'
Que faire ?