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_DEBUG_H_ | 5 #ifndef V8_DEBUG_DEBUG_H_ |
6 #define V8_DEBUG_DEBUG_H_ | 6 #define V8_DEBUG_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 395 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
406 // This class controls the debug info for all functions which currently have | 406 // This class controls the debug info for all functions which currently have |
407 // active breakpoints in them. This debug info is held in the heap root object | 407 // active breakpoints in them. This debug info is held in the heap root object |
408 // debug_info which is a FixedArray. Each entry in this list is of class | 408 // debug_info which is a FixedArray. Each entry in this list is of class |
409 // DebugInfo. | 409 // DebugInfo. |
410 class Debug { | 410 class Debug { |
411 public: | 411 public: |
412 // Debug event triggers. | 412 // Debug event triggers. |
413 void OnDebugBreak(Handle<Object> break_points_hit, bool auto_continue); | 413 void OnDebugBreak(Handle<Object> break_points_hit, bool auto_continue); |
414 | 414 |
415 void OnThrow(Handle<Object> exception); | 415 void OnThrow(Handle<Object> exception); |
416 void OnPromiseReject(Handle<JSObject> promise, Handle<Object> value); | 416 void OnPromiseReject(Handle<Object> promise, Handle<Object> value); |
417 void OnCompileError(Handle<Script> script); | 417 void OnCompileError(Handle<Script> script); |
418 void OnBeforeCompile(Handle<Script> script); | 418 void OnBeforeCompile(Handle<Script> script); |
419 void OnAfterCompile(Handle<Script> script); | 419 void OnAfterCompile(Handle<Script> script); |
420 void OnAsyncTaskEvent(Handle<JSObject> data); | 420 void OnAsyncTaskEvent(Handle<JSObject> data); |
421 | 421 |
422 // API facing. | 422 // API facing. |
423 void SetEventListener(Handle<Object> callback, Handle<Object> data); | 423 void SetEventListener(Handle<Object> callback, Handle<Object> data); |
424 void SetMessageHandler(v8::Debug::MessageHandler handler); | 424 void SetMessageHandler(v8::Debug::MessageHandler handler); |
425 void EnqueueCommandMessage(Vector<const uint16_t> command, | 425 void EnqueueCommandMessage(Vector<const uint16_t> command, |
426 v8::Debug::ClientData* client_data = NULL); | 426 v8::Debug::ClientData* client_data = NULL); |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
587 bool uncaught, | 587 bool uncaught, |
588 Handle<Object> promise); | 588 Handle<Object> promise); |
589 MUST_USE_RESULT MaybeHandle<Object> MakeCompileEvent( | 589 MUST_USE_RESULT MaybeHandle<Object> MakeCompileEvent( |
590 Handle<Script> script, v8::DebugEvent type); | 590 Handle<Script> script, v8::DebugEvent type); |
591 MUST_USE_RESULT MaybeHandle<Object> MakeAsyncTaskEvent( | 591 MUST_USE_RESULT MaybeHandle<Object> MakeAsyncTaskEvent( |
592 Handle<JSObject> task_event); | 592 Handle<JSObject> task_event); |
593 | 593 |
594 // Mirror cache handling. | 594 // Mirror cache handling. |
595 void ClearMirrorCache(); | 595 void ClearMirrorCache(); |
596 | 596 |
597 MaybeHandle<Object> PromiseHasUserDefinedRejectHandler( | |
598 Handle<JSObject> promise); | |
599 | |
600 void CallEventCallback(v8::DebugEvent event, | 597 void CallEventCallback(v8::DebugEvent event, |
601 Handle<Object> exec_state, | 598 Handle<Object> exec_state, |
602 Handle<Object> event_data, | 599 Handle<Object> event_data, |
603 v8::Debug::ClientData* client_data); | 600 v8::Debug::ClientData* client_data); |
604 void ProcessCompileEvent(v8::DebugEvent event, Handle<Script> script); | 601 void ProcessCompileEvent(v8::DebugEvent event, Handle<Script> script); |
605 void ProcessDebugEvent(v8::DebugEvent event, | 602 void ProcessDebugEvent(v8::DebugEvent event, |
606 Handle<JSObject> event_data, | 603 Handle<JSObject> event_data, |
607 bool auto_continue); | 604 bool auto_continue); |
608 void NotifyMessageHandler(v8::DebugEvent event, | 605 void NotifyMessageHandler(v8::DebugEvent event, |
609 Handle<JSObject> exec_state, | 606 Handle<JSObject> exec_state, |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
821 Handle<Code> code); | 818 Handle<Code> code); |
822 static bool DebugBreakSlotIsPatched(Address pc); | 819 static bool DebugBreakSlotIsPatched(Address pc); |
823 static void ClearDebugBreakSlot(Isolate* isolate, Address pc); | 820 static void ClearDebugBreakSlot(Isolate* isolate, Address pc); |
824 }; | 821 }; |
825 | 822 |
826 | 823 |
827 } // namespace internal | 824 } // namespace internal |
828 } // namespace v8 | 825 } // namespace v8 |
829 | 826 |
830 #endif // V8_DEBUG_DEBUG_H_ | 827 #endif // V8_DEBUG_DEBUG_H_ |
OLD | NEW |