Index: Source/bindings/tests/results/V8TestSpecialOperations.cpp |
diff --git a/Source/bindings/tests/results/V8TestSpecialOperationsOverrideBuiltins.cpp b/Source/bindings/tests/results/V8TestSpecialOperations.cpp |
similarity index 56% |
rename from Source/bindings/tests/results/V8TestSpecialOperationsOverrideBuiltins.cpp |
rename to Source/bindings/tests/results/V8TestSpecialOperations.cpp |
index cf1acaeb1a9cc756acc85cf6e04b1126483cce31..fde0cfbab7fb6c35335696a18874cf00fe4f26c9 100644 |
--- a/Source/bindings/tests/results/V8TestSpecialOperationsOverrideBuiltins.cpp |
+++ b/Source/bindings/tests/results/V8TestSpecialOperations.cpp |
@@ -5,9 +5,11 @@ |
// This file has been auto-generated by code_generator_v8.py. DO NOT MODIFY! |
#include "config.h" |
-#include "V8TestSpecialOperationsOverrideBuiltins.h" |
+#include "V8TestSpecialOperations.h" |
#include "RuntimeEnabledFeatures.h" |
+#include "V8Node.h" |
+#include "V8NodeList.h" |
#include "bindings/v8/ExceptionState.h" |
#include "bindings/v8/V8DOMConfiguration.h" |
#include "bindings/v8/V8HiddenValue.h" |
@@ -20,50 +22,93 @@ |
namespace WebCore { |
-static void initializeScriptWrappableForInterface(TestSpecialOperationsOverrideBuiltins* object) |
+static void initializeScriptWrappableForInterface(TestSpecialOperations* object) |
{ |
if (ScriptWrappable::wrapperCanBeStoredInObject(object)) |
- ScriptWrappable::setTypeInfoInObject(object, &V8TestSpecialOperationsOverrideBuiltins::wrapperTypeInfo); |
+ ScriptWrappable::setTypeInfoInObject(object, &V8TestSpecialOperations::wrapperTypeInfo); |
else |
ASSERT_NOT_REACHED(); |
} |
} // namespace WebCore |
-void webCoreInitializeScriptWrappableForInterface(WebCore::TestSpecialOperationsOverrideBuiltins* object) |
+void webCoreInitializeScriptWrappableForInterface(WebCore::TestSpecialOperations* object) |
{ |
WebCore::initializeScriptWrappableForInterface(object); |
} |
namespace WebCore { |
-const WrapperTypeInfo V8TestSpecialOperationsOverrideBuiltins::wrapperTypeInfo = { gin::kEmbedderBlink, V8TestSpecialOperationsOverrideBuiltins::domTemplate, V8TestSpecialOperationsOverrideBuiltins::derefObject, 0, 0, 0, V8TestSpecialOperationsOverrideBuiltins::installPerContextEnabledMethods, 0, WrapperTypeObjectPrototype, false }; |
+const WrapperTypeInfo V8TestSpecialOperations::wrapperTypeInfo = { gin::kEmbedderBlink, V8TestSpecialOperations::domTemplate, V8TestSpecialOperations::derefObject, 0, 0, 0, V8TestSpecialOperations::installPerContextEnabledMethods, 0, WrapperTypeObjectPrototype, false }; |
-namespace TestSpecialOperationsOverrideBuiltinsV8Internal { |
+namespace TestSpecialOperationsV8Internal { |
template <typename T> void V8_USE(T) { } |
+static void namedItemMethod(const v8::FunctionCallbackInfo<v8::Value>& info) |
+{ |
+ if (UNLIKELY(info.Length() < 1)) { |
+ throwTypeError(ExceptionMessages::failedToExecute("namedItem", "TestSpecialOperations", ExceptionMessages::notEnoughArguments(1, info.Length())), info.GetIsolate()); |
+ return; |
+ } |
+ TestSpecialOperations* impl = V8TestSpecialOperations::toNative(info.Holder()); |
+ V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, name, info[0]); |
+ bool result0Enabled = false; |
+ RefPtr<Node> result0; |
+ bool result1Enabled = false; |
+ RefPtr<NodeList> result1; |
+ impl->getItem(name, result0Enabled, result0, result1Enabled, result1); |
+ if (result0Enabled) { |
+ v8SetReturnValue(info, result0.release()); |
+ return; |
+ } |
+ if (result1Enabled) { |
+ v8SetReturnValue(info, result1.release()); |
+ return; |
+ } |
+ v8SetReturnValueNull(info); |
+} |
+ |
+static void namedItemMethodCallback(const v8::FunctionCallbackInfo<v8::Value>& info) |
+{ |
+ TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMMethod"); |
+ TestSpecialOperationsV8Internal::namedItemMethod(info); |
+ TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); |
+} |
+ |
static void namedPropertyGetter(v8::Local<v8::String> name, const v8::PropertyCallbackInfo<v8::Value>& info) |
{ |
- TestSpecialOperationsOverrideBuiltins* impl = V8TestSpecialOperationsOverrideBuiltins::toNative(info.Holder()); |
+ TestSpecialOperations* impl = V8TestSpecialOperations::toNative(info.Holder()); |
AtomicString propertyName = toCoreAtomicString(name); |
- String result = impl->anonymousNamedGetter(propertyName); |
- if (result.isNull()) |
+ bool result0Enabled = false; |
+ RefPtr<Node> result0; |
+ bool result1Enabled = false; |
+ RefPtr<NodeList> result1; |
+ impl->getItem(propertyName, result0Enabled, result0, result1Enabled, result1); |
+ if (!result0Enabled && !result1Enabled) |
return; |
- v8SetReturnValueString(info, result, info.GetIsolate()); |
+ if (result0Enabled) { |
+ v8SetReturnValueFast(info, WTF::getPtr(result0.release()), impl); |
+ return; |
+ } |
+ if (result1Enabled) { |
+ v8SetReturnValueFast(info, WTF::getPtr(result1.release()), impl); |
+ return; |
+ } |
+ v8SetReturnValueNull(info); |
} |
static void namedPropertyGetterCallback(v8::Local<v8::String> name, const v8::PropertyCallbackInfo<v8::Value>& info) |
{ |
TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMNamedProperty"); |
- TestSpecialOperationsOverrideBuiltinsV8Internal::namedPropertyGetter(name, info); |
+ TestSpecialOperationsV8Internal::namedPropertyGetter(name, info); |
TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); |
} |
static void namedPropertySetter(v8::Local<v8::String> name, v8::Local<v8::Value> v8Value, const v8::PropertyCallbackInfo<v8::Value>& info) |
{ |
- TestSpecialOperationsOverrideBuiltins* impl = V8TestSpecialOperationsOverrideBuiltins::toNative(info.Holder()); |
+ TestSpecialOperations* impl = V8TestSpecialOperations::toNative(info.Holder()); |
V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, propertyName, name); |
- V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, propertyValue, v8Value); |
+ V8TRYCATCH_VOID(Node*, propertyValue, V8Node::toNativeWithTypeCheck(info.GetIsolate(), v8Value)); |
bool result = impl->anonymousNamedSetter(propertyName, propertyValue); |
if (!result) |
return; |
@@ -73,16 +118,16 @@ static void namedPropertySetter(v8::Local<v8::String> name, v8::Local<v8::Value> |
static void namedPropertySetterCallback(v8::Local<v8::String> name, v8::Local<v8::Value> v8Value, const v8::PropertyCallbackInfo<v8::Value>& info) |
{ |
TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMNamedProperty"); |
- TestSpecialOperationsOverrideBuiltinsV8Internal::namedPropertySetter(name, v8Value, info); |
+ TestSpecialOperationsV8Internal::namedPropertySetter(name, v8Value, info); |
TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); |
} |
static void namedPropertyQuery(v8::Local<v8::String> name, const v8::PropertyCallbackInfo<v8::Integer>& info) |
{ |
- TestSpecialOperationsOverrideBuiltins* impl = V8TestSpecialOperationsOverrideBuiltins::toNative(info.Holder()); |
+ TestSpecialOperations* impl = V8TestSpecialOperations::toNative(info.Holder()); |
AtomicString propertyName = toCoreAtomicString(name); |
v8::String::Utf8Value namedProperty(name); |
- ExceptionState exceptionState(ExceptionState::GetterContext, *namedProperty, "TestSpecialOperationsOverrideBuiltins", info.Holder(), info.GetIsolate()); |
+ ExceptionState exceptionState(ExceptionState::GetterContext, *namedProperty, "TestSpecialOperations", info.Holder(), info.GetIsolate()); |
bool result = impl->namedPropertyQuery(propertyName, exceptionState); |
if (exceptionState.throwIfNeeded()) |
return; |
@@ -94,16 +139,16 @@ static void namedPropertyQuery(v8::Local<v8::String> name, const v8::PropertyCal |
static void namedPropertyQueryCallback(v8::Local<v8::String> name, const v8::PropertyCallbackInfo<v8::Integer>& info) |
{ |
TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMNamedProperty"); |
- TestSpecialOperationsOverrideBuiltinsV8Internal::namedPropertyQuery(name, info); |
+ TestSpecialOperationsV8Internal::namedPropertyQuery(name, info); |
TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); |
} |
static void namedPropertyEnumerator(const v8::PropertyCallbackInfo<v8::Array>& info) |
{ |
- TestSpecialOperationsOverrideBuiltins* impl = V8TestSpecialOperationsOverrideBuiltins::toNative(info.Holder()); |
+ TestSpecialOperations* impl = V8TestSpecialOperations::toNative(info.Holder()); |
v8::Isolate* isolate = info.GetIsolate(); |
Vector<String> names; |
- ExceptionState exceptionState(ExceptionState::EnumerationContext, "TestSpecialOperationsOverrideBuiltins", info.Holder(), isolate); |
+ ExceptionState exceptionState(ExceptionState::EnumerationContext, "TestSpecialOperations", info.Holder(), isolate); |
impl->namedPropertyEnumerator(names, exceptionState); |
if (exceptionState.throwIfNeeded()) |
return; |
@@ -116,31 +161,35 @@ static void namedPropertyEnumerator(const v8::PropertyCallbackInfo<v8::Array>& i |
static void namedPropertyEnumeratorCallback(const v8::PropertyCallbackInfo<v8::Array>& info) |
{ |
TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMNamedProperty"); |
- TestSpecialOperationsOverrideBuiltinsV8Internal::namedPropertyEnumerator(info); |
+ TestSpecialOperationsV8Internal::namedPropertyEnumerator(info); |
TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); |
} |
-} // namespace TestSpecialOperationsOverrideBuiltinsV8Internal |
+} // namespace TestSpecialOperationsV8Internal |
-static void configureV8TestSpecialOperationsOverrideBuiltinsTemplate(v8::Handle<v8::FunctionTemplate> functionTemplate, v8::Isolate* isolate) |
+static const V8DOMConfiguration::MethodConfiguration V8TestSpecialOperationsMethods[] = { |
+ {"namedItem", TestSpecialOperationsV8Internal::namedItemMethodCallback, 0, 1}, |
+}; |
+ |
+static void configureV8TestSpecialOperationsTemplate(v8::Handle<v8::FunctionTemplate> functionTemplate, v8::Isolate* isolate) |
{ |
functionTemplate->ReadOnlyPrototype(); |
v8::Local<v8::Signature> defaultSignature; |
- defaultSignature = V8DOMConfiguration::installDOMClassTemplate(functionTemplate, "TestSpecialOperationsOverrideBuiltins", v8::Local<v8::FunctionTemplate>(), V8TestSpecialOperationsOverrideBuiltins::internalFieldCount, |
- 0, 0, |
+ defaultSignature = V8DOMConfiguration::installDOMClassTemplate(functionTemplate, "TestSpecialOperations", v8::Local<v8::FunctionTemplate>(), V8TestSpecialOperations::internalFieldCount, |
0, 0, |
0, 0, |
+ V8TestSpecialOperationsMethods, WTF_ARRAY_LENGTH(V8TestSpecialOperationsMethods), |
isolate); |
v8::Local<v8::ObjectTemplate> ALLOW_UNUSED instanceTemplate = functionTemplate->InstanceTemplate(); |
v8::Local<v8::ObjectTemplate> ALLOW_UNUSED prototypeTemplate = functionTemplate->PrototypeTemplate(); |
- functionTemplate->InstanceTemplate()->SetNamedPropertyHandler(TestSpecialOperationsOverrideBuiltinsV8Internal::namedPropertyGetterCallback, TestSpecialOperationsOverrideBuiltinsV8Internal::namedPropertySetterCallback, TestSpecialOperationsOverrideBuiltinsV8Internal::namedPropertyQueryCallback, 0, TestSpecialOperationsOverrideBuiltinsV8Internal::namedPropertyEnumeratorCallback); |
+ functionTemplate->InstanceTemplate()->SetNamedPropertyHandler(TestSpecialOperationsV8Internal::namedPropertyGetterCallback, TestSpecialOperationsV8Internal::namedPropertySetterCallback, TestSpecialOperationsV8Internal::namedPropertyQueryCallback, 0, TestSpecialOperationsV8Internal::namedPropertyEnumeratorCallback); |
// Custom toString template |
functionTemplate->Set(v8AtomicString(isolate, "toString"), V8PerIsolateData::current()->toStringTemplate()); |
} |
-v8::Handle<v8::FunctionTemplate> V8TestSpecialOperationsOverrideBuiltins::domTemplate(v8::Isolate* isolate) |
+v8::Handle<v8::FunctionTemplate> V8TestSpecialOperations::domTemplate(v8::Isolate* isolate) |
{ |
V8PerIsolateData* data = V8PerIsolateData::from(isolate); |
v8::Local<v8::FunctionTemplate> result = data->existingDOMTemplate(const_cast<WrapperTypeInfo*>(&wrapperTypeInfo)); |
@@ -149,30 +198,30 @@ v8::Handle<v8::FunctionTemplate> V8TestSpecialOperationsOverrideBuiltins::domTem |
TRACE_EVENT_SCOPED_SAMPLING_STATE("Blink", "BuildDOMTemplate"); |
result = v8::FunctionTemplate::New(isolate, V8ObjectConstructor::isValidConstructorMode); |
- configureV8TestSpecialOperationsOverrideBuiltinsTemplate(result, isolate); |
+ configureV8TestSpecialOperationsTemplate(result, isolate); |
data->setDOMTemplate(const_cast<WrapperTypeInfo*>(&wrapperTypeInfo), result); |
return result; |
} |
-bool V8TestSpecialOperationsOverrideBuiltins::hasInstance(v8::Handle<v8::Value> v8Value, v8::Isolate* isolate) |
+bool V8TestSpecialOperations::hasInstance(v8::Handle<v8::Value> v8Value, v8::Isolate* isolate) |
{ |
return V8PerIsolateData::from(isolate)->hasInstance(&wrapperTypeInfo, v8Value); |
} |
-v8::Handle<v8::Object> V8TestSpecialOperationsOverrideBuiltins::findInstanceInPrototypeChain(v8::Handle<v8::Value> v8Value, v8::Isolate* isolate) |
+v8::Handle<v8::Object> V8TestSpecialOperations::findInstanceInPrototypeChain(v8::Handle<v8::Value> v8Value, v8::Isolate* isolate) |
{ |
return V8PerIsolateData::from(isolate)->findInstanceInPrototypeChain(&wrapperTypeInfo, v8Value); |
} |
-TestSpecialOperationsOverrideBuiltins* V8TestSpecialOperationsOverrideBuiltins::toNativeWithTypeCheck(v8::Isolate* isolate, v8::Handle<v8::Value> value) |
+TestSpecialOperations* V8TestSpecialOperations::toNativeWithTypeCheck(v8::Isolate* isolate, v8::Handle<v8::Value> value) |
{ |
return hasInstance(value, isolate) ? fromInternalPointer(v8::Handle<v8::Object>::Cast(value)->GetAlignedPointerFromInternalField(v8DOMWrapperObjectIndex)) : 0; |
} |
-v8::Handle<v8::Object> V8TestSpecialOperationsOverrideBuiltins::createWrapper(PassRefPtr<TestSpecialOperationsOverrideBuiltins> impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) |
+v8::Handle<v8::Object> V8TestSpecialOperations::createWrapper(PassRefPtr<TestSpecialOperations> impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) |
{ |
ASSERT(impl); |
- ASSERT(!DOMDataStore::containsWrapper<V8TestSpecialOperationsOverrideBuiltins>(impl.get(), isolate)); |
+ ASSERT(!DOMDataStore::containsWrapper<V8TestSpecialOperations>(impl.get(), isolate)); |
if (ScriptWrappable::wrapperCanBeStoredInObject(impl.get())) { |
const WrapperTypeInfo* actualInfo = ScriptWrappable::getTypeInfoFromObject(impl.get()); |
// Might be a XXXConstructor::wrapperTypeInfo instead of an XXX::wrapperTypeInfo. These will both have |
@@ -185,17 +234,17 @@ v8::Handle<v8::Object> V8TestSpecialOperationsOverrideBuiltins::createWrapper(Pa |
return wrapper; |
installPerContextEnabledProperties(wrapper, impl.get(), isolate); |
- V8DOMWrapper::associateObjectWithWrapper<V8TestSpecialOperationsOverrideBuiltins>(impl, &wrapperTypeInfo, wrapper, isolate, WrapperConfiguration::Independent); |
+ V8DOMWrapper::associateObjectWithWrapper<V8TestSpecialOperations>(impl, &wrapperTypeInfo, wrapper, isolate, WrapperConfiguration::Independent); |
return wrapper; |
} |
-void V8TestSpecialOperationsOverrideBuiltins::derefObject(void* object) |
+void V8TestSpecialOperations::derefObject(void* object) |
{ |
fromInternalPointer(object)->deref(); |
} |
template<> |
-v8::Handle<v8::Value> toV8NoInline(TestSpecialOperationsOverrideBuiltins* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) |
+v8::Handle<v8::Value> toV8NoInline(TestSpecialOperations* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) |
{ |
return toV8(impl, creationContext, isolate); |
} |