presto-main/src/main/java/io/prestosql/sql/planner/ExpressionSymbolInliner.java/ExpressionSymbolInliner/rewriteLambdaExpression
class ExpressionSymbolInliner:        @Override
        public Expression rewriteLambdaExpression(LambdaExpression node, Void context, ExpressionTreeRewriter<Void> treeRewriter)
        {
            for (LambdaArgumentDeclaration argument : node.getArguments()) {
                String argumentName = argument.getName().getValue();
                // Symbol names are unique. As a result, a symbol should never be excluded multiple times.
                checkArgument(!excludedNames.contains(argumentName));
                excludedNames.add(argumentName);
            }
            Expression result = treeRewriter.defaultRewrite(node, context);
            for (LambdaArgumentDeclaration argument : node.getArguments()) {
                excludedNames.remove(argument.getName().getValue());
            }
            return result;
        }