| Index: src/ast.h
|
| ===================================================================
|
| --- src/ast.h (revision 8931)
|
| +++ src/ast.h (working copy)
|
| @@ -60,7 +60,7 @@
|
| V(ContinueStatement) \
|
| V(BreakStatement) \
|
| V(ReturnStatement) \
|
| - V(EnterWithContextStatement) \
|
| + V(WithStatement) \
|
| V(ExitContextStatement) \
|
| V(SwitchStatement) \
|
| V(DoWhileStatement) \
|
| @@ -359,9 +359,13 @@
|
| ZoneList<Statement*>* statements() { return &statements_; }
|
| bool is_initializer_block() const { return is_initializer_block_; }
|
|
|
| + Scope* block_scope() const { return block_scope_; }
|
| + void set_block_scope(Scope* block_scope) { block_scope_ = block_scope; }
|
| +
|
| private:
|
| ZoneList<Statement*> statements_;
|
| bool is_initializer_block_;
|
| + Scope* block_scope_;
|
| };
|
|
|
|
|
| @@ -627,19 +631,21 @@
|
| };
|
|
|
|
|
| -class EnterWithContextStatement: public Statement {
|
| +class WithStatement: public Statement {
|
| public:
|
| - explicit EnterWithContextStatement(Expression* expression)
|
| - : expression_(expression) { }
|
| + WithStatement(Expression* expression, Statement* statement)
|
| + : expression_(expression), statement_(statement) { }
|
|
|
| - DECLARE_NODE_TYPE(EnterWithContextStatement)
|
| + DECLARE_NODE_TYPE(WithStatement)
|
|
|
| Expression* expression() const { return expression_; }
|
| + Statement* statement() const { return statement_; }
|
|
|
| virtual bool IsInlineable() const;
|
|
|
| private:
|
| Expression* expression_;
|
| + Statement* statement_;
|
| };
|
|
|
|
|
|
|