Supposons que nous avons une certaine nommé les énumérations:
enum MyEnum {
FOO,
BAR = 0x50
};
Ce que j'ai cherché sur google un script (toutes les langues) qui scanne tous les en-têtes dans mon projet et génère un en-tête avec une fonction par le protocole enum.
char* enum_to_string(MyEnum t);
Et une mise en œuvre avec quelque chose comme ceci:
char* enum_to_string(MyEnum t){
switch(t){
case FOO:
return "FOO";
case BAR:
return "BAR";
default:
return "INVALID ENUM";
}
}
Gotcha est vraiment avec typedefed enums, et sans nom de style C enums. Quelqu'un sait quelque chose pour cela?
EDIT: La solution ne doit pas modifier ma source, sauf pour le générés fonctions. Les énumérations sont dans une API, en utilisant les solutions proposées jusqu'à présent n'est tout simplement pas une option.