Use a macro to declare the function and enum list members