Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(455)

Unified Diff: src/inspector/public/V8Inspector.h

Issue 2292573002: [inspector] Initial import of v8_inspector. (Closed)
Patch Set: format the code, disable cpplint Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/inspector/public/V8ContextInfo.h ('k') | src/inspector/public/V8InspectorClient.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/inspector/public/V8Inspector.h
diff --git a/src/inspector/public/V8Inspector.h b/src/inspector/public/V8Inspector.h
new file mode 100644
index 0000000000000000000000000000000000000000..48db2eddbc6be6d914a519e2ef3b47cef351bf6f
--- /dev/null
+++ b/src/inspector/public/V8Inspector.h
@@ -0,0 +1,72 @@
+// Copyright 2015 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef V8_INSPECTOR_PUBLIC_V8INSPECTOR_H_
+#define V8_INSPECTOR_PUBLIC_V8INSPECTOR_H_
+
+#include "src/inspector/public/StringView.h"
+#include "src/inspector/public/V8ContextInfo.h"
+
+#include <v8.h>
+
+namespace v8_inspector {
+
+class V8InspectorClient;
+class V8InspectorSession;
+class V8StackTrace;
+
+class PLATFORM_EXPORT V8Inspector {
+ public:
+ static std::unique_ptr<V8Inspector> create(v8::Isolate*, V8InspectorClient*);
+ virtual ~V8Inspector() {}
+
+ // Contexts instrumentation.
+ virtual void contextCreated(const V8ContextInfo&) = 0;
+ virtual void contextDestroyed(v8::Local<v8::Context>) = 0;
+ virtual void resetContextGroup(int contextGroupId) = 0;
+
+ // Various instrumentation.
+ virtual void willExecuteScript(v8::Local<v8::Context>, int scriptId) = 0;
+ virtual void didExecuteScript(v8::Local<v8::Context>) = 0;
+ virtual void idleStarted() = 0;
+ virtual void idleFinished() = 0;
+
+ // Async stack traces instrumentation.
+ virtual void asyncTaskScheduled(const StringView& taskName, void* task,
+ bool recurring) = 0;
+ virtual void asyncTaskCanceled(void* task) = 0;
+ virtual void asyncTaskStarted(void* task) = 0;
+ virtual void asyncTaskFinished(void* task) = 0;
+ virtual void allAsyncTasksCanceled() = 0;
+
+ // Exceptions instrumentation.
+ virtual unsigned exceptionThrown(
+ v8::Local<v8::Context>, const StringView& message,
+ v8::Local<v8::Value> exception, const StringView& detailedMessage,
+ const StringView& url, unsigned lineNumber, unsigned columnNumber,
+ std::unique_ptr<V8StackTrace>, int scriptId) = 0;
+ virtual void exceptionRevoked(v8::Local<v8::Context>, unsigned exceptionId,
+ const StringView& message) = 0;
+
+ // Connection.
+ class PLATFORM_EXPORT Channel {
+ public:
+ virtual ~Channel() {}
+ virtual void sendProtocolResponse(int callId,
+ const StringView& message) = 0;
+ virtual void sendProtocolNotification(const StringView& message) = 0;
+ virtual void flushProtocolNotifications() = 0;
+ };
+ virtual std::unique_ptr<V8InspectorSession> connect(
+ int contextGroupId, Channel*, const StringView& state) = 0;
+
+ // API methods.
+ virtual std::unique_ptr<V8StackTrace> createStackTrace(
+ v8::Local<v8::StackTrace>) = 0;
+ virtual std::unique_ptr<V8StackTrace> captureStackTrace(bool fullStack) = 0;
+};
+
+} // namespace v8_inspector
+
+#endif // V8_INSPECTOR_PUBLIC_V8INSPECTOR_H_
« no previous file with comments | « src/inspector/public/V8ContextInfo.h ('k') | src/inspector/public/V8InspectorClient.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698