OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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 // This file has been auto-generated by code_generator_v8.py. DO NOT MODIFY! | 5 // This file has been auto-generated by code_generator_v8.py. DO NOT MODIFY! |
6 | 6 |
7 #ifndef V8TestInterface_h | 7 #ifndef V8TestInterface_h |
8 #define V8TestInterface_h | 8 #define V8TestInterface_h |
9 | 9 |
10 #if ENABLE(Condition1) || ENABLE(Condition2) | 10 #if ENABLE(CONDITION) |
11 #include "bindings/tests/idls/TestInterface.h" | 11 #include "V8TestInterfaceEmpty.h" |
| 12 #include "bindings/tests/idls/TestInterfaceImplementation.h" |
12 #include "bindings/v8/V8Binding.h" | 13 #include "bindings/v8/V8Binding.h" |
13 #include "bindings/v8/V8DOMWrapper.h" | 14 #include "bindings/v8/V8DOMWrapper.h" |
14 #include "bindings/v8/WrapperTypeInfo.h" | 15 #include "bindings/v8/WrapperTypeInfo.h" |
15 #include "heap/Handle.h" | 16 #include "heap/Handle.h" |
16 | 17 |
17 namespace WebCore { | 18 namespace WebCore { |
18 | 19 |
19 class V8TestInterface { | 20 class V8TestInterface { |
20 public: | 21 public: |
21 static bool hasInstance(v8::Handle<v8::Value>, v8::Isolate*); | 22 static bool hasInstance(v8::Handle<v8::Value>, v8::Isolate*); |
22 static v8::Handle<v8::Object> findInstanceInPrototypeChain(v8::Handle<v8::Va
lue>, v8::Isolate*); | 23 static v8::Handle<v8::Object> findInstanceInPrototypeChain(v8::Handle<v8::Va
lue>, v8::Isolate*); |
23 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*); | 24 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*); |
24 static TestInterface* toNative(v8::Handle<v8::Object> object) | 25 static TestInterfaceImplementation* toNative(v8::Handle<v8::Object> object) |
25 { | 26 { |
26 return fromInternalPointer(object->GetAlignedPointerFromInternalField(v8
DOMWrapperObjectIndex)); | 27 return fromInternalPointer(object->GetAlignedPointerFromInternalField(v8
DOMWrapperObjectIndex)); |
27 } | 28 } |
28 static TestInterface* toNativeWithTypeCheck(v8::Isolate*, v8::Handle<v8::Val
ue>); | 29 static TestInterfaceImplementation* toNativeWithTypeCheck(v8::Isolate*, v8::
Handle<v8::Value>); |
29 static const WrapperTypeInfo wrapperTypeInfo; | 30 static const WrapperTypeInfo wrapperTypeInfo; |
30 static void derefObject(void*); | 31 static void derefObject(void*); |
31 static void visitDOMWrapper(void*, const v8::Persistent<v8::Object>&, v8::Is
olate*); | 32 static void visitDOMWrapper(void*, const v8::Persistent<v8::Object>&, v8::Is
olate*); |
32 static ActiveDOMObject* toActiveDOMObject(v8::Handle<v8::Object>); | 33 static ActiveDOMObject* toActiveDOMObject(v8::Handle<v8::Object>); |
33 static void implementsCustomVoidMethodMethodCustom(const v8::FunctionCallbac
kInfo<v8::Value>&); | 34 static void implementsCustomVoidMethodMethodCustom(const v8::FunctionCallbac
kInfo<v8::Value>&); |
34 #if ENABLE(CONDITION_PARTIAL) | 35 static void legacyCallCustom(const v8::FunctionCallbackInfo<v8::Value>&); |
35 static void supplementalMethod3MethodCustom(const v8::FunctionCallbackInfo<v
8::Value>&); | |
36 #endif // ENABLE(CONDITION_PARTIAL) | |
37 static void constructorCallback(const v8::FunctionCallbackInfo<v8::Value>&); | |
38 static void namedPropertySetterCustom(v8::Local<v8::String>, v8::Local<v8::V
alue>, const v8::PropertyCallbackInfo<v8::Value>&); | |
39 static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0
; | 36 static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0
; |
40 static inline void* toInternalPointer(TestInterface* impl) | 37 static inline void* toInternalPointer(TestInterfaceImplementation* impl) |
41 { | 38 { |
42 return impl; | 39 return V8TestInterfaceEmpty::toInternalPointer(impl); |
43 } | 40 } |
44 | 41 |
45 static inline TestInterface* fromInternalPointer(void* object) | 42 static inline TestInterfaceImplementation* fromInternalPointer(void* object) |
46 { | 43 { |
47 return static_cast<TestInterface*>(object); | 44 return static_cast<TestInterfaceImplementation*>(V8TestInterfaceEmpty::f
romInternalPointer(object)); |
48 } | 45 } |
49 static void installPerContextEnabledProperties(v8::Handle<v8::Object>, TestI
nterface*, v8::Isolate*); | 46 static void installPerContextEnabledProperties(v8::Handle<v8::Object>, TestI
nterfaceImplementation*, v8::Isolate*); |
50 static void installPerContextEnabledMethods(v8::Handle<v8::Object>, v8::Isol
ate*) { } | 47 static void installPerContextEnabledMethods(v8::Handle<v8::Object>, v8::Isol
ate*); |
51 | 48 |
52 private: | 49 private: |
53 friend v8::Handle<v8::Object> wrap(TestInterface*, v8::Handle<v8::Object> cr
eationContext, v8::Isolate*); | |
54 static v8::Handle<v8::Object> createWrapper(PassRefPtr<TestInterface>, v8::H
andle<v8::Object> creationContext, v8::Isolate*); | |
55 }; | 50 }; |
56 | 51 |
57 inline v8::Handle<v8::Object> wrap(TestInterface* impl, v8::Handle<v8::Object> c
reationContext, v8::Isolate* isolate) | 52 class TestInterfaceImplementation; |
| 53 v8::Handle<v8::Value> toV8(TestInterfaceImplementation*, v8::Handle<v8::Object>
creationContext, v8::Isolate*); |
| 54 |
| 55 template<class CallbackInfo> |
| 56 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, TestInterfaceImpl
ementation* impl) |
58 { | 57 { |
59 ASSERT(impl); | 58 v8SetReturnValue(callbackInfo, toV8(impl, callbackInfo.Holder(), callbackInf
o.GetIsolate())); |
60 ASSERT(!DOMDataStore::containsWrapper<V8TestInterface>(impl, isolate)); | |
61 return V8TestInterface::createWrapper(impl, creationContext, isolate); | |
62 } | 59 } |
63 | 60 |
64 inline v8::Handle<v8::Value> toV8(TestInterface* impl, v8::Handle<v8::Object> cr
eationContext, v8::Isolate* isolate) | 61 template<class CallbackInfo> |
| 62 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, TestI
nterfaceImplementation* impl) |
65 { | 63 { |
66 if (UNLIKELY(!impl)) | 64 v8SetReturnValue(callbackInfo, toV8(impl, callbackInfo.Holder(), callbackIn
fo.GetIsolate())); |
67 return v8::Null(isolate); | |
68 v8::Handle<v8::Value> wrapper = DOMDataStore::getWrapper<V8TestInterface>(im
pl, isolate); | |
69 if (!wrapper.IsEmpty()) | |
70 return wrapper; | |
71 return wrap(impl, creationContext, isolate); | |
72 } | |
73 | |
74 template<typename CallbackInfo> | |
75 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, TestInterface* im
pl) | |
76 { | |
77 if (UNLIKELY(!impl)) { | |
78 v8SetReturnValueNull(callbackInfo); | |
79 return; | |
80 } | |
81 if (DOMDataStore::setReturnValueFromWrapper<V8TestInterface>(callbackInfo.Ge
tReturnValue(), impl)) | |
82 return; | |
83 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI
nfo.GetIsolate()); | |
84 v8SetReturnValue(callbackInfo, wrapper); | |
85 } | |
86 | |
87 template<typename CallbackInfo> | |
88 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, TestI
nterface* impl) | |
89 { | |
90 ASSERT(DOMWrapperWorld::current(callbackInfo.GetIsolate())->isMainWorld()); | |
91 if (UNLIKELY(!impl)) { | |
92 v8SetReturnValueNull(callbackInfo); | |
93 return; | |
94 } | |
95 if (DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestInterface>(cal
lbackInfo.GetReturnValue(), impl)) | |
96 return; | |
97 v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackIn
fo.GetIsolate()); | |
98 v8SetReturnValue(callbackInfo, wrapper); | |
99 } | 65 } |
100 | 66 |
101 template<class CallbackInfo, class Wrappable> | 67 template<class CallbackInfo, class Wrappable> |
102 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, TestInterface
* impl, Wrappable* wrappable) | 68 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, TestInterface
Implementation* impl, Wrappable*) |
103 { | 69 { |
104 if (UNLIKELY(!impl)) { | 70 v8SetReturnValue(callbackInfo, toV8(impl, callbackInfo.Holder(), callbackIn
fo.GetIsolate())); |
105 v8SetReturnValueNull(callbackInfo); | |
106 return; | |
107 } | |
108 if (DOMDataStore::setReturnValueFromWrapperFast<V8TestInterface>(callbackInf
o.GetReturnValue(), impl, callbackInfo.Holder(), wrappable)) | |
109 return; | |
110 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI
nfo.GetIsolate()); | |
111 v8SetReturnValue(callbackInfo, wrapper); | |
112 } | 71 } |
113 | 72 |
114 inline v8::Handle<v8::Value> toV8(PassRefPtr<TestInterface> impl, v8::Handle<v8:
:Object> creationContext, v8::Isolate* isolate) | 73 inline v8::Handle<v8::Value> toV8(PassRefPtr<TestInterfaceImplementation> impl,
v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) |
115 { | 74 { |
116 return toV8(impl.get(), creationContext, isolate); | 75 return toV8(impl.get(), creationContext, isolate); |
117 } | 76 } |
118 | 77 |
119 template<class CallbackInfo> | 78 template<class CallbackInfo> |
120 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, PassRefPtr<TestIn
terface> impl) | 79 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, PassRefPtr<TestIn
terfaceImplementation> impl) |
121 { | 80 { |
122 v8SetReturnValue(callbackInfo, impl.get()); | 81 v8SetReturnValue(callbackInfo, impl.get()); |
123 } | 82 } |
124 | 83 |
125 template<class CallbackInfo> | 84 template<class CallbackInfo> |
126 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, PassR
efPtr<TestInterface> impl) | 85 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, PassR
efPtr<TestInterfaceImplementation> impl) |
127 { | 86 { |
128 v8SetReturnValueForMainWorld(callbackInfo, impl.get()); | 87 v8SetReturnValueForMainWorld(callbackInfo, impl.get()); |
129 } | 88 } |
130 | 89 |
131 template<class CallbackInfo, class Wrappable> | 90 template<class CallbackInfo, class Wrappable> |
132 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, PassRefPtr<Te
stInterface> impl, Wrappable* wrappable) | 91 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, PassRefPtr<Te
stInterfaceImplementation> impl, Wrappable* wrappable) |
133 { | 92 { |
134 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable); | 93 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable); |
135 } | 94 } |
136 | 95 |
137 } | 96 } |
138 #endif // ENABLE(Condition1) || ENABLE(Condition2) | 97 #endif // ENABLE(CONDITION) |
139 #endif // V8TestInterface_h | 98 #endif // V8TestInterface_h |
OLD | NEW |