summaryrefslogtreecommitdiff
path: root/deps/v8/include/v8-inspector.h
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2022-04-12 11:10:15 +0200
committerMichaël Zasso <targos@protonmail.com>2022-04-12 22:08:39 +0200
commitfd4f80ce54d7f7b7503e0999f6a9d293d493846d (patch)
tree00fba34b8aabeb481c7128fccee635719ee44a3b /deps/v8/include/v8-inspector.h
parent73d53fe9f56d7ce5de4b9c9ad5257dc601bbce14 (diff)
downloadnode-new-fd4f80ce54d7f7b7503e0999f6a9d293d493846d.tar.gz
deps: update V8 to 10.1.124.6
PR-URL: https://github.com/nodejs/node/pull/42657 Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
Diffstat (limited to 'deps/v8/include/v8-inspector.h')
-rw-r--r--deps/v8/include/v8-inspector.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/deps/v8/include/v8-inspector.h b/deps/v8/include/v8-inspector.h
index 2a258d505a..edd968c766 100644
--- a/deps/v8/include/v8-inspector.h
+++ b/deps/v8/include/v8-inspector.h
@@ -23,6 +23,10 @@ class Value;
namespace v8_inspector {
+namespace internal {
+class V8DebuggerId;
+} // namespace internal
+
namespace protocol {
namespace Debugger {
namespace API {
@@ -106,6 +110,30 @@ class V8_EXPORT V8ContextInfo {
V8ContextInfo& operator=(const V8ContextInfo&) = delete;
};
+// This debugger id tries to be unique by generating two random
+// numbers, which should most likely avoid collisions.
+// Debugger id has a 1:1 mapping to context group. It is used to
+// attribute stack traces to a particular debugging, when doing any
+// cross-debugger operations (e.g. async step in).
+// See also Runtime.UniqueDebuggerId in the protocol.
+class V8_EXPORT V8DebuggerId {
+ public:
+ V8DebuggerId() = default;
+ V8DebuggerId(const V8DebuggerId&) = default;
+ V8DebuggerId& operator=(const V8DebuggerId&) = default;
+
+ std::unique_ptr<StringBuffer> toString() const;
+ bool isValid() const;
+ std::pair<int64_t, int64_t> pair() const;
+
+ private:
+ friend class internal::V8DebuggerId;
+ explicit V8DebuggerId(std::pair<int64_t, int64_t>);
+
+ int64_t m_first = 0;
+ int64_t m_second = 0;
+};
+
class V8_EXPORT V8StackTrace {
public:
virtual StringView firstNonEmptySourceURL() const = 0;
@@ -276,6 +304,7 @@ class V8_EXPORT V8Inspector {
virtual void contextDestroyed(v8::Local<v8::Context>) = 0;
virtual void resetContextGroup(int contextGroupId) = 0;
virtual v8::MaybeLocal<v8::Context> contextById(int contextId) = 0;
+ virtual V8DebuggerId uniqueDebuggerId(int contextId) = 0;
// Various instrumentation.
virtual void idleStarted() = 0;