What I want to do is something like this: I have enums with combined flagged values.
public static class EnumExtension
{
public static bool IsSet
Actually, it is possible, with an ugly trick. However, it cannot be used for extension methods.
public abstract class Enums where Temp : class {
public static TEnum Parse(string name) where TEnum : struct, Temp {
return (TEnum)Enum.Parse(typeof(TEnum), name);
}
}
public abstract class Enums : Enums { }
Enums.IsSet("Local")
If you want to, you can give Enums
a private constructor and a public nested abstract inherited class with Temp
as Enum
, to prevent inherited versions for non-enums.