OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_SCOPES_H_ | 5 #ifndef V8_SCOPES_H_ |
6 #define V8_SCOPES_H_ | 6 #define V8_SCOPES_H_ |
7 | 7 |
8 #include "src/ast.h" | 8 #include "src/ast.h" |
9 #include "src/zone.h" | 9 #include "src/zone.h" |
10 | 10 |
(...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
381 | 381 |
382 // Declarations list. | 382 // Declarations list. |
383 ZoneList<Declaration*>* declarations() { return &decls_; } | 383 ZoneList<Declaration*>* declarations() { return &decls_; } |
384 | 384 |
385 // Inner scope list. | 385 // Inner scope list. |
386 ZoneList<Scope*>* inner_scopes() { return &inner_scopes_; } | 386 ZoneList<Scope*>* inner_scopes() { return &inner_scopes_; } |
387 | 387 |
388 // The scope immediately surrounding this scope, or NULL. | 388 // The scope immediately surrounding this scope, or NULL. |
389 Scope* outer_scope() const { return outer_scope_; } | 389 Scope* outer_scope() const { return outer_scope_; } |
390 | 390 |
391 // The interface as inferred so far; only for module scopes. | 391 // The ModuleDescriptor for this scope; only for module scopes. |
392 Interface* interface() const { return interface_; } | 392 ModuleDescriptor* module() const { return module_descriptor_; } |
393 | 393 |
394 // --------------------------------------------------------------------------- | 394 // --------------------------------------------------------------------------- |
395 // Variable allocation. | 395 // Variable allocation. |
396 | 396 |
397 // Collect stack and context allocated local variables in this scope. Note | 397 // Collect stack and context allocated local variables in this scope. Note |
398 // that the function variable - if present - is not collected and should be | 398 // that the function variable - if present - is not collected and should be |
399 // handled separately. | 399 // handled separately. |
400 void CollectStackAndContextLocals(ZoneList<Variable*>* stack_locals, | 400 void CollectStackAndContextLocals(ZoneList<Variable*>* stack_locals, |
401 ZoneList<Variable*>* context_locals); | 401 ZoneList<Variable*>* context_locals); |
402 | 402 |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
511 // Declarations. | 511 // Declarations. |
512 ZoneList<Declaration*> decls_; | 512 ZoneList<Declaration*> decls_; |
513 // Convenience variable. | 513 // Convenience variable. |
514 Variable* receiver_; | 514 Variable* receiver_; |
515 // Function variable, if any; function scopes only. | 515 // Function variable, if any; function scopes only. |
516 VariableDeclaration* function_; | 516 VariableDeclaration* function_; |
517 // new.target variable, function scopes only. | 517 // new.target variable, function scopes only. |
518 Variable* new_target_; | 518 Variable* new_target_; |
519 // Convenience variable; function scopes only. | 519 // Convenience variable; function scopes only. |
520 Variable* arguments_; | 520 Variable* arguments_; |
521 // Interface; module scopes only. | 521 // Module descriptor; module scopes only. |
522 Interface* interface_; | 522 ModuleDescriptor* module_descriptor_; |
523 | 523 |
524 // Illegal redeclaration. | 524 // Illegal redeclaration. |
525 Expression* illegal_redecl_; | 525 Expression* illegal_redecl_; |
526 | 526 |
527 // Scope-specific information computed during parsing. | 527 // Scope-specific information computed during parsing. |
528 // | 528 // |
529 // This scope is inside a 'with' of some outer scope. | 529 // This scope is inside a 'with' of some outer scope. |
530 bool scope_inside_with_; | 530 bool scope_inside_with_; |
531 // This scope contains a 'with' statement. | 531 // This scope contains a 'with' statement. |
532 bool scope_contains_with_; | 532 bool scope_contains_with_; |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
694 Scope* outer_scope, | 694 Scope* outer_scope, |
695 Handle<ScopeInfo> scope_info); | 695 Handle<ScopeInfo> scope_info); |
696 | 696 |
697 AstValueFactory* ast_value_factory_; | 697 AstValueFactory* ast_value_factory_; |
698 Zone* zone_; | 698 Zone* zone_; |
699 }; | 699 }; |
700 | 700 |
701 } } // namespace v8::internal | 701 } } // namespace v8::internal |
702 | 702 |
703 #endif // V8_SCOPES_H_ | 703 #endif // V8_SCOPES_H_ |
OLD | NEW |