public override bool Equals(object obj)
        {
            MethodCallExpressionFingerprint other = obj as MethodCallExpressionFingerprint;

            return((other != null) &&
                   Equals(this.Method, other.Method) &&
                   this.Equals(other));
        }
        public override bool Equals(object obj)
        {
            MethodCallExpressionFingerprint other = obj as MethodCallExpressionFingerprint;

            if (other == null)
            {
                return(false);
            }

            return(this.Arguments.SequenceEqual(other.Arguments) &&
                   this.Method == other.Method &&
                   Object.Equals(this.Target, other.Target) &&
                   base.Equals(other));
        }
示例#3
0
        public static ExpressionFingerprint Create(Expression expression, ParserContext parserContext)
        {
            {
                BinaryExpression binaryExpression = expression as BinaryExpression;
                if (binaryExpression != null)
                {
                    return(BinaryExpressionFingerprint.Create(binaryExpression, parserContext));
                }
            }

            {
                ConditionalExpression conditionalExpression = expression as ConditionalExpression;
                if (conditionalExpression != null)
                {
                    return(ConditionalExpressionFingerprint.Create(conditionalExpression, parserContext));
                }
            }

            {
                ConstantExpression constantExpression = expression as ConstantExpression;
                if (constantExpression != null)
                {
                    return(ConstantExpressionFingerprint.Create(constantExpression, parserContext));
                }
            }

            {
                MemberExpression memberExpression = expression as MemberExpression;
                if (memberExpression != null)
                {
                    return(MemberExpressionFingerprint.Create(memberExpression, parserContext));
                }
            }

            {
                MethodCallExpression methodCallExpression = expression as MethodCallExpression;
                if (methodCallExpression != null)
                {
                    return(MethodCallExpressionFingerprint.Create(methodCallExpression, parserContext));
                }
            }

            {
                ParameterExpression parameterExpression = expression as ParameterExpression;
                if (parameterExpression != null)
                {
                    return(ParameterExpressionFingerprint.Create(parameterExpression, parserContext));
                }
            }

            {
                UnaryExpression unaryExpression = expression as UnaryExpression;
                if (unaryExpression != null)
                {
                    return(UnaryExpressionFingerprint.Create(unaryExpression, parserContext));
                }
            }

            // unknown expression
            return(null);
        }
示例#4
0
        public override bool Equals(object obj)
        {
            MethodCallExpressionFingerprint methodCallExpressionFingerprint = obj as MethodCallExpressionFingerprint;

            return(methodCallExpressionFingerprint != null && object.Equals(this.Method, methodCallExpressionFingerprint.Method) && base.Equals(methodCallExpressionFingerprint));
        }