Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(155)

Unified Diff: Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp

Issue 13937004: Move bindings-tests to bindings/tests (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp
diff --git a/Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp b/Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp
deleted file mode 100644
index d71364de9b2a0fc2b1e139c5f769744a3c70c9c3..0000000000000000000000000000000000000000
--- a/Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp
+++ /dev/null
@@ -1,383 +0,0 @@
-/*
- This file is part of the WebKit open source project.
- This file has been generated by generate-bindings.pl. DO NOT MODIFY!
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public License
- along with this library; see the file COPYING.LIB. If not, write to
- the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
-*/
-
-#include "config.h"
-#if ENABLE(Condition1) || ENABLE(Condition2)
-#include "V8TestSerializedScriptValueInterface.h"
-
-#include "BindingState.h"
-#include "ContextFeatures.h"
-#include "ExceptionCode.h"
-#include "Frame.h"
-#include "MessagePort.h"
-#include "RuntimeEnabledFeatures.h"
-#include "SerializedScriptValue.h"
-#include "V8Binding.h"
-#include "V8DOMWrapper.h"
-#include "V8MessagePort.h"
-#include <wtf/ArrayBuffer.h>
-#include <wtf/UnusedParam.h>
-
-#if ENABLE(BINDING_INTEGRITY)
-#if defined(OS_WIN)
-#pragma warning(disable: 4483)
-extern "C" { extern void (*const __identifier("??_7TestSerializedScriptValueInterface@WebCore@@6B@")[])(); }
-#else
-extern "C" { extern void* _ZTVN7WebCore34TestSerializedScriptValueInterfaceE[]; }
-#endif
-#endif // ENABLE(BINDING_INTEGRITY)
-
-namespace WebCore {
-
-#if ENABLE(BINDING_INTEGRITY)
-// This checks if a DOM object that is about to be wrapped is valid.
-// Specifically, it checks that a vtable of the DOM object is equal to
-// a vtable of an expected class.
-// Due to a dangling pointer, the DOM object you are wrapping might be
-// already freed or realloced. If freed, the check will fail because
-// a free list pointer should be stored at the head of the DOM object.
-// If realloced, the check will fail because the vtable of the DOM object
-// differs from the expected vtable (unless the same class of DOM object
-// is realloced on the slot).
-inline void checkTypeOrDieTrying(TestSerializedScriptValueInterface* object)
-{
- void* actualVTablePointer = *(reinterpret_cast<void**>(object));
-#if defined(OS_WIN)
- void* expectedVTablePointer = reinterpret_cast<void*>(__identifier("??_7TestSerializedScriptValueInterface@WebCore@@6B@"));
-#else
- void* expectedVTablePointer = &_ZTVN7WebCore34TestSerializedScriptValueInterfaceE[2];
-#endif
- if (actualVTablePointer != expectedVTablePointer)
- CRASH();
-}
-#endif // ENABLE(BINDING_INTEGRITY)
-
-WrapperTypeInfo V8TestSerializedScriptValueInterface::info = { V8TestSerializedScriptValueInterface::GetTemplate, V8TestSerializedScriptValueInterface::derefObject, 0, 0, 0, V8TestSerializedScriptValueInterface::installPerContextPrototypeProperties, 0, WrapperTypeObjectPrototype };
-
-namespace TestSerializedScriptValueInterfaceV8Internal {
-
-template <typename T> void V8_USE(T) { }
-
-static v8::Handle<v8::Value> valueAttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(info.Holder());
- return imp->value() ? imp->value()->deserialize() : v8::Handle<v8::Value>(v8Null(info.GetIsolate()));
-}
-
-static v8::Handle<v8::Value> valueAttrGetterCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- return TestSerializedScriptValueInterfaceV8Internal::valueAttrGetter(name, info);
-}
-
-static void valueAttrSetter(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::AccessorInfo& info)
-{
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(info.Holder());
- V8TRYCATCH_VOID(RefPtr<SerializedScriptValue>, v, SerializedScriptValue::create(value, info.GetIsolate()));
- imp->setValue(WTF::getPtr(v));
- return;
-}
-
-static void valueAttrSetterCallback(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::AccessorInfo& info)
-{
- TestSerializedScriptValueInterfaceV8Internal::valueAttrSetter(name, value, info);
-}
-
-static v8::Handle<v8::Value> readonlyValueAttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(info.Holder());
- return imp->readonlyValue() ? imp->readonlyValue()->deserialize() : v8::Handle<v8::Value>(v8Null(info.GetIsolate()));
-}
-
-static v8::Handle<v8::Value> readonlyValueAttrGetterCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- return TestSerializedScriptValueInterfaceV8Internal::readonlyValueAttrGetter(name, info);
-}
-
-static v8::Handle<v8::Value> cachedValueAttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- v8::Handle<v8::String> propertyName = v8::String::NewSymbol("cachedValue");
- v8::Handle<v8::Value> value = info.Holder()->GetHiddenValue(propertyName);
- if (!value.IsEmpty())
- return value;
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(info.Holder());
- RefPtr<SerializedScriptValue> serialized = imp->cachedValue();
- value = serialized ? serialized->deserialize() : v8::Handle<v8::Value>(v8Null(info.GetIsolate()));
- info.Holder()->SetHiddenValue(propertyName, value);
- return value;
-}
-
-static v8::Handle<v8::Value> cachedValueAttrGetterCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- return TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetter(name, info);
-}
-
-static void cachedValueAttrSetter(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::AccessorInfo& info)
-{
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(info.Holder());
- V8TRYCATCH_VOID(RefPtr<SerializedScriptValue>, v, SerializedScriptValue::create(value, info.GetIsolate()));
- imp->setCachedValue(WTF::getPtr(v));
- info.Holder()->DeleteHiddenValue(v8::String::NewSymbol("cachedValue")); // Invalidate the cached value.
- return;
-}
-
-static void cachedValueAttrSetterCallback(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::AccessorInfo& info)
-{
- TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetter(name, value, info);
-}
-
-static v8::Handle<v8::Value> portsAttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(info.Holder());
- MessagePortArray* ports = imp->ports();
- if (!ports)
- return v8::Array::New(0);
- MessagePortArray portsCopy(*ports);
- v8::Local<v8::Array> portArray = v8::Array::New(portsCopy.size());
- for (size_t i = 0; i < portsCopy.size(); ++i)
- portArray->Set(v8Integer(i, info.GetIsolate()), toV8Fast(portsCopy[i].get(), info, imp));
- return portArray;
-}
-
-static v8::Handle<v8::Value> portsAttrGetterCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- return TestSerializedScriptValueInterfaceV8Internal::portsAttrGetter(name, info);
-}
-
-static v8::Handle<v8::Value> cachedReadonlyValueAttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- v8::Handle<v8::String> propertyName = v8::String::NewSymbol("cachedReadonlyValue");
- v8::Handle<v8::Value> value = info.Holder()->GetHiddenValue(propertyName);
- if (!value.IsEmpty())
- return value;
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(info.Holder());
- RefPtr<SerializedScriptValue> serialized = imp->cachedReadonlyValue();
- value = serialized ? serialized->deserialize() : v8::Handle<v8::Value>(v8Null(info.GetIsolate()));
- info.Holder()->SetHiddenValue(propertyName, value);
- return value;
-}
-
-static v8::Handle<v8::Value> cachedReadonlyValueAttrGetterCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
-{
- return TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetter(name, info);
-}
-
-static v8::Handle<v8::Value> acceptTransferListMethod(const v8::Arguments& args)
-{
- if (args.Length() < 1)
- return throwNotEnoughArgumentsError(args.GetIsolate());
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(args.Holder());
- MessagePortArray messagePortArrayTransferList;
- ArrayBufferArray arrayBufferArrayTransferList;
- if (args.Length() > 1) {
- if (!extractTransferables(args[1], messagePortArrayTransferList, arrayBufferArrayTransferList, args.GetIsolate()))
- return throwTypeError("Could not extract transferables", args.GetIsolate());
- }
- bool dataDidThrow = false;
- RefPtr<SerializedScriptValue> data = SerializedScriptValue::create(args[0], &messagePortArrayTransferList, &arrayBufferArrayTransferList, dataDidThrow, args.GetIsolate());
- if (dataDidThrow)
- return v8Undefined();
- if (args.Length() <= 1) {
- imp->acceptTransferList(data);
- return v8Undefined();
- }
- imp->acceptTransferList(data, messagePortArrayTransferList);
- return v8Undefined();
-}
-
-static v8::Handle<v8::Value> acceptTransferListMethodCallback(const v8::Arguments& args)
-{
- return TestSerializedScriptValueInterfaceV8Internal::acceptTransferListMethod(args);
-}
-
-static v8::Handle<v8::Value> multiTransferListMethod(const v8::Arguments& args)
-{
- TestSerializedScriptValueInterface* imp = V8TestSerializedScriptValueInterface::toNative(args.Holder());
- if (args.Length() <= 0) {
- imp->multiTransferList();
- return v8Undefined();
- }
- MessagePortArray messagePortArrayTx;
- ArrayBufferArray arrayBufferArrayTx;
- if (args.Length() > 1) {
- if (!extractTransferables(args[1], messagePortArrayTx, arrayBufferArrayTx, args.GetIsolate()))
- return throwTypeError("Could not extract transferables", args.GetIsolate());
- }
- bool firstDidThrow = false;
- RefPtr<SerializedScriptValue> first = SerializedScriptValue::create(args[0], &messagePortArrayTx, &arrayBufferArrayTx, firstDidThrow, args.GetIsolate());
- if (firstDidThrow)
- return v8Undefined();
- if (args.Length() <= 1) {
- imp->multiTransferList(first);
- return v8Undefined();
- }
- if (args.Length() <= 2) {
- imp->multiTransferList(first, messagePortArrayTx);
- return v8Undefined();
- }
- MessagePortArray messagePortArrayTxx;
- ArrayBufferArray arrayBufferArrayTxx;
- if (args.Length() > 3) {
- if (!extractTransferables(args[3], messagePortArrayTxx, arrayBufferArrayTxx, args.GetIsolate()))
- return throwTypeError("Could not extract transferables", args.GetIsolate());
- }
- bool secondDidThrow = false;
- RefPtr<SerializedScriptValue> second = SerializedScriptValue::create(args[2], &messagePortArrayTxx, &arrayBufferArrayTxx, secondDidThrow, args.GetIsolate());
- if (secondDidThrow)
- return v8Undefined();
- if (args.Length() <= 3) {
- imp->multiTransferList(first, messagePortArrayTx, second);
- return v8Undefined();
- }
- imp->multiTransferList(first, messagePortArrayTx, second, messagePortArrayTxx);
- return v8Undefined();
-}
-
-static v8::Handle<v8::Value> multiTransferListMethodCallback(const v8::Arguments& args)
-{
- return TestSerializedScriptValueInterfaceV8Internal::multiTransferListMethod(args);
-}
-
-static v8::Handle<v8::Value> constructor(const v8::Arguments& args)
-{
- if (args.Length() < 2)
- return throwNotEnoughArgumentsError(args.GetIsolate());
- V8TRYCATCH_FOR_V8STRINGRESOURCE(V8StringResource<>, hello, args[0]);
- MessagePortArray messagePortArrayTransferList;
- ArrayBufferArray arrayBufferArrayTransferList;
- if (args.Length() > 2) {
- if (!extractTransferables(args[2], messagePortArrayTransferList, arrayBufferArrayTransferList, args.GetIsolate()))
- return throwTypeError("Could not extract transferables", args.GetIsolate());
- }
- bool dataDidThrow = false;
- RefPtr<SerializedScriptValue> data = SerializedScriptValue::create(args[1], &messagePortArrayTransferList, &arrayBufferArrayTransferList, dataDidThrow, args.GetIsolate());
- if (dataDidThrow)
- return v8Undefined();
-
- RefPtr<TestSerializedScriptValueInterface> impl = TestSerializedScriptValueInterface::create(hello, data, messagePortArrayTransferList);
- v8::Handle<v8::Object> wrapper = args.Holder();
-
- V8DOMWrapper::associateObjectWithWrapper(impl.release(), &V8TestSerializedScriptValueInterface::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
- return wrapper;
-}
-
-} // namespace TestSerializedScriptValueInterfaceV8Internal
-
-static const V8DOMConfiguration::BatchedAttribute V8TestSerializedScriptValueInterfaceAttrs[] = {
- // Attribute 'value' (Type: 'attribute' ExtAttr: '')
- {"value", TestSerializedScriptValueInterfaceV8Internal::valueAttrGetterCallback, TestSerializedScriptValueInterfaceV8Internal::valueAttrSetterCallback, 0, 0, 0 /* no data */, static_cast<v8::AccessControl>(v8::DEFAULT), static_cast<v8::PropertyAttribute>(v8::None), 0 /* on instance */},
- // Attribute 'readonlyValue' (Type: 'readonly attribute' ExtAttr: '')
- {"readonlyValue", TestSerializedScriptValueInterfaceV8Internal::readonlyValueAttrGetterCallback, 0, 0, 0, 0 /* no data */, static_cast<v8::AccessControl>(v8::DEFAULT), static_cast<v8::PropertyAttribute>(v8::None), 0 /* on instance */},
- // Attribute 'cachedValue' (Type: 'attribute' ExtAttr: 'CachedAttribute')
- {"cachedValue", TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetterCallback, TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetterCallback, 0, 0, 0 /* no data */, static_cast<v8::AccessControl>(v8::DEFAULT), static_cast<v8::PropertyAttribute>(v8::None), 0 /* on instance */},
- // Attribute 'ports' (Type: 'readonly attribute' ExtAttr: '')
- {"ports", TestSerializedScriptValueInterfaceV8Internal::portsAttrGetterCallback, 0, 0, 0, 0 /* no data */, static_cast<v8::AccessControl>(v8::DEFAULT), static_cast<v8::PropertyAttribute>(v8::None), 0 /* on instance */},
- // Attribute 'cachedReadonlyValue' (Type: 'readonly attribute' ExtAttr: 'CachedAttribute')
- {"cachedReadonlyValue", TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetterCallback, 0, 0, 0, 0 /* no data */, static_cast<v8::AccessControl>(v8::DEFAULT), static_cast<v8::PropertyAttribute>(v8::None), 0 /* on instance */},
-};
-
-static const V8DOMConfiguration::BatchedMethod V8TestSerializedScriptValueInterfaceMethods[] = {
- {"acceptTransferList", TestSerializedScriptValueInterfaceV8Internal::acceptTransferListMethodCallback, 0},
- {"multiTransferList", TestSerializedScriptValueInterfaceV8Internal::multiTransferListMethodCallback, 0},
-};
-
-v8::Handle<v8::Value> V8TestSerializedScriptValueInterface::constructorCallback(const v8::Arguments& args)
-{
- if (!args.IsConstructCall())
- return throwTypeError("DOM object constructor cannot be called as a function.", args.GetIsolate());
-
- if (ConstructorMode::current() == ConstructorMode::WrapExistingObject)
- return args.Holder();
-
- return TestSerializedScriptValueInterfaceV8Internal::constructor(args);
-}
-
-static v8::Persistent<v8::FunctionTemplate> ConfigureV8TestSerializedScriptValueInterfaceTemplate(v8::Persistent<v8::FunctionTemplate> desc, v8::Isolate* isolate, WrapperWorldType currentWorldType)
-{
- desc->ReadOnlyPrototype();
-
- v8::Local<v8::Signature> defaultSignature;
- defaultSignature = V8DOMConfiguration::configureTemplate(desc, "TestSerializedScriptValueInterface", v8::Persistent<v8::FunctionTemplate>(), V8TestSerializedScriptValueInterface::internalFieldCount,
- V8TestSerializedScriptValueInterfaceAttrs, WTF_ARRAY_LENGTH(V8TestSerializedScriptValueInterfaceAttrs),
- V8TestSerializedScriptValueInterfaceMethods, WTF_ARRAY_LENGTH(V8TestSerializedScriptValueInterfaceMethods), isolate, currentWorldType);
- UNUSED_PARAM(defaultSignature); // In some cases, it will not be used.
- desc->SetCallHandler(V8TestSerializedScriptValueInterface::constructorCallback);
- v8::Local<v8::ObjectTemplate> instance = desc->InstanceTemplate();
- v8::Local<v8::ObjectTemplate> proto = desc->PrototypeTemplate();
- UNUSED_PARAM(instance); // In some cases, it will not be used.
- UNUSED_PARAM(proto); // In some cases, it will not be used.
-
-
- // Custom toString template
- desc->Set(v8::String::NewSymbol("toString"), V8PerIsolateData::current()->toStringTemplate());
- return desc;
-}
-
-v8::Persistent<v8::FunctionTemplate> V8TestSerializedScriptValueInterface::GetTemplate(v8::Isolate* isolate, WrapperWorldType currentWorldType)
-{
- V8PerIsolateData* data = V8PerIsolateData::from(isolate);
- V8PerIsolateData::TemplateMap::iterator result = data->templateMap(currentWorldType).find(&info);
- if (result != data->templateMap(currentWorldType).end())
- return result->value;
-
- v8::HandleScope handleScope;
- v8::Persistent<v8::FunctionTemplate> templ =
- ConfigureV8TestSerializedScriptValueInterfaceTemplate(data->rawTemplate(&info, currentWorldType), isolate, currentWorldType);
- data->templateMap(currentWorldType).add(&info, templ);
- return templ;
-}
-
-bool V8TestSerializedScriptValueInterface::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType currentWorldType)
-{
- return V8PerIsolateData::from(isolate)->hasInstance(&info, value, currentWorldType);
-}
-
-bool V8TestSerializedScriptValueInterface::HasInstanceInAnyWorld(v8::Handle<v8::Value> value, v8::Isolate* isolate)
-{
- return V8PerIsolateData::from(isolate)->hasInstance(&info, value, MainWorld)
- || V8PerIsolateData::from(isolate)->hasInstance(&info, value, IsolatedWorld)
- || V8PerIsolateData::from(isolate)->hasInstance(&info, value, WorkerWorld);
-}
-
-
-v8::Handle<v8::Object> V8TestSerializedScriptValueInterface::createWrapper(PassRefPtr<TestSerializedScriptValueInterface> impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
-{
- ASSERT(impl.get());
- ASSERT(DOMDataStore::getWrapper(impl.get(), isolate).IsEmpty());
-
-#if ENABLE(BINDING_INTEGRITY)
- checkTypeOrDieTrying(impl.get());
-#endif
-
- v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext, &info, impl.get(), isolate);
- if (UNLIKELY(wrapper.IsEmpty()))
- return wrapper;
-
- installPerContextProperties(wrapper, impl.get(), isolate);
- V8DOMWrapper::associateObjectWithWrapper(impl, &info, wrapper, isolate, hasDependentLifetime ? WrapperConfiguration::Dependent : WrapperConfiguration::Independent);
- return wrapper;
-}
-void V8TestSerializedScriptValueInterface::derefObject(void* object)
-{
- static_cast<TestSerializedScriptValueInterface*>(object)->deref();
-}
-
-} // namespace WebCore
-
-#endif // ENABLE(Condition1) || ENABLE(Condition2)

Powered by Google App Engine
This is Rietveld 408576698