System.Linq.Dynamic.ExpressionParser.CompareConversions C# (CSharp) Method

CompareConversions() private static method

private static CompareConversions ( Type s, Type t1, Type t2 ) : int
s System.Type
t1 System.Type
t2 System.Type
return int
		private static int CompareConversions(Type s, Type t1, Type t2)
		{
			if (t1 == t2) return 0;
			if (s == t1) return 1;
			if (s == t2) return -1;
			bool t1T2 = IsCompatibleWith(t1, t2);
			bool t2T1 = IsCompatibleWith(t2, t1);
			if (t1T2 && !t2T1) return 1;
			if (t2T1 && !t1T2) return -1;
			if (IsSignedIntegralType(t1) && IsUnsignedIntegralType(t2)) return 1;
			if (IsSignedIntegralType(t2) && IsUnsignedIntegralType(t1)) return -1;
			return 0;
		}
ExpressionParser