materializeEnumImpl
EnumMacros