V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
remote-object-id.h
1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef V8_INSPECTOR_REMOTE_OBJECT_ID_H_
6 #define V8_INSPECTOR_REMOTE_OBJECT_ID_H_
7 
8 #include "src/inspector/protocol/Forward.h"
9 
10 namespace v8_inspector {
11 
12 using protocol::Response;
13 
15  public:
16  int contextId() const { return m_injectedScriptId; }
17 
18  protected:
20  ~RemoteObjectIdBase() = default;
21 
22  std::unique_ptr<protocol::DictionaryValue> parseInjectedScriptId(
23  const String16&);
24 
25  int m_injectedScriptId;
26 };
27 
28 class RemoteObjectId final : public RemoteObjectIdBase {
29  public:
30  static Response parse(const String16&, std::unique_ptr<RemoteObjectId>*);
31  ~RemoteObjectId() = default;
32  int id() const { return m_id; }
33 
34  private:
36 
37  int m_id;
38 };
39 
40 class RemoteCallFrameId final : public RemoteObjectIdBase {
41  public:
42  static Response parse(const String16&, std::unique_ptr<RemoteCallFrameId>*);
43  ~RemoteCallFrameId() = default;
44 
45  int frameOrdinal() const { return m_frameOrdinal; }
46 
47  static String16 serialize(int injectedScriptId, int frameOrdinal);
48 
49  private:
51 
52  int m_frameOrdinal;
53 };
54 
55 } // namespace v8_inspector
56 
57 #endif // V8_INSPECTOR_REMOTE_OBJECT_ID_H_