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_DEBUG_H_ | 5 #ifndef V8_DEBUG_H_ |
6 #define V8_DEBUG_H_ | 6 #define V8_DEBUG_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/arguments.h" | 9 #include "src/arguments.h" |
10 #include "src/assembler.h" | 10 #include "src/assembler.h" |
(...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
338 // | 338 // |
339 // This class controls the debug info for all functions which currently have | 339 // This class controls the debug info for all functions which currently have |
340 // active breakpoints in them. This debug info is held in the heap root object | 340 // active breakpoints in them. This debug info is held in the heap root object |
341 // debug_info which is a FixedArray. Each entry in this list is of class | 341 // debug_info which is a FixedArray. Each entry in this list is of class |
342 // DebugInfo. | 342 // DebugInfo. |
343 class Debug { | 343 class Debug { |
344 public: | 344 public: |
345 // Debug event triggers. | 345 // Debug event triggers. |
346 void OnDebugBreak(Handle<Object> break_points_hit, bool auto_continue); | 346 void OnDebugBreak(Handle<Object> break_points_hit, bool auto_continue); |
347 | 347 |
348 void OnThrow(Handle<Object> exception, bool uncaught); | 348 void OnThrow(Handle<Object> exception, Handle<Object> promise, bool uncaught); |
349 void OnPromiseReject(Handle<JSObject> promise, Handle<Object> value); | 349 void OnPromiseReject(Handle<JSObject> promise, Handle<Object> value); |
350 void OnCompileError(Handle<Script> script); | 350 void OnCompileError(Handle<Script> script); |
351 void OnBeforeCompile(Handle<Script> script); | 351 void OnBeforeCompile(Handle<Script> script); |
352 void OnAfterCompile(Handle<Script> script); | 352 void OnAfterCompile(Handle<Script> script); |
353 void OnPromiseEvent(Handle<JSObject> data); | 353 void OnPromiseEvent(Handle<JSObject> data); |
354 void OnAsyncTaskEvent(Handle<JSObject> data); | 354 void OnAsyncTaskEvent(Handle<JSObject> data); |
355 | 355 |
356 // API facing. | 356 // API facing. |
357 void SetEventListener(Handle<Object> callback, Handle<Object> data); | 357 void SetEventListener(Handle<Object> callback, Handle<Object> data); |
358 void SetMessageHandler(v8::Debug::MessageHandler handler); | 358 void SetMessageHandler(v8::Debug::MessageHandler handler); |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
522 MUST_USE_RESULT MaybeHandle<Object> MakeCompileEvent( | 522 MUST_USE_RESULT MaybeHandle<Object> MakeCompileEvent( |
523 Handle<Script> script, v8::DebugEvent type); | 523 Handle<Script> script, v8::DebugEvent type); |
524 MUST_USE_RESULT MaybeHandle<Object> MakePromiseEvent( | 524 MUST_USE_RESULT MaybeHandle<Object> MakePromiseEvent( |
525 Handle<JSObject> promise_event); | 525 Handle<JSObject> promise_event); |
526 MUST_USE_RESULT MaybeHandle<Object> MakeAsyncTaskEvent( | 526 MUST_USE_RESULT MaybeHandle<Object> MakeAsyncTaskEvent( |
527 Handle<JSObject> task_event); | 527 Handle<JSObject> task_event); |
528 | 528 |
529 // Mirror cache handling. | 529 // Mirror cache handling. |
530 void ClearMirrorCache(); | 530 void ClearMirrorCache(); |
531 | 531 |
532 // Returns a promise if the pushed try-catch handler matches the current one. | |
533 bool PromiseHasRejectHandler(Handle<JSObject> promise); | |
534 | |
535 void CallEventCallback(v8::DebugEvent event, | 532 void CallEventCallback(v8::DebugEvent event, |
536 Handle<Object> exec_state, | 533 Handle<Object> exec_state, |
537 Handle<Object> event_data, | 534 Handle<Object> event_data, |
538 v8::Debug::ClientData* client_data); | 535 v8::Debug::ClientData* client_data); |
539 void ProcessDebugEvent(v8::DebugEvent event, | 536 void ProcessDebugEvent(v8::DebugEvent event, |
540 Handle<JSObject> event_data, | 537 Handle<JSObject> event_data, |
541 bool auto_continue); | 538 bool auto_continue); |
542 void NotifyMessageHandler(v8::DebugEvent event, | 539 void NotifyMessageHandler(v8::DebugEvent event, |
543 Handle<JSObject> exec_state, | 540 Handle<JSObject> exec_state, |
544 Handle<JSObject> event_data, | 541 Handle<JSObject> event_data, |
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
738 // several frames above. | 735 // several frames above. |
739 // There is no calling conventions here, because it never actually gets | 736 // There is no calling conventions here, because it never actually gets |
740 // called, it only gets returned to. | 737 // called, it only gets returned to. |
741 static void GenerateFrameDropperLiveEdit(MacroAssembler* masm); | 738 static void GenerateFrameDropperLiveEdit(MacroAssembler* masm); |
742 }; | 739 }; |
743 | 740 |
744 | 741 |
745 } } // namespace v8::internal | 742 } } // namespace v8::internal |
746 | 743 |
747 #endif // V8_DEBUG_H_ | 744 #endif // V8_DEBUG_H_ |
OLD | NEW |