System.Linq.Expressions.Expression.GetComparisonOperator C# (CSharp) Method

GetComparisonOperator() private static method

private static GetComparisonOperator ( ExpressionType binaryType, string opName, Expression left, Expression right, bool liftToNull ) : BinaryExpression
binaryType ExpressionType
opName string
left Expression
right Expression
liftToNull bool
return BinaryExpression
        private static BinaryExpression GetComparisonOperator(ExpressionType binaryType, string opName, Expression left, Expression right, bool liftToNull)
        {
            if (left.Type == right.Type && left.Type.IsNumeric())
            {
                if (left.Type.IsNullableType() && liftToNull)
                {
                    return new SimpleBinaryExpression(binaryType, left, right, typeof(bool?));
                }
                else
                {
                    return new LogicalBinaryExpression(binaryType, left, right);
                }
            }
            return GetUserDefinedBinaryOperatorOrThrow(binaryType, opName, left, right, liftToNull);
        }
Expression