OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium 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 V8Inspector_h | 5 #ifndef V8Inspector_h |
6 #define V8Inspector_h | 6 #define V8Inspector_h |
7 | 7 |
8 #include "platform/inspector_protocol/InspectorProtocol.h" | 8 #include "platform/v8_inspector/public/StringView.h" |
9 #include "platform/v8_inspector/public/V8ContextInfo.h" | 9 #include "platform/v8_inspector/public/V8ContextInfo.h" |
10 | 10 |
11 #include <v8.h> | 11 #include <v8.h> |
12 | 12 |
| 13 namespace blink { namespace protocol { class FrontendChannel; }} |
| 14 |
13 namespace v8_inspector { | 15 namespace v8_inspector { |
14 | 16 |
15 class V8InspectorClient; | 17 class V8InspectorClient; |
16 class V8InspectorSession; | 18 class V8InspectorSession; |
17 class V8StackTrace; | 19 class V8StackTrace; |
18 | 20 |
19 class PLATFORM_EXPORT V8Inspector { | 21 class PLATFORM_EXPORT V8Inspector { |
20 public: | 22 public: |
21 static std::unique_ptr<V8Inspector> create(v8::Isolate*, V8InspectorClient*)
; | 23 static std::unique_ptr<V8Inspector> create(v8::Isolate*, V8InspectorClient*)
; |
22 virtual ~V8Inspector() { } | 24 virtual ~V8Inspector() { } |
23 | 25 |
24 // Contexts instrumentation. | 26 // Contexts instrumentation. |
25 virtual void contextCreated(const V8ContextInfo&) = 0; | 27 virtual void contextCreated(const V8ContextInfo&) = 0; |
26 virtual void contextDestroyed(v8::Local<v8::Context>) = 0; | 28 virtual void contextDestroyed(v8::Local<v8::Context>) = 0; |
27 virtual void resetContextGroup(int contextGroupId) = 0; | 29 virtual void resetContextGroup(int contextGroupId) = 0; |
28 | 30 |
29 // Various instrumentation. | 31 // Various instrumentation. |
30 virtual void willExecuteScript(v8::Local<v8::Context>, int scriptId) = 0; | 32 virtual void willExecuteScript(v8::Local<v8::Context>, int scriptId) = 0; |
31 virtual void didExecuteScript(v8::Local<v8::Context>) = 0; | 33 virtual void didExecuteScript(v8::Local<v8::Context>) = 0; |
32 virtual void idleStarted() = 0; | 34 virtual void idleStarted() = 0; |
33 virtual void idleFinished() = 0; | 35 virtual void idleFinished() = 0; |
34 | 36 |
35 // Async stack traces instrumentation. | 37 // Async stack traces instrumentation. |
36 virtual void asyncTaskScheduled(const String16& taskName, void* task, bool r
ecurring) = 0; | 38 virtual void asyncTaskScheduled(const StringView& taskName, void* task, bool
recurring) = 0; |
37 virtual void asyncTaskCanceled(void* task) = 0; | 39 virtual void asyncTaskCanceled(void* task) = 0; |
38 virtual void asyncTaskStarted(void* task) = 0; | 40 virtual void asyncTaskStarted(void* task) = 0; |
39 virtual void asyncTaskFinished(void* task) = 0; | 41 virtual void asyncTaskFinished(void* task) = 0; |
40 virtual void allAsyncTasksCanceled() = 0; | 42 virtual void allAsyncTasksCanceled() = 0; |
41 | 43 |
42 // Exceptions instrumentation. | 44 // Exceptions instrumentation. |
43 virtual unsigned exceptionThrown(v8::Local<v8::Context>, const String16& mes
sage, v8::Local<v8::Value> exception, const String16& detailedMessage, const Str
ing16& url, unsigned lineNumber, unsigned columnNumber, std::unique_ptr<V8StackT
race>, int scriptId) = 0; | 45 virtual unsigned exceptionThrown(v8::Local<v8::Context>, const StringView& m
essage, v8::Local<v8::Value> exception, const StringView& detailedMessage, const
StringView& url, unsigned lineNumber, unsigned columnNumber, std::unique_ptr<V8
StackTrace>, int scriptId) = 0; |
44 virtual void exceptionRevoked(v8::Local<v8::Context>, unsigned exceptionId,
const String16& message) = 0; | 46 virtual void exceptionRevoked(v8::Local<v8::Context>, unsigned exceptionId,
const StringView& message) = 0; |
45 | 47 |
46 // API methods. | 48 // API methods. |
47 virtual std::unique_ptr<V8InspectorSession> connect(int contextGroupId, blin
k::protocol::FrontendChannel*, const String16* state) = 0; | 49 virtual std::unique_ptr<V8InspectorSession> connect(int contextGroupId, blin
k::protocol::FrontendChannel*, const StringView& state) = 0; |
48 virtual std::unique_ptr<V8StackTrace> createStackTrace(v8::Local<v8::StackTr
ace>) = 0; | 50 virtual std::unique_ptr<V8StackTrace> createStackTrace(v8::Local<v8::StackTr
ace>) = 0; |
49 virtual std::unique_ptr<V8StackTrace> captureStackTrace(bool fullStack) = 0; | 51 virtual std::unique_ptr<V8StackTrace> captureStackTrace(bool fullStack) = 0; |
50 }; | 52 }; |
51 | 53 |
52 } // namespace v8_inspector | 54 } // namespace v8_inspector |
53 | 55 |
54 | 56 |
55 #endif // V8Inspector_h | 57 #endif // V8Inspector_h |
OLD | NEW |