enum cleanups

This commit is contained in:
Not Officer
2021-12-07 02:22:37 +01:00
parent 354401a24a
commit b3955379a6
3 changed files with 25 additions and 25 deletions

View File

@@ -1,9 +1,10 @@
using FModel.Properties;
using System;
using System.ComponentModel;
using System.Resources;
using System.Runtime.CompilerServices;
using FModel.Properties;
namespace FModel.Extensions
{
public static class EnumExtensions
@@ -47,12 +48,12 @@ namespace FModel.Extensions
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static T ToEnum<T>(this string value, T defaultValue)
public static T ToEnum<T>(this string value, T defaultValue) where T : struct
{
if (!Enum.TryParse(typeof(T), value, true, out var ret))
if (!Enum.TryParse(value, true, out T ret))
return defaultValue;
return (T) ret;
return ret;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
@@ -81,4 +82,4 @@ namespace FModel.Extensions
return i == -1 ? (T) values.GetValue(values.Length - 1) : (T) values.GetValue(i);
}
}
}
}