ExpressionKindExtensions
namespace Microsoft.CSharp.RuntimeBinder.Semantics
{
internal static class ExpressionKindExtensions
{
public static bool IsRelational(this ExpressionKind kind)
{
if (ExpressionKind.Eq <= kind)
return kind <= ExpressionKind.GreaterThanOrEqual;
return false;
}
public static bool IsUnaryOperator(this ExpressionKind kind)
{
if (kind <= ExpressionKind.UnaryPlus) {
if ((uint)(kind - 31) <= 4 || (uint)(kind - 47) <= 1)
goto IL_0026;
} else if (kind == ExpressionKind.BitwiseNot || kind == ExpressionKind.Addr || (uint)(kind - 68) <= 2) {
goto IL_0026;
}
return false;
IL_0026:
return true;
}
}
}