1/* 2 This file is part of the WebKit open source project. 3 This file has been generated by generate-bindings.pl. DO NOT MODIFY! 4 5 This library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Library General Public 7 License as published by the Free Software Foundation; either 8 version 2 of the License, or (at your option) any later version. 9 10 This library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Library General Public License for more details. 14 15 You should have received a copy of the GNU Library General Public License 16 along with this library; see the file COPYING.LIB. If not, write to 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 18 Boston, MA 02111-1307, USA. 19*/ 20 21#if ENABLE(Condition1) || ENABLE(Condition2) 22 23#ifndef V8TestInterface_h 24#define V8TestInterface_h 25 26#include "TestInterface.h" 27#include "V8DOMWrapper.h" 28#include "WrapperTypeInfo.h" 29#include <wtf/text/StringHash.h> 30#include <v8.h> 31#include <wtf/HashMap.h> 32 33namespace WebCore { 34 35class V8TestInterface { 36 37public: 38 static bool HasInstance(v8::Handle<v8::Value> value); 39 static v8::Persistent<v8::FunctionTemplate> GetRawTemplate(); 40 static v8::Persistent<v8::FunctionTemplate> GetTemplate(); 41 static TestInterface* toNative(v8::Handle<v8::Object> object) 42 { 43 return reinterpret_cast<TestInterface*>(object->GetPointerFromInternalField(v8DOMWrapperObjectIndex)); 44 } 45 inline static v8::Handle<v8::Object> wrap(TestInterface*); 46 static void derefObject(void*); 47 static WrapperTypeInfo info; 48 static v8::Handle<v8::Value> constructorCallback(const v8::Arguments& args); 49 static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0; 50private: 51 static v8::Handle<v8::Object> wrapSlow(TestInterface*); 52}; 53 54 55v8::Handle<v8::Object> V8TestInterface::wrap(TestInterface* impl) 56{ 57 v8::Handle<v8::Object> wrapper = getDOMObjectMap().get(impl); 58 if (!wrapper.IsEmpty()) 59 return wrapper; 60 return V8TestInterface::wrapSlow(impl); 61} 62 63inline v8::Handle<v8::Value> toV8(TestInterface* impl) 64{ 65 if (!impl) 66 return v8::Null(); 67 return V8TestInterface::wrap(impl); 68} 69inline v8::Handle<v8::Value> toV8(PassRefPtr< TestInterface > impl) 70{ 71 return toV8(impl.get()); 72} 73} 74 75#endif // V8TestInterface_h 76#endif // ENABLE(Condition1) || ENABLE(Condition2) 77 78