#pragma once template struct TIsEnum { enum { Value = __is_enum(T) }; };