Converter
using Starterkit.Enum;
using System;
using System.Runtime.CompilerServices;
namespace Starterkit.Helper
{
public class Converter
{
public static TypeEnum Convert(string Type, TypeEnum Back = TypeEnum.Css)
{
TypeEnum[] array = (TypeEnum[])System.Enum.GetValues(typeof(TypeEnum));
foreach (TypeEnum typeEnum in array) {
if (Check(Type, typeEnum))
return typeEnum;
}
return Back;
}
public static DirectionEnum Convert(string Type, DirectionEnum Back = DirectionEnum.LTR)
{
DirectionEnum[] array = (DirectionEnum[])System.Enum.GetValues(typeof(DirectionEnum));
foreach (DirectionEnum directionEnum in array) {
if (Check(Type, directionEnum))
return directionEnum;
}
return Back;
}
private static bool Check(object Text, object Type)
{
DefaultInterpolatedStringHandler val = default(DefaultInterpolatedStringHandler);
val..ctor(0, 1);
val.AppendFormatted<object>(Text);
string text = val.ToStringAndClear();
val..ctor(0, 1);
val.AppendFormatted<object>(Type);
return Check(text, val.ToStringAndClear());
}
private static bool Check(string Text, string Type)
{
if (Text == Type || Text.ToUpper() == Type || Text.ToUpperInvariant() == Type || Text == Type.ToLower() || Text == Type.ToLowerInvariant())
return true;
return false;
}
}
}