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

Side by Side Diff: third_party/WebKit/Source/platform/v8_inspector/InjectedScriptNative.h

Issue 1758313002: DevTools: introduce collections shim to be backed by non-wtf in v8_inspector. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 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 unified diff | Download patch
OLDNEW
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 InjectedScriptNative_h 5 #ifndef InjectedScriptNative_h
6 #define InjectedScriptNative_h 6 #define InjectedScriptNative_h
7 7
8 #include "wtf/HashMap.h" 8 #include "platform/inspector_protocol/Collections.h"
9 #include "wtf/PassOwnPtr.h" 9 #include "wtf/PassOwnPtr.h"
10 #include "wtf/Vector.h"
11 #include "wtf/text/WTFString.h" 10 #include "wtf/text/WTFString.h"
12 #include <v8.h> 11 #include <v8.h>
13 12
14 namespace blink { 13 namespace blink {
15 14
16 class InjectedScriptNative final { 15 class InjectedScriptNative final {
17 public: 16 public:
18 explicit InjectedScriptNative(v8::Isolate*); 17 explicit InjectedScriptNative(v8::Isolate*);
19 ~InjectedScriptNative(); 18 ~InjectedScriptNative();
20 19
21 void setOnInjectedScriptHost(v8::Local<v8::Object>); 20 void setOnInjectedScriptHost(v8::Local<v8::Object>);
22 static InjectedScriptNative* fromInjectedScriptHost(v8::Local<v8::Object>); 21 static InjectedScriptNative* fromInjectedScriptHost(v8::Local<v8::Object>);
23 22
24 int bind(v8::Local<v8::Value>, const String& groupName); 23 int bind(v8::Local<v8::Value>, const String& groupName);
25 void unbind(int id); 24 void unbind(int id);
26 v8::Local<v8::Value> objectForId(int id); 25 v8::Local<v8::Value> objectForId(int id);
27 26
28 void releaseObjectGroup(const String& groupName); 27 void releaseObjectGroup(const String& groupName);
29 String groupName(int objectId) const; 28 String groupName(int objectId) const;
30 29
31 private: 30 private:
32 void addObjectToGroup(int objectId, const String& groupName); 31 void addObjectToGroup(int objectId, const String& groupName);
33 32
34 int m_lastBoundObjectId; 33 int m_lastBoundObjectId;
35 v8::Isolate* m_isolate; 34 v8::Isolate* m_isolate;
36 HashMap<int, OwnPtr<v8::Global<v8::Value>>> m_idToWrappedObject; 35 protocol::HashMap<int, OwnPtr<v8::Global<v8::Value>>> m_idToWrappedObject;
37 typedef HashMap<int, String> IdToObjectGroupName; 36 typedef protocol::HashMap<int, String> IdToObjectGroupName;
38 IdToObjectGroupName m_idToObjectGroupName; 37 IdToObjectGroupName m_idToObjectGroupName;
39 typedef HashMap<String, Vector<int>> NameToObjectGroup; 38 typedef protocol::HashMap<String, protocol::Vector<int>> NameToObjectGroup;
40 NameToObjectGroup m_nameToObjectGroup; 39 NameToObjectGroup m_nameToObjectGroup;
41 }; 40 };
42 41
43 } // namespace blink 42 } // namespace blink
44 43
45 #endif 44 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698