Chromium Code Reviews| 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_AST_SCOPES_H_ | 5 #ifndef V8_AST_SCOPES_H_ |
| 6 #define V8_AST_SCOPES_H_ | 6 #define V8_AST_SCOPES_H_ |
| 7 | 7 |
| 8 #include "src/base/hashmap.h" | 8 #include "src/base/hashmap.h" |
| 9 #include "src/globals.h" | 9 #include "src/globals.h" |
| 10 #include "src/objects.h" | 10 #include "src/objects.h" |
| (...skipping 788 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 799 } | 799 } |
| 800 | 800 |
| 801 #ifdef DEBUG | 801 #ifdef DEBUG |
| 802 void PrintParameters(); | 802 void PrintParameters(); |
| 803 #endif | 803 #endif |
| 804 | 804 |
| 805 void AllocateLocals(); | 805 void AllocateLocals(); |
| 806 void AllocateParameterLocals(); | 806 void AllocateParameterLocals(); |
| 807 void AllocateReceiver(); | 807 void AllocateReceiver(); |
| 808 | 808 |
| 809 void ResetAfterPreparsing() { | |
|
marja
2016/09/26 12:38:27
Why do we need this? Just by reading the code, it'
| |
| 810 decls_.Clear(); | |
| 811 has_rest_ = false; | |
| 812 inner_scope_ = nullptr; | |
| 813 locals_.Clear(); | |
| 814 params_.Clear(); | |
| 815 sloppy_block_function_map_.Clear(); | |
| 816 variables_.Clear(); | |
| 817 } | |
| 818 | |
| 809 private: | 819 private: |
| 810 void AllocateParameter(Variable* var, int index); | 820 void AllocateParameter(Variable* var, int index); |
| 811 | 821 |
| 812 // Resolve and fill in the allocation information for all variables | 822 // Resolve and fill in the allocation information for all variables |
| 813 // in this scopes. Must be called *after* all scopes have been | 823 // in this scopes. Must be called *after* all scopes have been |
| 814 // processed (parsed) to ensure that unresolved variables can be | 824 // processed (parsed) to ensure that unresolved variables can be |
| 815 // resolved properly. | 825 // resolved properly. |
| 816 // | 826 // |
| 817 // In the case of code compiled and run using 'eval', the context | 827 // In the case of code compiled and run using 'eval', the context |
| 818 // parameter is the context in which eval was called. In all other | 828 // parameter is the context in which eval was called. In all other |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 877 void AllocateModuleVariables(); | 887 void AllocateModuleVariables(); |
| 878 | 888 |
| 879 private: | 889 private: |
| 880 ModuleDescriptor* module_descriptor_; | 890 ModuleDescriptor* module_descriptor_; |
| 881 }; | 891 }; |
| 882 | 892 |
| 883 } // namespace internal | 893 } // namespace internal |
| 884 } // namespace v8 | 894 } // namespace v8 |
| 885 | 895 |
| 886 #endif // V8_AST_SCOPES_H_ | 896 #endif // V8_AST_SCOPES_H_ |
| OLD | NEW |