OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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_INSPECTOR_V8DEBUGGER_H_ | 5 #ifndef V8_INSPECTOR_V8DEBUGGER_H_ |
6 #define V8_INSPECTOR_V8DEBUGGER_H_ | 6 #define V8_INSPECTOR_V8DEBUGGER_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
193 protocol::HashMap<void*, void*> m_parentTask; | 193 protocol::HashMap<void*, void*> m_parentTask; |
194 | 194 |
195 int m_maxAsyncCallStacks; | 195 int m_maxAsyncCallStacks; |
196 int m_maxAsyncCallStackDepth; | 196 int m_maxAsyncCallStackDepth; |
197 | 197 |
198 std::vector<void*> m_currentTasks; | 198 std::vector<void*> m_currentTasks; |
199 std::vector<std::shared_ptr<AsyncStackTrace>> m_currentAsyncParent; | 199 std::vector<std::shared_ptr<AsyncStackTrace>> m_currentAsyncParent; |
200 std::vector<std::shared_ptr<AsyncStackTrace>> m_currentAsyncCreation; | 200 std::vector<std::shared_ptr<AsyncStackTrace>> m_currentAsyncCreation; |
201 | 201 |
202 void collectOldAsyncStacksIfNeeded(); | 202 void collectOldAsyncStacksIfNeeded(); |
203 void removeOldAsyncTasks(AsyncTaskToStackTrace& map); | |
204 int m_asyncStacksCount = 0; | 203 int m_asyncStacksCount = 0; |
205 // V8Debugger owns all the async stacks, while most of the other references | 204 // V8Debugger owns all the async stacks, while most of the other references |
206 // are weak, which allows to collect some stacks when there are too many. | 205 // are weak, which allows to collect some stacks when there are too many. |
207 std::list<std::shared_ptr<AsyncStackTrace>> m_allAsyncStacks; | 206 std::list<std::shared_ptr<AsyncStackTrace>> m_allAsyncStacks; |
208 std::map<int, std::weak_ptr<StackFrame>> m_framesCache; | 207 std::map<int, std::weak_ptr<StackFrame>> m_framesCache; |
209 | 208 |
210 protocol::HashMap<V8DebuggerAgentImpl*, int> m_maxAsyncCallStackDepthMap; | 209 protocol::HashMap<V8DebuggerAgentImpl*, int> m_maxAsyncCallStackDepthMap; |
211 void* m_taskWithScheduledBreak = nullptr; | 210 void* m_taskWithScheduledBreak = nullptr; |
212 | 211 |
213 std::unique_ptr<ScheduleStepIntoAsyncCallback> m_stepIntoAsyncCallback; | 212 std::unique_ptr<ScheduleStepIntoAsyncCallback> m_stepIntoAsyncCallback; |
214 bool m_breakRequested = false; | 213 bool m_breakRequested = false; |
215 | 214 |
216 v8::debug::ExceptionBreakState m_pauseOnExceptionsState; | 215 v8::debug::ExceptionBreakState m_pauseOnExceptionsState; |
217 | 216 |
218 WasmTranslation m_wasmTranslation; | 217 WasmTranslation m_wasmTranslation; |
219 | 218 |
220 DISALLOW_COPY_AND_ASSIGN(V8Debugger); | 219 DISALLOW_COPY_AND_ASSIGN(V8Debugger); |
221 }; | 220 }; |
222 | 221 |
223 } // namespace v8_inspector | 222 } // namespace v8_inspector |
224 | 223 |
225 #endif // V8_INSPECTOR_V8DEBUGGER_H_ | 224 #endif // V8_INSPECTOR_V8DEBUGGER_H_ |
OLD | NEW |