OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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_DEBUG_DEBUG_SCOPES_H_ | 5 #ifndef V8_DEBUG_DEBUG_SCOPES_H_ |
6 #define V8_DEBUG_DEBUG_SCOPES_H_ | 6 #define V8_DEBUG_DEBUG_SCOPES_H_ |
7 | 7 |
8 #include "src/debug/debug-frames.h" | 8 #include "src/debug/debug-frames.h" |
9 #include "src/frames.h" | 9 #include "src/frames.h" |
10 | 10 |
11 namespace v8 { | 11 namespace v8 { |
12 namespace internal { | 12 namespace internal { |
13 | 13 |
| 14 class ParseInfo; |
| 15 |
14 // Iterate over the actual scopes visible from a stack frame or from a closure. | 16 // Iterate over the actual scopes visible from a stack frame or from a closure. |
15 // The iteration proceeds from the innermost visible nested scope outwards. | 17 // The iteration proceeds from the innermost visible nested scope outwards. |
16 // All scopes are backed by an actual context except the local scope, | 18 // All scopes are backed by an actual context except the local scope, |
17 // which is inserted "artificially" in the context chain. | 19 // which is inserted "artificially" in the context chain. |
18 class ScopeIterator { | 20 class ScopeIterator { |
19 public: | 21 public: |
20 enum ScopeType { | 22 enum ScopeType { |
21 ScopeTypeGlobal = 0, | 23 ScopeTypeGlobal = 0, |
22 ScopeTypeLocal, | 24 ScopeTypeLocal, |
23 ScopeTypeWith, | 25 ScopeTypeWith, |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
162 void GetNestedScopeChain(Isolate* isolate, Scope* scope, | 164 void GetNestedScopeChain(Isolate* isolate, Scope* scope, |
163 int statement_position); | 165 int statement_position); |
164 | 166 |
165 DISALLOW_IMPLICIT_CONSTRUCTORS(ScopeIterator); | 167 DISALLOW_IMPLICIT_CONSTRUCTORS(ScopeIterator); |
166 }; | 168 }; |
167 | 169 |
168 } // namespace internal | 170 } // namespace internal |
169 } // namespace v8 | 171 } // namespace v8 |
170 | 172 |
171 #endif // V8_DEBUG_DEBUG_SCOPES_H_ | 173 #endif // V8_DEBUG_DEBUG_SCOPES_H_ |
OLD | NEW |