static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*);
static TestInterfaceDocument* toImpl(v8::Handle<v8::Object> object)
{
- return toImpl(blink::toScriptWrappableBase(object));
+ return blink::toScriptWrappableBase(object)->toImpl<TestInterfaceDocument>();
}
static TestInterfaceDocument* toImplWithTypeCheck(v8::Isolate*, v8::Handle<v8::Value>);
static const WrapperTypeInfo wrapperTypeInfo;
- static void refObject(ScriptWrappableBase* internalPointer);
- static void derefObject(ScriptWrappableBase* internalPointer);
- static WrapperPersistentNode* createPersistentHandle(ScriptWrappableBase* internalPointer);
- static EventTarget* toEventTarget(v8::Handle<v8::Object>);
+ static void refObject(ScriptWrappableBase*);
+ static void derefObject(ScriptWrappableBase*);
+ static void trace(Visitor* visitor, ScriptWrappableBase* scriptWrappableBase)
+ {
#if ENABLE(OILPAN)
- static const int persistentHandleIndex = v8DefaultWrapperInternalFieldCount + 0;
- static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0 + 1;
-#else
- static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0;
+ visitor->trace(scriptWrappableBase->toImpl<TestInterfaceDocument>());
#endif
+ }
+ static EventTarget* toEventTarget(v8::Handle<v8::Object>);
+ static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0;
static inline ScriptWrappableBase* toScriptWrappableBase(TestInterfaceDocument* impl)
{
return impl->toScriptWrappableBase();
}
-
- static inline TestInterfaceDocument* toImpl(ScriptWrappableBase* internalPointer)
- {
- return internalPointer->toImpl<TestInterfaceDocument>();
- }
static void installConditionallyEnabledProperties(v8::Handle<v8::Object>, v8::Isolate*) { }
static void installConditionallyEnabledMethods(v8::Handle<v8::Object>, v8::Isolate*) { }
-
-private:
};
-inline v8::Handle<v8::Object> wrap(TestInterfaceDocument* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
-{
- return impl->wrap(creationContext, isolate);
-}
-
-inline v8::Handle<v8::Value> toV8(TestInterfaceDocument* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
-{
- if (UNLIKELY(!impl))
- return v8::Null(isolate);
- v8::Handle<v8::Value> wrapper = DOMDataStore::getWrapper<V8TestInterfaceDocument>(impl, isolate);
- if (!wrapper.IsEmpty())
- return wrapper;
-
- return impl->wrap(creationContext, isolate);
-}
-
-template<typename CallbackInfo>
-inline void v8SetReturnValue(const CallbackInfo& callbackInfo, TestInterfaceDocument* impl)
-{
- if (UNLIKELY(!impl)) {
- v8SetReturnValueNull(callbackInfo);
- return;
- }
- if (DOMDataStore::setReturnValueFromWrapper<V8TestInterfaceDocument>(callbackInfo.GetReturnValue(), impl))
- return;
- v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackInfo.GetIsolate());
- v8SetReturnValue(callbackInfo, wrapper);
-}
-
-template<typename CallbackInfo>
-inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, TestInterfaceDocument* impl)
-{
- ASSERT(DOMWrapperWorld::current(callbackInfo.GetIsolate()).isMainWorld());
- if (UNLIKELY(!impl)) {
- v8SetReturnValueNull(callbackInfo);
- return;
- }
- if (DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestInterfaceDocument>(callbackInfo.GetReturnValue(), impl))
- return;
- v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackInfo.GetIsolate());
- v8SetReturnValue(callbackInfo, wrapper);
-}
-
-template<class CallbackInfo, class Wrappable>
-inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, TestInterfaceDocument* impl, Wrappable* wrappable)
-{
- if (UNLIKELY(!impl)) {
- v8SetReturnValueNull(callbackInfo);
- return;
- }
- if (DOMDataStore::setReturnValueFromWrapperFast<V8TestInterfaceDocument>(callbackInfo.GetReturnValue(), impl, callbackInfo.Holder(), wrappable))
- return;
- v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackInfo.GetIsolate());
- v8SetReturnValue(callbackInfo, wrapper);
-}
-
-inline v8::Handle<v8::Value> toV8(PassRefPtrWillBeRawPtr<TestInterfaceDocument> impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
-{
- return toV8(impl.get(), creationContext, isolate);
-}
-
-template<class CallbackInfo>
-inline void v8SetReturnValue(const CallbackInfo& callbackInfo, PassRefPtrWillBeRawPtr<TestInterfaceDocument> impl)
-{
- v8SetReturnValue(callbackInfo, impl.get());
-}
-
-template<class CallbackInfo>
-inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, PassRefPtrWillBeRawPtr<TestInterfaceDocument> impl)
-{
- v8SetReturnValueForMainWorld(callbackInfo, impl.get());
-}
-
-template<class CallbackInfo, class Wrappable>
-inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, PassRefPtrWillBeRawPtr<TestInterfaceDocument> impl, Wrappable* wrappable)
-{
- v8SetReturnValueFast(callbackInfo, impl.get(), wrappable);
-}
-
} // namespace blink
+
#endif // V8TestInterfaceDocument_h