Beispiel #1
0
 public static ISet <TEnum> Range <TEnum>(TEnum from, TEnum to)
     where TEnum : PolymorphicEnum <int, TEnum>, new()
 {
     return(new HashSet <TEnum>(
                PolymorphicEnum <int, TEnum>
                .GetValues()
                .Where(e => e.Ordinal >= from.Ordinal && e.Ordinal <= to.Ordinal)));
 }
        public int CompareTo(object target)
        {
            PolymorphicEnum <T, TEnum> typedTarget = target as PolymorphicEnum <T, TEnum>;

            if (typedTarget == null)
            {
                throw new ArgumentException("Comparison can only occur between compatible enums.", "target");
            }

            return(this.Ordinal.CompareTo(typedTarget.Ordinal));
        }