Index: third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp |
diff --git a/third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp b/third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp |
index 772a548ec04c0232d7720b026dcb2db7b7b224a4..2b32f19731e6a1263aa8c80b6a9503960c8fcf69 100644 |
--- a/third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp |
+++ b/third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp |
@@ -2549,18 +2549,15 @@ static void locationAttributeSetter(v8::Local<v8::Value> v8Value, const v8::Func |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestNode* impl = WTF::GetPtr(proxyImpl->location()); |
- if (!impl) |
+ ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "location"); |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "location")).ToLocal(&target)) |
return; |
- |
- // Prepare the value to be set. |
- V8StringResource<> cppValue = v8Value; |
- if (!cppValue.Prepare()) |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
return; |
- |
- impl->setHref(cppValue); |
+ } |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "href"), v8Value).IsNothing(); |
} |
static void locationWithExceptionAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { |
@@ -2575,20 +2572,15 @@ static void locationWithExceptionAttributeSetter(v8::Local<v8::Value> v8Value, c |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestNode* impl = WTF::GetPtr(proxyImpl->locationWithException()); |
- if (!impl) |
- return; |
- |
ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "locationWithException"); |
- |
- // Prepare the value to be set. |
- V8StringResource<> cppValue = v8Value; |
- if (!cppValue.Prepare()) |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "locationWithException")).ToLocal(&target)) |
return; |
- |
- impl->setHrefThrows(cppValue, exceptionState); |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
+ return; |
+ } |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "hrefThrows"), v8Value).IsNothing(); |
} |
static void locationWithCallWithAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { |
@@ -2603,20 +2595,15 @@ static void locationWithCallWithAttributeSetter(v8::Local<v8::Value> v8Value, co |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestNode* impl = WTF::GetPtr(proxyImpl->locationWithCallWith()); |
- if (!impl) |
+ ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "locationWithCallWith"); |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "locationWithCallWith")).ToLocal(&target)) |
return; |
- |
- // Prepare the value to be set. |
- V8StringResource<> cppValue = v8Value; |
- if (!cppValue.Prepare()) |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
return; |
- |
- ExecutionContext* executionContext = CurrentExecutionContext(isolate); |
- |
- impl->setHrefCallWith(executionContext, CurrentDOMWindow(info.GetIsolate()), EnteredDOMWindow(info.GetIsolate()), cppValue); |
+ } |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "hrefCallWith"), v8Value).IsNothing(); |
} |
static void locationByteStringAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { |
@@ -2631,20 +2618,15 @@ static void locationByteStringAttributeSetter(v8::Local<v8::Value> v8Value, cons |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestNode* impl = WTF::GetPtr(proxyImpl->locationByteString()); |
- if (!impl) |
- return; |
- |
ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "locationByteString"); |
- |
- // Prepare the value to be set. |
- V8StringResource<> cppValue = NativeValueTraits<IDLByteString>::NativeValue(info.GetIsolate(), v8Value, exceptionState); |
- if (exceptionState.HadException()) |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "locationByteString")).ToLocal(&target)) |
return; |
- |
- impl->setHrefByteString(cppValue); |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
+ return; |
+ } |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "hrefByteString"), v8Value).IsNothing(); |
} |
static void locationWithPerWorldBindingsAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { |
@@ -2659,18 +2641,15 @@ static void locationWithPerWorldBindingsAttributeSetter(v8::Local<v8::Value> v8V |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestNode* impl = WTF::GetPtr(proxyImpl->locationWithPerWorldBindings()); |
- if (!impl) |
+ ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "locationWithPerWorldBindings"); |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "locationWithPerWorldBindings")).ToLocal(&target)) |
return; |
- |
- // Prepare the value to be set. |
- V8StringResource<> cppValue = v8Value; |
- if (!cppValue.Prepare()) |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
return; |
- |
- impl->setHref(cppValue); |
+ } |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "href"), v8Value).IsNothing(); |
} |
static void locationWithPerWorldBindingsAttributeGetterForMainWorld(const v8::FunctionCallbackInfo<v8::Value>& info) { |
@@ -2685,18 +2664,15 @@ static void locationWithPerWorldBindingsAttributeSetterForMainWorld(v8::Local<v8 |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestNode* impl = WTF::GetPtr(proxyImpl->locationWithPerWorldBindings()); |
- if (!impl) |
+ ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "locationWithPerWorldBindings"); |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "locationWithPerWorldBindings")).ToLocal(&target)) |
return; |
- |
- // Prepare the value to be set. |
- V8StringResource<> cppValue = v8Value; |
- if (!cppValue.Prepare()) |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
return; |
- |
- impl->setHref(cppValue); |
+ } |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "href"), v8Value).IsNothing(); |
} |
static void locationLegacyInterfaceTypeCheckingAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { |
@@ -2711,18 +2687,15 @@ static void locationLegacyInterfaceTypeCheckingAttributeSetter(v8::Local<v8::Val |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestNode* impl = WTF::GetPtr(proxyImpl->locationLegacyInterfaceTypeChecking()); |
- if (!impl) |
+ ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "locationLegacyInterfaceTypeChecking"); |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "locationLegacyInterfaceTypeChecking")).ToLocal(&target)) |
return; |
- |
- // Prepare the value to be set. |
- V8StringResource<> cppValue = v8Value; |
- if (!cppValue.Prepare()) |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
return; |
- |
- impl->setHref(cppValue); |
+ } |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "href"), v8Value).IsNothing(); |
} |
static void locationGarbageCollectedAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { |
@@ -2748,24 +2721,15 @@ static void locationGarbageCollectedAttributeSetter(v8::Local<v8::Value> v8Value |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestInterfaceGarbageCollected* impl = WTF::GetPtr(proxyImpl->locationGarbageCollected()); |
- if (!impl) |
- return; |
- |
ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "locationGarbageCollected"); |
- |
- // Prepare the value to be set. |
- TestInterfaceGarbageCollected* cppValue = V8TestInterfaceGarbageCollected::toImplWithTypeCheck(info.GetIsolate(), v8Value); |
- |
- // Type check per: http://heycam.github.io/webidl/#es-interface |
- if (!cppValue) { |
- exceptionState.ThrowTypeError("The provided value is not of type 'TestInterfaceGarbageCollected'."); |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "locationGarbageCollected")).ToLocal(&target)) |
+ return; |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
return; |
} |
- |
- impl->setAttr1(cppValue); |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "attr1"), v8Value).IsNothing(); |
} |
static void raisesExceptionLongAttributeAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { |
@@ -3547,18 +3511,15 @@ static void locationPutForwardsAttributeSetter(v8::Local<v8::Value> v8Value, con |
v8::Isolate* isolate = info.GetIsolate(); |
ALLOW_UNUSED_LOCAL(isolate); |
- v8::Local<v8::Object> holder = info.Holder(); |
- TestObject* proxyImpl = V8TestObject::toImpl(holder); |
- TestNode* impl = WTF::GetPtr(proxyImpl->locationPutForwards()); |
- if (!impl) |
+ ExceptionState exceptionState(isolate, ExceptionState::kSetterContext, "TestObject", "locationPutForwards"); |
+ v8::Local<v8::Value> target; |
+ if (!info.Holder()->Get(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "locationPutForwards")).ToLocal(&target)) |
return; |
- |
- // Prepare the value to be set. |
- V8StringResource<> cppValue = v8Value; |
- if (!cppValue.Prepare()) |
+ if (!target->IsObject()) { |
+ exceptionState.ThrowTypeError("The attribute value is not an object"); |
return; |
- |
- impl->setHref(cppValue); |
+ } |
+ target.As<v8::Object>()->Set(info.GetIsolate()->GetCurrentContext(), V8String(info.GetIsolate(), "href"), v8Value).IsNothing(); |
} |
static void runtimeEnabledLongAttributeAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { |