public void VisitNode(JSFunctionExpression fn)
        {
            // Create a new visitor for nested function expressions
            if (Stack.OfType<JSFunctionExpression>().Skip(1).FirstOrDefault() != null) {
                var nested = new EliminatePointlessFinallyBlocks(TypeSystem, TypeInfo, FunctionSource);
                nested.Visit(fn);

                return;
            }

            VisitChildren(fn);
        }
        public void VisitNode(JSFunctionExpression fn)
        {
            // Create a new visitor for nested function expressions
            if (Stack.OfType <JSFunctionExpression>().Skip(1).FirstOrDefault() != null)
            {
                var nested = new EliminatePointlessFinallyBlocks(TypeSystem, TypeInfo, FunctionSource);
                nested.Visit(fn);

                return;
            }

            VisitChildren(fn);
        }