Index: src/parsing/parameter-initializer-rewriter.cc |
diff --git a/src/parsing/parameter-initializer-rewriter.cc b/src/parsing/parameter-initializer-rewriter.cc |
index 4bb367d7d08ba91dae3ac67a42a4a3705455f179..dbf49157c0ec6d651e56da32da599800f7f82a31 100644 |
--- a/src/parsing/parameter-initializer-rewriter.cc |
+++ b/src/parsing/parameter-initializer-rewriter.cc |
@@ -8,9 +8,7 @@ |
#include <utility> |
#include <vector> |
-#include "src/ast/ast.h" |
-#include "src/ast/ast-expression-visitor.h" |
-#include "src/ast/scopes.h" |
+#include "src/ast/ast-traversal-visitor.h" |
namespace v8 { |
namespace internal { |
@@ -18,28 +16,29 @@ namespace internal { |
namespace { |
-class Rewriter final : public AstExpressionVisitor { |
+class Rewriter final : public AstTraversalVisitor<Rewriter> { |
public: |
Rewriter(uintptr_t stack_limit, Expression* initializer, Scope* old_scope, |
Scope* new_scope) |
- : AstExpressionVisitor(stack_limit, initializer), |
+ : AstTraversalVisitor(stack_limit, initializer), |
old_scope_(old_scope), |
new_scope_(new_scope), |
old_scope_closure_(old_scope->ClosureScope()), |
new_scope_closure_(new_scope->ClosureScope()) {} |
~Rewriter(); |
- private: |
- void VisitExpression(Expression* expr) override {} |
+ protected: |
adamk
2016/07/21 18:11:57
"protected" + "final" doesn't make sense to me. Pr
nickie
2016/07/22 08:40:18
You're right. I'm making them private again. The
|
+ friend class AstTraversalVisitor<Rewriter>; |
- void VisitFunctionLiteral(FunctionLiteral* expr) override; |
- void VisitClassLiteral(ClassLiteral* expr) override; |
- void VisitVariableProxy(VariableProxy* expr) override; |
+ void VisitFunctionLiteral(FunctionLiteral* expr); |
+ void VisitClassLiteral(ClassLiteral* expr); |
+ void VisitVariableProxy(VariableProxy* expr); |
- void VisitBlock(Block* stmt) override; |
- void VisitTryCatchStatement(TryCatchStatement* stmt) override; |
- void VisitWithStatement(WithStatement* stmt) override; |
+ void VisitBlock(Block* stmt); |
+ void VisitTryCatchStatement(TryCatchStatement* stmt); |
+ void VisitWithStatement(WithStatement* stmt); |
+ private: |
Scope* old_scope_; |
Scope* new_scope_; |
Scope* old_scope_closure_; |