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 // This file has been auto-generated by code_generator_v8.py. DO NOT MODIFY! | |
6 | |
7 #ifndef V8TestInterfaceConstructor_h | |
8 #define V8TestInterfaceConstructor_h | |
9 | |
10 #include "bindings/core/v8/ScriptWrappable.h" | |
11 #include "bindings/core/v8/V8Binding.h" | |
12 #include "bindings/core/v8/V8DOMWrapper.h" | |
13 #include "bindings/core/v8/WrapperTypeInfo.h" | |
14 #include "bindings/tests/idls/core/TestInterfaceConstructor.h" | |
15 #include "platform/heap/Handle.h" | |
16 | |
17 namespace blink { | |
18 | |
19 class V8TestInterfaceConstructorConstructor { | |
20 public: | |
21 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*); | |
22 static const WrapperTypeInfo wrapperTypeInfo; | |
23 }; | |
24 | |
25 class V8TestInterfaceConstructor { | |
26 public: | |
27 static bool hasInstance(v8::Handle<v8::Value>, v8::Isolate*); | |
28 static v8::Handle<v8::Object> findInstanceInPrototypeChain(v8::Handle<v8::Va
lue>, v8::Isolate*); | |
29 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*); | |
30 static TestInterfaceConstructor* toImpl(v8::Handle<v8::Object> object) | |
31 { | |
32 return toImpl(blink::toScriptWrappableBase(object)); | |
33 } | |
34 static TestInterfaceConstructor* toImplWithTypeCheck(v8::Isolate*, v8::Handl
e<v8::Value>); | |
35 static const WrapperTypeInfo wrapperTypeInfo; | |
36 static void refObject(ScriptWrappableBase* internalPointer); | |
37 static void derefObject(ScriptWrappableBase* internalPointer); | |
38 static WrapperPersistentNode* createPersistentHandle(ScriptWrappableBase* in
ternalPointer); | |
39 static void constructorCallback(const v8::FunctionCallbackInfo<v8::Value>&); | |
40 static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0
; | |
41 static inline ScriptWrappableBase* toScriptWrappableBase(TestInterfaceConstr
uctor* impl) | |
42 { | |
43 return impl->toScriptWrappableBase(); | |
44 } | |
45 | |
46 static inline TestInterfaceConstructor* toImpl(ScriptWrappableBase* internal
Pointer) | |
47 { | |
48 return internalPointer->toImpl<TestInterfaceConstructor>(); | |
49 } | |
50 static void installConditionallyEnabledProperties(v8::Handle<v8::Object>, v8
::Isolate*) { } | |
51 static void installConditionallyEnabledMethods(v8::Handle<v8::Object>, v8::I
solate*) { } | |
52 | |
53 private: | |
54 }; | |
55 | |
56 inline v8::Handle<v8::Object> wrap(TestInterfaceConstructor* impl, v8::Handle<v8
::Object> creationContext, v8::Isolate* isolate) | |
57 { | |
58 return impl->wrap(creationContext, isolate); | |
59 } | |
60 | |
61 inline v8::Handle<v8::Value> toV8(TestInterfaceConstructor* impl, v8::Handle<v8:
:Object> creationContext, v8::Isolate* isolate) | |
62 { | |
63 if (UNLIKELY(!impl)) | |
64 return v8::Null(isolate); | |
65 v8::Handle<v8::Value> wrapper = DOMDataStore::getWrapper<V8TestInterfaceCons
tructor>(impl, isolate); | |
66 if (!wrapper.IsEmpty()) | |
67 return wrapper; | |
68 | |
69 return impl->wrap(creationContext, isolate); | |
70 } | |
71 | |
72 template<typename CallbackInfo> | |
73 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, TestInterfaceCons
tructor* impl) | |
74 { | |
75 if (UNLIKELY(!impl)) { | |
76 v8SetReturnValueNull(callbackInfo); | |
77 return; | |
78 } | |
79 if (DOMDataStore::setReturnValueFromWrapper<V8TestInterfaceConstructor>(call
backInfo.GetReturnValue(), impl)) | |
80 return; | |
81 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI
nfo.GetIsolate()); | |
82 v8SetReturnValue(callbackInfo, wrapper); | |
83 } | |
84 | |
85 template<typename CallbackInfo> | |
86 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, TestI
nterfaceConstructor* impl) | |
87 { | |
88 ASSERT(DOMWrapperWorld::current(callbackInfo.GetIsolate()).isMainWorld()); | |
89 if (UNLIKELY(!impl)) { | |
90 v8SetReturnValueNull(callbackInfo); | |
91 return; | |
92 } | |
93 if (DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestInterfaceConst
ructor>(callbackInfo.GetReturnValue(), impl)) | |
94 return; | |
95 v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackIn
fo.GetIsolate()); | |
96 v8SetReturnValue(callbackInfo, wrapper); | |
97 } | |
98 | |
99 template<class CallbackInfo, class Wrappable> | |
100 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, TestInterface
Constructor* impl, Wrappable* wrappable) | |
101 { | |
102 if (UNLIKELY(!impl)) { | |
103 v8SetReturnValueNull(callbackInfo); | |
104 return; | |
105 } | |
106 if (DOMDataStore::setReturnValueFromWrapperFast<V8TestInterfaceConstructor>(
callbackInfo.GetReturnValue(), impl, callbackInfo.Holder(), wrappable)) | |
107 return; | |
108 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI
nfo.GetIsolate()); | |
109 v8SetReturnValue(callbackInfo, wrapper); | |
110 } | |
111 | |
112 inline v8::Handle<v8::Value> toV8(PassRefPtr<TestInterfaceConstructor> impl, v8:
:Handle<v8::Object> creationContext, v8::Isolate* isolate) | |
113 { | |
114 return toV8(impl.get(), creationContext, isolate); | |
115 } | |
116 | |
117 template<class CallbackInfo> | |
118 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, PassRefPtr<TestIn
terfaceConstructor> impl) | |
119 { | |
120 v8SetReturnValue(callbackInfo, impl.get()); | |
121 } | |
122 | |
123 template<class CallbackInfo> | |
124 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, PassR
efPtr<TestInterfaceConstructor> impl) | |
125 { | |
126 v8SetReturnValueForMainWorld(callbackInfo, impl.get()); | |
127 } | |
128 | |
129 template<class CallbackInfo, class Wrappable> | |
130 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, PassRefPtr<Te
stInterfaceConstructor> impl, Wrappable* wrappable) | |
131 { | |
132 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable); | |
133 } | |
134 | |
135 } // namespace blink | |
136 #endif // V8TestInterfaceConstructor_h | |
OLD | NEW |