public static T Not <T>(this T value) where T : struct, IEnumConstraint { return(EnumInternal <T> .Not(value)); }
public static T Xor <T>(this T left, long right) where T : struct, IEnumConstraint { return(EnumInternal <T> .Xor(left, right)); }
public static T Or <T>(this T left, int right) where T : struct, IEnumConstraint { return(EnumInternal <T> .Or(left, right)); }
public static T And <T>(this T left, byte right) where T : struct, IEnumConstraint { return(EnumInternal <T> .And(left, right)); }
public static bool HasValue <T>(this T left, long right) where T : struct, IEnumConstraint { return(EnumInternal <T> .HasValue(left, right)); }
public static T Remove <T>(this T left, T right) where T : struct, IEnumConstraint { return(EnumInternal <T> .Remove(left, right)); }