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 33 namespace WebCore { 34 35 class V8TestInterface { 36 37 public: 38 static bool HasInstance(v8::Handle<v8::Value> value); 39 static v8::Persistent<v8::FunctionTemplate> GetRawTemplate(); 40 static v8::Persistent<v8::FunctionTemplate> GetTemplate(); toNative(v8::Handle<v8::Object> object)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; 50 private: 51 static v8::Handle<v8::Object> wrapSlow(TestInterface*); 52 }; 53 54 wrap(TestInterface * impl)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 toV8(TestInterface * impl)63inline v8::Handle<v8::Value> toV8(TestInterface* impl) 64 { 65 if (!impl) 66 return v8::Null(); 67 return V8TestInterface::wrap(impl); 68 } toV8(PassRefPtr<TestInterface> impl)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