OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 V8PrivateProperty_h | 5 #ifndef V8PrivateProperty_h |
6 #define V8PrivateProperty_h | 6 #define V8PrivateProperty_h |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "bindings/core/v8/ScriptPromiseProperties.h" | 10 #include "bindings/core/v8/ScriptPromiseProperties.h" |
11 #include "bindings/core/v8/V8BindingMacros.h" | 11 #include "bindings/core/v8/V8BindingMacros.h" |
12 #include "bindings/core/v8/V8PerIsolateData.h" | 12 #include "bindings/core/v8/V8PerIsolateData.h" |
13 #include "core/CoreExport.h" | 13 #include "core/CoreExport.h" |
14 #include "v8/include/v8.h" | 14 #include "v8/include/v8.h" |
15 #include "wtf/Allocator.h" | 15 #include "wtf/Allocator.h" |
16 #include "wtf/PtrUtil.h" | 16 #include "wtf/PtrUtil.h" |
17 | 17 |
18 namespace blink { | 18 namespace blink { |
19 | 19 |
20 class ScriptWrappable; | 20 class ScriptWrappable; |
21 | 21 |
22 // Apply |X| for each pair of (InterfaceName, PrivateKeyName). | 22 // Apply |X| for each pair of (InterfaceName, PrivateKeyName). |
23 #define V8_PRIVATE_PROPERTY_FOR_EACH(X) \ | 23 #define V8_PRIVATE_PROPERTY_FOR_EACH(X) \ |
24 X(CustomElement, AdoptedCallback) \ | 24 X(CustomElement, AdoptedCallback) \ |
| 25 X(CustomElement, AttachedCallback) \ |
25 X(CustomElement, AttributeChangedCallback) \ | 26 X(CustomElement, AttributeChangedCallback) \ |
26 X(CustomElement, ConnectedCallback) \ | 27 X(CustomElement, ConnectedCallback) \ |
| 28 X(CustomElement, CreatedCallback) \ |
| 29 X(CustomElement, DetachedCallback) \ |
27 X(CustomElement, DisconnectedCallback) \ | 30 X(CustomElement, DisconnectedCallback) \ |
28 X(CustomElement, Document) \ | 31 X(CustomElement, Document) \ |
29 X(CustomElement, IsInterfacePrototypeObject) \ | 32 X(CustomElement, IsInterfacePrototypeObject) \ |
30 X(CustomElement, NamespaceURI) \ | 33 X(CustomElement, NamespaceURI) \ |
| 34 X(CustomElement, RegistryMap) \ |
31 X(CustomElement, TagName) \ | 35 X(CustomElement, TagName) \ |
32 X(CustomElement, Type) \ | 36 X(CustomElement, Type) \ |
33 X(CustomEvent, Detail) \ | 37 X(CustomEvent, Detail) \ |
34 X(DOMException, Error) \ | 38 X(DOMException, Error) \ |
35 X(ErrorEvent, Error) \ | 39 X(ErrorEvent, Error) \ |
| 40 X(FetchEvent, Request) \ |
36 X(Global, Event) \ | 41 X(Global, Event) \ |
| 42 X(IDBCursor, Request) \ |
37 X(IDBObserver, Callback) \ | 43 X(IDBObserver, Callback) \ |
| 44 X(InternalBody, Buffer) \ |
| 45 X(InternalBody, Stream) \ |
38 X(IntersectionObserver, Callback) \ | 46 X(IntersectionObserver, Callback) \ |
| 47 X(LazyEventListener, ToString) \ |
39 X(MessageChannel, Port1) \ | 48 X(MessageChannel, Port1) \ |
40 X(MessageChannel, Port2) \ | 49 X(MessageChannel, Port2) \ |
41 X(MessageEvent, CachedData) \ | 50 X(MessageEvent, CachedData) \ |
42 X(MutationObserver, Callback) \ | 51 X(MutationObserver, Callback) \ |
43 X(NamedConstructor, Initialized) \ | 52 X(NamedConstructor, Initialized) \ |
44 X(PerformanceObserver, Callback) \ | 53 X(PerformanceObserver, Callback) \ |
45 X(PopStateEvent, State) \ | 54 X(PopStateEvent, State) \ |
46 X(SameObject, NotificationActions) \ | 55 X(SameObject, NotificationActions) \ |
47 X(SameObject, NotificationData) \ | 56 X(SameObject, NotificationData) \ |
48 X(SameObject, NotificationVibrate) \ | 57 X(SameObject, NotificationVibrate) \ |
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
198 // TODO(peria): Do not use this specialized hack for | 207 // TODO(peria): Do not use this specialized hack for |
199 // Window#DocumentCachedAccessor. This is required to put v8::Private key in | 208 // Window#DocumentCachedAccessor. This is required to put v8::Private key in |
200 // a snapshot, and it cannot be a v8::Eternal<> due to V8 serializer's | 209 // a snapshot, and it cannot be a v8::Eternal<> due to V8 serializer's |
201 // requirement. | 210 // requirement. |
202 ScopedPersistent<v8::Private> m_symbolWindowDocumentCachedAccessor; | 211 ScopedPersistent<v8::Private> m_symbolWindowDocumentCachedAccessor; |
203 }; | 212 }; |
204 | 213 |
205 } // namespace blink | 214 } // namespace blink |
206 | 215 |
207 #endif // V8PrivateProperty_h | 216 #endif // V8PrivateProperty_h |
OLD | NEW |