Пример #1
0
 public static TEnum Parse <TEnum>(string name, bool ignoreCase = false)
     where TEnum : struct, IComparable, IFormattable, IConvertible
 {
     if (Holder <TEnum> .GetNameValues(ignoreCase).TryGetValue(name, out TEnum result))
     {
         return(result);
     }
     return((TEnum)Enum.Parse(typeof(TEnum), name, ignoreCase));
 }
Пример #2
0
 public static TEnum Parse <TEnum>([NotNull] string name, bool ignoreCase = false)
     where TEnum : struct, Enum
 {
     if (Holder <TEnum> .GetNameValues(ignoreCase).TryGetValue(name, out var result))
     {
         return(result);
     }
     return((TEnum)Enum.Parse(typeof(TEnum), name, ignoreCase));
 }
Пример #3
0
 public static TEnum[] GetValues <TEnum>()
     where TEnum : struct, IComparable, IFormattable, IConvertible =>
 Holder <TEnum> .GetNameValues(false).Values.ToArray();
Пример #4
0
 public static string[] GetNames <TEnum>(bool ignoreCase = false)
     where TEnum : struct, IComparable, IFormattable, IConvertible =>
 Holder <TEnum> .GetNameValues(ignoreCase).Keys.ToArray();
Пример #5
0
 public static IReadOnlyDictionary <string, TEnum> GetNameValues <TEnum>(bool ignoreCase = false)
     where TEnum : struct, IComparable, IFormattable, IConvertible =>
 Holder <TEnum> .GetNameValues(ignoreCase);
Пример #6
0
 public static bool TryParse <TEnum>(string name, bool ignoreCase, out TEnum result)
     where TEnum : struct, IComparable, IFormattable, IConvertible =>
 Holder <TEnum> .GetNameValues(ignoreCase).TryGetValue(name, out result) ||
 EnumClass.TryParse(name, ignoreCase, out result);
Пример #7
0
 public static bool TryParse <TEnum>([NotNull] string name, bool ignoreCase, out TEnum result)
     where TEnum : struct, Enum =>
 Holder <TEnum> .GetNameValues(ignoreCase).TryGetValue(name, out result) ||
 EnumTargetingHelpers.TryParse(name, ignoreCase, out result);
Пример #8
0
 public static TEnum[] GetValues <TEnum>()
     where TEnum : struct, Enum =>
 Holder <TEnum> .GetNameValues(false).Values.ToArray();
Пример #9
0
 public static string[] GetNames <TEnum>(bool ignoreCase = false)
     where TEnum : struct, Enum =>
 Holder <TEnum> .GetNameValues(ignoreCase).Keys.ToArray();
Пример #10
0
 public static IReadOnlyDictionary <string, TEnum> GetNameValues <TEnum>(bool ignoreCase = false)
     where TEnum : struct, Enum =>
 Holder <TEnum> .GetNameValues(ignoreCase);