181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch/* 281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch This file is part of the WebKit open source project. 381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch This file has been generated by generate-bindings.pl. DO NOT MODIFY! 481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch This library is free software; you can redistribute it and/or 681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch modify it under the terms of the GNU Library General Public 781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch License as published by the Free Software Foundation; either 881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch version 2 of the License, or (at your option) any later version. 981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 1081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch This library is distributed in the hope that it will be useful, 1181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch but WITHOUT ANY WARRANTY; without even the implied warranty of 1281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch Library General Public License for more details. 1481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 1581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch You should have received a copy of the GNU Library General Public License 1681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch along with this library; see the file COPYING.LIB. If not, write to 1781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 1881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch Boston, MA 02110-1301, USA. 1981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch*/ 2081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 2181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#include "config.h" 2281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 2381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#if ENABLE(Condition1) || ENABLE(Condition2) 2481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 2581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#include "JSTestSerializedScriptValueInterface.h" 2681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 2781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#include "SerializedScriptValue.h" 2881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#include "TestSerializedScriptValueInterface.h" 2981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#include <wtf/GetPtr.h> 3081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 3181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochusing namespace JSC; 3281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 3381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochnamespace WebCore { 3481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 3581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochASSERT_CLASS_FITS_IN_CELL(JSTestSerializedScriptValueInterface); 3681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 3781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch/* Hash table */ 3881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#if ENABLE(JIT) 3981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#define THUNK_GENERATOR(generator) , generator 4081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#else 4181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#define THUNK_GENERATOR(generator) 4281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#endif 4381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 4481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochstatic const HashTableValue JSTestSerializedScriptValueInterfaceTableValues[3] = 4581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 4681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch { "value", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestSerializedScriptValueInterfaceValue), (intptr_t)0 THUNK_GENERATOR(0) }, 4781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch { "constructor", DontEnum | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestSerializedScriptValueInterfaceConstructor), (intptr_t)0 THUNK_GENERATOR(0) }, 4881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch { 0, 0, 0, 0 THUNK_GENERATOR(0) } 4981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch}; 5081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 5181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#undef THUNK_GENERATOR 5281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochstatic JSC_CONST_HASHTABLE HashTable JSTestSerializedScriptValueInterfaceTable = { 4, 3, JSTestSerializedScriptValueInterfaceTableValues, 0 }; 5381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch/* Hash table for constructor */ 5481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#if ENABLE(JIT) 5581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#define THUNK_GENERATOR(generator) , generator 5681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#else 5781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#define THUNK_GENERATOR(generator) 5881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#endif 5981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 6081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochstatic const HashTableValue JSTestSerializedScriptValueInterfaceConstructorTableValues[1] = 6181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 6281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch { 0, 0, 0, 0 THUNK_GENERATOR(0) } 6381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch}; 6481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 6581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#undef THUNK_GENERATOR 6681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochstatic JSC_CONST_HASHTABLE HashTable JSTestSerializedScriptValueInterfaceConstructorTable = { 1, 0, JSTestSerializedScriptValueInterfaceConstructorTableValues, 0 }; 6781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochclass JSTestSerializedScriptValueInterfaceConstructor : public DOMConstructorObject { 6881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochpublic: 6981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch JSTestSerializedScriptValueInterfaceConstructor(JSC::ExecState*, JSDOMGlobalObject*); 7081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 7181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch virtual bool getOwnPropertySlot(JSC::ExecState*, const JSC::Identifier&, JSC::PropertySlot&); 7281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch virtual bool getOwnPropertyDescriptor(JSC::ExecState*, const JSC::Identifier&, JSC::PropertyDescriptor&); 7381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch static const JSC::ClassInfo s_info; 742bde8e466a4451c7319e3a072d118917957d6554Steve Block static PassRefPtr<JSC::Structure> createStructure(JSC::JSGlobalData& globalData, JSC::JSValue prototype) 7581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch { 762bde8e466a4451c7319e3a072d118917957d6554Steve Block return JSC::Structure::create(globalData, prototype, JSC::TypeInfo(JSC::ObjectType, StructureFlags), AnonymousSlotCount, &s_info); 7781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch } 7881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochprotected: 7981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch static const unsigned StructureFlags = JSC::OverridesGetOwnPropertySlot | JSC::ImplementsHasInstance | DOMConstructorObject::StructureFlags; 8081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch}; 8181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 8281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochconst ClassInfo JSTestSerializedScriptValueInterfaceConstructor::s_info = { "TestSerializedScriptValueInterfaceConstructor", &DOMConstructorObject::s_info, &JSTestSerializedScriptValueInterfaceConstructorTable, 0 }; 8381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 8481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochJSTestSerializedScriptValueInterfaceConstructor::JSTestSerializedScriptValueInterfaceConstructor(ExecState* exec, JSDOMGlobalObject* globalObject) 852bde8e466a4451c7319e3a072d118917957d6554Steve Block : DOMConstructorObject(JSTestSerializedScriptValueInterfaceConstructor::createStructure(globalObject->globalData(), globalObject->objectPrototype()), globalObject) 8681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 8781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch ASSERT(inherits(&s_info)); 8881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch putDirect(exec->globalData(), exec->propertyNames().prototype, JSTestSerializedScriptValueInterfacePrototype::self(exec, globalObject), DontDelete | ReadOnly); 8981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 9081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 9181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochbool JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot) 9281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 9381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return getStaticValueSlot<JSTestSerializedScriptValueInterfaceConstructor, DOMObject>(exec, &JSTestSerializedScriptValueInterfaceConstructorTable, this, propertyName, slot); 9481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 9581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 9681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochbool JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor) 9781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 9881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return getStaticValueDescriptor<JSTestSerializedScriptValueInterfaceConstructor, DOMObject>(exec, &JSTestSerializedScriptValueInterfaceConstructorTable, this, propertyName, descriptor); 9981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 10081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 10181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch/* Hash table for prototype */ 10281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#if ENABLE(JIT) 10381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#define THUNK_GENERATOR(generator) , generator 10481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#else 10581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#define THUNK_GENERATOR(generator) 10681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#endif 10781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 10881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochstatic const HashTableValue JSTestSerializedScriptValueInterfacePrototypeTableValues[1] = 10981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 11081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch { 0, 0, 0, 0 THUNK_GENERATOR(0) } 11181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch}; 11281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 11381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#undef THUNK_GENERATOR 11481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochstatic JSC_CONST_HASHTABLE HashTable JSTestSerializedScriptValueInterfacePrototypeTable = { 1, 0, JSTestSerializedScriptValueInterfacePrototypeTableValues, 0 }; 11581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochconst ClassInfo JSTestSerializedScriptValueInterfacePrototype::s_info = { "TestSerializedScriptValueInterfacePrototype", &JSC::JSObjectWithGlobalObject::s_info, &JSTestSerializedScriptValueInterfacePrototypeTable, 0 }; 11681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 11781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochJSObject* JSTestSerializedScriptValueInterfacePrototype::self(ExecState* exec, JSGlobalObject* globalObject) 11881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 11981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return getDOMPrototype<JSTestSerializedScriptValueInterface>(exec, globalObject); 12081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 12181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 12281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochconst ClassInfo JSTestSerializedScriptValueInterface::s_info = { "TestSerializedScriptValueInterface", &DOMObjectWithGlobalPointer::s_info, &JSTestSerializedScriptValueInterfaceTable, 0 }; 12381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 12481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochJSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface(NonNullPassRefPtr<Structure> structure, JSDOMGlobalObject* globalObject, PassRefPtr<TestSerializedScriptValueInterface> impl) 12581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch : DOMObjectWithGlobalPointer(structure, globalObject) 12681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch , m_impl(impl) 12781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 12881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch ASSERT(inherits(&s_info)); 12981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 13081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 13181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochJSObject* JSTestSerializedScriptValueInterface::createPrototype(ExecState* exec, JSGlobalObject* globalObject) 13281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 1332bde8e466a4451c7319e3a072d118917957d6554Steve Block return new (exec) JSTestSerializedScriptValueInterfacePrototype(globalObject, JSTestSerializedScriptValueInterfacePrototype::createStructure(globalObject->globalData(), globalObject->objectPrototype())); 13481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 13581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 13681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochbool JSTestSerializedScriptValueInterface::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot) 13781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 13881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return getStaticValueSlot<JSTestSerializedScriptValueInterface, Base>(exec, &JSTestSerializedScriptValueInterfaceTable, this, propertyName, slot); 13981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 14081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 14181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochbool JSTestSerializedScriptValueInterface::getOwnPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor) 14281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 14381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return getStaticValueDescriptor<JSTestSerializedScriptValueInterface, Base>(exec, &JSTestSerializedScriptValueInterfaceTable, this, propertyName, descriptor); 14481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 14581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 14681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochJSValue jsTestSerializedScriptValueInterfaceValue(ExecState* exec, JSValue slotBase, const Identifier&) 14781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 14881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch JSTestSerializedScriptValueInterface* castedThis = static_cast<JSTestSerializedScriptValueInterface*>(asObject(slotBase)); 14981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch UNUSED_PARAM(exec); 15081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch TestSerializedScriptValueInterface* imp = static_cast<TestSerializedScriptValueInterface*>(castedThis->impl()); 15181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch JSValue result = imp->value() ? imp->value()->deserialize(exec, castedThis->globalObject()) : jsNull(); 15281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return result; 15381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 15481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 15581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochJSValue jsTestSerializedScriptValueInterfaceConstructor(ExecState* exec, JSValue slotBase, const Identifier&) 15681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 15781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch JSTestSerializedScriptValueInterface* domObject = static_cast<JSTestSerializedScriptValueInterface*>(asObject(slotBase)); 15881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return JSTestSerializedScriptValueInterface::getConstructor(exec, domObject->globalObject()); 15981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 16081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 16181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochJSValue JSTestSerializedScriptValueInterface::getConstructor(ExecState* exec, JSGlobalObject* globalObject) 16281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 16381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return getDOMConstructor<JSTestSerializedScriptValueInterfaceConstructor>(exec, static_cast<JSDOMGlobalObject*>(globalObject)); 16481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 16581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 16681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochJSC::JSValue toJS(JSC::ExecState* exec, JSDOMGlobalObject* globalObject, TestSerializedScriptValueInterface* object) 16781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 16881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return getDOMObjectWrapper<JSTestSerializedScriptValueInterface>(exec, globalObject, object); 16981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 17081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochTestSerializedScriptValueInterface* toTestSerializedScriptValueInterface(JSC::JSValue value) 17181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 17281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return value.inherits(&JSTestSerializedScriptValueInterface::s_info) ? static_cast<JSTestSerializedScriptValueInterface*>(asObject(value))->impl() : 0; 17381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 17481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 17581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 17681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 17781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#endif // ENABLE(Condition1) || ENABLE(Condition2) 178