private static bool Equals()

in src/Epam.GraphQL/Helpers/ExpressionEqualityComparer.cs [195:220]


        private static bool Equals(ParameterScope? parameterScope, LambdaExpression x, LambdaExpression y)
        {
            if (x.Parameters.Count != y.Parameters.Count || x.ReturnType != y.ReturnType)
            {
                return false;
            }

            if (x.Parameters.Count > 0)
            {
                for (var i = 0; i < x.Parameters.Count; i++)
                {
                    if (x.Parameters[i].Type != y.Parameters[i].Type)
                    {
                        return false;
                    }
                }

                parameterScope = new ParameterScope(parameterScope);
                for (var i = 0; i < x.Parameters.Count; i++)
                {
                    parameterScope.Add(x.Parameters[i], y.Parameters[i], i);
                }
            }

            return Equals(parameterScope, x.Body, y.Body);
        }