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

Side by Side Diff: third_party/WebKit/Source/bindings/core/v8/RejectedPromises.h

Issue 2080623002: Revert "Remove OwnPtr from Blink." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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 RejectedPromises_h 5 #ifndef RejectedPromises_h
6 #define RejectedPromises_h 6 #define RejectedPromises_h
7 7
8 #include "bindings/core/v8/SourceLocation.h" 8 #include "bindings/core/v8/SourceLocation.h"
9 #include "core/fetch/AccessControlStatus.h" 9 #include "core/fetch/AccessControlStatus.h"
10 #include "wtf/Deque.h" 10 #include "wtf/Deque.h"
11 #include "wtf/Forward.h" 11 #include "wtf/Forward.h"
12 #include "wtf/RefCounted.h" 12 #include "wtf/RefCounted.h"
13 #include "wtf/Vector.h" 13 #include "wtf/Vector.h"
14 #include <memory>
15 14
16 namespace v8 { 15 namespace v8 {
17 class PromiseRejectMessage; 16 class PromiseRejectMessage;
18 }; 17 };
19 18
20 namespace blink { 19 namespace blink {
21 20
22 class ScriptState; 21 class ScriptState;
23 22
24 class RejectedPromises final : public RefCounted<RejectedPromises> { 23 class RejectedPromises final : public RefCounted<RejectedPromises> {
25 USING_FAST_MALLOC(RejectedPromises); 24 USING_FAST_MALLOC(RejectedPromises);
26 public: 25 public:
27 static PassRefPtr<RejectedPromises> create() 26 static PassRefPtr<RejectedPromises> create()
28 { 27 {
29 return adoptRef(new RejectedPromises()); 28 return adoptRef(new RejectedPromises());
30 } 29 }
31 30
32 ~RejectedPromises(); 31 ~RejectedPromises();
33 void dispose(); 32 void dispose();
34 33
35 void rejectedWithNoHandler(ScriptState*, v8::PromiseRejectMessage, const Str ing& errorMessage, std::unique_ptr<SourceLocation>, AccessControlStatus); 34 void rejectedWithNoHandler(ScriptState*, v8::PromiseRejectMessage, const Str ing& errorMessage, PassOwnPtr<SourceLocation>, AccessControlStatus);
36 void handlerAdded(v8::PromiseRejectMessage); 35 void handlerAdded(v8::PromiseRejectMessage);
37 36
38 void processQueue(); 37 void processQueue();
39 38
40 private: 39 private:
41 class Message; 40 class Message;
42 41
43 RejectedPromises(); 42 RejectedPromises();
44 43
45 using MessageQueue = Deque<std::unique_ptr<Message>>; 44 using MessageQueue = Deque<OwnPtr<Message>>;
46 std::unique_ptr<MessageQueue> createMessageQueue(); 45 PassOwnPtr<MessageQueue> createMessageQueue();
47 46
48 void processQueueNow(std::unique_ptr<MessageQueue>); 47 void processQueueNow(PassOwnPtr<MessageQueue>);
49 void revokeNow(std::unique_ptr<Message>); 48 void revokeNow(PassOwnPtr<Message>);
50 49
51 MessageQueue m_queue; 50 MessageQueue m_queue;
52 Vector<std::unique_ptr<Message>> m_reportedAsErrors; 51 Vector<OwnPtr<Message>> m_reportedAsErrors;
53 }; 52 };
54 53
55 } // namespace blink 54 } // namespace blink
56 55
57 #endif // RejectedPromises_h 56 #endif // RejectedPromises_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698