public override object VisitLambdaExpression(LambdaExpression lambdaExpression, object data)
        {
            ResolveResult result;

            if (!lambdaDictionary.TryGetValue(lambdaExpression, out result))
            {
                lambdaDictionary[lambdaExpression] = result;
                result = resolver.ResolveLambda(this, lambdaExpression);
            }
            return(result);
        }