OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2014 The Chromium 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 PromiseTracker_h | |
6 #define PromiseTracker_h | |
7 | |
8 #include "wtf/HashMap.h" | |
9 #include "wtf/Noncopyable.h" | |
10 #include "wtf/RefPtr.h" | |
11 #include "wtf/Vector.h" | |
12 #include <v8.h> | |
13 | |
14 namespace blink { | |
15 | |
16 class ScriptState; | |
17 | |
18 class PromiseTracker { | |
19 WTF_MAKE_NONCOPYABLE(PromiseTracker); | |
20 public: | |
21 PromiseTracker(); | |
22 ~PromiseTracker(); | |
23 | |
24 bool isEnabled() const { return m_isEnabled; } | |
25 void enable(); | |
26 void disable(); | |
27 | |
28 void clear(); | |
29 | |
30 void didReceiveV8PromiseEvent(ScriptState*, v8::Handle<v8::Object> promise, v8::Handle<v8::Value> parentPromise, int status); | |
31 | |
32 class PromiseData; | |
aandrey
2014/08/28 14:05:53
make this and below private? (if needed remove ano
| |
33 | |
34 typedef Vector<RefPtr<PromiseData> > PromiseDataVector; | |
35 typedef HashMap<int, PromiseDataVector> PromiseDataMap; | |
36 | |
37 private: | |
38 bool m_isEnabled; | |
39 PromiseDataMap m_promiseDataMap; | |
40 }; | |
41 | |
42 } // namespace blink | |
43 | |
44 #endif // !defined(PromiseTracker_h) | |
OLD | NEW |