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

Side by Side Diff: Source/bindings/tests/results/V8TestObjectPython.cpp

Issue 214143003: Bindings: use |holder| local variable in attribute getters and setters (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // This file has been auto-generated by code_generator_v8.py. DO NOT MODIFY! 5 // This file has been auto-generated by code_generator_v8.py. DO NOT MODIFY!
6 6
7 #include "config.h" 7 #include "config.h"
8 #include "V8TestObjectPython.h" 8 #include "V8TestObjectPython.h"
9 9
10 #include "HTMLNames.h" 10 #include "HTMLNames.h"
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 78
79 namespace WebCore { 79 namespace WebCore {
80 const WrapperTypeInfo V8TestObjectPython::wrapperTypeInfo = { gin::kEmbedderBlin k, V8TestObjectPython::domTemplate, V8TestObjectPython::derefObject, 0, 0, 0, V8 TestObjectPython::installPerContextEnabledMethods, 0, WrapperTypeObjectPrototype , false }; 80 const WrapperTypeInfo V8TestObjectPython::wrapperTypeInfo = { gin::kEmbedderBlin k, V8TestObjectPython::domTemplate, V8TestObjectPython::derefObject, 0, 0, 0, V8 TestObjectPython::installPerContextEnabledMethods, 0, WrapperTypeObjectPrototype , false };
81 81
82 namespace TestObjectPythonV8Internal { 82 namespace TestObjectPythonV8Internal {
83 83
84 template <typename T> void V8_USE(T) { } 84 template <typename T> void V8_USE(T) { }
85 85
86 static void readonlyStringAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info) 86 static void readonlyStringAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info)
87 { 87 {
88 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 88 v8::Handle<v8::Object> holder = info.Holder();
89 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
89 v8SetReturnValueString(info, impl->readonlyStringAttribute(), info.GetIsolat e()); 90 v8SetReturnValueString(info, impl->readonlyStringAttribute(), info.GetIsolat e());
90 } 91 }
91 92
92 static void readonlyStringAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info) 93 static void readonlyStringAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info)
93 { 94 {
94 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 95 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
95 TestObjectPythonV8Internal::readonlyStringAttributeAttributeGetter(info); 96 TestObjectPythonV8Internal::readonlyStringAttributeAttributeGetter(info);
96 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 97 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
97 } 98 }
98 99
99 static void readonlyTestInterfaceEmptyAttributeAttributeGetter(const v8::Propert yCallbackInfo<v8::Value>& info) 100 static void readonlyTestInterfaceEmptyAttributeAttributeGetter(const v8::Propert yCallbackInfo<v8::Value>& info)
100 { 101 {
101 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 102 v8::Isolate* isolate = info.GetIsolate();
103 v8::Handle<v8::Object> holder = info.Holder();
104 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
102 RefPtr<TestInterfaceEmpty> result(impl->readonlyTestInterfaceEmptyAttribute( )); 105 RefPtr<TestInterfaceEmpty> result(impl->readonlyTestInterfaceEmptyAttribute( ));
103 if (result && DOMDataStore::setReturnValueFromWrapper<V8TestInterfaceEmpty>( info.GetReturnValue(), result.get())) 106 if (result && DOMDataStore::setReturnValueFromWrapper<V8TestInterfaceEmpty>( info.GetReturnValue(), result.get()))
104 return; 107 return;
105 v8::Handle<v8::Value> wrapper = toV8(result.get(), info.Holder(), info.GetIs olate()); 108 v8::Handle<v8::Value> wrapper = toV8(result.get(), holder, isolate);
106 if (!wrapper.IsEmpty()) { 109 if (!wrapper.IsEmpty()) {
107 V8HiddenValue::setHiddenValue(info.GetIsolate(), info.Holder(), v8Atomic String(info.GetIsolate(), "readonlyTestInterfaceEmptyAttribute"), wrapper); 110 V8HiddenValue::setHiddenValue(isolate, holder, v8AtomicString(info.GetIs olate(), "readonlyTestInterfaceEmptyAttribute"), wrapper);
108 v8SetReturnValue(info, wrapper); 111 v8SetReturnValue(info, wrapper);
109 } 112 }
110 } 113 }
111 114
112 static void readonlyTestInterfaceEmptyAttributeAttributeGetterCallback(v8::Local <v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 115 static void readonlyTestInterfaceEmptyAttributeAttributeGetterCallback(v8::Local <v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
113 { 116 {
114 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 117 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
115 TestObjectPythonV8Internal::readonlyTestInterfaceEmptyAttributeAttributeGett er(info); 118 TestObjectPythonV8Internal::readonlyTestInterfaceEmptyAttributeAttributeGett er(info);
116 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 119 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
117 } 120 }
118 121
119 static void readonlyLongAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info) 122 static void readonlyLongAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info)
120 { 123 {
121 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 124 v8::Handle<v8::Object> holder = info.Holder();
125 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
122 v8SetReturnValueInt(info, impl->readonlyLongAttribute()); 126 v8SetReturnValueInt(info, impl->readonlyLongAttribute());
123 } 127 }
124 128
125 static void readonlyLongAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 129 static void readonlyLongAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
126 { 130 {
127 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 131 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
128 TestObjectPythonV8Internal::readonlyLongAttributeAttributeGetter(info); 132 TestObjectPythonV8Internal::readonlyLongAttributeAttributeGetter(info);
129 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 133 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
130 } 134 }
131 135
132 static void dateAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info) 136 static void dateAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info)
133 { 137 {
134 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 138 v8::Handle<v8::Object> holder = info.Holder();
139 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
135 v8SetReturnValue(info, v8DateOrNull(impl->dateAttribute(), info.GetIsolate() )); 140 v8SetReturnValue(info, v8DateOrNull(impl->dateAttribute(), info.GetIsolate() ));
136 } 141 }
137 142
138 static void dateAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info) 143 static void dateAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info)
139 { 144 {
140 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 145 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
141 TestObjectPythonV8Internal::dateAttributeAttributeGetter(info); 146 TestObjectPythonV8Internal::dateAttributeAttributeGetter(info);
142 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 147 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
143 } 148 }
144 149
145 static void dateAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info) 150 static void dateAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info)
146 { 151 {
147 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 152 v8::Handle<v8::Object> holder = info.Holder();
153 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
148 V8TRYCATCH_VOID(double, cppValue, toCoreDate(jsValue)); 154 V8TRYCATCH_VOID(double, cppValue, toCoreDate(jsValue));
149 impl->setDateAttribute(cppValue); 155 impl->setDateAttribute(cppValue);
150 } 156 }
151 157
152 static void dateAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 158 static void dateAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
153 { 159 {
154 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 160 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
155 TestObjectPythonV8Internal::dateAttributeAttributeSetter(jsValue, info); 161 TestObjectPythonV8Internal::dateAttributeAttributeSetter(jsValue, info);
156 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 162 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
157 } 163 }
158 164
159 static void stringAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Va lue>& info) 165 static void stringAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Va lue>& info)
160 { 166 {
161 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 167 v8::Handle<v8::Object> holder = info.Holder();
168 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
162 v8SetReturnValueString(info, impl->stringAttribute(), info.GetIsolate()); 169 v8SetReturnValueString(info, impl->stringAttribute(), info.GetIsolate());
163 } 170 }
164 171
165 static void stringAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 172 static void stringAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
166 { 173 {
167 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 174 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
168 TestObjectPythonV8Internal::stringAttributeAttributeGetter(info); 175 TestObjectPythonV8Internal::stringAttributeAttributeGetter(info);
169 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 176 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
170 } 177 }
171 178
172 static void stringAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v 8::PropertyCallbackInfo<void>& info) 179 static void stringAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v 8::PropertyCallbackInfo<void>& info)
173 { 180 {
174 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 181 v8::Handle<v8::Object> holder = info.Holder();
182 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
175 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 183 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
176 impl->setStringAttribute(cppValue); 184 impl->setStringAttribute(cppValue);
177 } 185 }
178 186
179 static void stringAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 187 static void stringAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
180 { 188 {
181 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 189 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
182 TestObjectPythonV8Internal::stringAttributeAttributeSetter(jsValue, info); 190 TestObjectPythonV8Internal::stringAttributeAttributeSetter(jsValue, info);
183 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 191 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
184 } 192 }
185 193
186 static void readonlyDOMTimeStampAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info) 194 static void readonlyDOMTimeStampAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info)
187 { 195 {
188 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 196 v8::Handle<v8::Object> holder = info.Holder();
197 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
189 v8SetReturnValue(info, static_cast<double>(impl->readonlyDOMTimeStampAttribu te())); 198 v8SetReturnValue(info, static_cast<double>(impl->readonlyDOMTimeStampAttribu te()));
190 } 199 }
191 200
192 static void readonlyDOMTimeStampAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info) 201 static void readonlyDOMTimeStampAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info)
193 { 202 {
194 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 203 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
195 TestObjectPythonV8Internal::readonlyDOMTimeStampAttributeAttributeGetter(inf o); 204 TestObjectPythonV8Internal::readonlyDOMTimeStampAttributeAttributeGetter(inf o);
196 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 205 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
197 } 206 }
198 207
199 static void booleanAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::V alue>& info) 208 static void booleanAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::V alue>& info)
200 { 209 {
201 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 210 v8::Handle<v8::Object> holder = info.Holder();
211 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
202 v8SetReturnValueBool(info, impl->booleanAttribute()); 212 v8SetReturnValueBool(info, impl->booleanAttribute());
203 } 213 }
204 214
205 static void booleanAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 215 static void booleanAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
206 { 216 {
207 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 217 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
208 TestObjectPythonV8Internal::booleanAttributeAttributeGetter(info); 218 TestObjectPythonV8Internal::booleanAttributeAttributeGetter(info);
209 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 219 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
210 } 220 }
211 221
212 static void booleanAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 222 static void booleanAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
213 { 223 {
214 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 224 v8::Handle<v8::Object> holder = info.Holder();
225 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
215 V8TRYCATCH_VOID(bool, cppValue, jsValue->BooleanValue()); 226 V8TRYCATCH_VOID(bool, cppValue, jsValue->BooleanValue());
216 impl->setBooleanAttribute(cppValue); 227 impl->setBooleanAttribute(cppValue);
217 } 228 }
218 229
219 static void booleanAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::L ocal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 230 static void booleanAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::L ocal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
220 { 231 {
221 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 232 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
222 TestObjectPythonV8Internal::booleanAttributeAttributeSetter(jsValue, info); 233 TestObjectPythonV8Internal::booleanAttributeAttributeSetter(jsValue, info);
223 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 234 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
224 } 235 }
225 236
226 static void byteAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info) 237 static void byteAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info)
227 { 238 {
228 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 239 v8::Handle<v8::Object> holder = info.Holder();
240 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
229 v8SetReturnValueInt(info, impl->byteAttribute()); 241 v8SetReturnValueInt(info, impl->byteAttribute());
230 } 242 }
231 243
232 static void byteAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info) 244 static void byteAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info)
233 { 245 {
234 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 246 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
235 TestObjectPythonV8Internal::byteAttributeAttributeGetter(info); 247 TestObjectPythonV8Internal::byteAttributeAttributeGetter(info);
236 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 248 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
237 } 249 }
238 250
239 static void byteAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info) 251 static void byteAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info)
240 { 252 {
241 ExceptionState exceptionState(ExceptionState::SetterContext, "byteAttribute" , "TestObjectPython", info.Holder(), info.GetIsolate()); 253 v8::Isolate* isolate = info.GetIsolate();
242 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 254 v8::Handle<v8::Object> holder = info.Holder();
255 ExceptionState exceptionState(ExceptionState::SetterContext, "byteAttribute" , "TestObjectPython", holder, isolate);
256 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
243 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt8(jsValue, exceptionState), ex ceptionState); 257 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt8(jsValue, exceptionState), ex ceptionState);
244 impl->setByteAttribute(cppValue); 258 impl->setByteAttribute(cppValue);
245 } 259 }
246 260
247 static void byteAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 261 static void byteAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
248 { 262 {
249 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 263 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
250 TestObjectPythonV8Internal::byteAttributeAttributeSetter(jsValue, info); 264 TestObjectPythonV8Internal::byteAttributeAttributeSetter(jsValue, info);
251 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 265 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
252 } 266 }
253 267
254 static void doubleAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Va lue>& info) 268 static void doubleAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Va lue>& info)
255 { 269 {
256 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 270 v8::Handle<v8::Object> holder = info.Holder();
271 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
257 v8SetReturnValue(info, impl->doubleAttribute()); 272 v8SetReturnValue(info, impl->doubleAttribute());
258 } 273 }
259 274
260 static void doubleAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 275 static void doubleAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
261 { 276 {
262 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 277 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
263 TestObjectPythonV8Internal::doubleAttributeAttributeGetter(info); 278 TestObjectPythonV8Internal::doubleAttributeAttributeGetter(info);
264 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 279 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
265 } 280 }
266 281
267 static void doubleAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v 8::PropertyCallbackInfo<void>& info) 282 static void doubleAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v 8::PropertyCallbackInfo<void>& info)
268 { 283 {
269 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 284 v8::Handle<v8::Object> holder = info.Holder();
285 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
270 V8TRYCATCH_VOID(double, cppValue, static_cast<double>(jsValue->NumberValue() )); 286 V8TRYCATCH_VOID(double, cppValue, static_cast<double>(jsValue->NumberValue() ));
271 impl->setDoubleAttribute(cppValue); 287 impl->setDoubleAttribute(cppValue);
272 } 288 }
273 289
274 static void doubleAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 290 static void doubleAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
275 { 291 {
276 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 292 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
277 TestObjectPythonV8Internal::doubleAttributeAttributeSetter(jsValue, info); 293 TestObjectPythonV8Internal::doubleAttributeAttributeSetter(jsValue, info);
278 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 294 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
279 } 295 }
280 296
281 static void floatAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Val ue>& info) 297 static void floatAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Val ue>& info)
282 { 298 {
283 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 299 v8::Handle<v8::Object> holder = info.Holder();
300 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
284 v8SetReturnValue(info, impl->floatAttribute()); 301 v8SetReturnValue(info, impl->floatAttribute());
285 } 302 }
286 303
287 static void floatAttributeAttributeGetterCallback(v8::Local<v8::String>, const v 8::PropertyCallbackInfo<v8::Value>& info) 304 static void floatAttributeAttributeGetterCallback(v8::Local<v8::String>, const v 8::PropertyCallbackInfo<v8::Value>& info)
288 { 305 {
289 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 306 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
290 TestObjectPythonV8Internal::floatAttributeAttributeGetter(info); 307 TestObjectPythonV8Internal::floatAttributeAttributeGetter(info);
291 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 308 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
292 } 309 }
293 310
294 static void floatAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8 ::PropertyCallbackInfo<void>& info) 311 static void floatAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8 ::PropertyCallbackInfo<void>& info)
295 { 312 {
296 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 313 v8::Handle<v8::Object> holder = info.Holder();
314 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
297 V8TRYCATCH_VOID(float, cppValue, static_cast<float>(jsValue->NumberValue())) ; 315 V8TRYCATCH_VOID(float, cppValue, static_cast<float>(jsValue->NumberValue())) ;
298 impl->setFloatAttribute(cppValue); 316 impl->setFloatAttribute(cppValue);
299 } 317 }
300 318
301 static void floatAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 319 static void floatAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
302 { 320 {
303 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 321 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
304 TestObjectPythonV8Internal::floatAttributeAttributeSetter(jsValue, info); 322 TestObjectPythonV8Internal::floatAttributeAttributeSetter(jsValue, info);
305 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 323 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
306 } 324 }
307 325
308 static void longAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info) 326 static void longAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info)
309 { 327 {
310 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 328 v8::Handle<v8::Object> holder = info.Holder();
329 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
311 v8SetReturnValueInt(info, impl->longAttribute()); 330 v8SetReturnValueInt(info, impl->longAttribute());
312 } 331 }
313 332
314 static void longAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info) 333 static void longAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info)
315 { 334 {
316 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 335 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
317 TestObjectPythonV8Internal::longAttributeAttributeGetter(info); 336 TestObjectPythonV8Internal::longAttributeAttributeGetter(info);
318 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 337 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
319 } 338 }
320 339
321 static void longAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info) 340 static void longAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info)
322 { 341 {
323 ExceptionState exceptionState(ExceptionState::SetterContext, "longAttribute" , "TestObjectPython", info.Holder(), info.GetIsolate()); 342 v8::Isolate* isolate = info.GetIsolate();
324 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 343 v8::Handle<v8::Object> holder = info.Holder();
344 ExceptionState exceptionState(ExceptionState::SetterContext, "longAttribute" , "TestObjectPython", holder, isolate);
345 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
325 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 346 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
326 impl->setLongAttribute(cppValue); 347 impl->setLongAttribute(cppValue);
327 } 348 }
328 349
329 static void longAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 350 static void longAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
330 { 351 {
331 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 352 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
332 TestObjectPythonV8Internal::longAttributeAttributeSetter(jsValue, info); 353 TestObjectPythonV8Internal::longAttributeAttributeSetter(jsValue, info);
333 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 354 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
334 } 355 }
335 356
336 static void longLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8:: Value>& info) 357 static void longLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8:: Value>& info)
337 { 358 {
338 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 359 v8::Handle<v8::Object> holder = info.Holder();
360 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
339 v8SetReturnValue(info, static_cast<double>(impl->longLongAttribute())); 361 v8SetReturnValue(info, static_cast<double>(impl->longLongAttribute()));
340 } 362 }
341 363
342 static void longLongAttributeAttributeGetterCallback(v8::Local<v8::String>, cons t v8::PropertyCallbackInfo<v8::Value>& info) 364 static void longLongAttributeAttributeGetterCallback(v8::Local<v8::String>, cons t v8::PropertyCallbackInfo<v8::Value>& info)
343 { 365 {
344 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 366 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
345 TestObjectPythonV8Internal::longLongAttributeAttributeGetter(info); 367 TestObjectPythonV8Internal::longLongAttributeAttributeGetter(info);
346 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 368 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
347 } 369 }
348 370
349 static void longLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 371 static void longLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
350 { 372 {
351 ExceptionState exceptionState(ExceptionState::SetterContext, "longLongAttrib ute", "TestObjectPython", info.Holder(), info.GetIsolate()); 373 v8::Isolate* isolate = info.GetIsolate();
352 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 374 v8::Handle<v8::Object> holder = info.Holder();
375 ExceptionState exceptionState(ExceptionState::SetterContext, "longLongAttrib ute", "TestObjectPython", holder, isolate);
376 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
353 V8TRYCATCH_EXCEPTION_VOID(long long, cppValue, toInt64(jsValue, exceptionSta te), exceptionState); 377 V8TRYCATCH_EXCEPTION_VOID(long long, cppValue, toInt64(jsValue, exceptionSta te), exceptionState);
354 impl->setLongLongAttribute(cppValue); 378 impl->setLongLongAttribute(cppValue);
355 } 379 }
356 380
357 static void longLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8:: Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 381 static void longLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8:: Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
358 { 382 {
359 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 383 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
360 TestObjectPythonV8Internal::longLongAttributeAttributeSetter(jsValue, info); 384 TestObjectPythonV8Internal::longLongAttributeAttributeSetter(jsValue, info);
361 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 385 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
362 } 386 }
363 387
364 static void octetAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Val ue>& info) 388 static void octetAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Val ue>& info)
365 { 389 {
366 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 390 v8::Handle<v8::Object> holder = info.Holder();
391 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
367 v8SetReturnValueUnsigned(info, impl->octetAttribute()); 392 v8SetReturnValueUnsigned(info, impl->octetAttribute());
368 } 393 }
369 394
370 static void octetAttributeAttributeGetterCallback(v8::Local<v8::String>, const v 8::PropertyCallbackInfo<v8::Value>& info) 395 static void octetAttributeAttributeGetterCallback(v8::Local<v8::String>, const v 8::PropertyCallbackInfo<v8::Value>& info)
371 { 396 {
372 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 397 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
373 TestObjectPythonV8Internal::octetAttributeAttributeGetter(info); 398 TestObjectPythonV8Internal::octetAttributeAttributeGetter(info);
374 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 399 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
375 } 400 }
376 401
377 static void octetAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8 ::PropertyCallbackInfo<void>& info) 402 static void octetAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8 ::PropertyCallbackInfo<void>& info)
378 { 403 {
379 ExceptionState exceptionState(ExceptionState::SetterContext, "octetAttribute ", "TestObjectPython", info.Holder(), info.GetIsolate()); 404 v8::Isolate* isolate = info.GetIsolate();
380 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 405 v8::Handle<v8::Object> holder = info.Holder();
406 ExceptionState exceptionState(ExceptionState::SetterContext, "octetAttribute ", "TestObjectPython", holder, isolate);
407 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
381 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt8(jsValue, exceptionStat e), exceptionState); 408 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt8(jsValue, exceptionStat e), exceptionState);
382 impl->setOctetAttribute(cppValue); 409 impl->setOctetAttribute(cppValue);
383 } 410 }
384 411
385 static void octetAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 412 static void octetAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
386 { 413 {
387 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 414 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
388 TestObjectPythonV8Internal::octetAttributeAttributeSetter(jsValue, info); 415 TestObjectPythonV8Internal::octetAttributeAttributeSetter(jsValue, info);
389 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 416 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
390 } 417 }
391 418
392 static void shortAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Val ue>& info) 419 static void shortAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Val ue>& info)
393 { 420 {
394 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 421 v8::Handle<v8::Object> holder = info.Holder();
422 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
395 v8SetReturnValueInt(info, impl->shortAttribute()); 423 v8SetReturnValueInt(info, impl->shortAttribute());
396 } 424 }
397 425
398 static void shortAttributeAttributeGetterCallback(v8::Local<v8::String>, const v 8::PropertyCallbackInfo<v8::Value>& info) 426 static void shortAttributeAttributeGetterCallback(v8::Local<v8::String>, const v 8::PropertyCallbackInfo<v8::Value>& info)
399 { 427 {
400 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 428 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
401 TestObjectPythonV8Internal::shortAttributeAttributeGetter(info); 429 TestObjectPythonV8Internal::shortAttributeAttributeGetter(info);
402 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 430 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
403 } 431 }
404 432
405 static void shortAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8 ::PropertyCallbackInfo<void>& info) 433 static void shortAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8 ::PropertyCallbackInfo<void>& info)
406 { 434 {
407 ExceptionState exceptionState(ExceptionState::SetterContext, "shortAttribute ", "TestObjectPython", info.Holder(), info.GetIsolate()); 435 v8::Isolate* isolate = info.GetIsolate();
408 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 436 v8::Handle<v8::Object> holder = info.Holder();
437 ExceptionState exceptionState(ExceptionState::SetterContext, "shortAttribute ", "TestObjectPython", holder, isolate);
438 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
409 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt16(jsValue, exceptionState), e xceptionState); 439 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt16(jsValue, exceptionState), e xceptionState);
410 impl->setShortAttribute(cppValue); 440 impl->setShortAttribute(cppValue);
411 } 441 }
412 442
413 static void shortAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 443 static void shortAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
414 { 444 {
415 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 445 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
416 TestObjectPythonV8Internal::shortAttributeAttributeSetter(jsValue, info); 446 TestObjectPythonV8Internal::shortAttributeAttributeSetter(jsValue, info);
417 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 447 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
418 } 448 }
419 449
420 static void unsignedLongAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info) 450 static void unsignedLongAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info)
421 { 451 {
422 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 452 v8::Handle<v8::Object> holder = info.Holder();
453 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
423 v8SetReturnValueUnsigned(info, impl->unsignedLongAttribute()); 454 v8SetReturnValueUnsigned(info, impl->unsignedLongAttribute());
424 } 455 }
425 456
426 static void unsignedLongAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 457 static void unsignedLongAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
427 { 458 {
428 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 459 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
429 TestObjectPythonV8Internal::unsignedLongAttributeAttributeGetter(info); 460 TestObjectPythonV8Internal::unsignedLongAttributeAttributeGetter(info);
430 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 461 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
431 } 462 }
432 463
433 static void unsignedLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info) 464 static void unsignedLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info)
434 { 465 {
435 ExceptionState exceptionState(ExceptionState::SetterContext, "unsignedLongAt tribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 466 v8::Isolate* isolate = info.GetIsolate();
436 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 467 v8::Handle<v8::Object> holder = info.Holder();
468 ExceptionState exceptionState(ExceptionState::SetterContext, "unsignedLongAt tribute", "TestObjectPython", holder, isolate);
469 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
437 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt32(jsValue, exceptionSta te), exceptionState); 470 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt32(jsValue, exceptionSta te), exceptionState);
438 impl->setUnsignedLongAttribute(cppValue); 471 impl->setUnsignedLongAttribute(cppValue);
439 } 472 }
440 473
441 static void unsignedLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 474 static void unsignedLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
442 { 475 {
443 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 476 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
444 TestObjectPythonV8Internal::unsignedLongAttributeAttributeSetter(jsValue, in fo); 477 TestObjectPythonV8Internal::unsignedLongAttributeAttributeSetter(jsValue, in fo);
445 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 478 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
446 } 479 }
447 480
448 static void unsignedLongLongAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info) 481 static void unsignedLongLongAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info)
449 { 482 {
450 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 483 v8::Handle<v8::Object> holder = info.Holder();
484 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
451 v8SetReturnValue(info, static_cast<double>(impl->unsignedLongLongAttribute() )); 485 v8SetReturnValue(info, static_cast<double>(impl->unsignedLongLongAttribute() ));
452 } 486 }
453 487
454 static void unsignedLongLongAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info) 488 static void unsignedLongLongAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info)
455 { 489 {
456 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 490 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
457 TestObjectPythonV8Internal::unsignedLongLongAttributeAttributeGetter(info); 491 TestObjectPythonV8Internal::unsignedLongLongAttributeAttributeGetter(info);
458 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 492 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
459 } 493 }
460 494
461 static void unsignedLongLongAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info) 495 static void unsignedLongLongAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info)
462 { 496 {
463 ExceptionState exceptionState(ExceptionState::SetterContext, "unsignedLongLo ngAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 497 v8::Isolate* isolate = info.GetIsolate();
464 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 498 v8::Handle<v8::Object> holder = info.Holder();
499 ExceptionState exceptionState(ExceptionState::SetterContext, "unsignedLongLo ngAttribute", "TestObjectPython", holder, isolate);
500 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
465 V8TRYCATCH_EXCEPTION_VOID(unsigned long long, cppValue, toUInt64(jsValue, ex ceptionState), exceptionState); 501 V8TRYCATCH_EXCEPTION_VOID(unsigned long long, cppValue, toUInt64(jsValue, ex ceptionState), exceptionState);
466 impl->setUnsignedLongLongAttribute(cppValue); 502 impl->setUnsignedLongLongAttribute(cppValue);
467 } 503 }
468 504
469 static void unsignedLongLongAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 505 static void unsignedLongLongAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
470 { 506 {
471 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 507 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
472 TestObjectPythonV8Internal::unsignedLongLongAttributeAttributeSetter(jsValue , info); 508 TestObjectPythonV8Internal::unsignedLongLongAttributeAttributeSetter(jsValue , info);
473 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 509 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
474 } 510 }
475 511
476 static void unsignedShortAttributeAttributeGetter(const v8::PropertyCallbackInfo <v8::Value>& info) 512 static void unsignedShortAttributeAttributeGetter(const v8::PropertyCallbackInfo <v8::Value>& info)
477 { 513 {
478 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 514 v8::Handle<v8::Object> holder = info.Holder();
515 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
479 v8SetReturnValueUnsigned(info, impl->unsignedShortAttribute()); 516 v8SetReturnValueUnsigned(info, impl->unsignedShortAttribute());
480 } 517 }
481 518
482 static void unsignedShortAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 519 static void unsignedShortAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
483 { 520 {
484 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 521 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
485 TestObjectPythonV8Internal::unsignedShortAttributeAttributeGetter(info); 522 TestObjectPythonV8Internal::unsignedShortAttributeAttributeGetter(info);
486 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 523 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
487 } 524 }
488 525
489 static void unsignedShortAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 526 static void unsignedShortAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
490 { 527 {
491 ExceptionState exceptionState(ExceptionState::SetterContext, "unsignedShortA ttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 528 v8::Isolate* isolate = info.GetIsolate();
492 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 529 v8::Handle<v8::Object> holder = info.Holder();
530 ExceptionState exceptionState(ExceptionState::SetterContext, "unsignedShortA ttribute", "TestObjectPython", holder, isolate);
531 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
493 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt16(jsValue, exceptionSta te), exceptionState); 532 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt16(jsValue, exceptionSta te), exceptionState);
494 impl->setUnsignedShortAttribute(cppValue); 533 impl->setUnsignedShortAttribute(cppValue);
495 } 534 }
496 535
497 static void unsignedShortAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 536 static void unsignedShortAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
498 { 537 {
499 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 538 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
500 TestObjectPythonV8Internal::unsignedShortAttributeAttributeSetter(jsValue, i nfo); 539 TestObjectPythonV8Internal::unsignedShortAttributeAttributeSetter(jsValue, i nfo);
501 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 540 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
502 } 541 }
503 542
504 static void testInterfaceEmptyAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info) 543 static void testInterfaceEmptyAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info)
505 { 544 {
506 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 545 v8::Handle<v8::Object> holder = info.Holder();
546 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
507 v8SetReturnValueFast(info, WTF::getPtr(impl->testInterfaceEmptyAttribute()), impl); 547 v8SetReturnValueFast(info, WTF::getPtr(impl->testInterfaceEmptyAttribute()), impl);
508 } 548 }
509 549
510 static void testInterfaceEmptyAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info) 550 static void testInterfaceEmptyAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info)
511 { 551 {
512 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 552 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
513 TestObjectPythonV8Internal::testInterfaceEmptyAttributeAttributeGetter(info) ; 553 TestObjectPythonV8Internal::testInterfaceEmptyAttributeAttributeGetter(info) ;
514 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 554 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
515 } 555 }
516 556
517 static void testInterfaceEmptyAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info) 557 static void testInterfaceEmptyAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info)
518 { 558 {
519 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 559 v8::Handle<v8::Object> holder = info.Holder();
560 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
520 V8TRYCATCH_VOID(TestInterfaceEmpty*, cppValue, V8TestInterfaceEmpty::toNativ eWithTypeCheck(info.GetIsolate(), jsValue)); 561 V8TRYCATCH_VOID(TestInterfaceEmpty*, cppValue, V8TestInterfaceEmpty::toNativ eWithTypeCheck(info.GetIsolate(), jsValue));
521 impl->setTestInterfaceEmptyAttribute(WTF::getPtr(cppValue)); 562 impl->setTestInterfaceEmptyAttribute(WTF::getPtr(cppValue));
522 } 563 }
523 564
524 static void testInterfaceEmptyAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 565 static void testInterfaceEmptyAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
525 { 566 {
526 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 567 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
527 TestObjectPythonV8Internal::testInterfaceEmptyAttributeAttributeSetter(jsVal ue, info); 568 TestObjectPythonV8Internal::testInterfaceEmptyAttributeAttributeSetter(jsVal ue, info);
528 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 569 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
529 } 570 }
530 571
531 static void testObjectPythonAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info) 572 static void testObjectPythonAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info)
532 { 573 {
533 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 574 v8::Handle<v8::Object> holder = info.Holder();
575 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
534 v8SetReturnValueFast(info, WTF::getPtr(impl->testObjectPythonAttribute()), i mpl); 576 v8SetReturnValueFast(info, WTF::getPtr(impl->testObjectPythonAttribute()), i mpl);
535 } 577 }
536 578
537 static void testObjectPythonAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info) 579 static void testObjectPythonAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info)
538 { 580 {
539 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 581 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
540 TestObjectPythonV8Internal::testObjectPythonAttributeAttributeGetter(info); 582 TestObjectPythonV8Internal::testObjectPythonAttributeAttributeGetter(info);
541 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 583 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
542 } 584 }
543 585
544 static void testObjectPythonAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info) 586 static void testObjectPythonAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info)
545 { 587 {
546 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 588 v8::Handle<v8::Object> holder = info.Holder();
589 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
547 V8TRYCATCH_VOID(TestObjectPython*, cppValue, V8TestObjectPython::toNativeWit hTypeCheck(info.GetIsolate(), jsValue)); 590 V8TRYCATCH_VOID(TestObjectPython*, cppValue, V8TestObjectPython::toNativeWit hTypeCheck(info.GetIsolate(), jsValue));
548 impl->setTestObjectPythonAttribute(WTF::getPtr(cppValue)); 591 impl->setTestObjectPythonAttribute(WTF::getPtr(cppValue));
549 } 592 }
550 593
551 static void testObjectPythonAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 594 static void testObjectPythonAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
552 { 595 {
553 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 596 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
554 TestObjectPythonV8Internal::testObjectPythonAttributeAttributeSetter(jsValue , info); 597 TestObjectPythonV8Internal::testObjectPythonAttributeAttributeSetter(jsValue , info);
555 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 598 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
556 } 599 }
557 600
558 static void voidCallbackFunctionAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info) 601 static void voidCallbackFunctionAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info)
559 { 602 {
560 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 603 v8::Handle<v8::Object> holder = info.Holder();
604 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
561 v8SetReturnValue(info, impl->voidCallbackFunctionAttribute().v8Value()); 605 v8SetReturnValue(info, impl->voidCallbackFunctionAttribute().v8Value());
562 } 606 }
563 607
564 static void voidCallbackFunctionAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info) 608 static void voidCallbackFunctionAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info)
565 { 609 {
566 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 610 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
567 TestObjectPythonV8Internal::voidCallbackFunctionAttributeAttributeGetter(inf o); 611 TestObjectPythonV8Internal::voidCallbackFunctionAttributeAttributeGetter(inf o);
568 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 612 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
569 } 613 }
570 614
571 static void voidCallbackFunctionAttributeAttributeSetter(v8::Local<v8::Value> js Value, const v8::PropertyCallbackInfo<void>& info) 615 static void voidCallbackFunctionAttributeAttributeSetter(v8::Local<v8::Value> js Value, const v8::PropertyCallbackInfo<void>& info)
572 { 616 {
573 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 617 v8::Handle<v8::Object> holder = info.Holder();
618 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
574 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( ))); 619 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( )));
575 impl->setVoidCallbackFunctionAttribute(cppValue); 620 impl->setVoidCallbackFunctionAttribute(cppValue);
576 } 621 }
577 622
578 static void voidCallbackFunctionAttributeAttributeSetterCallback(v8::Local<v8::S tring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info ) 623 static void voidCallbackFunctionAttributeAttributeSetterCallback(v8::Local<v8::S tring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info )
579 { 624 {
580 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 625 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
581 TestObjectPythonV8Internal::voidCallbackFunctionAttributeAttributeSetter(jsV alue, info); 626 TestObjectPythonV8Internal::voidCallbackFunctionAttributeAttributeSetter(jsV alue, info);
582 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 627 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
583 } 628 }
584 629
585 static void anyCallbackFunctionOptionalAnyArgAttributeAttributeGetter(const v8:: PropertyCallbackInfo<v8::Value>& info) 630 static void anyCallbackFunctionOptionalAnyArgAttributeAttributeGetter(const v8:: PropertyCallbackInfo<v8::Value>& info)
586 { 631 {
587 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 632 v8::Handle<v8::Object> holder = info.Holder();
633 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
588 v8SetReturnValue(info, impl->anyCallbackFunctionOptionalAnyArgAttribute().v8 Value()); 634 v8SetReturnValue(info, impl->anyCallbackFunctionOptionalAnyArgAttribute().v8 Value());
589 } 635 }
590 636
591 static void anyCallbackFunctionOptionalAnyArgAttributeAttributeGetterCallback(v8 ::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 637 static void anyCallbackFunctionOptionalAnyArgAttributeAttributeGetterCallback(v8 ::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
592 { 638 {
593 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 639 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
594 TestObjectPythonV8Internal::anyCallbackFunctionOptionalAnyArgAttributeAttrib uteGetter(info); 640 TestObjectPythonV8Internal::anyCallbackFunctionOptionalAnyArgAttributeAttrib uteGetter(info);
595 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 641 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
596 } 642 }
597 643
598 static void anyCallbackFunctionOptionalAnyArgAttributeAttributeSetter(v8::Local< v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 644 static void anyCallbackFunctionOptionalAnyArgAttributeAttributeSetter(v8::Local< v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
599 { 645 {
600 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 646 v8::Handle<v8::Object> holder = info.Holder();
647 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
601 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( ))); 648 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( )));
602 impl->setAnyCallbackFunctionOptionalAnyArgAttribute(cppValue); 649 impl->setAnyCallbackFunctionOptionalAnyArgAttribute(cppValue);
603 } 650 }
604 651
605 static void anyCallbackFunctionOptionalAnyArgAttributeAttributeSetterCallback(v8 ::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInf o<void>& info) 652 static void anyCallbackFunctionOptionalAnyArgAttributeAttributeSetterCallback(v8 ::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInf o<void>& info)
606 { 653 {
607 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 654 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
608 TestObjectPythonV8Internal::anyCallbackFunctionOptionalAnyArgAttributeAttrib uteSetter(jsValue, info); 655 TestObjectPythonV8Internal::anyCallbackFunctionOptionalAnyArgAttributeAttrib uteSetter(jsValue, info);
609 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 656 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
610 } 657 }
611 658
612 static void cssAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info) 659 static void cssAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info)
613 { 660 {
614 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 661 v8::Handle<v8::Object> holder = info.Holder();
662 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
615 v8SetReturnValueInt(info, impl->cssAttribute()); 663 v8SetReturnValueInt(info, impl->cssAttribute());
616 } 664 }
617 665
618 static void cssAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info) 666 static void cssAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info)
619 { 667 {
620 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 668 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
621 TestObjectPythonV8Internal::cssAttributeAttributeGetter(info); 669 TestObjectPythonV8Internal::cssAttributeAttributeGetter(info);
622 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 670 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
623 } 671 }
624 672
625 static void cssAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info) 673 static void cssAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info)
626 { 674 {
627 ExceptionState exceptionState(ExceptionState::SetterContext, "cssAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 675 v8::Isolate* isolate = info.GetIsolate();
628 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 676 v8::Handle<v8::Object> holder = info.Holder();
677 ExceptionState exceptionState(ExceptionState::SetterContext, "cssAttribute", "TestObjectPython", holder, isolate);
678 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
629 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 679 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
630 impl->setCSSAttribute(cppValue); 680 impl->setCSSAttribute(cppValue);
631 } 681 }
632 682
633 static void cssAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 683 static void cssAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
634 { 684 {
635 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 685 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
636 TestObjectPythonV8Internal::cssAttributeAttributeSetter(jsValue, info); 686 TestObjectPythonV8Internal::cssAttributeAttributeSetter(jsValue, info);
637 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 687 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
638 } 688 }
639 689
640 static void imeAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info) 690 static void imeAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info)
641 { 691 {
642 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 692 v8::Handle<v8::Object> holder = info.Holder();
693 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
643 v8SetReturnValueInt(info, impl->imeAttribute()); 694 v8SetReturnValueInt(info, impl->imeAttribute());
644 } 695 }
645 696
646 static void imeAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info) 697 static void imeAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info)
647 { 698 {
648 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 699 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
649 TestObjectPythonV8Internal::imeAttributeAttributeGetter(info); 700 TestObjectPythonV8Internal::imeAttributeAttributeGetter(info);
650 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 701 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
651 } 702 }
652 703
653 static void imeAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info) 704 static void imeAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info)
654 { 705 {
655 ExceptionState exceptionState(ExceptionState::SetterContext, "imeAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 706 v8::Isolate* isolate = info.GetIsolate();
656 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 707 v8::Handle<v8::Object> holder = info.Holder();
708 ExceptionState exceptionState(ExceptionState::SetterContext, "imeAttribute", "TestObjectPython", holder, isolate);
709 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
657 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 710 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
658 impl->setIMEAttribute(cppValue); 711 impl->setIMEAttribute(cppValue);
659 } 712 }
660 713
661 static void imeAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 714 static void imeAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
662 { 715 {
663 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 716 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
664 TestObjectPythonV8Internal::imeAttributeAttributeSetter(jsValue, info); 717 TestObjectPythonV8Internal::imeAttributeAttributeSetter(jsValue, info);
665 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 718 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
666 } 719 }
667 720
668 static void svgAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info) 721 static void svgAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info)
669 { 722 {
670 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 723 v8::Handle<v8::Object> holder = info.Holder();
724 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
671 v8SetReturnValueInt(info, impl->svgAttribute()); 725 v8SetReturnValueInt(info, impl->svgAttribute());
672 } 726 }
673 727
674 static void svgAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info) 728 static void svgAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info)
675 { 729 {
676 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 730 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
677 TestObjectPythonV8Internal::svgAttributeAttributeGetter(info); 731 TestObjectPythonV8Internal::svgAttributeAttributeGetter(info);
678 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 732 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
679 } 733 }
680 734
681 static void svgAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info) 735 static void svgAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info)
682 { 736 {
683 ExceptionState exceptionState(ExceptionState::SetterContext, "svgAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 737 v8::Isolate* isolate = info.GetIsolate();
684 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 738 v8::Handle<v8::Object> holder = info.Holder();
739 ExceptionState exceptionState(ExceptionState::SetterContext, "svgAttribute", "TestObjectPython", holder, isolate);
740 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
685 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 741 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
686 impl->setSVGAttribute(cppValue); 742 impl->setSVGAttribute(cppValue);
687 } 743 }
688 744
689 static void svgAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 745 static void svgAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
690 { 746 {
691 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 747 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
692 TestObjectPythonV8Internal::svgAttributeAttributeSetter(jsValue, info); 748 TestObjectPythonV8Internal::svgAttributeAttributeSetter(jsValue, info);
693 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 749 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
694 } 750 }
695 751
696 static void xmlAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info) 752 static void xmlAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info)
697 { 753 {
698 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 754 v8::Handle<v8::Object> holder = info.Holder();
755 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
699 v8SetReturnValueInt(info, impl->xmlAttribute()); 756 v8SetReturnValueInt(info, impl->xmlAttribute());
700 } 757 }
701 758
702 static void xmlAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info) 759 static void xmlAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info)
703 { 760 {
704 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 761 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
705 TestObjectPythonV8Internal::xmlAttributeAttributeGetter(info); 762 TestObjectPythonV8Internal::xmlAttributeAttributeGetter(info);
706 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 763 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
707 } 764 }
708 765
709 static void xmlAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info) 766 static void xmlAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info)
710 { 767 {
711 ExceptionState exceptionState(ExceptionState::SetterContext, "xmlAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 768 v8::Isolate* isolate = info.GetIsolate();
712 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 769 v8::Handle<v8::Object> holder = info.Holder();
770 ExceptionState exceptionState(ExceptionState::SetterContext, "xmlAttribute", "TestObjectPython", holder, isolate);
771 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
713 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 772 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
714 impl->setXMLAttribute(cppValue); 773 impl->setXMLAttribute(cppValue);
715 } 774 }
716 775
717 static void xmlAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 776 static void xmlAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
718 { 777 {
719 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 778 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
720 TestObjectPythonV8Internal::xmlAttributeAttributeSetter(jsValue, info); 779 TestObjectPythonV8Internal::xmlAttributeAttributeSetter(jsValue, info);
721 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 780 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
722 } 781 }
723 782
724 static void nodeFilterAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info) 783 static void nodeFilterAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info)
725 { 784 {
726 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 785 v8::Handle<v8::Object> holder = info.Holder();
786 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
727 v8SetReturnValueFast(info, WTF::getPtr(impl->nodeFilterAttribute()), impl); 787 v8SetReturnValueFast(info, WTF::getPtr(impl->nodeFilterAttribute()), impl);
728 } 788 }
729 789
730 static void nodeFilterAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info) 790 static void nodeFilterAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info)
731 { 791 {
732 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 792 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
733 TestObjectPythonV8Internal::nodeFilterAttributeAttributeGetter(info); 793 TestObjectPythonV8Internal::nodeFilterAttributeAttributeGetter(info);
734 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 794 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
735 } 795 }
736 796
737 static void nodeFilterAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info) 797 static void nodeFilterAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info)
738 { 798 {
739 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 799 v8::Handle<v8::Object> holder = info.Holder();
800 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
740 V8TRYCATCH_VOID(RefPtr<NodeFilter>, cppValue, toNodeFilter(jsValue, info.Get Isolate())); 801 V8TRYCATCH_VOID(RefPtr<NodeFilter>, cppValue, toNodeFilter(jsValue, info.Get Isolate()));
741 impl->setNodeFilterAttribute(WTF::getPtr(cppValue)); 802 impl->setNodeFilterAttribute(WTF::getPtr(cppValue));
742 } 803 }
743 804
744 static void nodeFilterAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 805 static void nodeFilterAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
745 { 806 {
746 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 807 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
747 TestObjectPythonV8Internal::nodeFilterAttributeAttributeSetter(jsValue, info ); 808 TestObjectPythonV8Internal::nodeFilterAttributeAttributeSetter(jsValue, info );
748 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 809 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
749 } 810 }
750 811
751 static void serializedScriptValueAttributeAttributeGetter(const v8::PropertyCall backInfo<v8::Value>& info) 812 static void serializedScriptValueAttributeAttributeGetter(const v8::PropertyCall backInfo<v8::Value>& info)
752 { 813 {
753 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 814 v8::Handle<v8::Object> holder = info.Holder();
815 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
754 v8SetReturnValue(info, impl->serializedScriptValueAttribute() ? impl->serial izedScriptValueAttribute()->deserialize() : v8::Handle<v8::Value>(v8::Null(info. GetIsolate()))); 816 v8SetReturnValue(info, impl->serializedScriptValueAttribute() ? impl->serial izedScriptValueAttribute()->deserialize() : v8::Handle<v8::Value>(v8::Null(info. GetIsolate())));
755 } 817 }
756 818
757 static void serializedScriptValueAttributeAttributeGetterCallback(v8::Local<v8:: String>, const v8::PropertyCallbackInfo<v8::Value>& info) 819 static void serializedScriptValueAttributeAttributeGetterCallback(v8::Local<v8:: String>, const v8::PropertyCallbackInfo<v8::Value>& info)
758 { 820 {
759 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 821 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
760 TestObjectPythonV8Internal::serializedScriptValueAttributeAttributeGetter(in fo); 822 TestObjectPythonV8Internal::serializedScriptValueAttributeAttributeGetter(in fo);
761 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 823 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
762 } 824 }
763 825
764 static void serializedScriptValueAttributeAttributeSetter(v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info) 826 static void serializedScriptValueAttributeAttributeSetter(v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info)
765 { 827 {
766 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 828 v8::Handle<v8::Object> holder = info.Holder();
829 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
767 V8TRYCATCH_VOID(RefPtr<SerializedScriptValue>, cppValue, SerializedScriptVal ue::create(jsValue, info.GetIsolate())); 830 V8TRYCATCH_VOID(RefPtr<SerializedScriptValue>, cppValue, SerializedScriptVal ue::create(jsValue, info.GetIsolate()));
768 impl->setSerializedScriptValueAttribute(WTF::getPtr(cppValue)); 831 impl->setSerializedScriptValueAttribute(WTF::getPtr(cppValue));
769 } 832 }
770 833
771 static void serializedScriptValueAttributeAttributeSetterCallback(v8::Local<v8:: String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& inf o) 834 static void serializedScriptValueAttributeAttributeSetterCallback(v8::Local<v8:: String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& inf o)
772 { 835 {
773 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 836 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
774 TestObjectPythonV8Internal::serializedScriptValueAttributeAttributeSetter(js Value, info); 837 TestObjectPythonV8Internal::serializedScriptValueAttributeAttributeSetter(js Value, info);
775 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 838 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
776 } 839 }
777 840
778 static void anyAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info) 841 static void anyAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value >& info)
779 { 842 {
780 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 843 v8::Handle<v8::Object> holder = info.Holder();
844 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
781 v8SetReturnValue(info, impl->anyAttribute().v8Value()); 845 v8SetReturnValue(info, impl->anyAttribute().v8Value());
782 } 846 }
783 847
784 static void anyAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info) 848 static void anyAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8: :PropertyCallbackInfo<v8::Value>& info)
785 { 849 {
786 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 850 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
787 TestObjectPythonV8Internal::anyAttributeAttributeGetter(info); 851 TestObjectPythonV8Internal::anyAttributeAttributeGetter(info);
788 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 852 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
789 } 853 }
790 854
791 static void anyAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info) 855 static void anyAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8:: PropertyCallbackInfo<void>& info)
792 { 856 {
793 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 857 v8::Handle<v8::Object> holder = info.Holder();
858 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
794 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( ))); 859 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( )));
795 impl->setAnyAttribute(cppValue); 860 impl->setAnyAttribute(cppValue);
796 } 861 }
797 862
798 static void anyAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 863 static void anyAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local <v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
799 { 864 {
800 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 865 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
801 TestObjectPythonV8Internal::anyAttributeAttributeSetter(jsValue, info); 866 TestObjectPythonV8Internal::anyAttributeAttributeSetter(jsValue, info);
802 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 867 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
803 } 868 }
804 869
805 static void promiseAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::V alue>& info) 870 static void promiseAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::V alue>& info)
806 { 871 {
807 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 872 v8::Handle<v8::Object> holder = info.Holder();
873 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
808 v8SetReturnValue(info, impl->promiseAttribute().v8Value()); 874 v8SetReturnValue(info, impl->promiseAttribute().v8Value());
809 } 875 }
810 876
811 static void promiseAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 877 static void promiseAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
812 { 878 {
813 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 879 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
814 TestObjectPythonV8Internal::promiseAttributeAttributeGetter(info); 880 TestObjectPythonV8Internal::promiseAttributeAttributeGetter(info);
815 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 881 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
816 } 882 }
817 883
818 static void promiseAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 884 static void promiseAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
819 { 885 {
820 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 886 v8::Handle<v8::Object> holder = info.Holder();
887 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
821 V8TRYCATCH_VOID(ScriptPromise, cppValue, ScriptPromise(jsValue, info.GetIsol ate())); 888 V8TRYCATCH_VOID(ScriptPromise, cppValue, ScriptPromise(jsValue, info.GetIsol ate()));
822 impl->setPromiseAttribute(cppValue); 889 impl->setPromiseAttribute(cppValue);
823 } 890 }
824 891
825 static void promiseAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::L ocal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 892 static void promiseAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::L ocal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
826 { 893 {
827 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 894 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
828 TestObjectPythonV8Internal::promiseAttributeAttributeSetter(jsValue, info); 895 TestObjectPythonV8Internal::promiseAttributeAttributeSetter(jsValue, info);
829 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 896 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
830 } 897 }
831 898
832 static void windowAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Va lue>& info) 899 static void windowAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Va lue>& info)
833 { 900 {
834 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 901 v8::Handle<v8::Object> holder = info.Holder();
902 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
835 v8SetReturnValueFast(info, WTF::getPtr(impl->windowAttribute()), impl); 903 v8SetReturnValueFast(info, WTF::getPtr(impl->windowAttribute()), impl);
836 } 904 }
837 905
838 static void windowAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 906 static void windowAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
839 { 907 {
840 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 908 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
841 TestObjectPythonV8Internal::windowAttributeAttributeGetter(info); 909 TestObjectPythonV8Internal::windowAttributeAttributeGetter(info);
842 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 910 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
843 } 911 }
844 912
845 static void windowAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v 8::PropertyCallbackInfo<void>& info) 913 static void windowAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v 8::PropertyCallbackInfo<void>& info)
846 { 914 {
847 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 915 v8::Handle<v8::Object> holder = info.Holder();
916 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
848 V8TRYCATCH_VOID(DOMWindow*, cppValue, toDOMWindow(jsValue, info.GetIsolate() )); 917 V8TRYCATCH_VOID(DOMWindow*, cppValue, toDOMWindow(jsValue, info.GetIsolate() ));
849 impl->setWindowAttribute(WTF::getPtr(cppValue)); 918 impl->setWindowAttribute(WTF::getPtr(cppValue));
850 } 919 }
851 920
852 static void windowAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 921 static void windowAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
853 { 922 {
854 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 923 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
855 TestObjectPythonV8Internal::windowAttributeAttributeSetter(jsValue, info); 924 TestObjectPythonV8Internal::windowAttributeAttributeSetter(jsValue, info);
856 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 925 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
857 } 926 }
858 927
859 static void documentAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8:: Value>& info) 928 static void documentAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8:: Value>& info)
860 { 929 {
861 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 930 v8::Handle<v8::Object> holder = info.Holder();
931 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
862 v8SetReturnValueFast(info, WTF::getPtr(impl->documentAttribute()), impl); 932 v8SetReturnValueFast(info, WTF::getPtr(impl->documentAttribute()), impl);
863 } 933 }
864 934
865 static void documentAttributeAttributeGetterCallback(v8::Local<v8::String>, cons t v8::PropertyCallbackInfo<v8::Value>& info) 935 static void documentAttributeAttributeGetterCallback(v8::Local<v8::String>, cons t v8::PropertyCallbackInfo<v8::Value>& info)
866 { 936 {
867 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 937 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
868 TestObjectPythonV8Internal::documentAttributeAttributeGetter(info); 938 TestObjectPythonV8Internal::documentAttributeAttributeGetter(info);
869 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 939 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
870 } 940 }
871 941
872 static void documentAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 942 static void documentAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
873 { 943 {
874 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 944 v8::Handle<v8::Object> holder = info.Holder();
945 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
875 V8TRYCATCH_VOID(Document*, cppValue, V8Document::toNativeWithTypeCheck(info. GetIsolate(), jsValue)); 946 V8TRYCATCH_VOID(Document*, cppValue, V8Document::toNativeWithTypeCheck(info. GetIsolate(), jsValue));
876 impl->setDocumentAttribute(WTF::getPtr(cppValue)); 947 impl->setDocumentAttribute(WTF::getPtr(cppValue));
877 } 948 }
878 949
879 static void documentAttributeAttributeSetterCallback(v8::Local<v8::String>, v8:: Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 950 static void documentAttributeAttributeSetterCallback(v8::Local<v8::String>, v8:: Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
880 { 951 {
881 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 952 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
882 TestObjectPythonV8Internal::documentAttributeAttributeSetter(jsValue, info); 953 TestObjectPythonV8Internal::documentAttributeAttributeSetter(jsValue, info);
883 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 954 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
884 } 955 }
885 956
886 static void documentFragmentAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info) 957 static void documentFragmentAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info)
887 { 958 {
888 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 959 v8::Handle<v8::Object> holder = info.Holder();
960 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
889 v8SetReturnValueFast(info, WTF::getPtr(impl->documentFragmentAttribute()), i mpl); 961 v8SetReturnValueFast(info, WTF::getPtr(impl->documentFragmentAttribute()), i mpl);
890 } 962 }
891 963
892 static void documentFragmentAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info) 964 static void documentFragmentAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info)
893 { 965 {
894 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 966 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
895 TestObjectPythonV8Internal::documentFragmentAttributeAttributeGetter(info); 967 TestObjectPythonV8Internal::documentFragmentAttributeAttributeGetter(info);
896 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 968 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
897 } 969 }
898 970
899 static void documentFragmentAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info) 971 static void documentFragmentAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info)
900 { 972 {
901 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 973 v8::Handle<v8::Object> holder = info.Holder();
974 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
902 V8TRYCATCH_VOID(DocumentFragment*, cppValue, V8DocumentFragment::toNativeWit hTypeCheck(info.GetIsolate(), jsValue)); 975 V8TRYCATCH_VOID(DocumentFragment*, cppValue, V8DocumentFragment::toNativeWit hTypeCheck(info.GetIsolate(), jsValue));
903 impl->setDocumentFragmentAttribute(WTF::getPtr(cppValue)); 976 impl->setDocumentFragmentAttribute(WTF::getPtr(cppValue));
904 } 977 }
905 978
906 static void documentFragmentAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 979 static void documentFragmentAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
907 { 980 {
908 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 981 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
909 TestObjectPythonV8Internal::documentFragmentAttributeAttributeSetter(jsValue , info); 982 TestObjectPythonV8Internal::documentFragmentAttributeAttributeSetter(jsValue , info);
910 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 983 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
911 } 984 }
912 985
913 static void documentTypeAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info) 986 static void documentTypeAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info)
914 { 987 {
915 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 988 v8::Handle<v8::Object> holder = info.Holder();
989 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
916 v8SetReturnValueFast(info, WTF::getPtr(impl->documentTypeAttribute()), impl) ; 990 v8SetReturnValueFast(info, WTF::getPtr(impl->documentTypeAttribute()), impl) ;
917 } 991 }
918 992
919 static void documentTypeAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 993 static void documentTypeAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
920 { 994 {
921 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 995 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
922 TestObjectPythonV8Internal::documentTypeAttributeAttributeGetter(info); 996 TestObjectPythonV8Internal::documentTypeAttributeAttributeGetter(info);
923 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 997 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
924 } 998 }
925 999
926 static void documentTypeAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info) 1000 static void documentTypeAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info)
927 { 1001 {
928 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1002 v8::Handle<v8::Object> holder = info.Holder();
1003 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
929 V8TRYCATCH_VOID(DocumentType*, cppValue, V8DocumentType::toNativeWithTypeChe ck(info.GetIsolate(), jsValue)); 1004 V8TRYCATCH_VOID(DocumentType*, cppValue, V8DocumentType::toNativeWithTypeChe ck(info.GetIsolate(), jsValue));
930 impl->setDocumentTypeAttribute(WTF::getPtr(cppValue)); 1005 impl->setDocumentTypeAttribute(WTF::getPtr(cppValue));
931 } 1006 }
932 1007
933 static void documentTypeAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1008 static void documentTypeAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
934 { 1009 {
935 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1010 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
936 TestObjectPythonV8Internal::documentTypeAttributeAttributeSetter(jsValue, in fo); 1011 TestObjectPythonV8Internal::documentTypeAttributeAttributeSetter(jsValue, in fo);
937 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1012 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
938 } 1013 }
939 1014
940 static void elementAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::V alue>& info) 1015 static void elementAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::V alue>& info)
941 { 1016 {
942 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1017 v8::Handle<v8::Object> holder = info.Holder();
1018 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
943 v8SetReturnValueFast(info, WTF::getPtr(impl->elementAttribute()), impl); 1019 v8SetReturnValueFast(info, WTF::getPtr(impl->elementAttribute()), impl);
944 } 1020 }
945 1021
946 static void elementAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1022 static void elementAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
947 { 1023 {
948 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1024 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
949 TestObjectPythonV8Internal::elementAttributeAttributeGetter(info); 1025 TestObjectPythonV8Internal::elementAttributeAttributeGetter(info);
950 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1026 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
951 } 1027 }
952 1028
953 static void elementAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1029 static void elementAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
954 { 1030 {
955 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1031 v8::Handle<v8::Object> holder = info.Holder();
1032 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
956 V8TRYCATCH_VOID(Element*, cppValue, V8Element::toNativeWithTypeCheck(info.Ge tIsolate(), jsValue)); 1033 V8TRYCATCH_VOID(Element*, cppValue, V8Element::toNativeWithTypeCheck(info.Ge tIsolate(), jsValue));
957 impl->setElementAttribute(WTF::getPtr(cppValue)); 1034 impl->setElementAttribute(WTF::getPtr(cppValue));
958 } 1035 }
959 1036
960 static void elementAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::L ocal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1037 static void elementAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::L ocal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
961 { 1038 {
962 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1039 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
963 TestObjectPythonV8Internal::elementAttributeAttributeSetter(jsValue, info); 1040 TestObjectPythonV8Internal::elementAttributeAttributeSetter(jsValue, info);
964 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1041 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
965 } 1042 }
966 1043
967 static void nodeAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info) 1044 static void nodeAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info)
968 { 1045 {
969 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1046 v8::Handle<v8::Object> holder = info.Holder();
1047 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
970 v8SetReturnValueFast(info, WTF::getPtr(impl->nodeAttribute()), impl); 1048 v8SetReturnValueFast(info, WTF::getPtr(impl->nodeAttribute()), impl);
971 } 1049 }
972 1050
973 static void nodeAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info) 1051 static void nodeAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info)
974 { 1052 {
975 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1053 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
976 TestObjectPythonV8Internal::nodeAttributeAttributeGetter(info); 1054 TestObjectPythonV8Internal::nodeAttributeAttributeGetter(info);
977 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1055 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
978 } 1056 }
979 1057
980 static void nodeAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info) 1058 static void nodeAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info)
981 { 1059 {
982 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1060 v8::Handle<v8::Object> holder = info.Holder();
1061 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
983 V8TRYCATCH_VOID(Node*, cppValue, V8Node::toNativeWithTypeCheck(info.GetIsola te(), jsValue)); 1062 V8TRYCATCH_VOID(Node*, cppValue, V8Node::toNativeWithTypeCheck(info.GetIsola te(), jsValue));
984 impl->setNodeAttribute(WTF::getPtr(cppValue)); 1063 impl->setNodeAttribute(WTF::getPtr(cppValue));
985 } 1064 }
986 1065
987 static void nodeAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1066 static void nodeAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
988 { 1067 {
989 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1068 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
990 TestObjectPythonV8Internal::nodeAttributeAttributeSetter(jsValue, info); 1069 TestObjectPythonV8Internal::nodeAttributeAttributeSetter(jsValue, info);
991 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1070 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
992 } 1071 }
993 1072
994 static void shadowRootAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info) 1073 static void shadowRootAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info)
995 { 1074 {
996 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1075 v8::Handle<v8::Object> holder = info.Holder();
1076 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
997 v8SetReturnValueFast(info, WTF::getPtr(impl->shadowRootAttribute()), impl); 1077 v8SetReturnValueFast(info, WTF::getPtr(impl->shadowRootAttribute()), impl);
998 } 1078 }
999 1079
1000 static void shadowRootAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info) 1080 static void shadowRootAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info)
1001 { 1081 {
1002 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1082 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1003 TestObjectPythonV8Internal::shadowRootAttributeAttributeGetter(info); 1083 TestObjectPythonV8Internal::shadowRootAttributeAttributeGetter(info);
1004 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1084 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1005 } 1085 }
1006 1086
1007 static void shadowRootAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info) 1087 static void shadowRootAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info)
1008 { 1088 {
1009 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1089 v8::Handle<v8::Object> holder = info.Holder();
1090 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1010 V8TRYCATCH_VOID(ShadowRoot*, cppValue, V8ShadowRoot::toNativeWithTypeCheck(i nfo.GetIsolate(), jsValue)); 1091 V8TRYCATCH_VOID(ShadowRoot*, cppValue, V8ShadowRoot::toNativeWithTypeCheck(i nfo.GetIsolate(), jsValue));
1011 impl->setShadowRootAttribute(WTF::getPtr(cppValue)); 1092 impl->setShadowRootAttribute(WTF::getPtr(cppValue));
1012 } 1093 }
1013 1094
1014 static void shadowRootAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1095 static void shadowRootAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1015 { 1096 {
1016 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1097 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1017 TestObjectPythonV8Internal::shadowRootAttributeAttributeSetter(jsValue, info ); 1098 TestObjectPythonV8Internal::shadowRootAttributeAttributeSetter(jsValue, info );
1018 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1099 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1019 } 1100 }
1020 1101
1021 static void arrayBufferAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info) 1102 static void arrayBufferAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info)
1022 { 1103 {
1023 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1104 v8::Handle<v8::Object> holder = info.Holder();
1105 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1024 v8SetReturnValueFast(info, WTF::getPtr(impl->arrayBufferAttribute()), impl); 1106 v8SetReturnValueFast(info, WTF::getPtr(impl->arrayBufferAttribute()), impl);
1025 } 1107 }
1026 1108
1027 static void arrayBufferAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info) 1109 static void arrayBufferAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info)
1028 { 1110 {
1029 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1111 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1030 TestObjectPythonV8Internal::arrayBufferAttributeAttributeGetter(info); 1112 TestObjectPythonV8Internal::arrayBufferAttributeAttributeGetter(info);
1031 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1113 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1032 } 1114 }
1033 1115
1034 static void arrayBufferAttributeAttributeSetter(v8::Local<v8::Value> jsValue, co nst v8::PropertyCallbackInfo<void>& info) 1116 static void arrayBufferAttributeAttributeSetter(v8::Local<v8::Value> jsValue, co nst v8::PropertyCallbackInfo<void>& info)
1035 { 1117 {
1036 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1118 v8::Handle<v8::Object> holder = info.Holder();
1119 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1037 V8TRYCATCH_VOID(ArrayBuffer*, cppValue, jsValue->IsArrayBuffer() ? V8ArrayBu ffer::toNative(v8::Handle<v8::ArrayBuffer>::Cast(jsValue)) : 0); 1120 V8TRYCATCH_VOID(ArrayBuffer*, cppValue, jsValue->IsArrayBuffer() ? V8ArrayBu ffer::toNative(v8::Handle<v8::ArrayBuffer>::Cast(jsValue)) : 0);
1038 impl->setArrayBufferAttribute(WTF::getPtr(cppValue)); 1121 impl->setArrayBufferAttribute(WTF::getPtr(cppValue));
1039 } 1122 }
1040 1123
1041 static void arrayBufferAttributeAttributeSetterCallback(v8::Local<v8::String>, v 8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1124 static void arrayBufferAttributeAttributeSetterCallback(v8::Local<v8::String>, v 8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1042 { 1125 {
1043 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1126 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1044 TestObjectPythonV8Internal::arrayBufferAttributeAttributeSetter(jsValue, inf o); 1127 TestObjectPythonV8Internal::arrayBufferAttributeAttributeSetter(jsValue, inf o);
1045 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1128 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1046 } 1129 }
1047 1130
1048 static void float32ArrayAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info) 1131 static void float32ArrayAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info)
1049 { 1132 {
1050 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1133 v8::Handle<v8::Object> holder = info.Holder();
1134 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1051 v8SetReturnValueFast(info, WTF::getPtr(impl->float32ArrayAttribute()), impl) ; 1135 v8SetReturnValueFast(info, WTF::getPtr(impl->float32ArrayAttribute()), impl) ;
1052 } 1136 }
1053 1137
1054 static void float32ArrayAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1138 static void float32ArrayAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1055 { 1139 {
1056 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1140 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1057 TestObjectPythonV8Internal::float32ArrayAttributeAttributeGetter(info); 1141 TestObjectPythonV8Internal::float32ArrayAttributeAttributeGetter(info);
1058 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1142 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1059 } 1143 }
1060 1144
1061 static void float32ArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info) 1145 static void float32ArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info)
1062 { 1146 {
1063 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1147 v8::Handle<v8::Object> holder = info.Holder();
1148 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1064 V8TRYCATCH_VOID(Float32Array*, cppValue, jsValue->IsFloat32Array() ? V8Float 32Array::toNative(v8::Handle<v8::Float32Array>::Cast(jsValue)) : 0); 1149 V8TRYCATCH_VOID(Float32Array*, cppValue, jsValue->IsFloat32Array() ? V8Float 32Array::toNative(v8::Handle<v8::Float32Array>::Cast(jsValue)) : 0);
1065 impl->setFloat32ArrayAttribute(WTF::getPtr(cppValue)); 1150 impl->setFloat32ArrayAttribute(WTF::getPtr(cppValue));
1066 } 1151 }
1067 1152
1068 static void float32ArrayAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1153 static void float32ArrayAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1069 { 1154 {
1070 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1155 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1071 TestObjectPythonV8Internal::float32ArrayAttributeAttributeSetter(jsValue, in fo); 1156 TestObjectPythonV8Internal::float32ArrayAttributeAttributeSetter(jsValue, in fo);
1072 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1157 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1073 } 1158 }
1074 1159
1075 static void uint8ArrayAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info) 1160 static void uint8ArrayAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info)
1076 { 1161 {
1077 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1162 v8::Handle<v8::Object> holder = info.Holder();
1163 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1078 v8SetReturnValueFast(info, WTF::getPtr(impl->uint8ArrayAttribute()), impl); 1164 v8SetReturnValueFast(info, WTF::getPtr(impl->uint8ArrayAttribute()), impl);
1079 } 1165 }
1080 1166
1081 static void uint8ArrayAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info) 1167 static void uint8ArrayAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info)
1082 { 1168 {
1083 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1169 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1084 TestObjectPythonV8Internal::uint8ArrayAttributeAttributeGetter(info); 1170 TestObjectPythonV8Internal::uint8ArrayAttributeAttributeGetter(info);
1085 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1171 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1086 } 1172 }
1087 1173
1088 static void uint8ArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info) 1174 static void uint8ArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info)
1089 { 1175 {
1090 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1176 v8::Handle<v8::Object> holder = info.Holder();
1177 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1091 V8TRYCATCH_VOID(Uint8Array*, cppValue, jsValue->IsUint8Array() ? V8Uint8Arra y::toNative(v8::Handle<v8::Uint8Array>::Cast(jsValue)) : 0); 1178 V8TRYCATCH_VOID(Uint8Array*, cppValue, jsValue->IsUint8Array() ? V8Uint8Arra y::toNative(v8::Handle<v8::Uint8Array>::Cast(jsValue)) : 0);
1092 impl->setUint8ArrayAttribute(WTF::getPtr(cppValue)); 1179 impl->setUint8ArrayAttribute(WTF::getPtr(cppValue));
1093 } 1180 }
1094 1181
1095 static void uint8ArrayAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1182 static void uint8ArrayAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1096 { 1183 {
1097 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1184 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1098 TestObjectPythonV8Internal::uint8ArrayAttributeAttributeSetter(jsValue, info ); 1185 TestObjectPythonV8Internal::uint8ArrayAttributeAttributeSetter(jsValue, info );
1099 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1186 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1100 } 1187 }
1101 1188
1102 static void selfAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info) 1189 static void selfAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info)
1103 { 1190 {
1104 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1191 v8::Handle<v8::Object> holder = info.Holder();
1192 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1105 v8SetReturnValueFast(info, WTF::getPtr(impl->self()), impl); 1193 v8SetReturnValueFast(info, WTF::getPtr(impl->self()), impl);
1106 } 1194 }
1107 1195
1108 static void selfAttributeGetterCallback(v8::Local<v8::String>, const v8::Propert yCallbackInfo<v8::Value>& info) 1196 static void selfAttributeGetterCallback(v8::Local<v8::String>, const v8::Propert yCallbackInfo<v8::Value>& info)
1109 { 1197 {
1110 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1198 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1111 TestObjectPythonV8Internal::selfAttributeGetter(info); 1199 TestObjectPythonV8Internal::selfAttributeGetter(info);
1112 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1200 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1113 } 1201 }
1114 1202
1115 static void readonlyEventTargetAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info) 1203 static void readonlyEventTargetAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info)
1116 { 1204 {
1117 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1205 v8::Handle<v8::Object> holder = info.Holder();
1206 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1118 v8SetReturnValueFast(info, WTF::getPtr(impl->readonlyEventTargetAttribute()) , impl); 1207 v8SetReturnValueFast(info, WTF::getPtr(impl->readonlyEventTargetAttribute()) , impl);
1119 } 1208 }
1120 1209
1121 static void readonlyEventTargetAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info) 1210 static void readonlyEventTargetAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info)
1122 { 1211 {
1123 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1212 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1124 TestObjectPythonV8Internal::readonlyEventTargetAttributeAttributeGetter(info ); 1213 TestObjectPythonV8Internal::readonlyEventTargetAttributeAttributeGetter(info );
1125 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1214 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1126 } 1215 }
1127 1216
1128 static void readonlyEventTargetOrNullAttributeAttributeGetter(const v8::Property CallbackInfo<v8::Value>& info) 1217 static void readonlyEventTargetOrNullAttributeAttributeGetter(const v8::Property CallbackInfo<v8::Value>& info)
1129 { 1218 {
1130 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1219 v8::Handle<v8::Object> holder = info.Holder();
1220 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1131 bool isNull = false; 1221 bool isNull = false;
1132 RefPtr<EventTarget> jsValue = impl->readonlyEventTargetOrNullAttribute(isNul l); 1222 RefPtr<EventTarget> jsValue = impl->readonlyEventTargetOrNullAttribute(isNul l);
1133 if (isNull) { 1223 if (isNull) {
1134 v8SetReturnValueNull(info); 1224 v8SetReturnValueNull(info);
1135 return; 1225 return;
1136 } 1226 }
1137 v8SetReturnValueFast(info, WTF::getPtr(jsValue.release()), impl); 1227 v8SetReturnValueFast(info, WTF::getPtr(jsValue.release()), impl);
1138 } 1228 }
1139 1229
1140 static void readonlyEventTargetOrNullAttributeAttributeGetterCallback(v8::Local< v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1230 static void readonlyEventTargetOrNullAttributeAttributeGetterCallback(v8::Local< v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1141 { 1231 {
1142 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1232 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1143 TestObjectPythonV8Internal::readonlyEventTargetOrNullAttributeAttributeGette r(info); 1233 TestObjectPythonV8Internal::readonlyEventTargetOrNullAttributeAttributeGette r(info);
1144 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1234 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1145 } 1235 }
1146 1236
1147 static void readonlyWindowAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info) 1237 static void readonlyWindowAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info)
1148 { 1238 {
1149 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1239 v8::Handle<v8::Object> holder = info.Holder();
1240 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1150 v8SetReturnValueFast(info, WTF::getPtr(impl->readonlyWindowAttribute()), imp l); 1241 v8SetReturnValueFast(info, WTF::getPtr(impl->readonlyWindowAttribute()), imp l);
1151 } 1242 }
1152 1243
1153 static void readonlyWindowAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info) 1244 static void readonlyWindowAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info)
1154 { 1245 {
1155 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1246 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1156 TestObjectPythonV8Internal::readonlyWindowAttributeAttributeGetter(info); 1247 TestObjectPythonV8Internal::readonlyWindowAttributeAttributeGetter(info);
1157 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1248 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1158 } 1249 }
1159 1250
1160 static void htmlCollectionAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info) 1251 static void htmlCollectionAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info)
1161 { 1252 {
1162 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1253 v8::Handle<v8::Object> holder = info.Holder();
1254 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1163 v8SetReturnValueFast(info, WTF::getPtr(impl->htmlCollectionAttribute()), imp l); 1255 v8SetReturnValueFast(info, WTF::getPtr(impl->htmlCollectionAttribute()), imp l);
1164 } 1256 }
1165 1257
1166 static void htmlCollectionAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info) 1258 static void htmlCollectionAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info)
1167 { 1259 {
1168 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1260 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1169 TestObjectPythonV8Internal::htmlCollectionAttributeAttributeGetter(info); 1261 TestObjectPythonV8Internal::htmlCollectionAttributeAttributeGetter(info);
1170 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1262 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1171 } 1263 }
1172 1264
1173 static void htmlElementAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info) 1265 static void htmlElementAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info)
1174 { 1266 {
1175 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1267 v8::Handle<v8::Object> holder = info.Holder();
1268 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1176 v8SetReturnValueFast(info, WTF::getPtr(impl->htmlElementAttribute()), impl); 1269 v8SetReturnValueFast(info, WTF::getPtr(impl->htmlElementAttribute()), impl);
1177 } 1270 }
1178 1271
1179 static void htmlElementAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info) 1272 static void htmlElementAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info)
1180 { 1273 {
1181 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1274 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1182 TestObjectPythonV8Internal::htmlElementAttributeAttributeGetter(info); 1275 TestObjectPythonV8Internal::htmlElementAttributeAttributeGetter(info);
1183 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1276 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1184 } 1277 }
1185 1278
1186 static void stringArrayAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info) 1279 static void stringArrayAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info)
1187 { 1280 {
1188 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1281 v8::Handle<v8::Object> holder = info.Holder();
1282 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1189 v8SetReturnValue(info, v8Array(impl->stringArrayAttribute(), info.GetIsolate ())); 1283 v8SetReturnValue(info, v8Array(impl->stringArrayAttribute(), info.GetIsolate ()));
1190 } 1284 }
1191 1285
1192 static void stringArrayAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info) 1286 static void stringArrayAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info)
1193 { 1287 {
1194 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1288 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1195 TestObjectPythonV8Internal::stringArrayAttributeAttributeGetter(info); 1289 TestObjectPythonV8Internal::stringArrayAttributeAttributeGetter(info);
1196 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1290 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1197 } 1291 }
1198 1292
1199 static void stringArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, co nst v8::PropertyCallbackInfo<void>& info) 1293 static void stringArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, co nst v8::PropertyCallbackInfo<void>& info)
1200 { 1294 {
1201 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1295 v8::Handle<v8::Object> holder = info.Holder();
1296 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1202 V8TRYCATCH_VOID(Vector<String>, cppValue, toNativeArray<String>(jsValue, 0, info.GetIsolate())); 1297 V8TRYCATCH_VOID(Vector<String>, cppValue, toNativeArray<String>(jsValue, 0, info.GetIsolate()));
1203 impl->setStringArrayAttribute(cppValue); 1298 impl->setStringArrayAttribute(cppValue);
1204 } 1299 }
1205 1300
1206 static void stringArrayAttributeAttributeSetterCallback(v8::Local<v8::String>, v 8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1301 static void stringArrayAttributeAttributeSetterCallback(v8::Local<v8::String>, v 8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1207 { 1302 {
1208 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1303 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1209 TestObjectPythonV8Internal::stringArrayAttributeAttributeSetter(jsValue, inf o); 1304 TestObjectPythonV8Internal::stringArrayAttributeAttributeSetter(jsValue, inf o);
1210 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1305 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1211 } 1306 }
1212 1307
1213 static void testInterfaceEmptyArrayAttributeAttributeGetter(const v8::PropertyCa llbackInfo<v8::Value>& info) 1308 static void testInterfaceEmptyArrayAttributeAttributeGetter(const v8::PropertyCa llbackInfo<v8::Value>& info)
1214 { 1309 {
1215 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1310 v8::Handle<v8::Object> holder = info.Holder();
1311 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1216 v8SetReturnValue(info, v8Array(impl->testInterfaceEmptyArrayAttribute(), inf o.GetIsolate())); 1312 v8SetReturnValue(info, v8Array(impl->testInterfaceEmptyArrayAttribute(), inf o.GetIsolate()));
1217 } 1313 }
1218 1314
1219 static void testInterfaceEmptyArrayAttributeAttributeGetterCallback(v8::Local<v8 ::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1315 static void testInterfaceEmptyArrayAttributeAttributeGetterCallback(v8::Local<v8 ::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1220 { 1316 {
1221 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1317 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1222 TestObjectPythonV8Internal::testInterfaceEmptyArrayAttributeAttributeGetter( info); 1318 TestObjectPythonV8Internal::testInterfaceEmptyArrayAttributeAttributeGetter( info);
1223 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1319 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1224 } 1320 }
1225 1321
1226 static void testInterfaceEmptyArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1322 static void testInterfaceEmptyArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1227 { 1323 {
1228 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1324 v8::Handle<v8::Object> holder = info.Holder();
1325 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1229 V8TRYCATCH_VOID(Vector<RefPtr<TestInterfaceEmpty> >, cppValue, (toRefPtrNati veArray<TestInterfaceEmpty, V8TestInterfaceEmpty>(jsValue, 0, info.GetIsolate()) )); 1326 V8TRYCATCH_VOID(Vector<RefPtr<TestInterfaceEmpty> >, cppValue, (toRefPtrNati veArray<TestInterfaceEmpty, V8TestInterfaceEmpty>(jsValue, 0, info.GetIsolate()) ));
1230 impl->setTestInterfaceEmptyArrayAttribute(cppValue); 1327 impl->setTestInterfaceEmptyArrayAttribute(cppValue);
1231 } 1328 }
1232 1329
1233 static void testInterfaceEmptyArrayAttributeAttributeSetterCallback(v8::Local<v8 ::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& i nfo) 1330 static void testInterfaceEmptyArrayAttributeAttributeSetterCallback(v8::Local<v8 ::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& i nfo)
1234 { 1331 {
1235 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1332 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1236 TestObjectPythonV8Internal::testInterfaceEmptyArrayAttributeAttributeSetter( jsValue, info); 1333 TestObjectPythonV8Internal::testInterfaceEmptyArrayAttributeAttributeSetter( jsValue, info);
1237 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1334 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1238 } 1335 }
1239 1336
1240 static void floatArrayAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info) 1337 static void floatArrayAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info)
1241 { 1338 {
1242 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1339 v8::Handle<v8::Object> holder = info.Holder();
1340 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1243 v8SetReturnValue(info, v8Array(impl->floatArrayAttribute(), info.GetIsolate( ))); 1341 v8SetReturnValue(info, v8Array(impl->floatArrayAttribute(), info.GetIsolate( )));
1244 } 1342 }
1245 1343
1246 static void floatArrayAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info) 1344 static void floatArrayAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info)
1247 { 1345 {
1248 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1346 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1249 TestObjectPythonV8Internal::floatArrayAttributeAttributeGetter(info); 1347 TestObjectPythonV8Internal::floatArrayAttributeAttributeGetter(info);
1250 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1348 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1251 } 1349 }
1252 1350
1253 static void floatArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info) 1351 static void floatArrayAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info)
1254 { 1352 {
1255 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1353 v8::Handle<v8::Object> holder = info.Holder();
1354 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1256 V8TRYCATCH_VOID(Vector<float>, cppValue, toNativeArray<float>(jsValue, 0, in fo.GetIsolate())); 1355 V8TRYCATCH_VOID(Vector<float>, cppValue, toNativeArray<float>(jsValue, 0, in fo.GetIsolate()));
1257 impl->setFloatArrayAttribute(cppValue); 1356 impl->setFloatArrayAttribute(cppValue);
1258 } 1357 }
1259 1358
1260 static void floatArrayAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1359 static void floatArrayAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1261 { 1360 {
1262 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1361 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1263 TestObjectPythonV8Internal::floatArrayAttributeAttributeSetter(jsValue, info ); 1362 TestObjectPythonV8Internal::floatArrayAttributeAttributeSetter(jsValue, info );
1264 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1363 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1265 } 1364 }
1266 1365
1267 static void stringOrNullAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info) 1366 static void stringOrNullAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info)
1268 { 1367 {
1269 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1368 v8::Handle<v8::Object> holder = info.Holder();
1369 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1270 bool isNull = false; 1370 bool isNull = false;
1271 String jsValue = impl->stringOrNullAttribute(isNull); 1371 String jsValue = impl->stringOrNullAttribute(isNull);
1272 if (isNull) { 1372 if (isNull) {
1273 v8SetReturnValueNull(info); 1373 v8SetReturnValueNull(info);
1274 return; 1374 return;
1275 } 1375 }
1276 v8SetReturnValueString(info, jsValue, info.GetIsolate()); 1376 v8SetReturnValueString(info, jsValue, info.GetIsolate());
1277 } 1377 }
1278 1378
1279 static void stringOrNullAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1379 static void stringOrNullAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1280 { 1380 {
1281 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1381 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1282 TestObjectPythonV8Internal::stringOrNullAttributeAttributeGetter(info); 1382 TestObjectPythonV8Internal::stringOrNullAttributeAttributeGetter(info);
1283 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1383 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1284 } 1384 }
1285 1385
1286 static void stringOrNullAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info) 1386 static void stringOrNullAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info)
1287 { 1387 {
1288 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1388 v8::Handle<v8::Object> holder = info.Holder();
1389 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1289 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 1390 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
1290 impl->setStringOrNullAttribute(cppValue); 1391 impl->setStringOrNullAttribute(cppValue);
1291 } 1392 }
1292 1393
1293 static void stringOrNullAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1394 static void stringOrNullAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1294 { 1395 {
1295 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1396 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1296 TestObjectPythonV8Internal::stringOrNullAttributeAttributeSetter(jsValue, in fo); 1397 TestObjectPythonV8Internal::stringOrNullAttributeAttributeSetter(jsValue, in fo);
1297 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1398 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1298 } 1399 }
1299 1400
1300 static void longOrNullAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info) 1401 static void longOrNullAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info)
1301 { 1402 {
1302 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1403 v8::Handle<v8::Object> holder = info.Holder();
1404 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1303 bool isNull = false; 1405 bool isNull = false;
1304 int jsValue = impl->longOrNullAttribute(isNull); 1406 int jsValue = impl->longOrNullAttribute(isNull);
1305 if (isNull) { 1407 if (isNull) {
1306 v8SetReturnValueNull(info); 1408 v8SetReturnValueNull(info);
1307 return; 1409 return;
1308 } 1410 }
1309 v8SetReturnValueInt(info, jsValue); 1411 v8SetReturnValueInt(info, jsValue);
1310 } 1412 }
1311 1413
1312 static void longOrNullAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info) 1414 static void longOrNullAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info)
1313 { 1415 {
1314 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1416 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1315 TestObjectPythonV8Internal::longOrNullAttributeAttributeGetter(info); 1417 TestObjectPythonV8Internal::longOrNullAttributeAttributeGetter(info);
1316 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1418 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1317 } 1419 }
1318 1420
1319 static void longOrNullAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info) 1421 static void longOrNullAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info)
1320 { 1422 {
1321 ExceptionState exceptionState(ExceptionState::SetterContext, "longOrNullAttr ibute", "TestObjectPython", info.Holder(), info.GetIsolate()); 1423 v8::Isolate* isolate = info.GetIsolate();
1322 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1424 v8::Handle<v8::Object> holder = info.Holder();
1425 ExceptionState exceptionState(ExceptionState::SetterContext, "longOrNullAttr ibute", "TestObjectPython", holder, isolate);
1426 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1323 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1427 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1324 impl->setLongOrNullAttribute(cppValue); 1428 impl->setLongOrNullAttribute(cppValue);
1325 } 1429 }
1326 1430
1327 static void longOrNullAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1431 static void longOrNullAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1328 { 1432 {
1329 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1433 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1330 TestObjectPythonV8Internal::longOrNullAttributeAttributeSetter(jsValue, info ); 1434 TestObjectPythonV8Internal::longOrNullAttributeAttributeSetter(jsValue, info );
1331 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1435 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1332 } 1436 }
1333 1437
1334 static void testInterfaceOrNullAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info) 1438 static void testInterfaceOrNullAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info)
1335 { 1439 {
1336 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1440 v8::Handle<v8::Object> holder = info.Holder();
1441 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1337 bool isNull = false; 1442 bool isNull = false;
1338 RefPtr<TestInterface> jsValue = impl->testInterfaceOrNullAttribute(isNull); 1443 RefPtr<TestInterface> jsValue = impl->testInterfaceOrNullAttribute(isNull);
1339 if (isNull) { 1444 if (isNull) {
1340 v8SetReturnValueNull(info); 1445 v8SetReturnValueNull(info);
1341 return; 1446 return;
1342 } 1447 }
1343 v8SetReturnValueFast(info, WTF::getPtr(jsValue.release()), impl); 1448 v8SetReturnValueFast(info, WTF::getPtr(jsValue.release()), impl);
1344 } 1449 }
1345 1450
1346 static void testInterfaceOrNullAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info) 1451 static void testInterfaceOrNullAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info)
1347 { 1452 {
1348 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1453 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1349 TestObjectPythonV8Internal::testInterfaceOrNullAttributeAttributeGetter(info ); 1454 TestObjectPythonV8Internal::testInterfaceOrNullAttributeAttributeGetter(info );
1350 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1455 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1351 } 1456 }
1352 1457
1353 static void testInterfaceOrNullAttributeAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info) 1458 static void testInterfaceOrNullAttributeAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info)
1354 { 1459 {
1355 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1460 v8::Handle<v8::Object> holder = info.Holder();
1461 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1356 V8TRYCATCH_VOID(TestInterface*, cppValue, V8TestInterface::toNativeWithTypeC heck(info.GetIsolate(), jsValue)); 1462 V8TRYCATCH_VOID(TestInterface*, cppValue, V8TestInterface::toNativeWithTypeC heck(info.GetIsolate(), jsValue));
1357 impl->setTestInterfaceOrNullAttribute(WTF::getPtr(cppValue)); 1463 impl->setTestInterfaceOrNullAttribute(WTF::getPtr(cppValue));
1358 } 1464 }
1359 1465
1360 static void testInterfaceOrNullAttributeAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1466 static void testInterfaceOrNullAttributeAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1361 { 1467 {
1362 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1468 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1363 TestObjectPythonV8Internal::testInterfaceOrNullAttributeAttributeSetter(jsVa lue, info); 1469 TestObjectPythonV8Internal::testInterfaceOrNullAttributeAttributeSetter(jsVa lue, info);
1364 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1470 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1365 } 1471 }
1366 1472
1367 static void testEnumAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8:: Value>& info) 1473 static void testEnumAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8:: Value>& info)
1368 { 1474 {
1369 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1475 v8::Handle<v8::Object> holder = info.Holder();
1476 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1370 v8SetReturnValueString(info, impl->testEnumAttribute(), info.GetIsolate()); 1477 v8SetReturnValueString(info, impl->testEnumAttribute(), info.GetIsolate());
1371 } 1478 }
1372 1479
1373 static void testEnumAttributeAttributeGetterCallback(v8::Local<v8::String>, cons t v8::PropertyCallbackInfo<v8::Value>& info) 1480 static void testEnumAttributeAttributeGetterCallback(v8::Local<v8::String>, cons t v8::PropertyCallbackInfo<v8::Value>& info)
1374 { 1481 {
1375 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1482 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1376 TestObjectPythonV8Internal::testEnumAttributeAttributeGetter(info); 1483 TestObjectPythonV8Internal::testEnumAttributeAttributeGetter(info);
1377 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1484 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1378 } 1485 }
1379 1486
1380 static void testEnumAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1487 static void testEnumAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1381 { 1488 {
1382 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1489 v8::Handle<v8::Object> holder = info.Holder();
1490 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1383 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 1491 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
1384 String string = cppValue; 1492 String string = cppValue;
1385 if (!(string == "" || string == "EnumValue1" || string == "EnumValue2" || st ring == "EnumValue3")) 1493 if (!(string == "" || string == "EnumValue1" || string == "EnumValue2" || st ring == "EnumValue3"))
1386 return; 1494 return;
1387 impl->setTestEnumAttribute(cppValue); 1495 impl->setTestEnumAttribute(cppValue);
1388 } 1496 }
1389 1497
1390 static void testEnumAttributeAttributeSetterCallback(v8::Local<v8::String>, v8:: Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1498 static void testEnumAttributeAttributeSetterCallback(v8::Local<v8::String>, v8:: Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1391 { 1499 {
1392 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1500 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
1426 1534
1427 static void staticLongAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info) 1535 static void staticLongAttributeAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info)
1428 { 1536 {
1429 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1537 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1430 TestObjectPythonV8Internal::staticLongAttributeAttributeGetter(info); 1538 TestObjectPythonV8Internal::staticLongAttributeAttributeGetter(info);
1431 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1539 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1432 } 1540 }
1433 1541
1434 static void staticLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info) 1542 static void staticLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info)
1435 { 1543 {
1436 ExceptionState exceptionState(ExceptionState::SetterContext, "staticLongAttr ibute", "TestObjectPython", info.Holder(), info.GetIsolate()); 1544 v8::Isolate* isolate = info.GetIsolate();
1545 ExceptionState exceptionState(ExceptionState::SetterContext, "staticLongAttr ibute", "TestObjectPython", holder, isolate);
1437 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1546 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1438 TestObjectPython::setStaticLongAttribute(cppValue); 1547 TestObjectPython::setStaticLongAttribute(cppValue);
1439 } 1548 }
1440 1549
1441 static void staticLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1550 static void staticLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1442 { 1551 {
1443 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1552 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1444 TestObjectPythonV8Internal::staticLongAttributeAttributeSetter(jsValue, info ); 1553 TestObjectPythonV8Internal::staticLongAttributeAttributeSetter(jsValue, info );
1445 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1554 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1446 } 1555 }
1447 1556
1448 static void eventHandlerAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info) 1557 static void eventHandlerAttributeAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info)
1449 { 1558 {
1450 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1559 v8::Handle<v8::Object> holder = info.Holder();
1560 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1451 EventListener* jsValue = impl->eventHandlerAttribute(); 1561 EventListener* jsValue = impl->eventHandlerAttribute();
1452 v8SetReturnValue(info, jsValue ? v8::Handle<v8::Value>(V8AbstractEventListen er::cast(jsValue)->getListenerObject(impl->executionContext())) : v8::Handle<v8: :Value>(v8::Null(info.GetIsolate()))); 1562 v8SetReturnValue(info, jsValue ? v8::Handle<v8::Value>(V8AbstractEventListen er::cast(jsValue)->getListenerObject(impl->executionContext())) : v8::Handle<v8: :Value>(v8::Null(info.GetIsolate())));
1453 } 1563 }
1454 1564
1455 static void eventHandlerAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1565 static void eventHandlerAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1456 { 1566 {
1457 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1567 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1458 TestObjectPythonV8Internal::eventHandlerAttributeAttributeGetter(info); 1568 TestObjectPythonV8Internal::eventHandlerAttributeAttributeGetter(info);
1459 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1569 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1460 } 1570 }
1461 1571
1462 static void eventHandlerAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info) 1572 static void eventHandlerAttributeAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info)
1463 { 1573 {
1464 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1574 v8::Isolate* isolate = info.GetIsolate();
1465 moveEventListenerToNewWrapper(info.Holder(), impl->eventHandlerAttribute(), jsValue, V8TestObjectPython::eventListenerCacheIndex, info.GetIsolate()); 1575 v8::Handle<v8::Object> holder = info.Holder();
1576 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1577 moveEventListenerToNewWrapper(holder, impl->eventHandlerAttribute(), jsValue , V8TestObjectPython::eventListenerCacheIndex, isolate);
1466 impl->setEventHandlerAttribute(V8EventListenerList::getEventListener(jsValue , true, ListenerFindOrCreate)); 1578 impl->setEventHandlerAttribute(V8EventListenerList::getEventListener(jsValue , true, ListenerFindOrCreate));
1467 } 1579 }
1468 1580
1469 static void eventHandlerAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1581 static void eventHandlerAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1470 { 1582 {
1471 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1583 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1472 TestObjectPythonV8Internal::eventHandlerAttributeAttributeSetter(jsValue, in fo); 1584 TestObjectPythonV8Internal::eventHandlerAttributeAttributeSetter(jsValue, in fo);
1473 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1585 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1474 } 1586 }
1475 1587
1476 static void activityLoggingAccessForAllWorldsLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info) 1588 static void activityLoggingAccessForAllWorldsLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info)
1477 { 1589 {
1478 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1590 v8::Handle<v8::Object> holder = info.Holder();
1591 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1479 v8SetReturnValueInt(info, impl->activityLoggingAccessForAllWorldsLongAttribu te()); 1592 v8SetReturnValueInt(info, impl->activityLoggingAccessForAllWorldsLongAttribu te());
1480 } 1593 }
1481 1594
1482 static void activityLoggingAccessForAllWorldsLongAttributeAttributeGetterCallbac k(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1595 static void activityLoggingAccessForAllWorldsLongAttributeAttributeGetterCallbac k(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1483 { 1596 {
1484 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1597 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1485 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 1598 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
1486 if (contextData && contextData->activityLogger()) 1599 if (contextData && contextData->activityLogger())
1487 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssForAllWorldsLongAttribute", 0, 0, "Getter"); 1600 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssForAllWorldsLongAttribute", 0, 0, "Getter");
1488 TestObjectPythonV8Internal::activityLoggingAccessForAllWorldsLongAttributeAt tributeGetter(info); 1601 TestObjectPythonV8Internal::activityLoggingAccessForAllWorldsLongAttributeAt tributeGetter(info);
1489 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1602 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1490 } 1603 }
1491 1604
1492 static void activityLoggingAccessForAllWorldsLongAttributeAttributeSetter(v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1605 static void activityLoggingAccessForAllWorldsLongAttributeAttributeSetter(v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1493 { 1606 {
1494 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessForAllWorldsLongAttribute", "TestObjectPython", info.Holder(), info.GetIs olate()); 1607 v8::Isolate* isolate = info.GetIsolate();
1495 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1608 v8::Handle<v8::Object> holder = info.Holder();
1609 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessForAllWorldsLongAttribute", "TestObjectPython", holder, isolate);
1610 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1496 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1611 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1497 impl->setActivityLoggingAccessForAllWorldsLongAttribute(cppValue); 1612 impl->setActivityLoggingAccessForAllWorldsLongAttribute(cppValue);
1498 } 1613 }
1499 1614
1500 static void activityLoggingAccessForAllWorldsLongAttributeAttributeSetterCallbac k(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbac kInfo<void>& info) 1615 static void activityLoggingAccessForAllWorldsLongAttributeAttributeSetterCallbac k(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbac kInfo<void>& info)
1501 { 1616 {
1502 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1617 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1503 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 1618 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
1504 if (contextData && contextData->activityLogger()) { 1619 if (contextData && contextData->activityLogger()) {
1505 v8::Handle<v8::Value> loggerArg[] = { jsValue }; 1620 v8::Handle<v8::Value> loggerArg[] = { jsValue };
1506 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssForAllWorldsLongAttribute", 1, &loggerArg[0], "Setter"); 1621 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssForAllWorldsLongAttribute", 1, &loggerArg[0], "Setter");
1507 } 1622 }
1508 TestObjectPythonV8Internal::activityLoggingAccessForAllWorldsLongAttributeAt tributeSetter(jsValue, info); 1623 TestObjectPythonV8Internal::activityLoggingAccessForAllWorldsLongAttributeAt tributeSetter(jsValue, info);
1509 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1624 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1510 } 1625 }
1511 1626
1512 static void activityLoggingGetterForAllWorldsLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info) 1627 static void activityLoggingGetterForAllWorldsLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info)
1513 { 1628 {
1514 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1629 v8::Handle<v8::Object> holder = info.Holder();
1630 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1515 v8SetReturnValueInt(info, impl->activityLoggingGetterForAllWorldsLongAttribu te()); 1631 v8SetReturnValueInt(info, impl->activityLoggingGetterForAllWorldsLongAttribu te());
1516 } 1632 }
1517 1633
1518 static void activityLoggingGetterForAllWorldsLongAttributeAttributeGetterCallbac k(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1634 static void activityLoggingGetterForAllWorldsLongAttributeAttributeGetterCallbac k(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1519 { 1635 {
1520 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1636 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1521 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 1637 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
1522 if (contextData && contextData->activityLogger()) 1638 if (contextData && contextData->activityLogger())
1523 contextData->activityLogger()->log("TestObjectPython.activityLoggingGett erForAllWorldsLongAttribute", 0, 0, "Getter"); 1639 contextData->activityLogger()->log("TestObjectPython.activityLoggingGett erForAllWorldsLongAttribute", 0, 0, "Getter");
1524 TestObjectPythonV8Internal::activityLoggingGetterForAllWorldsLongAttributeAt tributeGetter(info); 1640 TestObjectPythonV8Internal::activityLoggingGetterForAllWorldsLongAttributeAt tributeGetter(info);
1525 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1641 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1526 } 1642 }
1527 1643
1528 static void activityLoggingGetterForAllWorldsLongAttributeAttributeSetter(v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1644 static void activityLoggingGetterForAllWorldsLongAttributeAttributeSetter(v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1529 { 1645 {
1530 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterForAllWorldsLongAttribute", "TestObjectPython", info.Holder(), info.GetIs olate()); 1646 v8::Isolate* isolate = info.GetIsolate();
1531 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1647 v8::Handle<v8::Object> holder = info.Holder();
1648 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterForAllWorldsLongAttribute", "TestObjectPython", holder, isolate);
1649 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1532 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1650 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1533 impl->setActivityLoggingGetterForAllWorldsLongAttribute(cppValue); 1651 impl->setActivityLoggingGetterForAllWorldsLongAttribute(cppValue);
1534 } 1652 }
1535 1653
1536 static void activityLoggingGetterForAllWorldsLongAttributeAttributeSetterCallbac k(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbac kInfo<void>& info) 1654 static void activityLoggingGetterForAllWorldsLongAttributeAttributeSetterCallbac k(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbac kInfo<void>& info)
1537 { 1655 {
1538 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1656 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1539 TestObjectPythonV8Internal::activityLoggingGetterForAllWorldsLongAttributeAt tributeSetter(jsValue, info); 1657 TestObjectPythonV8Internal::activityLoggingGetterForAllWorldsLongAttributeAt tributeSetter(jsValue, info);
1540 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1658 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1541 } 1659 }
1542 1660
1543 static void activityLoggingSetterForAllWorldsLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info) 1661 static void activityLoggingSetterForAllWorldsLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info)
1544 { 1662 {
1545 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1663 v8::Handle<v8::Object> holder = info.Holder();
1664 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1546 v8SetReturnValueInt(info, impl->activityLoggingSetterForAllWorldsLongAttribu te()); 1665 v8SetReturnValueInt(info, impl->activityLoggingSetterForAllWorldsLongAttribu te());
1547 } 1666 }
1548 1667
1549 static void activityLoggingSetterForAllWorldsLongAttributeAttributeGetterCallbac k(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1668 static void activityLoggingSetterForAllWorldsLongAttributeAttributeGetterCallbac k(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1550 { 1669 {
1551 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1670 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1552 TestObjectPythonV8Internal::activityLoggingSetterForAllWorldsLongAttributeAt tributeGetter(info); 1671 TestObjectPythonV8Internal::activityLoggingSetterForAllWorldsLongAttributeAt tributeGetter(info);
1553 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1672 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1554 } 1673 }
1555 1674
1556 static void activityLoggingSetterForAllWorldsLongAttributeAttributeSetter(v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1675 static void activityLoggingSetterForAllWorldsLongAttributeAttributeSetter(v8::Lo cal<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1557 { 1676 {
1558 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gSetterForAllWorldsLongAttribute", "TestObjectPython", info.Holder(), info.GetIs olate()); 1677 v8::Isolate* isolate = info.GetIsolate();
1559 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1678 v8::Handle<v8::Object> holder = info.Holder();
1679 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gSetterForAllWorldsLongAttribute", "TestObjectPython", holder, isolate);
1680 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1560 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1681 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1561 impl->setActivityLoggingSetterForAllWorldsLongAttribute(cppValue); 1682 impl->setActivityLoggingSetterForAllWorldsLongAttribute(cppValue);
1562 } 1683 }
1563 1684
1564 static void activityLoggingSetterForAllWorldsLongAttributeAttributeSetterCallbac k(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbac kInfo<void>& info) 1685 static void activityLoggingSetterForAllWorldsLongAttributeAttributeSetterCallbac k(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbac kInfo<void>& info)
1565 { 1686 {
1566 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1687 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1567 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 1688 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
1568 if (contextData && contextData->activityLogger()) { 1689 if (contextData && contextData->activityLogger()) {
1569 v8::Handle<v8::Value> loggerArg[] = { jsValue }; 1690 v8::Handle<v8::Value> loggerArg[] = { jsValue };
1570 contextData->activityLogger()->log("TestObjectPython.activityLoggingSett erForAllWorldsLongAttribute", 1, &loggerArg[0], "Setter"); 1691 contextData->activityLogger()->log("TestObjectPython.activityLoggingSett erForAllWorldsLongAttribute", 1, &loggerArg[0], "Setter");
1571 } 1692 }
1572 TestObjectPythonV8Internal::activityLoggingSetterForAllWorldsLongAttributeAt tributeSetter(jsValue, info); 1693 TestObjectPythonV8Internal::activityLoggingSetterForAllWorldsLongAttributeAt tributeSetter(jsValue, info);
1573 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1694 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1574 } 1695 }
1575 1696
1576 static void cachedAttributeAnyAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info) 1697 static void cachedAttributeAnyAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info)
1577 { 1698 {
1578 v8::Handle<v8::String> propertyName = v8AtomicString(info.GetIsolate(), "cac hedAttributeAnyAttribute"); 1699 v8::Isolate* isolate = info.GetIsolate();
1579 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1700 v8::Handle<v8::Object> holder = info.Holder();
1701 v8::Handle<v8::String> propertyName = v8AtomicString(isolate, "cachedAttribu teAnyAttribute");
1702 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1580 if (!impl->isValueDirty()) { 1703 if (!impl->isValueDirty()) {
1581 v8::Handle<v8::Value> jsValue = V8HiddenValue::getHiddenValue(info.GetIs olate(), info.Holder(), propertyName); 1704 v8::Handle<v8::Value> jsValue = V8HiddenValue::getHiddenValue(isolate, h older, propertyName);
1582 if (!jsValue.IsEmpty()) { 1705 if (!jsValue.IsEmpty()) {
1583 v8SetReturnValue(info, jsValue); 1706 v8SetReturnValue(info, jsValue);
1584 return; 1707 return;
1585 } 1708 }
1586 } 1709 }
1587 ScriptValue jsValue = impl->cachedAttributeAnyAttribute(); 1710 ScriptValue jsValue = impl->cachedAttributeAnyAttribute();
1588 V8HiddenValue::setHiddenValue(info.GetIsolate(), info.Holder(), propertyName , jsValue.v8Value()); 1711 V8HiddenValue::setHiddenValue(isolate, holder, propertyName, jsValue.v8Value ());
1589 v8SetReturnValue(info, jsValue.v8Value()); 1712 v8SetReturnValue(info, jsValue.v8Value());
1590 } 1713 }
1591 1714
1592 static void cachedAttributeAnyAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info) 1715 static void cachedAttributeAnyAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info)
1593 { 1716 {
1594 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1717 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1595 TestObjectPythonV8Internal::cachedAttributeAnyAttributeAttributeGetter(info) ; 1718 TestObjectPythonV8Internal::cachedAttributeAnyAttributeAttributeGetter(info) ;
1596 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1719 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1597 } 1720 }
1598 1721
1599 static void cachedAttributeAnyAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info) 1722 static void cachedAttributeAnyAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info)
1600 { 1723 {
1601 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1724 v8::Isolate* isolate = info.GetIsolate();
1725 v8::Handle<v8::Object> holder = info.Holder();
1726 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1602 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( ))); 1727 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( )));
1603 impl->setCachedAttributeAnyAttribute(cppValue); 1728 impl->setCachedAttributeAnyAttribute(cppValue);
1604 V8HiddenValue::deleteHiddenValue(info.GetIsolate(), info.Holder(), v8AtomicS tring(info.GetIsolate(), "cachedAttributeAnyAttribute")); // Invalidate the cach ed value. 1729 V8HiddenValue::deleteHiddenValue(isolate, holder, v8AtomicString(info.GetIso late(), "cachedAttributeAnyAttribute")); // Invalidate the cached value.
1605 } 1730 }
1606 1731
1607 static void cachedAttributeAnyAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1732 static void cachedAttributeAnyAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1608 { 1733 {
1609 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1734 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1610 TestObjectPythonV8Internal::cachedAttributeAnyAttributeAttributeSetter(jsVal ue, info); 1735 TestObjectPythonV8Internal::cachedAttributeAnyAttributeAttributeSetter(jsVal ue, info);
1611 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1736 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1612 } 1737 }
1613 1738
1614 static void callWithExecutionContextAnyAttributeAttributeGetter(const v8::Proper tyCallbackInfo<v8::Value>& info) 1739 static void callWithExecutionContextAnyAttributeAttributeGetter(const v8::Proper tyCallbackInfo<v8::Value>& info)
1615 { 1740 {
1616 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1741 v8::Isolate* isolate = info.GetIsolate();
1617 ExecutionContext* scriptContext = currentExecutionContext(info.GetIsolate()) ; 1742 v8::Handle<v8::Object> holder = info.Holder();
1743 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1744 ExecutionContext* scriptContext = currentExecutionContext(isolate);
1618 v8SetReturnValue(info, impl->callWithExecutionContextAnyAttribute(scriptCont ext).v8Value()); 1745 v8SetReturnValue(info, impl->callWithExecutionContextAnyAttribute(scriptCont ext).v8Value());
1619 } 1746 }
1620 1747
1621 static void callWithExecutionContextAnyAttributeAttributeGetterCallback(v8::Loca l<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1748 static void callWithExecutionContextAnyAttributeAttributeGetterCallback(v8::Loca l<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1622 { 1749 {
1623 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1750 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1624 TestObjectPythonV8Internal::callWithExecutionContextAnyAttributeAttributeGet ter(info); 1751 TestObjectPythonV8Internal::callWithExecutionContextAnyAttributeAttributeGet ter(info);
1625 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1752 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1626 } 1753 }
1627 1754
1628 static void callWithExecutionContextAnyAttributeAttributeSetter(v8::Local<v8::Va lue> jsValue, const v8::PropertyCallbackInfo<void>& info) 1755 static void callWithExecutionContextAnyAttributeAttributeSetter(v8::Local<v8::Va lue> jsValue, const v8::PropertyCallbackInfo<void>& info)
1629 { 1756 {
1630 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1757 v8::Isolate* isolate = info.GetIsolate();
1758 v8::Handle<v8::Object> holder = info.Holder();
1759 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1631 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( ))); 1760 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( )));
1632 ExecutionContext* scriptContext = currentExecutionContext(info.GetIsolate()) ; 1761 ExecutionContext* scriptContext = currentExecutionContext(isolate);
1633 impl->setCallWithExecutionContextAnyAttribute(scriptContext, cppValue); 1762 impl->setCallWithExecutionContextAnyAttribute(scriptContext, cppValue);
1634 } 1763 }
1635 1764
1636 static void callWithExecutionContextAnyAttributeAttributeSetterCallback(v8::Loca l<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void >& info) 1765 static void callWithExecutionContextAnyAttributeAttributeSetterCallback(v8::Loca l<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void >& info)
1637 { 1766 {
1638 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1767 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1639 TestObjectPythonV8Internal::callWithExecutionContextAnyAttributeAttributeSet ter(jsValue, info); 1768 TestObjectPythonV8Internal::callWithExecutionContextAnyAttributeAttributeSet ter(jsValue, info);
1640 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1769 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1641 } 1770 }
1642 1771
1643 static void checkSecurityForNodeReadonlyDocumentAttributeAttributeGetter(const v 8::PropertyCallbackInfo<v8::Value>& info) 1772 static void checkSecurityForNodeReadonlyDocumentAttributeAttributeGetter(const v 8::PropertyCallbackInfo<v8::Value>& info)
1644 { 1773 {
1645 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1774 v8::Isolate* isolate = info.GetIsolate();
1646 ExceptionState exceptionState(ExceptionState::GetterContext, "checkSecurityF orNodeReadonlyDocumentAttribute", "TestObjectPython", info.Holder(), info.GetIso late()); 1775 v8::Handle<v8::Object> holder = info.Holder();
1647 if (!BindingSecurity::shouldAllowAccessToNode(info.GetIsolate(), impl->check SecurityForNodeReadonlyDocumentAttribute(), exceptionState)) { 1776 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1777 ExceptionState exceptionState(ExceptionState::GetterContext, "checkSecurityF orNodeReadonlyDocumentAttribute", "TestObjectPython", holder, isolate);
1778 if (!BindingSecurity::shouldAllowAccessToNode(isolate, impl->checkSecurityFo rNodeReadonlyDocumentAttribute(), exceptionState)) {
1648 v8SetReturnValueNull(info); 1779 v8SetReturnValueNull(info);
1649 exceptionState.throwIfNeeded(); 1780 exceptionState.throwIfNeeded();
1650 return; 1781 return;
1651 } 1782 }
1652 v8SetReturnValueFast(info, WTF::getPtr(impl->checkSecurityForNodeReadonlyDoc umentAttribute()), impl); 1783 v8SetReturnValueFast(info, WTF::getPtr(impl->checkSecurityForNodeReadonlyDoc umentAttribute()), impl);
1653 } 1784 }
1654 1785
1655 static void checkSecurityForNodeReadonlyDocumentAttributeAttributeGetterCallback (v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1786 static void checkSecurityForNodeReadonlyDocumentAttributeAttributeGetterCallback (v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1656 { 1787 {
1657 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1788 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1658 TestObjectPythonV8Internal::checkSecurityForNodeReadonlyDocumentAttributeAtt ributeGetter(info); 1789 TestObjectPythonV8Internal::checkSecurityForNodeReadonlyDocumentAttributeAtt ributeGetter(info);
1659 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1790 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1660 } 1791 }
1661 1792
1662 #if ENABLE(CONDITION) 1793 #if ENABLE(CONDITION)
1663 static void conditionalLongAttributeAttributeGetter(const v8::PropertyCallbackIn fo<v8::Value>& info) 1794 static void conditionalLongAttributeAttributeGetter(const v8::PropertyCallbackIn fo<v8::Value>& info)
1664 { 1795 {
1665 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1796 v8::Handle<v8::Object> holder = info.Holder();
1797 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1666 v8SetReturnValueInt(info, impl->conditionalLongAttribute()); 1798 v8SetReturnValueInt(info, impl->conditionalLongAttribute());
1667 } 1799 }
1668 #endif // ENABLE(CONDITION) 1800 #endif // ENABLE(CONDITION)
1669 1801
1670 #if ENABLE(CONDITION) 1802 #if ENABLE(CONDITION)
1671 static void conditionalLongAttributeAttributeGetterCallback(v8::Local<v8::String >, const v8::PropertyCallbackInfo<v8::Value>& info) 1803 static void conditionalLongAttributeAttributeGetterCallback(v8::Local<v8::String >, const v8::PropertyCallbackInfo<v8::Value>& info)
1672 { 1804 {
1673 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1805 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1674 TestObjectPythonV8Internal::conditionalLongAttributeAttributeGetter(info); 1806 TestObjectPythonV8Internal::conditionalLongAttributeAttributeGetter(info);
1675 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1807 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1676 } 1808 }
1677 #endif // ENABLE(CONDITION) 1809 #endif // ENABLE(CONDITION)
1678 1810
1679 #if ENABLE(CONDITION) 1811 #if ENABLE(CONDITION)
1680 static void conditionalLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue , const v8::PropertyCallbackInfo<void>& info) 1812 static void conditionalLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue , const v8::PropertyCallbackInfo<void>& info)
1681 { 1813 {
1682 ExceptionState exceptionState(ExceptionState::SetterContext, "conditionalLon gAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 1814 v8::Isolate* isolate = info.GetIsolate();
1683 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1815 v8::Handle<v8::Object> holder = info.Holder();
1816 ExceptionState exceptionState(ExceptionState::SetterContext, "conditionalLon gAttribute", "TestObjectPython", holder, isolate);
1817 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1684 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1818 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1685 impl->setConditionalLongAttribute(cppValue); 1819 impl->setConditionalLongAttribute(cppValue);
1686 } 1820 }
1687 #endif // ENABLE(CONDITION) 1821 #endif // ENABLE(CONDITION)
1688 1822
1689 #if ENABLE(CONDITION) 1823 #if ENABLE(CONDITION)
1690 static void conditionalLongAttributeAttributeSetterCallback(v8::Local<v8::String >, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1824 static void conditionalLongAttributeAttributeSetterCallback(v8::Local<v8::String >, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1691 { 1825 {
1692 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1826 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1693 TestObjectPythonV8Internal::conditionalLongAttributeAttributeSetter(jsValue, info); 1827 TestObjectPythonV8Internal::conditionalLongAttributeAttributeSetter(jsValue, info);
1694 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1828 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1695 } 1829 }
1696 #endif // ENABLE(CONDITION) 1830 #endif // ENABLE(CONDITION)
1697 1831
1698 #if ENABLE(CONDITION_1) && ENABLE(CONDITION_2) 1832 #if ENABLE(CONDITION_1) && ENABLE(CONDITION_2)
1699 static void conditionalAndLongAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info) 1833 static void conditionalAndLongAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info)
1700 { 1834 {
1701 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1835 v8::Handle<v8::Object> holder = info.Holder();
1836 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1702 v8SetReturnValueInt(info, impl->conditionalAndLongAttribute()); 1837 v8SetReturnValueInt(info, impl->conditionalAndLongAttribute());
1703 } 1838 }
1704 #endif // ENABLE(CONDITION_1) && ENABLE(CONDITION_2) 1839 #endif // ENABLE(CONDITION_1) && ENABLE(CONDITION_2)
1705 1840
1706 #if ENABLE(CONDITION_1) && ENABLE(CONDITION_2) 1841 #if ENABLE(CONDITION_1) && ENABLE(CONDITION_2)
1707 static void conditionalAndLongAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info) 1842 static void conditionalAndLongAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info)
1708 { 1843 {
1709 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1844 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1710 TestObjectPythonV8Internal::conditionalAndLongAttributeAttributeGetter(info) ; 1845 TestObjectPythonV8Internal::conditionalAndLongAttributeAttributeGetter(info) ;
1711 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1846 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1712 } 1847 }
1713 #endif // ENABLE(CONDITION_1) && ENABLE(CONDITION_2) 1848 #endif // ENABLE(CONDITION_1) && ENABLE(CONDITION_2)
1714 1849
1715 #if ENABLE(CONDITION_1) && ENABLE(CONDITION_2) 1850 #if ENABLE(CONDITION_1) && ENABLE(CONDITION_2)
1716 static void conditionalAndLongAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info) 1851 static void conditionalAndLongAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info)
1717 { 1852 {
1718 ExceptionState exceptionState(ExceptionState::SetterContext, "conditionalAnd LongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 1853 v8::Isolate* isolate = info.GetIsolate();
1719 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1854 v8::Handle<v8::Object> holder = info.Holder();
1855 ExceptionState exceptionState(ExceptionState::SetterContext, "conditionalAnd LongAttribute", "TestObjectPython", holder, isolate);
1856 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1720 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1857 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1721 impl->setConditionalAndLongAttribute(cppValue); 1858 impl->setConditionalAndLongAttribute(cppValue);
1722 } 1859 }
1723 #endif // ENABLE(CONDITION_1) && ENABLE(CONDITION_2) 1860 #endif // ENABLE(CONDITION_1) && ENABLE(CONDITION_2)
1724 1861
1725 #if ENABLE(CONDITION_1) && ENABLE(CONDITION_2) 1862 #if ENABLE(CONDITION_1) && ENABLE(CONDITION_2)
1726 static void conditionalAndLongAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1863 static void conditionalAndLongAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1727 { 1864 {
1728 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1865 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1729 TestObjectPythonV8Internal::conditionalAndLongAttributeAttributeSetter(jsVal ue, info); 1866 TestObjectPythonV8Internal::conditionalAndLongAttributeAttributeSetter(jsVal ue, info);
1730 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1867 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1731 } 1868 }
1732 #endif // ENABLE(CONDITION_1) && ENABLE(CONDITION_2) 1869 #endif // ENABLE(CONDITION_1) && ENABLE(CONDITION_2)
1733 1870
1734 #if ENABLE(CONDITION_1) || ENABLE(CONDITION_2) 1871 #if ENABLE(CONDITION_1) || ENABLE(CONDITION_2)
1735 static void conditionalOrLongAttributeAttributeGetter(const v8::PropertyCallback Info<v8::Value>& info) 1872 static void conditionalOrLongAttributeAttributeGetter(const v8::PropertyCallback Info<v8::Value>& info)
1736 { 1873 {
1737 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1874 v8::Handle<v8::Object> holder = info.Holder();
1875 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1738 v8SetReturnValueInt(info, impl->conditionalOrLongAttribute()); 1876 v8SetReturnValueInt(info, impl->conditionalOrLongAttribute());
1739 } 1877 }
1740 #endif // ENABLE(CONDITION_1) || ENABLE(CONDITION_2) 1878 #endif // ENABLE(CONDITION_1) || ENABLE(CONDITION_2)
1741 1879
1742 #if ENABLE(CONDITION_1) || ENABLE(CONDITION_2) 1880 #if ENABLE(CONDITION_1) || ENABLE(CONDITION_2)
1743 static void conditionalOrLongAttributeAttributeGetterCallback(v8::Local<v8::Stri ng>, const v8::PropertyCallbackInfo<v8::Value>& info) 1881 static void conditionalOrLongAttributeAttributeGetterCallback(v8::Local<v8::Stri ng>, const v8::PropertyCallbackInfo<v8::Value>& info)
1744 { 1882 {
1745 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1883 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1746 TestObjectPythonV8Internal::conditionalOrLongAttributeAttributeGetter(info); 1884 TestObjectPythonV8Internal::conditionalOrLongAttributeAttributeGetter(info);
1747 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1885 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1748 } 1886 }
1749 #endif // ENABLE(CONDITION_1) || ENABLE(CONDITION_2) 1887 #endif // ENABLE(CONDITION_1) || ENABLE(CONDITION_2)
1750 1888
1751 #if ENABLE(CONDITION_1) || ENABLE(CONDITION_2) 1889 #if ENABLE(CONDITION_1) || ENABLE(CONDITION_2)
1752 static void conditionalOrLongAttributeAttributeSetter(v8::Local<v8::Value> jsVal ue, const v8::PropertyCallbackInfo<void>& info) 1890 static void conditionalOrLongAttributeAttributeSetter(v8::Local<v8::Value> jsVal ue, const v8::PropertyCallbackInfo<void>& info)
1753 { 1891 {
1754 ExceptionState exceptionState(ExceptionState::SetterContext, "conditionalOrL ongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 1892 v8::Isolate* isolate = info.GetIsolate();
1755 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1893 v8::Handle<v8::Object> holder = info.Holder();
1894 ExceptionState exceptionState(ExceptionState::SetterContext, "conditionalOrL ongAttribute", "TestObjectPython", holder, isolate);
1895 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1756 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1896 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1757 impl->setConditionalOrLongAttribute(cppValue); 1897 impl->setConditionalOrLongAttribute(cppValue);
1758 } 1898 }
1759 #endif // ENABLE(CONDITION_1) || ENABLE(CONDITION_2) 1899 #endif // ENABLE(CONDITION_1) || ENABLE(CONDITION_2)
1760 1900
1761 #if ENABLE(CONDITION_1) || ENABLE(CONDITION_2) 1901 #if ENABLE(CONDITION_1) || ENABLE(CONDITION_2)
1762 static void conditionalOrLongAttributeAttributeSetterCallback(v8::Local<v8::Stri ng>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1902 static void conditionalOrLongAttributeAttributeSetterCallback(v8::Local<v8::Stri ng>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1763 { 1903 {
1764 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1904 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1765 TestObjectPythonV8Internal::conditionalOrLongAttributeAttributeSetter(jsValu e, info); 1905 TestObjectPythonV8Internal::conditionalOrLongAttributeAttributeSetter(jsValu e, info);
(...skipping 17 matching lines...) Expand all
1783 1923
1784 static void customGetterLongAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info) 1924 static void customGetterLongAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info)
1785 { 1925 {
1786 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1926 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1787 V8TestObjectPython::customGetterLongAttributeAttributeGetterCustom(info); 1927 V8TestObjectPython::customGetterLongAttributeAttributeGetterCustom(info);
1788 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1928 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1789 } 1929 }
1790 1930
1791 static void customGetterLongAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info) 1931 static void customGetterLongAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info)
1792 { 1932 {
1793 ExceptionState exceptionState(ExceptionState::SetterContext, "customGetterLo ngAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 1933 v8::Isolate* isolate = info.GetIsolate();
1794 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1934 v8::Handle<v8::Object> holder = info.Holder();
1935 ExceptionState exceptionState(ExceptionState::SetterContext, "customGetterLo ngAttribute", "TestObjectPython", holder, isolate);
1936 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1795 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 1937 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1796 impl->setCustomGetterLongAttribute(cppValue); 1938 impl->setCustomGetterLongAttribute(cppValue);
1797 } 1939 }
1798 1940
1799 static void customGetterLongAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1941 static void customGetterLongAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1800 { 1942 {
1801 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1943 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1802 TestObjectPythonV8Internal::customGetterLongAttributeAttributeSetter(jsValue , info); 1944 TestObjectPythonV8Internal::customGetterLongAttributeAttributeSetter(jsValue , info);
1803 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1945 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1804 } 1946 }
1805 1947
1806 static void customGetterReadonlyObjectAttributeAttributeGetterCallback(v8::Local <v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 1948 static void customGetterReadonlyObjectAttributeAttributeGetterCallback(v8::Local <v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1807 { 1949 {
1808 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1950 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1809 V8TestObjectPython::customGetterReadonlyObjectAttributeAttributeGetterCustom (info); 1951 V8TestObjectPython::customGetterReadonlyObjectAttributeAttributeGetterCustom (info);
1810 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1952 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1811 } 1953 }
1812 1954
1813 static void customSetterLongAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info) 1955 static void customSetterLongAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info)
1814 { 1956 {
1815 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1957 v8::Handle<v8::Object> holder = info.Holder();
1958 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1816 v8SetReturnValueInt(info, impl->customSetterLongAttribute()); 1959 v8SetReturnValueInt(info, impl->customSetterLongAttribute());
1817 } 1960 }
1818 1961
1819 static void customSetterLongAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info) 1962 static void customSetterLongAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info)
1820 { 1963 {
1821 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 1964 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1822 TestObjectPythonV8Internal::customSetterLongAttributeAttributeGetter(info); 1965 TestObjectPythonV8Internal::customSetterLongAttributeAttributeGetter(info);
1823 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1966 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1824 } 1967 }
1825 1968
(...skipping 17 matching lines...) Expand all
1843 static void customLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 1986 static void customLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1844 { 1987 {
1845 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 1988 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1846 V8TestObjectPython::customLongAttributeAttributeSetterCustom(jsValue, info); 1989 V8TestObjectPython::customLongAttributeAttributeSetterCustom(jsValue, info);
1847 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 1990 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1848 } 1991 }
1849 #endif // ENABLE(CONDITION) 1992 #endif // ENABLE(CONDITION)
1850 1993
1851 static void customElementsCallbacksReadonlyLongAttributeAttributeGetter(const v8 ::PropertyCallbackInfo<v8::Value>& info) 1994 static void customElementsCallbacksReadonlyLongAttributeAttributeGetter(const v8 ::PropertyCallbackInfo<v8::Value>& info)
1852 { 1995 {
1853 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 1996 v8::Handle<v8::Object> holder = info.Holder();
1997 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1854 v8SetReturnValueInt(info, impl->customElementsCallbacksReadonlyLongAttribute ()); 1998 v8SetReturnValueInt(info, impl->customElementsCallbacksReadonlyLongAttribute ());
1855 } 1999 }
1856 2000
1857 static void customElementsCallbacksReadonlyLongAttributeAttributeGetterCallback( v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2001 static void customElementsCallbacksReadonlyLongAttributeAttributeGetterCallback( v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1858 { 2002 {
1859 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2003 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1860 TestObjectPythonV8Internal::customElementsCallbacksReadonlyLongAttributeAttr ibuteGetter(info); 2004 TestObjectPythonV8Internal::customElementsCallbacksReadonlyLongAttributeAttr ibuteGetter(info);
1861 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2005 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1862 } 2006 }
1863 2007
1864 static void deprecatedLongAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info) 2008 static void deprecatedLongAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info)
1865 { 2009 {
1866 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2010 v8::Handle<v8::Object> holder = info.Holder();
2011 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1867 v8SetReturnValueInt(info, impl->deprecatedLongAttribute()); 2012 v8SetReturnValueInt(info, impl->deprecatedLongAttribute());
1868 } 2013 }
1869 2014
1870 static void deprecatedLongAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info) 2015 static void deprecatedLongAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info)
1871 { 2016 {
1872 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2017 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1873 UseCounter::countDeprecation(callingExecutionContext(info.GetIsolate()), Use Counter::LongAttribute); 2018 UseCounter::countDeprecation(callingExecutionContext(info.GetIsolate()), Use Counter::LongAttribute);
1874 TestObjectPythonV8Internal::deprecatedLongAttributeAttributeGetter(info); 2019 TestObjectPythonV8Internal::deprecatedLongAttributeAttributeGetter(info);
1875 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2020 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1876 } 2021 }
1877 2022
1878 static void deprecatedLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2023 static void deprecatedLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1879 { 2024 {
1880 ExceptionState exceptionState(ExceptionState::SetterContext, "deprecatedLong Attribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2025 v8::Isolate* isolate = info.GetIsolate();
1881 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2026 v8::Handle<v8::Object> holder = info.Holder();
2027 ExceptionState exceptionState(ExceptionState::SetterContext, "deprecatedLong Attribute", "TestObjectPython", holder, isolate);
2028 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1882 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2029 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1883 impl->setDeprecatedLongAttribute(cppValue); 2030 impl->setDeprecatedLongAttribute(cppValue);
1884 } 2031 }
1885 2032
1886 static void deprecatedLongAttributeAttributeSetterCallback(v8::Local<v8::String> , v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2033 static void deprecatedLongAttributeAttributeSetterCallback(v8::Local<v8::String> , v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1887 { 2034 {
1888 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2035 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1889 UseCounter::countDeprecation(callingExecutionContext(info.GetIsolate()), Use Counter::LongAttribute); 2036 UseCounter::countDeprecation(callingExecutionContext(info.GetIsolate()), Use Counter::LongAttribute);
1890 TestObjectPythonV8Internal::deprecatedLongAttributeAttributeSetter(jsValue, info); 2037 TestObjectPythonV8Internal::deprecatedLongAttributeAttributeSetter(jsValue, info);
1891 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2038 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1892 } 2039 }
1893 2040
1894 static void enforceRangeLongAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info) 2041 static void enforceRangeLongAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info)
1895 { 2042 {
1896 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2043 v8::Handle<v8::Object> holder = info.Holder();
2044 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1897 v8SetReturnValueInt(info, impl->enforceRangeLongAttribute()); 2045 v8SetReturnValueInt(info, impl->enforceRangeLongAttribute());
1898 } 2046 }
1899 2047
1900 static void enforceRangeLongAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info) 2048 static void enforceRangeLongAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info)
1901 { 2049 {
1902 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2050 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1903 TestObjectPythonV8Internal::enforceRangeLongAttributeAttributeGetter(info); 2051 TestObjectPythonV8Internal::enforceRangeLongAttributeAttributeGetter(info);
1904 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2052 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1905 } 2053 }
1906 2054
1907 static void enforceRangeLongAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info) 2055 static void enforceRangeLongAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info)
1908 { 2056 {
1909 ExceptionState exceptionState(ExceptionState::SetterContext, "enforceRangeLo ngAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2057 v8::Isolate* isolate = info.GetIsolate();
1910 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2058 v8::Handle<v8::Object> holder = info.Holder();
2059 ExceptionState exceptionState(ExceptionState::SetterContext, "enforceRangeLo ngAttribute", "TestObjectPython", holder, isolate);
2060 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1911 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, EnforceRange, exce ptionState), exceptionState); 2061 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, EnforceRange, exce ptionState), exceptionState);
1912 impl->setEnforceRangeLongAttribute(cppValue); 2062 impl->setEnforceRangeLongAttribute(cppValue);
1913 } 2063 }
1914 2064
1915 static void enforceRangeLongAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2065 static void enforceRangeLongAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1916 { 2066 {
1917 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2067 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1918 TestObjectPythonV8Internal::enforceRangeLongAttributeAttributeSetter(jsValue , info); 2068 TestObjectPythonV8Internal::enforceRangeLongAttributeAttributeSetter(jsValue , info);
1919 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2069 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1920 } 2070 }
1921 2071
1922 static void exposeJSAccessorsLongAttributeAttributeGetter(const v8::FunctionCall backInfo<v8::Value>& info) 2072 static void exposeJSAccessorsLongAttributeAttributeGetter(const v8::FunctionCall backInfo<v8::Value>& info)
1923 { 2073 {
1924 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2074 v8::Handle<v8::Object> holder = info.Holder();
2075 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1925 v8SetReturnValueInt(info, impl->exposeJSAccessorsLongAttribute()); 2076 v8SetReturnValueInt(info, impl->exposeJSAccessorsLongAttribute());
1926 } 2077 }
1927 2078
1928 static void exposeJSAccessorsLongAttributeAttributeGetterCallback(const v8::Func tionCallbackInfo<v8::Value>& info) 2079 static void exposeJSAccessorsLongAttributeAttributeGetterCallback(const v8::Func tionCallbackInfo<v8::Value>& info)
1929 { 2080 {
1930 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2081 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1931 TestObjectPythonV8Internal::exposeJSAccessorsLongAttributeAttributeGetter(in fo); 2082 TestObjectPythonV8Internal::exposeJSAccessorsLongAttributeAttributeGetter(in fo);
1932 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2083 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1933 } 2084 }
1934 2085
1935 static void exposeJSAccessorsLongAttributeAttributeSetter(v8::Local<v8::Value> j sValue, const v8::FunctionCallbackInfo<v8::Value>& info) 2086 static void exposeJSAccessorsLongAttributeAttributeSetter(v8::Local<v8::Value> j sValue, const v8::FunctionCallbackInfo<v8::Value>& info)
1936 { 2087 {
1937 ExceptionState exceptionState(ExceptionState::SetterContext, "exposeJSAccess orsLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2088 v8::Isolate* isolate = info.GetIsolate();
1938 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2089 v8::Handle<v8::Object> holder = info.Holder();
2090 ExceptionState exceptionState(ExceptionState::SetterContext, "exposeJSAccess orsLongAttribute", "TestObjectPython", holder, isolate);
2091 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1939 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2092 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1940 impl->setExposeJSAccessorsLongAttribute(cppValue); 2093 impl->setExposeJSAccessorsLongAttribute(cppValue);
1941 } 2094 }
1942 2095
1943 static void exposeJSAccessorsLongAttributeAttributeSetterCallback(const v8::Func tionCallbackInfo<v8::Value>& info) 2096 static void exposeJSAccessorsLongAttributeAttributeSetterCallback(const v8::Func tionCallbackInfo<v8::Value>& info)
1944 { 2097 {
1945 v8::Local<v8::Value> jsValue = info[0]; 2098 v8::Local<v8::Value> jsValue = info[0];
1946 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2099 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1947 TestObjectPythonV8Internal::exposeJSAccessorsLongAttributeAttributeSetter(js Value, info); 2100 TestObjectPythonV8Internal::exposeJSAccessorsLongAttributeAttributeSetter(js Value, info);
1948 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2101 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1949 } 2102 }
1950 2103
1951 static void implementedAsLongAttributeAttributeGetter(const v8::PropertyCallback Info<v8::Value>& info) 2104 static void implementedAsLongAttributeAttributeGetter(const v8::PropertyCallback Info<v8::Value>& info)
1952 { 2105 {
1953 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2106 v8::Handle<v8::Object> holder = info.Holder();
2107 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1954 v8SetReturnValueInt(info, impl->implementedAsName()); 2108 v8SetReturnValueInt(info, impl->implementedAsName());
1955 } 2109 }
1956 2110
1957 static void implementedAsLongAttributeAttributeGetterCallback(v8::Local<v8::Stri ng>, const v8::PropertyCallbackInfo<v8::Value>& info) 2111 static void implementedAsLongAttributeAttributeGetterCallback(v8::Local<v8::Stri ng>, const v8::PropertyCallbackInfo<v8::Value>& info)
1958 { 2112 {
1959 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2113 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1960 TestObjectPythonV8Internal::implementedAsLongAttributeAttributeGetter(info); 2114 TestObjectPythonV8Internal::implementedAsLongAttributeAttributeGetter(info);
1961 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2115 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1962 } 2116 }
1963 2117
1964 static void implementedAsLongAttributeAttributeSetter(v8::Local<v8::Value> jsVal ue, const v8::PropertyCallbackInfo<void>& info) 2118 static void implementedAsLongAttributeAttributeSetter(v8::Local<v8::Value> jsVal ue, const v8::PropertyCallbackInfo<void>& info)
1965 { 2119 {
1966 ExceptionState exceptionState(ExceptionState::SetterContext, "implementedAsL ongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2120 v8::Isolate* isolate = info.GetIsolate();
1967 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2121 v8::Handle<v8::Object> holder = info.Holder();
2122 ExceptionState exceptionState(ExceptionState::SetterContext, "implementedAsL ongAttribute", "TestObjectPython", holder, isolate);
2123 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
1968 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2124 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
1969 impl->setImplementedAsName(cppValue); 2125 impl->setImplementedAsName(cppValue);
1970 } 2126 }
1971 2127
1972 static void implementedAsLongAttributeAttributeSetterCallback(v8::Local<v8::Stri ng>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2128 static void implementedAsLongAttributeAttributeSetterCallback(v8::Local<v8::Stri ng>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
1973 { 2129 {
1974 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2130 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
1975 TestObjectPythonV8Internal::implementedAsLongAttributeAttributeSetter(jsValu e, info); 2131 TestObjectPythonV8Internal::implementedAsLongAttributeAttributeSetter(jsValu e, info);
1976 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2132 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1977 } 2133 }
(...skipping 14 matching lines...) Expand all
1992 2148
1993 static void customGetterImplementedAsLongAttributeAttributeGetterCallback(v8::Lo cal<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2149 static void customGetterImplementedAsLongAttributeAttributeGetterCallback(v8::Lo cal<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
1994 { 2150 {
1995 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2151 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
1996 V8TestObjectPython::customGetterImplementedAsLongAttributeAttributeGetterCus tom(info); 2152 V8TestObjectPython::customGetterImplementedAsLongAttributeAttributeGetterCus tom(info);
1997 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2153 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
1998 } 2154 }
1999 2155
2000 static void customGetterImplementedAsLongAttributeAttributeSetter(v8::Local<v8:: Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2156 static void customGetterImplementedAsLongAttributeAttributeSetter(v8::Local<v8:: Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2001 { 2157 {
2002 ExceptionState exceptionState(ExceptionState::SetterContext, "customGetterIm plementedAsLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()) ; 2158 v8::Isolate* isolate = info.GetIsolate();
2003 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2159 v8::Handle<v8::Object> holder = info.Holder();
2160 ExceptionState exceptionState(ExceptionState::SetterContext, "customGetterIm plementedAsLongAttribute", "TestObjectPython", holder, isolate);
2161 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2004 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2162 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2005 impl->setImplementedAsNameWithCustomGetter(cppValue); 2163 impl->setImplementedAsNameWithCustomGetter(cppValue);
2006 } 2164 }
2007 2165
2008 static void customGetterImplementedAsLongAttributeAttributeSetterCallback(v8::Lo cal<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<vo id>& info) 2166 static void customGetterImplementedAsLongAttributeAttributeSetterCallback(v8::Lo cal<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<vo id>& info)
2009 { 2167 {
2010 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2168 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2011 TestObjectPythonV8Internal::customGetterImplementedAsLongAttributeAttributeS etter(jsValue, info); 2169 TestObjectPythonV8Internal::customGetterImplementedAsLongAttributeAttributeS etter(jsValue, info);
2012 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2170 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2013 } 2171 }
2014 2172
2015 static void customSetterImplementedAsLongAttributeAttributeGetter(const v8::Prop ertyCallbackInfo<v8::Value>& info) 2173 static void customSetterImplementedAsLongAttributeAttributeGetter(const v8::Prop ertyCallbackInfo<v8::Value>& info)
2016 { 2174 {
2017 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2175 v8::Handle<v8::Object> holder = info.Holder();
2176 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2018 v8SetReturnValueInt(info, impl->implementedAsNameWithCustomGetter()); 2177 v8SetReturnValueInt(info, impl->implementedAsNameWithCustomGetter());
2019 } 2178 }
2020 2179
2021 static void customSetterImplementedAsLongAttributeAttributeGetterCallback(v8::Lo cal<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2180 static void customSetterImplementedAsLongAttributeAttributeGetterCallback(v8::Lo cal<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2022 { 2181 {
2023 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2182 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2024 TestObjectPythonV8Internal::customSetterImplementedAsLongAttributeAttributeG etter(info); 2183 TestObjectPythonV8Internal::customSetterImplementedAsLongAttributeAttributeG etter(info);
2025 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2184 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2026 } 2185 }
2027 2186
2028 static void customSetterImplementedAsLongAttributeAttributeSetterCallback(v8::Lo cal<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<vo id>& info) 2187 static void customSetterImplementedAsLongAttributeAttributeSetterCallback(v8::Lo cal<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<vo id>& info)
2029 { 2188 {
2030 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2189 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2031 V8TestObjectPython::customSetterImplementedAsLongAttributeAttributeSetterCus tom(jsValue, info); 2190 V8TestObjectPython::customSetterImplementedAsLongAttributeAttributeSetterCus tom(jsValue, info);
2032 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2191 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2033 } 2192 }
2034 2193
2035 static void measureAsLongAttributeAttributeGetter(const v8::PropertyCallbackInfo <v8::Value>& info) 2194 static void measureAsLongAttributeAttributeGetter(const v8::PropertyCallbackInfo <v8::Value>& info)
2036 { 2195 {
2037 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2196 v8::Handle<v8::Object> holder = info.Holder();
2197 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2038 v8SetReturnValueInt(info, impl->measureAsLongAttribute()); 2198 v8SetReturnValueInt(info, impl->measureAsLongAttribute());
2039 } 2199 }
2040 2200
2041 static void measureAsLongAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2201 static void measureAsLongAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2042 { 2202 {
2043 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2203 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2044 UseCounter::count(callingExecutionContext(info.GetIsolate()), UseCounter::Te stFeature); 2204 UseCounter::count(callingExecutionContext(info.GetIsolate()), UseCounter::Te stFeature);
2045 TestObjectPythonV8Internal::measureAsLongAttributeAttributeGetter(info); 2205 TestObjectPythonV8Internal::measureAsLongAttributeAttributeGetter(info);
2046 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2206 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2047 } 2207 }
2048 2208
2049 static void measureAsLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2209 static void measureAsLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2050 { 2210 {
2051 ExceptionState exceptionState(ExceptionState::SetterContext, "measureAsLongA ttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2211 v8::Isolate* isolate = info.GetIsolate();
2052 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2212 v8::Handle<v8::Object> holder = info.Holder();
2213 ExceptionState exceptionState(ExceptionState::SetterContext, "measureAsLongA ttribute", "TestObjectPython", holder, isolate);
2214 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2053 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2215 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2054 impl->setMeasureAsLongAttribute(cppValue); 2216 impl->setMeasureAsLongAttribute(cppValue);
2055 } 2217 }
2056 2218
2057 static void measureAsLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2219 static void measureAsLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2058 { 2220 {
2059 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2221 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2060 UseCounter::count(callingExecutionContext(info.GetIsolate()), UseCounter::Te stFeature); 2222 UseCounter::count(callingExecutionContext(info.GetIsolate()), UseCounter::Te stFeature);
2061 TestObjectPythonV8Internal::measureAsLongAttributeAttributeSetter(jsValue, i nfo); 2223 TestObjectPythonV8Internal::measureAsLongAttributeAttributeSetter(jsValue, i nfo);
2062 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2224 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2063 } 2225 }
2064 2226
2065 static void notEnumerableLongAttributeAttributeGetter(const v8::PropertyCallback Info<v8::Value>& info) 2227 static void notEnumerableLongAttributeAttributeGetter(const v8::PropertyCallback Info<v8::Value>& info)
2066 { 2228 {
2067 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2229 v8::Handle<v8::Object> holder = info.Holder();
2230 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2068 v8SetReturnValueInt(info, impl->notEnumerableLongAttribute()); 2231 v8SetReturnValueInt(info, impl->notEnumerableLongAttribute());
2069 } 2232 }
2070 2233
2071 static void notEnumerableLongAttributeAttributeGetterCallback(v8::Local<v8::Stri ng>, const v8::PropertyCallbackInfo<v8::Value>& info) 2234 static void notEnumerableLongAttributeAttributeGetterCallback(v8::Local<v8::Stri ng>, const v8::PropertyCallbackInfo<v8::Value>& info)
2072 { 2235 {
2073 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2236 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2074 TestObjectPythonV8Internal::notEnumerableLongAttributeAttributeGetter(info); 2237 TestObjectPythonV8Internal::notEnumerableLongAttributeAttributeGetter(info);
2075 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2238 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2076 } 2239 }
2077 2240
2078 static void notEnumerableLongAttributeAttributeSetter(v8::Local<v8::Value> jsVal ue, const v8::PropertyCallbackInfo<void>& info) 2241 static void notEnumerableLongAttributeAttributeSetter(v8::Local<v8::Value> jsVal ue, const v8::PropertyCallbackInfo<void>& info)
2079 { 2242 {
2080 ExceptionState exceptionState(ExceptionState::SetterContext, "notEnumerableL ongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2243 v8::Isolate* isolate = info.GetIsolate();
2081 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2244 v8::Handle<v8::Object> holder = info.Holder();
2245 ExceptionState exceptionState(ExceptionState::SetterContext, "notEnumerableL ongAttribute", "TestObjectPython", holder, isolate);
2246 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2082 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2247 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2083 impl->setNotEnumerableLongAttribute(cppValue); 2248 impl->setNotEnumerableLongAttribute(cppValue);
2084 } 2249 }
2085 2250
2086 static void notEnumerableLongAttributeAttributeSetterCallback(v8::Local<v8::Stri ng>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2251 static void notEnumerableLongAttributeAttributeSetterCallback(v8::Local<v8::Stri ng>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2087 { 2252 {
2088 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2253 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2089 TestObjectPythonV8Internal::notEnumerableLongAttributeAttributeSetter(jsValu e, info); 2254 TestObjectPythonV8Internal::notEnumerableLongAttributeAttributeSetter(jsValu e, info);
2090 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2255 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2091 } 2256 }
2092 2257
2093 static void perContextEnabledLongAttributeAttributeGetter(const v8::PropertyCall backInfo<v8::Value>& info) 2258 static void perContextEnabledLongAttributeAttributeGetter(const v8::PropertyCall backInfo<v8::Value>& info)
2094 { 2259 {
2095 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2260 v8::Handle<v8::Object> holder = info.Holder();
2261 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2096 v8SetReturnValueInt(info, impl->perContextEnabledLongAttribute()); 2262 v8SetReturnValueInt(info, impl->perContextEnabledLongAttribute());
2097 } 2263 }
2098 2264
2099 static void perContextEnabledLongAttributeAttributeGetterCallback(v8::Local<v8:: String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2265 static void perContextEnabledLongAttributeAttributeGetterCallback(v8::Local<v8:: String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2100 { 2266 {
2101 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2267 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2102 TestObjectPythonV8Internal::perContextEnabledLongAttributeAttributeGetter(in fo); 2268 TestObjectPythonV8Internal::perContextEnabledLongAttributeAttributeGetter(in fo);
2103 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2269 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2104 } 2270 }
2105 2271
2106 static void perContextEnabledLongAttributeAttributeSetter(v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info) 2272 static void perContextEnabledLongAttributeAttributeSetter(v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info)
2107 { 2273 {
2108 ExceptionState exceptionState(ExceptionState::SetterContext, "perContextEnab ledLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2274 v8::Isolate* isolate = info.GetIsolate();
2109 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2275 v8::Handle<v8::Object> holder = info.Holder();
2276 ExceptionState exceptionState(ExceptionState::SetterContext, "perContextEnab ledLongAttribute", "TestObjectPython", holder, isolate);
2277 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2110 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2278 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2111 impl->setPerContextEnabledLongAttribute(cppValue); 2279 impl->setPerContextEnabledLongAttribute(cppValue);
2112 } 2280 }
2113 2281
2114 static void perContextEnabledLongAttributeAttributeSetterCallback(v8::Local<v8:: String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& inf o) 2282 static void perContextEnabledLongAttributeAttributeSetterCallback(v8::Local<v8:: String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& inf o)
2115 { 2283 {
2116 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2284 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2117 TestObjectPythonV8Internal::perContextEnabledLongAttributeAttributeSetter(js Value, info); 2285 TestObjectPythonV8Internal::perContextEnabledLongAttributeAttributeSetter(js Value, info);
2118 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2286 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2119 } 2287 }
2120 2288
2121 static void perWorldBindingsLongAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info) 2289 static void perWorldBindingsLongAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info)
2122 { 2290 {
2123 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2291 v8::Handle<v8::Object> holder = info.Holder();
2292 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2124 v8SetReturnValueInt(info, impl->perWorldBindingsLongAttribute()); 2293 v8SetReturnValueInt(info, impl->perWorldBindingsLongAttribute());
2125 } 2294 }
2126 2295
2127 static void perWorldBindingsLongAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info) 2296 static void perWorldBindingsLongAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info)
2128 { 2297 {
2129 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2298 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2130 TestObjectPythonV8Internal::perWorldBindingsLongAttributeAttributeGetter(inf o); 2299 TestObjectPythonV8Internal::perWorldBindingsLongAttributeAttributeGetter(inf o);
2131 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2300 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2132 } 2301 }
2133 2302
2134 static void perWorldBindingsLongAttributeAttributeSetter(v8::Local<v8::Value> js Value, const v8::PropertyCallbackInfo<void>& info) 2303 static void perWorldBindingsLongAttributeAttributeSetter(v8::Local<v8::Value> js Value, const v8::PropertyCallbackInfo<void>& info)
2135 { 2304 {
2136 ExceptionState exceptionState(ExceptionState::SetterContext, "perWorldBindin gsLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2305 v8::Isolate* isolate = info.GetIsolate();
2137 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2306 v8::Handle<v8::Object> holder = info.Holder();
2307 ExceptionState exceptionState(ExceptionState::SetterContext, "perWorldBindin gsLongAttribute", "TestObjectPython", holder, isolate);
2308 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2138 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2309 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2139 impl->setPerWorldBindingsLongAttribute(cppValue); 2310 impl->setPerWorldBindingsLongAttribute(cppValue);
2140 } 2311 }
2141 2312
2142 static void perWorldBindingsLongAttributeAttributeSetterCallback(v8::Local<v8::S tring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info ) 2313 static void perWorldBindingsLongAttributeAttributeSetterCallback(v8::Local<v8::S tring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info )
2143 { 2314 {
2144 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2315 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2145 TestObjectPythonV8Internal::perWorldBindingsLongAttributeAttributeSetter(jsV alue, info); 2316 TestObjectPythonV8Internal::perWorldBindingsLongAttributeAttributeSetter(jsV alue, info);
2146 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2317 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2147 } 2318 }
2148 2319
2149 static void perWorldBindingsLongAttributeAttributeGetterForMainWorld(const v8::P ropertyCallbackInfo<v8::Value>& info) 2320 static void perWorldBindingsLongAttributeAttributeGetterForMainWorld(const v8::P ropertyCallbackInfo<v8::Value>& info)
2150 { 2321 {
2151 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2322 v8::Handle<v8::Object> holder = info.Holder();
2323 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2152 v8SetReturnValueInt(info, impl->perWorldBindingsLongAttribute()); 2324 v8SetReturnValueInt(info, impl->perWorldBindingsLongAttribute());
2153 } 2325 }
2154 2326
2155 static void perWorldBindingsLongAttributeAttributeGetterCallbackForMainWorld(v8: :Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2327 static void perWorldBindingsLongAttributeAttributeGetterCallbackForMainWorld(v8: :Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2156 { 2328 {
2157 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2329 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2158 TestObjectPythonV8Internal::perWorldBindingsLongAttributeAttributeGetterForM ainWorld(info); 2330 TestObjectPythonV8Internal::perWorldBindingsLongAttributeAttributeGetterForM ainWorld(info);
2159 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2331 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2160 } 2332 }
2161 2333
2162 static void perWorldBindingsLongAttributeAttributeSetterForMainWorld(v8::Local<v 8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2334 static void perWorldBindingsLongAttributeAttributeSetterForMainWorld(v8::Local<v 8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2163 { 2335 {
2164 ExceptionState exceptionState(ExceptionState::SetterContext, "perWorldBindin gsLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2336 v8::Isolate* isolate = info.GetIsolate();
2165 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2337 v8::Handle<v8::Object> holder = info.Holder();
2338 ExceptionState exceptionState(ExceptionState::SetterContext, "perWorldBindin gsLongAttribute", "TestObjectPython", holder, isolate);
2339 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2166 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2340 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2167 impl->setPerWorldBindingsLongAttribute(cppValue); 2341 impl->setPerWorldBindingsLongAttribute(cppValue);
2168 } 2342 }
2169 2343
2170 static void perWorldBindingsLongAttributeAttributeSetterCallbackForMainWorld(v8: :Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo <void>& info) 2344 static void perWorldBindingsLongAttributeAttributeSetterCallbackForMainWorld(v8: :Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo <void>& info)
2171 { 2345 {
2172 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2346 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2173 TestObjectPythonV8Internal::perWorldBindingsLongAttributeAttributeSetterForM ainWorld(jsValue, info); 2347 TestObjectPythonV8Internal::perWorldBindingsLongAttributeAttributeSetterForM ainWorld(jsValue, info);
2174 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2348 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2175 } 2349 }
2176 2350
2177 static void perWorldBindingsReadonlyLongAttributeAttributeGetter(const v8::Prope rtyCallbackInfo<v8::Value>& info) 2351 static void perWorldBindingsReadonlyLongAttributeAttributeGetter(const v8::Prope rtyCallbackInfo<v8::Value>& info)
2178 { 2352 {
2179 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2353 v8::Handle<v8::Object> holder = info.Holder();
2354 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2180 v8SetReturnValueInt(info, impl->perWorldBindingsReadonlyLongAttribute()); 2355 v8SetReturnValueInt(info, impl->perWorldBindingsReadonlyLongAttribute());
2181 } 2356 }
2182 2357
2183 static void perWorldBindingsReadonlyLongAttributeAttributeGetterCallback(v8::Loc al<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2358 static void perWorldBindingsReadonlyLongAttributeAttributeGetterCallback(v8::Loc al<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2184 { 2359 {
2185 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2360 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2186 TestObjectPythonV8Internal::perWorldBindingsReadonlyLongAttributeAttributeGe tter(info); 2361 TestObjectPythonV8Internal::perWorldBindingsReadonlyLongAttributeAttributeGe tter(info);
2187 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2362 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2188 } 2363 }
2189 2364
2190 static void perWorldBindingsReadonlyLongAttributeAttributeGetterForMainWorld(con st v8::PropertyCallbackInfo<v8::Value>& info) 2365 static void perWorldBindingsReadonlyLongAttributeAttributeGetterForMainWorld(con st v8::PropertyCallbackInfo<v8::Value>& info)
2191 { 2366 {
2192 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2367 v8::Handle<v8::Object> holder = info.Holder();
2368 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2193 v8SetReturnValueInt(info, impl->perWorldBindingsReadonlyLongAttribute()); 2369 v8SetReturnValueInt(info, impl->perWorldBindingsReadonlyLongAttribute());
2194 } 2370 }
2195 2371
2196 static void perWorldBindingsReadonlyLongAttributeAttributeGetterCallbackForMainW orld(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2372 static void perWorldBindingsReadonlyLongAttributeAttributeGetterCallbackForMainW orld(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2197 { 2373 {
2198 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2374 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2199 TestObjectPythonV8Internal::perWorldBindingsReadonlyLongAttributeAttributeGe tterForMainWorld(info); 2375 TestObjectPythonV8Internal::perWorldBindingsReadonlyLongAttributeAttributeGe tterForMainWorld(info);
2200 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2376 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2201 } 2377 }
2202 2378
2203 static void perWorldBindingsReadonlyTestInterfaceEmptyAttributeAttributeGetter(c onst v8::PropertyCallbackInfo<v8::Value>& info) 2379 static void perWorldBindingsReadonlyTestInterfaceEmptyAttributeAttributeGetter(c onst v8::PropertyCallbackInfo<v8::Value>& info)
2204 { 2380 {
2205 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2381 v8::Isolate* isolate = info.GetIsolate();
2382 v8::Handle<v8::Object> holder = info.Holder();
2383 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2206 RefPtr<TestInterfaceEmpty> result(impl->perWorldBindingsReadonlyTestInterfac eEmptyAttribute()); 2384 RefPtr<TestInterfaceEmpty> result(impl->perWorldBindingsReadonlyTestInterfac eEmptyAttribute());
2207 if (result && DOMDataStore::setReturnValueFromWrapper<V8TestInterfaceEmpty>( info.GetReturnValue(), result.get())) 2385 if (result && DOMDataStore::setReturnValueFromWrapper<V8TestInterfaceEmpty>( info.GetReturnValue(), result.get()))
2208 return; 2386 return;
2209 v8::Handle<v8::Value> wrapper = toV8(result.get(), info.Holder(), info.GetIs olate()); 2387 v8::Handle<v8::Value> wrapper = toV8(result.get(), holder, isolate);
2210 if (!wrapper.IsEmpty()) { 2388 if (!wrapper.IsEmpty()) {
2211 V8HiddenValue::setHiddenValue(info.GetIsolate(), info.Holder(), v8Atomic String(info.GetIsolate(), "perWorldBindingsReadonlyTestInterfaceEmptyAttribute") , wrapper); 2389 V8HiddenValue::setHiddenValue(isolate, holder, v8AtomicString(info.GetIs olate(), "perWorldBindingsReadonlyTestInterfaceEmptyAttribute"), wrapper);
2212 v8SetReturnValue(info, wrapper); 2390 v8SetReturnValue(info, wrapper);
2213 } 2391 }
2214 } 2392 }
2215 2393
2216 static void perWorldBindingsReadonlyTestInterfaceEmptyAttributeAttributeGetterCa llback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2394 static void perWorldBindingsReadonlyTestInterfaceEmptyAttributeAttributeGetterCa llback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2217 { 2395 {
2218 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2396 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2219 TestObjectPythonV8Internal::perWorldBindingsReadonlyTestInterfaceEmptyAttrib uteAttributeGetter(info); 2397 TestObjectPythonV8Internal::perWorldBindingsReadonlyTestInterfaceEmptyAttrib uteAttributeGetter(info);
2220 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2398 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2221 } 2399 }
2222 2400
2223 static void perWorldBindingsReadonlyTestInterfaceEmptyAttributeAttributeGetterFo rMainWorld(const v8::PropertyCallbackInfo<v8::Value>& info) 2401 static void perWorldBindingsReadonlyTestInterfaceEmptyAttributeAttributeGetterFo rMainWorld(const v8::PropertyCallbackInfo<v8::Value>& info)
2224 { 2402 {
2225 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2403 v8::Isolate* isolate = info.GetIsolate();
2404 v8::Handle<v8::Object> holder = info.Holder();
2405 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2226 RefPtr<TestInterfaceEmpty> result(impl->perWorldBindingsReadonlyTestInterfac eEmptyAttribute()); 2406 RefPtr<TestInterfaceEmpty> result(impl->perWorldBindingsReadonlyTestInterfac eEmptyAttribute());
2227 if (result && DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestInte rfaceEmpty>(info.GetReturnValue(), result.get())) 2407 if (result && DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestInte rfaceEmpty>(info.GetReturnValue(), result.get()))
2228 return; 2408 return;
2229 v8::Handle<v8::Value> wrapper = toV8(result.get(), info.Holder(), info.GetIs olate()); 2409 v8::Handle<v8::Value> wrapper = toV8(result.get(), holder, isolate);
2230 if (!wrapper.IsEmpty()) { 2410 if (!wrapper.IsEmpty()) {
2231 V8HiddenValue::setHiddenValue(info.GetIsolate(), info.Holder(), v8Atomic String(info.GetIsolate(), "perWorldBindingsReadonlyTestInterfaceEmptyAttribute") , wrapper); 2411 V8HiddenValue::setHiddenValue(isolate, holder, v8AtomicString(info.GetIs olate(), "perWorldBindingsReadonlyTestInterfaceEmptyAttribute"), wrapper);
2232 v8SetReturnValue(info, wrapper); 2412 v8SetReturnValue(info, wrapper);
2233 } 2413 }
2234 } 2414 }
2235 2415
2236 static void perWorldBindingsReadonlyTestInterfaceEmptyAttributeAttributeGetterCa llbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Val ue>& info) 2416 static void perWorldBindingsReadonlyTestInterfaceEmptyAttributeAttributeGetterCa llbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Val ue>& info)
2237 { 2417 {
2238 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2418 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2239 TestObjectPythonV8Internal::perWorldBindingsReadonlyTestInterfaceEmptyAttrib uteAttributeGetterForMainWorld(info); 2419 TestObjectPythonV8Internal::perWorldBindingsReadonlyTestInterfaceEmptyAttrib uteAttributeGetterForMainWorld(info);
2240 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2420 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2241 } 2421 }
2242 2422
2243 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeGetter(co nst v8::PropertyCallbackInfo<v8::Value>& info) 2423 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeGetter(co nst v8::PropertyCallbackInfo<v8::Value>& info)
2244 { 2424 {
2245 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2425 v8::Handle<v8::Object> holder = info.Holder();
2426 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2246 v8SetReturnValueInt(info, impl->activityLoggingAccessPerWorldBindingsLongAtt ribute()); 2427 v8SetReturnValueInt(info, impl->activityLoggingAccessPerWorldBindingsLongAtt ribute());
2247 } 2428 }
2248 2429
2249 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeGetterCal lback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2430 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeGetterCal lback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2250 { 2431 {
2251 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2432 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2252 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2433 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2253 if (contextData && contextData->activityLogger()) 2434 if (contextData && contextData->activityLogger())
2254 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssPerWorldBindingsLongAttribute", 0, 0, "Getter"); 2435 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssPerWorldBindingsLongAttribute", 0, 0, "Getter");
2255 TestObjectPythonV8Internal::activityLoggingAccessPerWorldBindingsLongAttribu teAttributeGetter(info); 2436 TestObjectPythonV8Internal::activityLoggingAccessPerWorldBindingsLongAttribu teAttributeGetter(info);
2256 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2437 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2257 } 2438 }
2258 2439
2259 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeSetter(v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2440 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeSetter(v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2260 { 2441 {
2261 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessPerWorldBindingsLongAttribute", "TestObjectPython", info.Holder(), info.G etIsolate()); 2442 v8::Isolate* isolate = info.GetIsolate();
2262 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2443 v8::Handle<v8::Object> holder = info.Holder();
2444 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessPerWorldBindingsLongAttribute", "TestObjectPython", holder, isolate);
2445 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2263 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2446 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2264 impl->setActivityLoggingAccessPerWorldBindingsLongAttribute(cppValue); 2447 impl->setActivityLoggingAccessPerWorldBindingsLongAttribute(cppValue);
2265 } 2448 }
2266 2449
2267 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeSetterCal lback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCal lbackInfo<void>& info) 2450 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeSetterCal lback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCal lbackInfo<void>& info)
2268 { 2451 {
2269 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2452 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2270 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2453 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2271 if (contextData && contextData->activityLogger()) { 2454 if (contextData && contextData->activityLogger()) {
2272 v8::Handle<v8::Value> loggerArg[] = { jsValue }; 2455 v8::Handle<v8::Value> loggerArg[] = { jsValue };
2273 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssPerWorldBindingsLongAttribute", 1, &loggerArg[0], "Setter"); 2456 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssPerWorldBindingsLongAttribute", 1, &loggerArg[0], "Setter");
2274 } 2457 }
2275 TestObjectPythonV8Internal::activityLoggingAccessPerWorldBindingsLongAttribu teAttributeSetter(jsValue, info); 2458 TestObjectPythonV8Internal::activityLoggingAccessPerWorldBindingsLongAttribu teAttributeSetter(jsValue, info);
2276 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2459 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2277 } 2460 }
2278 2461
2279 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeGetterFor MainWorld(const v8::PropertyCallbackInfo<v8::Value>& info) 2462 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeGetterFor MainWorld(const v8::PropertyCallbackInfo<v8::Value>& info)
2280 { 2463 {
2281 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2464 v8::Handle<v8::Object> holder = info.Holder();
2465 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2282 v8SetReturnValueInt(info, impl->activityLoggingAccessPerWorldBindingsLongAtt ribute()); 2466 v8SetReturnValueInt(info, impl->activityLoggingAccessPerWorldBindingsLongAtt ribute());
2283 } 2467 }
2284 2468
2285 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeGetterCal lbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Valu e>& info) 2469 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeGetterCal lbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Valu e>& info)
2286 { 2470 {
2287 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2471 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2288 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2472 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2289 if (contextData && contextData->activityLogger()) 2473 if (contextData && contextData->activityLogger())
2290 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssPerWorldBindingsLongAttribute", 0, 0, "Getter"); 2474 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssPerWorldBindingsLongAttribute", 0, 0, "Getter");
2291 TestObjectPythonV8Internal::activityLoggingAccessPerWorldBindingsLongAttribu teAttributeGetterForMainWorld(info); 2475 TestObjectPythonV8Internal::activityLoggingAccessPerWorldBindingsLongAttribu teAttributeGetterForMainWorld(info);
2292 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2476 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2293 } 2477 }
2294 2478
2295 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeSetterFor MainWorld(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& in fo) 2479 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeSetterFor MainWorld(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& in fo)
2296 { 2480 {
2297 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessPerWorldBindingsLongAttribute", "TestObjectPython", info.Holder(), info.G etIsolate()); 2481 v8::Isolate* isolate = info.GetIsolate();
2298 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2482 v8::Handle<v8::Object> holder = info.Holder();
2483 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessPerWorldBindingsLongAttribute", "TestObjectPython", holder, isolate);
2484 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2299 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2485 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2300 impl->setActivityLoggingAccessPerWorldBindingsLongAttribute(cppValue); 2486 impl->setActivityLoggingAccessPerWorldBindingsLongAttribute(cppValue);
2301 } 2487 }
2302 2488
2303 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeSetterCal lbackForMainWorld(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info) 2489 static void activityLoggingAccessPerWorldBindingsLongAttributeAttributeSetterCal lbackForMainWorld(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info)
2304 { 2490 {
2305 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2491 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2306 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2492 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2307 if (contextData && contextData->activityLogger()) { 2493 if (contextData && contextData->activityLogger()) {
2308 v8::Handle<v8::Value> loggerArg[] = { jsValue }; 2494 v8::Handle<v8::Value> loggerArg[] = { jsValue };
2309 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssPerWorldBindingsLongAttribute", 1, &loggerArg[0], "Setter"); 2495 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssPerWorldBindingsLongAttribute", 1, &loggerArg[0], "Setter");
2310 } 2496 }
2311 TestObjectPythonV8Internal::activityLoggingAccessPerWorldBindingsLongAttribu teAttributeSetterForMainWorld(jsValue, info); 2497 TestObjectPythonV8Internal::activityLoggingAccessPerWorldBindingsLongAttribu teAttributeSetterForMainWorld(jsValue, info);
2312 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2498 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2313 } 2499 }
2314 2500
2315 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info) 2501 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info)
2316 { 2502 {
2317 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2503 v8::Handle<v8::Object> holder = info.Holder();
2504 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2318 v8SetReturnValueInt(info, impl->activityLoggingAccessForIsolatedWorldsPerWor ldBindingsLongAttribute()); 2505 v8SetReturnValueInt(info, impl->activityLoggingAccessForIsolatedWorldsPerWor ldBindingsLongAttribute());
2319 } 2506 }
2320 2507
2321 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8: :Value>& info) 2508 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8: :Value>& info)
2322 { 2509 {
2323 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2510 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2324 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2511 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2325 if (contextData && contextData->activityLogger()) 2512 if (contextData && contextData->activityLogger())
2326 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssForIsolatedWorldsPerWorldBindingsLongAttribute", 0, 0, "Getter"); 2513 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssForIsolatedWorldsPerWorldBindingsLongAttribute", 0, 0, "Getter");
2327 TestObjectPythonV8Internal::activityLoggingAccessForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeGetter(info); 2514 TestObjectPythonV8Internal::activityLoggingAccessForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeGetter(info);
2328 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2515 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2329 } 2516 }
2330 2517
2331 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void >& info) 2518 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void >& info)
2332 { 2519 {
2333 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessForIsolatedWorldsPerWorldBindingsLongAttribute", "TestObjectPython", info .Holder(), info.GetIsolate()); 2520 v8::Isolate* isolate = info.GetIsolate();
2334 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2521 v8::Handle<v8::Object> holder = info.Holder();
2522 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessForIsolatedWorldsPerWorldBindingsLongAttribute", "TestObjectPython", hold er, isolate);
2523 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2335 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2524 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2336 impl->setActivityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttribute (cppValue); 2525 impl->setActivityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttribute (cppValue);
2337 } 2526 }
2338 2527
2339 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, cons t v8::PropertyCallbackInfo<void>& info) 2528 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, cons t v8::PropertyCallbackInfo<void>& info)
2340 { 2529 {
2341 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2530 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2342 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2531 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2343 if (contextData && contextData->activityLogger()) { 2532 if (contextData && contextData->activityLogger()) {
2344 v8::Handle<v8::Value> loggerArg[] = { jsValue }; 2533 v8::Handle<v8::Value> loggerArg[] = { jsValue };
2345 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssForIsolatedWorldsPerWorldBindingsLongAttribute", 1, &loggerArg[0], "Setter"); 2534 contextData->activityLogger()->log("TestObjectPython.activityLoggingAcce ssForIsolatedWorldsPerWorldBindingsLongAttribute", 1, &loggerArg[0], "Setter");
2346 } 2535 }
2347 TestObjectPythonV8Internal::activityLoggingAccessForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeSetter(jsValue, info); 2536 TestObjectPythonV8Internal::activityLoggingAccessForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeSetter(jsValue, info);
2348 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2537 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2349 } 2538 }
2350 2539
2351 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterForMainWorld(const v8::PropertyCallbackInfo<v8::Value>& info) 2540 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterForMainWorld(const v8::PropertyCallbackInfo<v8::Value>& info)
2352 { 2541 {
2353 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2542 v8::Handle<v8::Object> holder = info.Holder();
2543 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2354 v8SetReturnValueInt(info, impl->activityLoggingAccessForIsolatedWorldsPerWor ldBindingsLongAttribute()); 2544 v8SetReturnValueInt(info, impl->activityLoggingAccessForIsolatedWorldsPerWor ldBindingsLongAttribute());
2355 } 2545 }
2356 2546
2357 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterCallbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCall backInfo<v8::Value>& info) 2547 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterCallbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCall backInfo<v8::Value>& info)
2358 { 2548 {
2359 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2549 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2360 TestObjectPythonV8Internal::activityLoggingAccessForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeGetterForMainWorld(info); 2550 TestObjectPythonV8Internal::activityLoggingAccessForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeGetterForMainWorld(info);
2361 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2551 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2362 } 2552 }
2363 2553
2364 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterForMainWorld(v8::Local<v8::Value> jsValue, const v8::PropertyCallb ackInfo<void>& info) 2554 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterForMainWorld(v8::Local<v8::Value> jsValue, const v8::PropertyCallb ackInfo<void>& info)
2365 { 2555 {
2366 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessForIsolatedWorldsPerWorldBindingsLongAttribute", "TestObjectPython", info .Holder(), info.GetIsolate()); 2556 v8::Isolate* isolate = info.GetIsolate();
2367 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2557 v8::Handle<v8::Object> holder = info.Holder();
2558 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gAccessForIsolatedWorldsPerWorldBindingsLongAttribute", "TestObjectPython", hold er, isolate);
2559 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2368 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2560 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2369 impl->setActivityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttribute (cppValue); 2561 impl->setActivityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttribute (cppValue);
2370 } 2562 }
2371 2563
2372 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterCallbackForMainWorld(v8::Local<v8::String>, v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info) 2564 static void activityLoggingAccessForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterCallbackForMainWorld(v8::Local<v8::String>, v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info)
2373 { 2565 {
2374 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2566 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2375 TestObjectPythonV8Internal::activityLoggingAccessForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeSetterForMainWorld(jsValue, info); 2567 TestObjectPythonV8Internal::activityLoggingAccessForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeSetterForMainWorld(jsValue, info);
2376 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2568 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2377 } 2569 }
2378 2570
2379 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeGetter(co nst v8::PropertyCallbackInfo<v8::Value>& info) 2571 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeGetter(co nst v8::PropertyCallbackInfo<v8::Value>& info)
2380 { 2572 {
2381 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2573 v8::Handle<v8::Object> holder = info.Holder();
2574 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2382 v8SetReturnValueInt(info, impl->activityLoggingGetterPerWorldBindingsLongAtt ribute()); 2575 v8SetReturnValueInt(info, impl->activityLoggingGetterPerWorldBindingsLongAtt ribute());
2383 } 2576 }
2384 2577
2385 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeGetterCal lback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2578 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeGetterCal lback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2386 { 2579 {
2387 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2580 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2388 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2581 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2389 if (contextData && contextData->activityLogger()) 2582 if (contextData && contextData->activityLogger())
2390 contextData->activityLogger()->log("TestObjectPython.activityLoggingGett erPerWorldBindingsLongAttribute", 0, 0, "Getter"); 2583 contextData->activityLogger()->log("TestObjectPython.activityLoggingGett erPerWorldBindingsLongAttribute", 0, 0, "Getter");
2391 TestObjectPythonV8Internal::activityLoggingGetterPerWorldBindingsLongAttribu teAttributeGetter(info); 2584 TestObjectPythonV8Internal::activityLoggingGetterPerWorldBindingsLongAttribu teAttributeGetter(info);
2392 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2585 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2393 } 2586 }
2394 2587
2395 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeSetter(v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2588 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeSetter(v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2396 { 2589 {
2397 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterPerWorldBindingsLongAttribute", "TestObjectPython", info.Holder(), info.G etIsolate()); 2590 v8::Isolate* isolate = info.GetIsolate();
2398 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2591 v8::Handle<v8::Object> holder = info.Holder();
2592 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterPerWorldBindingsLongAttribute", "TestObjectPython", holder, isolate);
2593 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2399 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2594 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2400 impl->setActivityLoggingGetterPerWorldBindingsLongAttribute(cppValue); 2595 impl->setActivityLoggingGetterPerWorldBindingsLongAttribute(cppValue);
2401 } 2596 }
2402 2597
2403 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeSetterCal lback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCal lbackInfo<void>& info) 2598 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeSetterCal lback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCal lbackInfo<void>& info)
2404 { 2599 {
2405 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2600 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2406 TestObjectPythonV8Internal::activityLoggingGetterPerWorldBindingsLongAttribu teAttributeSetter(jsValue, info); 2601 TestObjectPythonV8Internal::activityLoggingGetterPerWorldBindingsLongAttribu teAttributeSetter(jsValue, info);
2407 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2602 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2408 } 2603 }
2409 2604
2410 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeGetterFor MainWorld(const v8::PropertyCallbackInfo<v8::Value>& info) 2605 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeGetterFor MainWorld(const v8::PropertyCallbackInfo<v8::Value>& info)
2411 { 2606 {
2412 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2607 v8::Handle<v8::Object> holder = info.Holder();
2608 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2413 v8SetReturnValueInt(info, impl->activityLoggingGetterPerWorldBindingsLongAtt ribute()); 2609 v8SetReturnValueInt(info, impl->activityLoggingGetterPerWorldBindingsLongAtt ribute());
2414 } 2610 }
2415 2611
2416 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeGetterCal lbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Valu e>& info) 2612 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeGetterCal lbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Valu e>& info)
2417 { 2613 {
2418 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2614 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2419 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2615 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2420 if (contextData && contextData->activityLogger()) 2616 if (contextData && contextData->activityLogger())
2421 contextData->activityLogger()->log("TestObjectPython.activityLoggingGett erPerWorldBindingsLongAttribute", 0, 0, "Getter"); 2617 contextData->activityLogger()->log("TestObjectPython.activityLoggingGett erPerWorldBindingsLongAttribute", 0, 0, "Getter");
2422 TestObjectPythonV8Internal::activityLoggingGetterPerWorldBindingsLongAttribu teAttributeGetterForMainWorld(info); 2618 TestObjectPythonV8Internal::activityLoggingGetterPerWorldBindingsLongAttribu teAttributeGetterForMainWorld(info);
2423 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2619 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2424 } 2620 }
2425 2621
2426 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeSetterFor MainWorld(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& in fo) 2622 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeSetterFor MainWorld(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& in fo)
2427 { 2623 {
2428 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterPerWorldBindingsLongAttribute", "TestObjectPython", info.Holder(), info.G etIsolate()); 2624 v8::Isolate* isolate = info.GetIsolate();
2429 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2625 v8::Handle<v8::Object> holder = info.Holder();
2626 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterPerWorldBindingsLongAttribute", "TestObjectPython", holder, isolate);
2627 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2430 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2628 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2431 impl->setActivityLoggingGetterPerWorldBindingsLongAttribute(cppValue); 2629 impl->setActivityLoggingGetterPerWorldBindingsLongAttribute(cppValue);
2432 } 2630 }
2433 2631
2434 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeSetterCal lbackForMainWorld(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info) 2632 static void activityLoggingGetterPerWorldBindingsLongAttributeAttributeSetterCal lbackForMainWorld(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info)
2435 { 2633 {
2436 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2634 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2437 TestObjectPythonV8Internal::activityLoggingGetterPerWorldBindingsLongAttribu teAttributeSetterForMainWorld(jsValue, info); 2635 TestObjectPythonV8Internal::activityLoggingGetterPerWorldBindingsLongAttribu teAttributeSetterForMainWorld(jsValue, info);
2438 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2636 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2439 } 2637 }
2440 2638
2441 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info) 2639 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info)
2442 { 2640 {
2443 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2641 v8::Handle<v8::Object> holder = info.Holder();
2642 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2444 v8SetReturnValueInt(info, impl->activityLoggingGetterForIsolatedWorldsPerWor ldBindingsLongAttribute()); 2643 v8SetReturnValueInt(info, impl->activityLoggingGetterForIsolatedWorldsPerWor ldBindingsLongAttribute());
2445 } 2644 }
2446 2645
2447 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8: :Value>& info) 2646 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8: :Value>& info)
2448 { 2647 {
2449 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2648 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2450 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext()); 2649 V8PerContextData* contextData = V8PerContextData::from(info.GetIsolate()->Ge tCurrentContext());
2451 if (contextData && contextData->activityLogger()) 2650 if (contextData && contextData->activityLogger())
2452 contextData->activityLogger()->log("TestObjectPython.activityLoggingGett erForIsolatedWorldsPerWorldBindingsLongAttribute", 0, 0, "Getter"); 2651 contextData->activityLogger()->log("TestObjectPython.activityLoggingGett erForIsolatedWorldsPerWorldBindingsLongAttribute", 0, 0, "Getter");
2453 TestObjectPythonV8Internal::activityLoggingGetterForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeGetter(info); 2652 TestObjectPythonV8Internal::activityLoggingGetterForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeGetter(info);
2454 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2653 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2455 } 2654 }
2456 2655
2457 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void >& info) 2656 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void >& info)
2458 { 2657 {
2459 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterForIsolatedWorldsPerWorldBindingsLongAttribute", "TestObjectPython", info .Holder(), info.GetIsolate()); 2658 v8::Isolate* isolate = info.GetIsolate();
2460 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2659 v8::Handle<v8::Object> holder = info.Holder();
2660 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterForIsolatedWorldsPerWorldBindingsLongAttribute", "TestObjectPython", hold er, isolate);
2661 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2461 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2662 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2462 impl->setActivityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttribute (cppValue); 2663 impl->setActivityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttribute (cppValue);
2463 } 2664 }
2464 2665
2465 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, cons t v8::PropertyCallbackInfo<void>& info) 2666 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, cons t v8::PropertyCallbackInfo<void>& info)
2466 { 2667 {
2467 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2668 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2468 TestObjectPythonV8Internal::activityLoggingGetterForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeSetter(jsValue, info); 2669 TestObjectPythonV8Internal::activityLoggingGetterForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeSetter(jsValue, info);
2469 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2670 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2470 } 2671 }
2471 2672
2472 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterForMainWorld(const v8::PropertyCallbackInfo<v8::Value>& info) 2673 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterForMainWorld(const v8::PropertyCallbackInfo<v8::Value>& info)
2473 { 2674 {
2474 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2675 v8::Handle<v8::Object> holder = info.Holder();
2676 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2475 v8SetReturnValueInt(info, impl->activityLoggingGetterForIsolatedWorldsPerWor ldBindingsLongAttribute()); 2677 v8SetReturnValueInt(info, impl->activityLoggingGetterForIsolatedWorldsPerWor ldBindingsLongAttribute());
2476 } 2678 }
2477 2679
2478 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterCallbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCall backInfo<v8::Value>& info) 2680 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeGetterCallbackForMainWorld(v8::Local<v8::String>, const v8::PropertyCall backInfo<v8::Value>& info)
2479 { 2681 {
2480 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2682 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2481 TestObjectPythonV8Internal::activityLoggingGetterForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeGetterForMainWorld(info); 2683 TestObjectPythonV8Internal::activityLoggingGetterForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeGetterForMainWorld(info);
2482 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2684 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2483 } 2685 }
2484 2686
2485 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterForMainWorld(v8::Local<v8::Value> jsValue, const v8::PropertyCallb ackInfo<void>& info) 2687 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterForMainWorld(v8::Local<v8::Value> jsValue, const v8::PropertyCallb ackInfo<void>& info)
2486 { 2688 {
2487 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterForIsolatedWorldsPerWorldBindingsLongAttribute", "TestObjectPython", info .Holder(), info.GetIsolate()); 2689 v8::Isolate* isolate = info.GetIsolate();
2488 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2690 v8::Handle<v8::Object> holder = info.Holder();
2691 ExceptionState exceptionState(ExceptionState::SetterContext, "activityLoggin gGetterForIsolatedWorldsPerWorldBindingsLongAttribute", "TestObjectPython", hold er, isolate);
2692 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2489 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2693 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2490 impl->setActivityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttribute (cppValue); 2694 impl->setActivityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttribute (cppValue);
2491 } 2695 }
2492 2696
2493 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterCallbackForMainWorld(v8::Local<v8::String>, v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info) 2697 static void activityLoggingGetterForIsolatedWorldsPerWorldBindingsLongAttributeA ttributeSetterCallbackForMainWorld(v8::Local<v8::String>, v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info)
2494 { 2698 {
2495 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2699 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2496 TestObjectPythonV8Internal::activityLoggingGetterForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeSetterForMainWorld(jsValue, info); 2700 TestObjectPythonV8Internal::activityLoggingGetterForIsolatedWorldsPerWorldBi ndingsLongAttributeAttributeSetterForMainWorld(jsValue, info);
2497 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2701 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2498 } 2702 }
2499 2703
2500 static void locationAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& i nfo) 2704 static void locationAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& i nfo)
2501 { 2705 {
2502 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2706 v8::Handle<v8::Object> holder = info.Holder();
2707 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2503 v8SetReturnValueFast(info, WTF::getPtr(impl->location()), impl); 2708 v8SetReturnValueFast(info, WTF::getPtr(impl->location()), impl);
2504 } 2709 }
2505 2710
2506 static void locationAttributeGetterCallback(v8::Local<v8::String>, const v8::Pro pertyCallbackInfo<v8::Value>& info) 2711 static void locationAttributeGetterCallback(v8::Local<v8::String>, const v8::Pro pertyCallbackInfo<v8::Value>& info)
2507 { 2712 {
2508 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2713 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2509 TestObjectPythonV8Internal::locationAttributeGetter(info); 2714 TestObjectPythonV8Internal::locationAttributeGetter(info);
2510 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2715 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2511 } 2716 }
2512 2717
2513 static void locationAttributeSetter(v8::Local<v8::Value> jsValue, const v8::Prop ertyCallbackInfo<void>& info) 2718 static void locationAttributeSetter(v8::Local<v8::Value> jsValue, const v8::Prop ertyCallbackInfo<void>& info)
2514 { 2719 {
2515 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(info.Holder()); 2720 v8::Handle<v8::Object> holder = info.Holder();
2721 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(holder);
2516 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->location()); 2722 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->location());
2517 if (!impl) 2723 if (!impl)
2518 return; 2724 return;
2519 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 2725 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
2520 impl->setHref(cppValue); 2726 impl->setHref(cppValue);
2521 } 2727 }
2522 2728
2523 static void locationAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8: :Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2729 static void locationAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8: :Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2524 { 2730 {
2525 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2731 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2526 TestObjectPythonV8Internal::locationAttributeSetter(jsValue, info); 2732 TestObjectPythonV8Internal::locationAttributeSetter(jsValue, info);
2527 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2733 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2528 } 2734 }
2529 2735
2530 static void locationWithExceptionAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info) 2736 static void locationWithExceptionAttributeGetter(const v8::PropertyCallbackInfo< v8::Value>& info)
2531 { 2737 {
2532 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2738 v8::Handle<v8::Object> holder = info.Holder();
2739 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2533 v8SetReturnValueFast(info, WTF::getPtr(impl->locationWithException()), impl) ; 2740 v8SetReturnValueFast(info, WTF::getPtr(impl->locationWithException()), impl) ;
2534 } 2741 }
2535 2742
2536 static void locationWithExceptionAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2743 static void locationWithExceptionAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2537 { 2744 {
2538 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2745 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2539 TestObjectPythonV8Internal::locationWithExceptionAttributeGetter(info); 2746 TestObjectPythonV8Internal::locationWithExceptionAttributeGetter(info);
2540 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2747 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2541 } 2748 }
2542 2749
2543 static void locationWithExceptionAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info) 2750 static void locationWithExceptionAttributeSetter(v8::Local<v8::Value> jsValue, c onst v8::PropertyCallbackInfo<void>& info)
2544 { 2751 {
2545 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(info.Holder()); 2752 v8::Handle<v8::Object> holder = info.Holder();
2753 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(holder);
2546 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationWithException()); 2754 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationWithException());
2547 if (!impl) 2755 if (!impl)
2548 return; 2756 return;
2549 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 2757 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
2550 impl->setHrefThrows(cppValue); 2758 impl->setHrefThrows(cppValue);
2551 } 2759 }
2552 2760
2553 static void locationWithExceptionAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2761 static void locationWithExceptionAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2554 { 2762 {
2555 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2763 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2556 TestObjectPythonV8Internal::locationWithExceptionAttributeSetter(jsValue, in fo); 2764 TestObjectPythonV8Internal::locationWithExceptionAttributeSetter(jsValue, in fo);
2557 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2765 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2558 } 2766 }
2559 2767
2560 static void locationWithCallWithAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info) 2768 static void locationWithCallWithAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info)
2561 { 2769 {
2562 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2770 v8::Handle<v8::Object> holder = info.Holder();
2771 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2563 v8SetReturnValueFast(info, WTF::getPtr(impl->locationWithCallWith()), impl); 2772 v8SetReturnValueFast(info, WTF::getPtr(impl->locationWithCallWith()), impl);
2564 } 2773 }
2565 2774
2566 static void locationWithCallWithAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info) 2775 static void locationWithCallWithAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info)
2567 { 2776 {
2568 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2777 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2569 TestObjectPythonV8Internal::locationWithCallWithAttributeGetter(info); 2778 TestObjectPythonV8Internal::locationWithCallWithAttributeGetter(info);
2570 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2779 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2571 } 2780 }
2572 2781
2573 static void locationWithCallWithAttributeSetter(v8::Local<v8::Value> jsValue, co nst v8::PropertyCallbackInfo<void>& info) 2782 static void locationWithCallWithAttributeSetter(v8::Local<v8::Value> jsValue, co nst v8::PropertyCallbackInfo<void>& info)
2574 { 2783 {
2575 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(info.Holder()); 2784 v8::Handle<v8::Object> holder = info.Holder();
2785 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(holder);
2576 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationWithCallWith()); 2786 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationWithCallWith());
2577 if (!impl) 2787 if (!impl)
2578 return; 2788 return;
2579 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 2789 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
2580 impl->setHrefCallWith(callingDOMWindow(info.GetIsolate()), enteredDOMWindow( info.GetIsolate()), cppValue); 2790 impl->setHrefCallWith(callingDOMWindow(info.GetIsolate()), enteredDOMWindow( info.GetIsolate()), cppValue);
2581 } 2791 }
2582 2792
2583 static void locationWithCallWithAttributeSetterCallback(v8::Local<v8::String>, v 8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2793 static void locationWithCallWithAttributeSetterCallback(v8::Local<v8::String>, v 8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2584 { 2794 {
2585 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2795 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2586 TestObjectPythonV8Internal::locationWithCallWithAttributeSetter(jsValue, inf o); 2796 TestObjectPythonV8Internal::locationWithCallWithAttributeSetter(jsValue, inf o);
2587 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2797 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2588 } 2798 }
2589 2799
2590 static void locationWithPerWorldBindingsAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info) 2800 static void locationWithPerWorldBindingsAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info)
2591 { 2801 {
2592 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2802 v8::Handle<v8::Object> holder = info.Holder();
2803 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2593 v8SetReturnValueFast(info, WTF::getPtr(impl->locationWithPerWorldBindings()) , impl); 2804 v8SetReturnValueFast(info, WTF::getPtr(impl->locationWithPerWorldBindings()) , impl);
2594 } 2805 }
2595 2806
2596 static void locationWithPerWorldBindingsAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info) 2807 static void locationWithPerWorldBindingsAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info)
2597 { 2808 {
2598 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2809 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2599 TestObjectPythonV8Internal::locationWithPerWorldBindingsAttributeGetter(info ); 2810 TestObjectPythonV8Internal::locationWithPerWorldBindingsAttributeGetter(info );
2600 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2811 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2601 } 2812 }
2602 2813
2603 static void locationWithPerWorldBindingsAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info) 2814 static void locationWithPerWorldBindingsAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info)
2604 { 2815 {
2605 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(info.Holder()); 2816 v8::Handle<v8::Object> holder = info.Holder();
2817 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(holder);
2606 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationWithPerWorldBindings( )); 2818 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationWithPerWorldBindings( ));
2607 if (!impl) 2819 if (!impl)
2608 return; 2820 return;
2609 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 2821 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
2610 impl->setHref(cppValue); 2822 impl->setHref(cppValue);
2611 } 2823 }
2612 2824
2613 static void locationWithPerWorldBindingsAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2825 static void locationWithPerWorldBindingsAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2614 { 2826 {
2615 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2827 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2616 TestObjectPythonV8Internal::locationWithPerWorldBindingsAttributeSetter(jsVa lue, info); 2828 TestObjectPythonV8Internal::locationWithPerWorldBindingsAttributeSetter(jsVa lue, info);
2617 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2829 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2618 } 2830 }
2619 2831
2620 static void locationWithPerWorldBindingsAttributeGetterForMainWorld(const v8::Pr opertyCallbackInfo<v8::Value>& info) 2832 static void locationWithPerWorldBindingsAttributeGetterForMainWorld(const v8::Pr opertyCallbackInfo<v8::Value>& info)
2621 { 2833 {
2622 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2834 v8::Handle<v8::Object> holder = info.Holder();
2835 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2623 v8SetReturnValueForMainWorld(info, WTF::getPtr(impl->locationWithPerWorldBin dings())); 2836 v8SetReturnValueForMainWorld(info, WTF::getPtr(impl->locationWithPerWorldBin dings()));
2624 } 2837 }
2625 2838
2626 static void locationWithPerWorldBindingsAttributeGetterCallbackForMainWorld(v8:: Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2839 static void locationWithPerWorldBindingsAttributeGetterCallbackForMainWorld(v8:: Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2627 { 2840 {
2628 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2841 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2629 TestObjectPythonV8Internal::locationWithPerWorldBindingsAttributeGetterForMa inWorld(info); 2842 TestObjectPythonV8Internal::locationWithPerWorldBindingsAttributeGetterForMa inWorld(info);
2630 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2843 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2631 } 2844 }
2632 2845
2633 static void locationWithPerWorldBindingsAttributeSetterForMainWorld(v8::Local<v8 ::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2846 static void locationWithPerWorldBindingsAttributeSetterForMainWorld(v8::Local<v8 ::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2634 { 2847 {
2635 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(info.Holder()); 2848 v8::Handle<v8::Object> holder = info.Holder();
2849 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(holder);
2636 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationWithPerWorldBindings( )); 2850 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationWithPerWorldBindings( ));
2637 if (!impl) 2851 if (!impl)
2638 return; 2852 return;
2639 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 2853 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
2640 impl->setHref(cppValue); 2854 impl->setHref(cppValue);
2641 } 2855 }
2642 2856
2643 static void locationWithPerWorldBindingsAttributeSetterCallbackForMainWorld(v8:: Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo< void>& info) 2857 static void locationWithPerWorldBindingsAttributeSetterCallbackForMainWorld(v8:: Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo< void>& info)
2644 { 2858 {
2645 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2859 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2646 TestObjectPythonV8Internal::locationWithPerWorldBindingsAttributeSetterForMa inWorld(jsValue, info); 2860 TestObjectPythonV8Internal::locationWithPerWorldBindingsAttributeSetterForMa inWorld(jsValue, info);
2647 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2861 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2648 } 2862 }
2649 2863
2650 static void locationWillBeGarbageCollectedAttributeGetter(const v8::PropertyCall backInfo<v8::Value>& info) 2864 static void locationWillBeGarbageCollectedAttributeGetter(const v8::PropertyCall backInfo<v8::Value>& info)
2651 { 2865 {
2652 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2866 v8::Isolate* isolate = info.GetIsolate();
2867 v8::Handle<v8::Object> holder = info.Holder();
2868 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2653 RefPtrWillBeRawPtr<TestInterfaceWillBeGarbageCollected> result(impl->locatio nWillBeGarbageCollected()); 2869 RefPtrWillBeRawPtr<TestInterfaceWillBeGarbageCollected> result(impl->locatio nWillBeGarbageCollected());
2654 if (result && DOMDataStore::setReturnValueFromWrapper<V8TestInterfaceWillBeG arbageCollected>(info.GetReturnValue(), result.get())) 2870 if (result && DOMDataStore::setReturnValueFromWrapper<V8TestInterfaceWillBeG arbageCollected>(info.GetReturnValue(), result.get()))
2655 return; 2871 return;
2656 v8::Handle<v8::Value> wrapper = toV8(result.get(), info.Holder(), info.GetIs olate()); 2872 v8::Handle<v8::Value> wrapper = toV8(result.get(), holder, isolate);
2657 if (!wrapper.IsEmpty()) { 2873 if (!wrapper.IsEmpty()) {
2658 V8HiddenValue::setHiddenValue(info.GetIsolate(), info.Holder(), v8Atomic String(info.GetIsolate(), "locationWillBeGarbageCollected"), wrapper); 2874 V8HiddenValue::setHiddenValue(isolate, holder, v8AtomicString(info.GetIs olate(), "locationWillBeGarbageCollected"), wrapper);
2659 v8SetReturnValue(info, wrapper); 2875 v8SetReturnValue(info, wrapper);
2660 } 2876 }
2661 } 2877 }
2662 2878
2663 static void locationWillBeGarbageCollectedAttributeGetterCallback(v8::Local<v8:: String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2879 static void locationWillBeGarbageCollectedAttributeGetterCallback(v8::Local<v8:: String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2664 { 2880 {
2665 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2881 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2666 TestObjectPythonV8Internal::locationWillBeGarbageCollectedAttributeGetter(in fo); 2882 TestObjectPythonV8Internal::locationWillBeGarbageCollectedAttributeGetter(in fo);
2667 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2883 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2668 } 2884 }
2669 2885
2670 static void locationWillBeGarbageCollectedAttributeSetter(v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info) 2886 static void locationWillBeGarbageCollectedAttributeSetter(v8::Local<v8::Value> j sValue, const v8::PropertyCallbackInfo<void>& info)
2671 { 2887 {
2672 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(info.Holder()); 2888 v8::Handle<v8::Object> holder = info.Holder();
2889 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(holder);
2673 RefPtrWillBeRawPtr<TestInterfaceWillBeGarbageCollected> impl = WTF::getPtr(p roxyImpl->locationWillBeGarbageCollected()); 2890 RefPtrWillBeRawPtr<TestInterfaceWillBeGarbageCollected> impl = WTF::getPtr(p roxyImpl->locationWillBeGarbageCollected());
2674 if (!impl) 2891 if (!impl)
2675 return; 2892 return;
2676 V8TRYCATCH_VOID(TestInterfaceWillBeGarbageCollected*, cppValue, V8TestInterf aceWillBeGarbageCollected::toNativeWithTypeCheck(info.GetIsolate(), jsValue)); 2893 V8TRYCATCH_VOID(TestInterfaceWillBeGarbageCollected*, cppValue, V8TestInterf aceWillBeGarbageCollected::toNativeWithTypeCheck(info.GetIsolate(), jsValue));
2677 impl->setAttr1(WTF::getPtr(cppValue)); 2894 impl->setAttr1(WTF::getPtr(cppValue));
2678 } 2895 }
2679 2896
2680 static void locationWillBeGarbageCollectedAttributeSetterCallback(v8::Local<v8:: String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& inf o) 2897 static void locationWillBeGarbageCollectedAttributeSetterCallback(v8::Local<v8:: String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& inf o)
2681 { 2898 {
2682 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2899 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2683 TestObjectPythonV8Internal::locationWillBeGarbageCollectedAttributeSetter(js Value, info); 2900 TestObjectPythonV8Internal::locationWillBeGarbageCollectedAttributeSetter(js Value, info);
2684 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2901 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2685 } 2902 }
2686 2903
2687 static void raisesExceptionLongAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info) 2904 static void raisesExceptionLongAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info)
2688 { 2905 {
2689 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2906 v8::Isolate* isolate = info.GetIsolate();
2690 ExceptionState exceptionState(ExceptionState::GetterContext, "raisesExceptio nLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2907 v8::Handle<v8::Object> holder = info.Holder();
2908 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2909 ExceptionState exceptionState(ExceptionState::GetterContext, "raisesExceptio nLongAttribute", "TestObjectPython", holder, isolate);
2691 int jsValue = impl->raisesExceptionLongAttribute(exceptionState); 2910 int jsValue = impl->raisesExceptionLongAttribute(exceptionState);
2692 if (UNLIKELY(exceptionState.throwIfNeeded())) 2911 if (UNLIKELY(exceptionState.throwIfNeeded()))
2693 return; 2912 return;
2694 v8SetReturnValueInt(info, jsValue); 2913 v8SetReturnValueInt(info, jsValue);
2695 } 2914 }
2696 2915
2697 static void raisesExceptionLongAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info) 2916 static void raisesExceptionLongAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info)
2698 { 2917 {
2699 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2918 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2700 TestObjectPythonV8Internal::raisesExceptionLongAttributeAttributeGetter(info ); 2919 TestObjectPythonV8Internal::raisesExceptionLongAttributeAttributeGetter(info );
2701 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2920 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2702 } 2921 }
2703 2922
2704 static void raisesExceptionLongAttributeAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info) 2923 static void raisesExceptionLongAttributeAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info)
2705 { 2924 {
2706 ExceptionState exceptionState(ExceptionState::SetterContext, "raisesExceptio nLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2925 v8::Isolate* isolate = info.GetIsolate();
2707 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2926 v8::Handle<v8::Object> holder = info.Holder();
2927 ExceptionState exceptionState(ExceptionState::SetterContext, "raisesExceptio nLongAttribute", "TestObjectPython", holder, isolate);
2928 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2708 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2929 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2709 impl->setRaisesExceptionLongAttribute(cppValue, exceptionState); 2930 impl->setRaisesExceptionLongAttribute(cppValue, exceptionState);
2710 exceptionState.throwIfNeeded(); 2931 exceptionState.throwIfNeeded();
2711 } 2932 }
2712 2933
2713 static void raisesExceptionLongAttributeAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2934 static void raisesExceptionLongAttributeAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2714 { 2935 {
2715 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2936 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2716 TestObjectPythonV8Internal::raisesExceptionLongAttributeAttributeSetter(jsVa lue, info); 2937 TestObjectPythonV8Internal::raisesExceptionLongAttributeAttributeSetter(jsVa lue, info);
2717 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2938 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2718 } 2939 }
2719 2940
2720 static void raisesExceptionGetterLongAttributeAttributeGetter(const v8::Property CallbackInfo<v8::Value>& info) 2941 static void raisesExceptionGetterLongAttributeAttributeGetter(const v8::Property CallbackInfo<v8::Value>& info)
2721 { 2942 {
2722 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2943 v8::Isolate* isolate = info.GetIsolate();
2723 ExceptionState exceptionState(ExceptionState::GetterContext, "raisesExceptio nGetterLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2944 v8::Handle<v8::Object> holder = info.Holder();
2945 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2946 ExceptionState exceptionState(ExceptionState::GetterContext, "raisesExceptio nGetterLongAttribute", "TestObjectPython", holder, isolate);
2724 int jsValue = impl->raisesExceptionGetterLongAttribute(exceptionState); 2947 int jsValue = impl->raisesExceptionGetterLongAttribute(exceptionState);
2725 if (UNLIKELY(exceptionState.throwIfNeeded())) 2948 if (UNLIKELY(exceptionState.throwIfNeeded()))
2726 return; 2949 return;
2727 v8SetReturnValueInt(info, jsValue); 2950 v8SetReturnValueInt(info, jsValue);
2728 } 2951 }
2729 2952
2730 static void raisesExceptionGetterLongAttributeAttributeGetterCallback(v8::Local< v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2953 static void raisesExceptionGetterLongAttributeAttributeGetterCallback(v8::Local< v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2731 { 2954 {
2732 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2955 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2733 TestObjectPythonV8Internal::raisesExceptionGetterLongAttributeAttributeGette r(info); 2956 TestObjectPythonV8Internal::raisesExceptionGetterLongAttributeAttributeGette r(info);
2734 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2957 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2735 } 2958 }
2736 2959
2737 static void raisesExceptionGetterLongAttributeAttributeSetter(v8::Local<v8::Valu e> jsValue, const v8::PropertyCallbackInfo<void>& info) 2960 static void raisesExceptionGetterLongAttributeAttributeSetter(v8::Local<v8::Valu e> jsValue, const v8::PropertyCallbackInfo<void>& info)
2738 { 2961 {
2739 ExceptionState exceptionState(ExceptionState::SetterContext, "raisesExceptio nGetterLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2962 v8::Isolate* isolate = info.GetIsolate();
2740 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2963 v8::Handle<v8::Object> holder = info.Holder();
2964 ExceptionState exceptionState(ExceptionState::SetterContext, "raisesExceptio nGetterLongAttribute", "TestObjectPython", holder, isolate);
2965 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2741 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2966 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2742 impl->setRaisesExceptionGetterLongAttribute(cppValue); 2967 impl->setRaisesExceptionGetterLongAttribute(cppValue);
2743 } 2968 }
2744 2969
2745 static void raisesExceptionGetterLongAttributeAttributeSetterCallback(v8::Local< v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 2970 static void raisesExceptionGetterLongAttributeAttributeSetterCallback(v8::Local< v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2746 { 2971 {
2747 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 2972 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2748 TestObjectPythonV8Internal::raisesExceptionGetterLongAttributeAttributeSette r(jsValue, info); 2973 TestObjectPythonV8Internal::raisesExceptionGetterLongAttributeAttributeSette r(jsValue, info);
2749 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2974 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2750 } 2975 }
2751 2976
2752 static void setterRaisesExceptionLongAttributeAttributeGetter(const v8::Property CallbackInfo<v8::Value>& info) 2977 static void setterRaisesExceptionLongAttributeAttributeGetter(const v8::Property CallbackInfo<v8::Value>& info)
2753 { 2978 {
2754 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2979 v8::Handle<v8::Object> holder = info.Holder();
2980 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2755 v8SetReturnValueInt(info, impl->setterRaisesExceptionLongAttribute()); 2981 v8SetReturnValueInt(info, impl->setterRaisesExceptionLongAttribute());
2756 } 2982 }
2757 2983
2758 static void setterRaisesExceptionLongAttributeAttributeGetterCallback(v8::Local< v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 2984 static void setterRaisesExceptionLongAttributeAttributeGetterCallback(v8::Local< v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2759 { 2985 {
2760 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 2986 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2761 TestObjectPythonV8Internal::setterRaisesExceptionLongAttributeAttributeGette r(info); 2987 TestObjectPythonV8Internal::setterRaisesExceptionLongAttributeAttributeGette r(info);
2762 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 2988 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2763 } 2989 }
2764 2990
2765 static void setterRaisesExceptionLongAttributeAttributeSetter(v8::Local<v8::Valu e> jsValue, const v8::PropertyCallbackInfo<void>& info) 2991 static void setterRaisesExceptionLongAttributeAttributeSetter(v8::Local<v8::Valu e> jsValue, const v8::PropertyCallbackInfo<void>& info)
2766 { 2992 {
2767 ExceptionState exceptionState(ExceptionState::SetterContext, "setterRaisesEx ceptionLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 2993 v8::Isolate* isolate = info.GetIsolate();
2768 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 2994 v8::Handle<v8::Object> holder = info.Holder();
2995 ExceptionState exceptionState(ExceptionState::SetterContext, "setterRaisesEx ceptionLongAttribute", "TestObjectPython", holder, isolate);
2996 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2769 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 2997 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2770 impl->setSetterRaisesExceptionLongAttribute(cppValue, exceptionState); 2998 impl->setSetterRaisesExceptionLongAttribute(cppValue, exceptionState);
2771 exceptionState.throwIfNeeded(); 2999 exceptionState.throwIfNeeded();
2772 } 3000 }
2773 3001
2774 static void setterRaisesExceptionLongAttributeAttributeSetterCallback(v8::Local< v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3002 static void setterRaisesExceptionLongAttributeAttributeSetterCallback(v8::Local< v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2775 { 3003 {
2776 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3004 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2777 TestObjectPythonV8Internal::setterRaisesExceptionLongAttributeAttributeSette r(jsValue, info); 3005 TestObjectPythonV8Internal::setterRaisesExceptionLongAttributeAttributeSette r(jsValue, info);
2778 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3006 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2779 } 3007 }
2780 3008
2781 static void raisesExceptionTestInterfaceEmptyAttributeAttributeGetter(const v8:: PropertyCallbackInfo<v8::Value>& info) 3009 static void raisesExceptionTestInterfaceEmptyAttributeAttributeGetter(const v8:: PropertyCallbackInfo<v8::Value>& info)
2782 { 3010 {
2783 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3011 v8::Isolate* isolate = info.GetIsolate();
2784 ExceptionState exceptionState(ExceptionState::GetterContext, "raisesExceptio nTestInterfaceEmptyAttribute", "TestObjectPython", info.Holder(), info.GetIsolat e()); 3012 v8::Handle<v8::Object> holder = info.Holder();
3013 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3014 ExceptionState exceptionState(ExceptionState::GetterContext, "raisesExceptio nTestInterfaceEmptyAttribute", "TestObjectPython", holder, isolate);
2785 RefPtr<TestInterfaceEmpty> jsValue = impl->raisesExceptionTestInterfaceEmpty Attribute(exceptionState); 3015 RefPtr<TestInterfaceEmpty> jsValue = impl->raisesExceptionTestInterfaceEmpty Attribute(exceptionState);
2786 if (UNLIKELY(exceptionState.throwIfNeeded())) 3016 if (UNLIKELY(exceptionState.throwIfNeeded()))
2787 return; 3017 return;
2788 v8SetReturnValueFast(info, WTF::getPtr(jsValue.release()), impl); 3018 v8SetReturnValueFast(info, WTF::getPtr(jsValue.release()), impl);
2789 } 3019 }
2790 3020
2791 static void raisesExceptionTestInterfaceEmptyAttributeAttributeGetterCallback(v8 ::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3021 static void raisesExceptionTestInterfaceEmptyAttributeAttributeGetterCallback(v8 ::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2792 { 3022 {
2793 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3023 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2794 TestObjectPythonV8Internal::raisesExceptionTestInterfaceEmptyAttributeAttrib uteGetter(info); 3024 TestObjectPythonV8Internal::raisesExceptionTestInterfaceEmptyAttributeAttrib uteGetter(info);
2795 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3025 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2796 } 3026 }
2797 3027
2798 static void raisesExceptionTestInterfaceEmptyAttributeAttributeSetter(v8::Local< v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3028 static void raisesExceptionTestInterfaceEmptyAttributeAttributeSetter(v8::Local< v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2799 { 3029 {
2800 ExceptionState exceptionState(ExceptionState::SetterContext, "raisesExceptio nTestInterfaceEmptyAttribute", "TestObjectPython", info.Holder(), info.GetIsolat e()); 3030 v8::Isolate* isolate = info.GetIsolate();
2801 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3031 v8::Handle<v8::Object> holder = info.Holder();
3032 ExceptionState exceptionState(ExceptionState::SetterContext, "raisesExceptio nTestInterfaceEmptyAttribute", "TestObjectPython", holder, isolate);
3033 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2802 V8TRYCATCH_VOID(TestInterfaceEmpty*, cppValue, V8TestInterfaceEmpty::toNativ eWithTypeCheck(info.GetIsolate(), jsValue)); 3034 V8TRYCATCH_VOID(TestInterfaceEmpty*, cppValue, V8TestInterfaceEmpty::toNativ eWithTypeCheck(info.GetIsolate(), jsValue));
2803 impl->setRaisesExceptionTestInterfaceEmptyAttribute(WTF::getPtr(cppValue), e xceptionState); 3035 impl->setRaisesExceptionTestInterfaceEmptyAttribute(WTF::getPtr(cppValue), e xceptionState);
2804 exceptionState.throwIfNeeded(); 3036 exceptionState.throwIfNeeded();
2805 } 3037 }
2806 3038
2807 static void raisesExceptionTestInterfaceEmptyAttributeAttributeSetterCallback(v8 ::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInf o<void>& info) 3039 static void raisesExceptionTestInterfaceEmptyAttributeAttributeSetterCallback(v8 ::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInf o<void>& info)
2808 { 3040 {
2809 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3041 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2810 TestObjectPythonV8Internal::raisesExceptionTestInterfaceEmptyAttributeAttrib uteSetter(jsValue, info); 3042 TestObjectPythonV8Internal::raisesExceptionTestInterfaceEmptyAttributeAttrib uteSetter(jsValue, info);
2811 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3043 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2812 } 3044 }
2813 3045
2814 static void cachedAttributeRaisesExceptionGetterAnyAttributeAttributeGetter(cons t v8::PropertyCallbackInfo<v8::Value>& info) 3046 static void cachedAttributeRaisesExceptionGetterAnyAttributeAttributeGetter(cons t v8::PropertyCallbackInfo<v8::Value>& info)
2815 { 3047 {
2816 v8::Handle<v8::String> propertyName = v8AtomicString(info.GetIsolate(), "cac hedAttributeRaisesExceptionGetterAnyAttribute"); 3048 v8::Isolate* isolate = info.GetIsolate();
2817 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3049 v8::Handle<v8::Object> holder = info.Holder();
3050 v8::Handle<v8::String> propertyName = v8AtomicString(isolate, "cachedAttribu teRaisesExceptionGetterAnyAttribute");
3051 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2818 if (!impl->isValueDirty()) { 3052 if (!impl->isValueDirty()) {
2819 v8::Handle<v8::Value> jsValue = V8HiddenValue::getHiddenValue(info.GetIs olate(), info.Holder(), propertyName); 3053 v8::Handle<v8::Value> jsValue = V8HiddenValue::getHiddenValue(isolate, h older, propertyName);
2820 if (!jsValue.IsEmpty()) { 3054 if (!jsValue.IsEmpty()) {
2821 v8SetReturnValue(info, jsValue); 3055 v8SetReturnValue(info, jsValue);
2822 return; 3056 return;
2823 } 3057 }
2824 } 3058 }
2825 ExceptionState exceptionState(ExceptionState::GetterContext, "cachedAttribut eRaisesExceptionGetterAnyAttribute", "TestObjectPython", info.Holder(), info.Get Isolate()); 3059 ExceptionState exceptionState(ExceptionState::GetterContext, "cachedAttribut eRaisesExceptionGetterAnyAttribute", "TestObjectPython", holder, isolate);
2826 ScriptValue jsValue = impl->cachedAttributeRaisesExceptionGetterAnyAttribute (exceptionState); 3060 ScriptValue jsValue = impl->cachedAttributeRaisesExceptionGetterAnyAttribute (exceptionState);
2827 if (UNLIKELY(exceptionState.throwIfNeeded())) 3061 if (UNLIKELY(exceptionState.throwIfNeeded()))
2828 return; 3062 return;
2829 V8HiddenValue::setHiddenValue(info.GetIsolate(), info.Holder(), propertyName , jsValue.v8Value()); 3063 V8HiddenValue::setHiddenValue(isolate, holder, propertyName, jsValue.v8Value ());
2830 v8SetReturnValue(info, jsValue.v8Value()); 3064 v8SetReturnValue(info, jsValue.v8Value());
2831 } 3065 }
2832 3066
2833 static void cachedAttributeRaisesExceptionGetterAnyAttributeAttributeGetterCallb ack(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3067 static void cachedAttributeRaisesExceptionGetterAnyAttributeAttributeGetterCallb ack(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2834 { 3068 {
2835 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3069 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2836 TestObjectPythonV8Internal::cachedAttributeRaisesExceptionGetterAnyAttribute AttributeGetter(info); 3070 TestObjectPythonV8Internal::cachedAttributeRaisesExceptionGetterAnyAttribute AttributeGetter(info);
2837 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3071 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2838 } 3072 }
2839 3073
2840 static void cachedAttributeRaisesExceptionGetterAnyAttributeAttributeSetter(v8:: Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3074 static void cachedAttributeRaisesExceptionGetterAnyAttributeAttributeSetter(v8:: Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2841 { 3075 {
2842 ExceptionState exceptionState(ExceptionState::SetterContext, "cachedAttribut eRaisesExceptionGetterAnyAttribute", "TestObjectPython", info.Holder(), info.Get Isolate()); 3076 v8::Isolate* isolate = info.GetIsolate();
2843 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3077 v8::Handle<v8::Object> holder = info.Holder();
3078 ExceptionState exceptionState(ExceptionState::SetterContext, "cachedAttribut eRaisesExceptionGetterAnyAttribute", "TestObjectPython", holder, isolate);
3079 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2844 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( ))); 3080 V8TRYCATCH_VOID(ScriptValue, cppValue, ScriptValue(jsValue, info.GetIsolate( )));
2845 impl->setCachedAttributeRaisesExceptionGetterAnyAttribute(cppValue, exceptio nState); 3081 impl->setCachedAttributeRaisesExceptionGetterAnyAttribute(cppValue, exceptio nState);
2846 exceptionState.throwIfNeeded(); 3082 exceptionState.throwIfNeeded();
2847 V8HiddenValue::deleteHiddenValue(info.GetIsolate(), info.Holder(), v8AtomicS tring(info.GetIsolate(), "cachedAttributeRaisesExceptionGetterAnyAttribute")); / / Invalidate the cached value. 3083 V8HiddenValue::deleteHiddenValue(isolate, holder, v8AtomicString(info.GetIso late(), "cachedAttributeRaisesExceptionGetterAnyAttribute")); // Invalidate the cached value.
2848 } 3084 }
2849 3085
2850 static void cachedAttributeRaisesExceptionGetterAnyAttributeAttributeSetterCallb ack(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallb ackInfo<void>& info) 3086 static void cachedAttributeRaisesExceptionGetterAnyAttributeAttributeSetterCallb ack(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallb ackInfo<void>& info)
2851 { 3087 {
2852 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3088 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2853 TestObjectPythonV8Internal::cachedAttributeRaisesExceptionGetterAnyAttribute AttributeSetter(jsValue, info); 3089 TestObjectPythonV8Internal::cachedAttributeRaisesExceptionGetterAnyAttribute AttributeSetter(jsValue, info);
2854 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3090 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2855 } 3091 }
2856 3092
2857 static void reflectTestInterfaceAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info) 3093 static void reflectTestInterfaceAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info)
2858 { 3094 {
2859 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3095 v8::Handle<v8::Object> holder = info.Holder();
3096 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2860 v8SetReturnValueFast(info, WTF::getPtr(impl->fastGetAttribute(HTMLNames::ref lecttestinterfaceattributeAttr)), impl); 3097 v8SetReturnValueFast(info, WTF::getPtr(impl->fastGetAttribute(HTMLNames::ref lecttestinterfaceattributeAttr)), impl);
2861 } 3098 }
2862 3099
2863 static void reflectTestInterfaceAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info) 3100 static void reflectTestInterfaceAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info)
2864 { 3101 {
2865 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3102 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2866 TestObjectPythonV8Internal::reflectTestInterfaceAttributeAttributeGetter(inf o); 3103 TestObjectPythonV8Internal::reflectTestInterfaceAttributeAttributeGetter(inf o);
2867 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3104 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2868 } 3105 }
2869 3106
2870 static void reflectTestInterfaceAttributeAttributeSetter(v8::Local<v8::Value> js Value, const v8::PropertyCallbackInfo<void>& info) 3107 static void reflectTestInterfaceAttributeAttributeSetter(v8::Local<v8::Value> js Value, const v8::PropertyCallbackInfo<void>& info)
2871 { 3108 {
2872 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3109 v8::Handle<v8::Object> holder = info.Holder();
3110 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2873 V8TRYCATCH_VOID(TestInterface*, cppValue, V8TestInterface::toNativeWithTypeC heck(info.GetIsolate(), jsValue)); 3111 V8TRYCATCH_VOID(TestInterface*, cppValue, V8TestInterface::toNativeWithTypeC heck(info.GetIsolate(), jsValue));
2874 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3112 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2875 impl->setAttribute(HTMLNames::reflecttestinterfaceattributeAttr, WTF::getPtr (cppValue)); 3113 impl->setAttribute(HTMLNames::reflecttestinterfaceattributeAttr, WTF::getPtr (cppValue));
2876 } 3114 }
2877 3115
2878 static void reflectTestInterfaceAttributeAttributeSetterCallback(v8::Local<v8::S tring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info ) 3116 static void reflectTestInterfaceAttributeAttributeSetterCallback(v8::Local<v8::S tring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info )
2879 { 3117 {
2880 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3118 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2881 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3119 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2882 TestObjectPythonV8Internal::reflectTestInterfaceAttributeAttributeSetter(jsV alue, info); 3120 TestObjectPythonV8Internal::reflectTestInterfaceAttributeAttributeSetter(jsV alue, info);
2883 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3121 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2884 } 3122 }
2885 3123
2886 static void reflectReflectedNameAttributeTestAttributeAttributeGetter(const v8:: PropertyCallbackInfo<v8::Value>& info) 3124 static void reflectReflectedNameAttributeTestAttributeAttributeGetter(const v8:: PropertyCallbackInfo<v8::Value>& info)
2887 { 3125 {
2888 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3126 v8::Handle<v8::Object> holder = info.Holder();
3127 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2889 v8SetReturnValueFast(info, WTF::getPtr(impl->fastGetAttribute(HTMLNames::ref lectedNameAttributeAttr)), impl); 3128 v8SetReturnValueFast(info, WTF::getPtr(impl->fastGetAttribute(HTMLNames::ref lectedNameAttributeAttr)), impl);
2890 } 3129 }
2891 3130
2892 static void reflectReflectedNameAttributeTestAttributeAttributeGetterCallback(v8 ::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3131 static void reflectReflectedNameAttributeTestAttributeAttributeGetterCallback(v8 ::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
2893 { 3132 {
2894 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3133 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2895 TestObjectPythonV8Internal::reflectReflectedNameAttributeTestAttributeAttrib uteGetter(info); 3134 TestObjectPythonV8Internal::reflectReflectedNameAttributeTestAttributeAttrib uteGetter(info);
2896 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3135 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2897 } 3136 }
2898 3137
2899 static void reflectReflectedNameAttributeTestAttributeAttributeSetter(v8::Local< v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3138 static void reflectReflectedNameAttributeTestAttributeAttributeSetter(v8::Local< v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2900 { 3139 {
2901 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3140 v8::Handle<v8::Object> holder = info.Holder();
3141 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2902 V8TRYCATCH_VOID(TestInterface*, cppValue, V8TestInterface::toNativeWithTypeC heck(info.GetIsolate(), jsValue)); 3142 V8TRYCATCH_VOID(TestInterface*, cppValue, V8TestInterface::toNativeWithTypeC heck(info.GetIsolate(), jsValue));
2903 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3143 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2904 impl->setAttribute(HTMLNames::reflectedNameAttributeAttr, WTF::getPtr(cppVal ue)); 3144 impl->setAttribute(HTMLNames::reflectedNameAttributeAttr, WTF::getPtr(cppVal ue));
2905 } 3145 }
2906 3146
2907 static void reflectReflectedNameAttributeTestAttributeAttributeSetterCallback(v8 ::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInf o<void>& info) 3147 static void reflectReflectedNameAttributeTestAttributeAttributeSetterCallback(v8 ::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInf o<void>& info)
2908 { 3148 {
2909 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3149 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2910 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3150 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2911 TestObjectPythonV8Internal::reflectReflectedNameAttributeTestAttributeAttrib uteSetter(jsValue, info); 3151 TestObjectPythonV8Internal::reflectReflectedNameAttributeTestAttributeAttrib uteSetter(jsValue, info);
2912 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3152 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2913 } 3153 }
2914 3154
2915 static void reflectBooleanAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info) 3155 static void reflectBooleanAttributeAttributeGetter(const v8::PropertyCallbackInf o<v8::Value>& info)
2916 { 3156 {
2917 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3157 v8::Handle<v8::Object> holder = info.Holder();
3158 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2918 v8SetReturnValueBool(info, impl->fastHasAttribute(HTMLNames::reflectbooleana ttributeAttr)); 3159 v8SetReturnValueBool(info, impl->fastHasAttribute(HTMLNames::reflectbooleana ttributeAttr));
2919 } 3160 }
2920 3161
2921 static void reflectBooleanAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info) 3162 static void reflectBooleanAttributeAttributeGetterCallback(v8::Local<v8::String> , const v8::PropertyCallbackInfo<v8::Value>& info)
2922 { 3163 {
2923 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3164 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2924 TestObjectPythonV8Internal::reflectBooleanAttributeAttributeGetter(info); 3165 TestObjectPythonV8Internal::reflectBooleanAttributeAttributeGetter(info);
2925 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3166 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2926 } 3167 }
2927 3168
2928 static void reflectBooleanAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3169 static void reflectBooleanAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2929 { 3170 {
2930 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3171 v8::Handle<v8::Object> holder = info.Holder();
3172 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2931 V8TRYCATCH_VOID(bool, cppValue, jsValue->BooleanValue()); 3173 V8TRYCATCH_VOID(bool, cppValue, jsValue->BooleanValue());
2932 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3174 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2933 impl->setBooleanAttribute(HTMLNames::reflectbooleanattributeAttr, cppValue); 3175 impl->setBooleanAttribute(HTMLNames::reflectbooleanattributeAttr, cppValue);
2934 } 3176 }
2935 3177
2936 static void reflectBooleanAttributeAttributeSetterCallback(v8::Local<v8::String> , v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3178 static void reflectBooleanAttributeAttributeSetterCallback(v8::Local<v8::String> , v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2937 { 3179 {
2938 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3180 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2939 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3181 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2940 TestObjectPythonV8Internal::reflectBooleanAttributeAttributeSetter(jsValue, info); 3182 TestObjectPythonV8Internal::reflectBooleanAttributeAttributeSetter(jsValue, info);
2941 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3183 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2942 } 3184 }
2943 3185
2944 static void reflectLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info) 3186 static void reflectLongAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info)
2945 { 3187 {
2946 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3188 v8::Handle<v8::Object> holder = info.Holder();
3189 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2947 v8SetReturnValueInt(info, impl->getIntegralAttribute(HTMLNames::reflectlonga ttributeAttr)); 3190 v8SetReturnValueInt(info, impl->getIntegralAttribute(HTMLNames::reflectlonga ttributeAttr));
2948 } 3191 }
2949 3192
2950 static void reflectLongAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info) 3193 static void reflectLongAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info)
2951 { 3194 {
2952 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3195 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2953 TestObjectPythonV8Internal::reflectLongAttributeAttributeGetter(info); 3196 TestObjectPythonV8Internal::reflectLongAttributeAttributeGetter(info);
2954 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3197 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2955 } 3198 }
2956 3199
2957 static void reflectLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, co nst v8::PropertyCallbackInfo<void>& info) 3200 static void reflectLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue, co nst v8::PropertyCallbackInfo<void>& info)
2958 { 3201 {
2959 ExceptionState exceptionState(ExceptionState::SetterContext, "reflectLongAtt ribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 3202 v8::Isolate* isolate = info.GetIsolate();
2960 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3203 v8::Handle<v8::Object> holder = info.Holder();
3204 ExceptionState exceptionState(ExceptionState::SetterContext, "reflectLongAtt ribute", "TestObjectPython", holder, isolate);
3205 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2961 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 3206 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
2962 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3207 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2963 impl->setIntegralAttribute(HTMLNames::reflectlongattributeAttr, cppValue); 3208 impl->setIntegralAttribute(HTMLNames::reflectlongattributeAttr, cppValue);
2964 } 3209 }
2965 3210
2966 static void reflectLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v 8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3211 static void reflectLongAttributeAttributeSetterCallback(v8::Local<v8::String>, v 8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
2967 { 3212 {
2968 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3213 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2969 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3214 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2970 TestObjectPythonV8Internal::reflectLongAttributeAttributeSetter(jsValue, inf o); 3215 TestObjectPythonV8Internal::reflectLongAttributeAttributeSetter(jsValue, inf o);
2971 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3216 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2972 } 3217 }
2973 3218
2974 static void reflectUnsignedShortAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info) 3219 static void reflectUnsignedShortAttributeAttributeGetter(const v8::PropertyCallb ackInfo<v8::Value>& info)
2975 { 3220 {
2976 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3221 v8::Handle<v8::Object> holder = info.Holder();
3222 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2977 v8SetReturnValueUnsigned(info, std::max(0, impl->fastGetAttribute(HTMLNames: :reflectunsignedshortattributeAttr))); 3223 v8SetReturnValueUnsigned(info, std::max(0, impl->fastGetAttribute(HTMLNames: :reflectunsignedshortattributeAttr)));
2978 } 3224 }
2979 3225
2980 static void reflectUnsignedShortAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info) 3226 static void reflectUnsignedShortAttributeAttributeGetterCallback(v8::Local<v8::S tring>, const v8::PropertyCallbackInfo<v8::Value>& info)
2981 { 3227 {
2982 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3228 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
2983 TestObjectPythonV8Internal::reflectUnsignedShortAttributeAttributeGetter(inf o); 3229 TestObjectPythonV8Internal::reflectUnsignedShortAttributeAttributeGetter(inf o);
2984 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3230 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
2985 } 3231 }
2986 3232
2987 static void reflectUnsignedShortAttributeAttributeSetter(v8::Local<v8::Value> js Value, const v8::PropertyCallbackInfo<void>& info) 3233 static void reflectUnsignedShortAttributeAttributeSetter(v8::Local<v8::Value> js Value, const v8::PropertyCallbackInfo<void>& info)
2988 { 3234 {
2989 ExceptionState exceptionState(ExceptionState::SetterContext, "reflectUnsigne dShortAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 3235 v8::Isolate* isolate = info.GetIsolate();
2990 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3236 v8::Handle<v8::Object> holder = info.Holder();
3237 ExceptionState exceptionState(ExceptionState::SetterContext, "reflectUnsigne dShortAttribute", "TestObjectPython", holder, isolate);
3238 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
2991 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt16(jsValue, exceptionSta te), exceptionState); 3239 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt16(jsValue, exceptionSta te), exceptionState);
2992 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3240 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
2993 impl->setAttribute(HTMLNames::reflectunsignedshortattributeAttr, cppValue); 3241 impl->setAttribute(HTMLNames::reflectunsignedshortattributeAttr, cppValue);
2994 } 3242 }
2995 3243
2996 static void reflectUnsignedShortAttributeAttributeSetterCallback(v8::Local<v8::S tring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info ) 3244 static void reflectUnsignedShortAttributeAttributeSetterCallback(v8::Local<v8::S tring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info )
2997 { 3245 {
2998 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3246 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
2999 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3247 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3000 TestObjectPythonV8Internal::reflectUnsignedShortAttributeAttributeSetter(jsV alue, info); 3248 TestObjectPythonV8Internal::reflectUnsignedShortAttributeAttributeSetter(jsV alue, info);
3001 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3249 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3002 } 3250 }
3003 3251
3004 static void reflectUnsignedLongAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info) 3252 static void reflectUnsignedLongAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info)
3005 { 3253 {
3006 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3254 v8::Handle<v8::Object> holder = info.Holder();
3255 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3007 v8SetReturnValueUnsigned(info, std::max(0, impl->getIntegralAttribute(HTMLNa mes::reflectunsignedlongattributeAttr))); 3256 v8SetReturnValueUnsigned(info, std::max(0, impl->getIntegralAttribute(HTMLNa mes::reflectunsignedlongattributeAttr)));
3008 } 3257 }
3009 3258
3010 static void reflectUnsignedLongAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info) 3259 static void reflectUnsignedLongAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info)
3011 { 3260 {
3012 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3261 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3013 TestObjectPythonV8Internal::reflectUnsignedLongAttributeAttributeGetter(info ); 3262 TestObjectPythonV8Internal::reflectUnsignedLongAttributeAttributeGetter(info );
3014 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3263 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3015 } 3264 }
3016 3265
3017 static void reflectUnsignedLongAttributeAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info) 3266 static void reflectUnsignedLongAttributeAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info)
3018 { 3267 {
3019 ExceptionState exceptionState(ExceptionState::SetterContext, "reflectUnsigne dLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 3268 v8::Isolate* isolate = info.GetIsolate();
3020 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3269 v8::Handle<v8::Object> holder = info.Holder();
3270 ExceptionState exceptionState(ExceptionState::SetterContext, "reflectUnsigne dLongAttribute", "TestObjectPython", holder, isolate);
3271 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3021 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt32(jsValue, exceptionSta te), exceptionState); 3272 V8TRYCATCH_EXCEPTION_VOID(unsigned, cppValue, toUInt32(jsValue, exceptionSta te), exceptionState);
3022 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3273 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3023 impl->setUnsignedIntegralAttribute(HTMLNames::reflectunsignedlongattributeAt tr, cppValue); 3274 impl->setUnsignedIntegralAttribute(HTMLNames::reflectunsignedlongattributeAt tr, cppValue);
3024 } 3275 }
3025 3276
3026 static void reflectUnsignedLongAttributeAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3277 static void reflectUnsignedLongAttributeAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3027 { 3278 {
3028 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3279 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3029 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3280 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3030 TestObjectPythonV8Internal::reflectUnsignedLongAttributeAttributeSetter(jsVa lue, info); 3281 TestObjectPythonV8Internal::reflectUnsignedLongAttributeAttributeSetter(jsVa lue, info);
3031 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3282 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3032 } 3283 }
3033 3284
3034 static void idAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info) 3285 static void idAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info)
3035 { 3286 {
3036 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3287 v8::Handle<v8::Object> holder = info.Holder();
3288 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3037 v8SetReturnValueString(info, impl->getIdAttribute(), info.GetIsolate()); 3289 v8SetReturnValueString(info, impl->getIdAttribute(), info.GetIsolate());
3038 } 3290 }
3039 3291
3040 static void idAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyC allbackInfo<v8::Value>& info) 3292 static void idAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyC allbackInfo<v8::Value>& info)
3041 { 3293 {
3042 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3294 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3043 TestObjectPythonV8Internal::idAttributeGetter(info); 3295 TestObjectPythonV8Internal::idAttributeGetter(info);
3044 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3296 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3045 } 3297 }
3046 3298
3047 static void idAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCa llbackInfo<void>& info) 3299 static void idAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCa llbackInfo<void>& info)
3048 { 3300 {
3049 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3301 v8::Handle<v8::Object> holder = info.Holder();
3302 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3050 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3303 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3051 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3304 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3052 impl->setAttribute(HTMLNames::idAttr, cppValue); 3305 impl->setAttribute(HTMLNames::idAttr, cppValue);
3053 } 3306 }
3054 3307
3055 static void idAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value > jsValue, const v8::PropertyCallbackInfo<void>& info) 3308 static void idAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value > jsValue, const v8::PropertyCallbackInfo<void>& info)
3056 { 3309 {
3057 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3310 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3058 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3311 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3059 TestObjectPythonV8Internal::idAttributeSetter(jsValue, info); 3312 TestObjectPythonV8Internal::idAttributeSetter(jsValue, info);
3060 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3313 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3061 } 3314 }
3062 3315
3063 static void nameAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info) 3316 static void nameAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info)
3064 { 3317 {
3065 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3318 v8::Handle<v8::Object> holder = info.Holder();
3319 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3066 v8SetReturnValueString(info, impl->getNameAttribute(), info.GetIsolate()); 3320 v8SetReturnValueString(info, impl->getNameAttribute(), info.GetIsolate());
3067 } 3321 }
3068 3322
3069 static void nameAttributeGetterCallback(v8::Local<v8::String>, const v8::Propert yCallbackInfo<v8::Value>& info) 3323 static void nameAttributeGetterCallback(v8::Local<v8::String>, const v8::Propert yCallbackInfo<v8::Value>& info)
3070 { 3324 {
3071 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3325 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3072 TestObjectPythonV8Internal::nameAttributeGetter(info); 3326 TestObjectPythonV8Internal::nameAttributeGetter(info);
3073 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3327 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3074 } 3328 }
3075 3329
3076 static void nameAttributeSetter(v8::Local<v8::Value> jsValue, const v8::Property CallbackInfo<void>& info) 3330 static void nameAttributeSetter(v8::Local<v8::Value> jsValue, const v8::Property CallbackInfo<void>& info)
3077 { 3331 {
3078 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3332 v8::Handle<v8::Object> holder = info.Holder();
3333 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3079 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3334 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3080 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3335 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3081 impl->setAttribute(HTMLNames::nameAttr, cppValue); 3336 impl->setAttribute(HTMLNames::nameAttr, cppValue);
3082 } 3337 }
3083 3338
3084 static void nameAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Val ue> jsValue, const v8::PropertyCallbackInfo<void>& info) 3339 static void nameAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Val ue> jsValue, const v8::PropertyCallbackInfo<void>& info)
3085 { 3340 {
3086 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3341 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3087 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3342 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3088 TestObjectPythonV8Internal::nameAttributeSetter(jsValue, info); 3343 TestObjectPythonV8Internal::nameAttributeSetter(jsValue, info);
3089 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3344 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3090 } 3345 }
3091 3346
3092 static void classAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info ) 3347 static void classAttributeGetter(const v8::PropertyCallbackInfo<v8::Value>& info )
3093 { 3348 {
3094 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3349 v8::Handle<v8::Object> holder = info.Holder();
3350 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3095 v8SetReturnValueString(info, impl->getClassAttribute(), info.GetIsolate()); 3351 v8SetReturnValueString(info, impl->getClassAttribute(), info.GetIsolate());
3096 } 3352 }
3097 3353
3098 static void classAttributeGetterCallback(v8::Local<v8::String>, const v8::Proper tyCallbackInfo<v8::Value>& info) 3354 static void classAttributeGetterCallback(v8::Local<v8::String>, const v8::Proper tyCallbackInfo<v8::Value>& info)
3099 { 3355 {
3100 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3356 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3101 TestObjectPythonV8Internal::classAttributeGetter(info); 3357 TestObjectPythonV8Internal::classAttributeGetter(info);
3102 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3358 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3103 } 3359 }
3104 3360
3105 static void classAttributeSetter(v8::Local<v8::Value> jsValue, const v8::Propert yCallbackInfo<void>& info) 3361 static void classAttributeSetter(v8::Local<v8::Value> jsValue, const v8::Propert yCallbackInfo<void>& info)
3106 { 3362 {
3107 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3363 v8::Handle<v8::Object> holder = info.Holder();
3364 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3108 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3365 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3109 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3366 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3110 impl->setAttribute(HTMLNames::classAttr, cppValue); 3367 impl->setAttribute(HTMLNames::classAttr, cppValue);
3111 } 3368 }
3112 3369
3113 static void classAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Va lue> jsValue, const v8::PropertyCallbackInfo<void>& info) 3370 static void classAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Va lue> jsValue, const v8::PropertyCallbackInfo<void>& info)
3114 { 3371 {
3115 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3372 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3116 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3373 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3117 TestObjectPythonV8Internal::classAttributeSetter(jsValue, info); 3374 TestObjectPythonV8Internal::classAttributeSetter(jsValue, info);
3118 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3375 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3119 } 3376 }
3120 3377
3121 static void reflectedIdAttributeGetter(const v8::PropertyCallbackInfo<v8::Value> & info) 3378 static void reflectedIdAttributeGetter(const v8::PropertyCallbackInfo<v8::Value> & info)
3122 { 3379 {
3123 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3380 v8::Handle<v8::Object> holder = info.Holder();
3381 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3124 v8SetReturnValueString(info, impl->getIdAttribute(), info.GetIsolate()); 3382 v8SetReturnValueString(info, impl->getIdAttribute(), info.GetIsolate());
3125 } 3383 }
3126 3384
3127 static void reflectedIdAttributeGetterCallback(v8::Local<v8::String>, const v8:: PropertyCallbackInfo<v8::Value>& info) 3385 static void reflectedIdAttributeGetterCallback(v8::Local<v8::String>, const v8:: PropertyCallbackInfo<v8::Value>& info)
3128 { 3386 {
3129 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3387 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3130 TestObjectPythonV8Internal::reflectedIdAttributeGetter(info); 3388 TestObjectPythonV8Internal::reflectedIdAttributeGetter(info);
3131 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3389 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3132 } 3390 }
3133 3391
3134 static void reflectedIdAttributeSetter(v8::Local<v8::Value> jsValue, const v8::P ropertyCallbackInfo<void>& info) 3392 static void reflectedIdAttributeSetter(v8::Local<v8::Value> jsValue, const v8::P ropertyCallbackInfo<void>& info)
3135 { 3393 {
3136 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3394 v8::Handle<v8::Object> holder = info.Holder();
3395 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3137 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3396 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3138 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3397 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3139 impl->setAttribute(HTMLNames::idAttr, cppValue); 3398 impl->setAttribute(HTMLNames::idAttr, cppValue);
3140 } 3399 }
3141 3400
3142 static void reflectedIdAttributeSetterCallback(v8::Local<v8::String>, v8::Local< v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3401 static void reflectedIdAttributeSetterCallback(v8::Local<v8::String>, v8::Local< v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3143 { 3402 {
3144 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3403 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3145 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3404 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3146 TestObjectPythonV8Internal::reflectedIdAttributeSetter(jsValue, info); 3405 TestObjectPythonV8Internal::reflectedIdAttributeSetter(jsValue, info);
3147 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3406 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3148 } 3407 }
3149 3408
3150 static void reflectedNameAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info) 3409 static void reflectedNameAttributeGetter(const v8::PropertyCallbackInfo<v8::Valu e>& info)
3151 { 3410 {
3152 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3411 v8::Handle<v8::Object> holder = info.Holder();
3412 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3153 v8SetReturnValueString(info, impl->getNameAttribute(), info.GetIsolate()); 3413 v8SetReturnValueString(info, impl->getNameAttribute(), info.GetIsolate());
3154 } 3414 }
3155 3415
3156 static void reflectedNameAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info) 3416 static void reflectedNameAttributeGetterCallback(v8::Local<v8::String>, const v8 ::PropertyCallbackInfo<v8::Value>& info)
3157 { 3417 {
3158 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3418 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3159 TestObjectPythonV8Internal::reflectedNameAttributeGetter(info); 3419 TestObjectPythonV8Internal::reflectedNameAttributeGetter(info);
3160 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3420 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3161 } 3421 }
3162 3422
3163 static void reflectedNameAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info) 3423 static void reflectedNameAttributeSetter(v8::Local<v8::Value> jsValue, const v8: :PropertyCallbackInfo<void>& info)
3164 { 3424 {
3165 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3425 v8::Handle<v8::Object> holder = info.Holder();
3426 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3166 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3427 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3167 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3428 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3168 impl->setAttribute(HTMLNames::nameAttr, cppValue); 3429 impl->setAttribute(HTMLNames::nameAttr, cppValue);
3169 } 3430 }
3170 3431
3171 static void reflectedNameAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3432 static void reflectedNameAttributeSetterCallback(v8::Local<v8::String>, v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3172 { 3433 {
3173 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3434 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3174 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3435 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3175 TestObjectPythonV8Internal::reflectedNameAttributeSetter(jsValue, info); 3436 TestObjectPythonV8Internal::reflectedNameAttributeSetter(jsValue, info);
3176 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3437 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3177 } 3438 }
3178 3439
3179 static void reflectedClassAttributeGetter(const v8::PropertyCallbackInfo<v8::Val ue>& info) 3440 static void reflectedClassAttributeGetter(const v8::PropertyCallbackInfo<v8::Val ue>& info)
3180 { 3441 {
3181 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3442 v8::Handle<v8::Object> holder = info.Holder();
3443 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3182 v8SetReturnValueString(info, impl->getClassAttribute(), info.GetIsolate()); 3444 v8SetReturnValueString(info, impl->getClassAttribute(), info.GetIsolate());
3183 } 3445 }
3184 3446
3185 static void reflectedClassAttributeGetterCallback(v8::Local<v8::String>, const v 8::PropertyCallbackInfo<v8::Value>& info) 3447 static void reflectedClassAttributeGetterCallback(v8::Local<v8::String>, const v 8::PropertyCallbackInfo<v8::Value>& info)
3186 { 3448 {
3187 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3449 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3188 TestObjectPythonV8Internal::reflectedClassAttributeGetter(info); 3450 TestObjectPythonV8Internal::reflectedClassAttributeGetter(info);
3189 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3451 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3190 } 3452 }
3191 3453
3192 static void reflectedClassAttributeSetter(v8::Local<v8::Value> jsValue, const v8 ::PropertyCallbackInfo<void>& info) 3454 static void reflectedClassAttributeSetter(v8::Local<v8::Value> jsValue, const v8 ::PropertyCallbackInfo<void>& info)
3193 { 3455 {
3194 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3456 v8::Handle<v8::Object> holder = info.Holder();
3457 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3195 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3458 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3196 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3459 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3197 impl->setAttribute(HTMLNames::classAttr, cppValue); 3460 impl->setAttribute(HTMLNames::classAttr, cppValue);
3198 } 3461 }
3199 3462
3200 static void reflectedClassAttributeSetterCallback(v8::Local<v8::String>, v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3463 static void reflectedClassAttributeSetterCallback(v8::Local<v8::String>, v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3201 { 3464 {
3202 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3465 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3203 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3466 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3204 TestObjectPythonV8Internal::reflectedClassAttributeSetter(jsValue, info); 3467 TestObjectPythonV8Internal::reflectedClassAttributeSetter(jsValue, info);
3205 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3468 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3206 } 3469 }
3207 3470
3208 static void limitedToOnlyOneAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info) 3471 static void limitedToOnlyOneAttributeAttributeGetter(const v8::PropertyCallbackI nfo<v8::Value>& info)
3209 { 3472 {
3210 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3473 v8::Handle<v8::Object> holder = info.Holder();
3474 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3211 String resultValue = impl->fastGetAttribute(HTMLNames::limitedtoonlyoneattri buteAttr); 3475 String resultValue = impl->fastGetAttribute(HTMLNames::limitedtoonlyoneattri buteAttr);
3212 if (resultValue.isEmpty()) { 3476 if (resultValue.isEmpty()) {
3213 ; 3477 ;
3214 } else if (equalIgnoringCase(resultValue, "unique")) { 3478 } else if (equalIgnoringCase(resultValue, "unique")) {
3215 resultValue = "unique"; 3479 resultValue = "unique";
3216 } else { 3480 } else {
3217 resultValue = ""; 3481 resultValue = "";
3218 } 3482 }
3219 v8SetReturnValueString(info, resultValue, info.GetIsolate()); 3483 v8SetReturnValueString(info, resultValue, info.GetIsolate());
3220 } 3484 }
3221 3485
3222 static void limitedToOnlyOneAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info) 3486 static void limitedToOnlyOneAttributeAttributeGetterCallback(v8::Local<v8::Strin g>, const v8::PropertyCallbackInfo<v8::Value>& info)
3223 { 3487 {
3224 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3488 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3225 TestObjectPythonV8Internal::limitedToOnlyOneAttributeAttributeGetter(info); 3489 TestObjectPythonV8Internal::limitedToOnlyOneAttributeAttributeGetter(info);
3226 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3490 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3227 } 3491 }
3228 3492
3229 static void limitedToOnlyOneAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info) 3493 static void limitedToOnlyOneAttributeAttributeSetter(v8::Local<v8::Value> jsValu e, const v8::PropertyCallbackInfo<void>& info)
3230 { 3494 {
3231 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3495 v8::Handle<v8::Object> holder = info.Holder();
3496 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3232 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3497 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3233 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3498 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3234 impl->setAttribute(HTMLNames::limitedtoonlyoneattributeAttr, cppValue); 3499 impl->setAttribute(HTMLNames::limitedtoonlyoneattributeAttr, cppValue);
3235 } 3500 }
3236 3501
3237 static void limitedToOnlyOneAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3502 static void limitedToOnlyOneAttributeAttributeSetterCallback(v8::Local<v8::Strin g>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3238 { 3503 {
3239 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3504 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3240 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3505 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3241 TestObjectPythonV8Internal::limitedToOnlyOneAttributeAttributeSetter(jsValue , info); 3506 TestObjectPythonV8Internal::limitedToOnlyOneAttributeAttributeSetter(jsValue , info);
3242 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3507 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3243 } 3508 }
3244 3509
3245 static void limitedToOnlyAttributeAttributeGetter(const v8::PropertyCallbackInfo <v8::Value>& info) 3510 static void limitedToOnlyAttributeAttributeGetter(const v8::PropertyCallbackInfo <v8::Value>& info)
3246 { 3511 {
3247 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3512 v8::Handle<v8::Object> holder = info.Holder();
3513 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3248 String resultValue = impl->fastGetAttribute(HTMLNames::limitedtoonlyattribut eAttr); 3514 String resultValue = impl->fastGetAttribute(HTMLNames::limitedtoonlyattribut eAttr);
3249 if (resultValue.isEmpty()) { 3515 if (resultValue.isEmpty()) {
3250 ; 3516 ;
3251 } else if (equalIgnoringCase(resultValue, "Per")) { 3517 } else if (equalIgnoringCase(resultValue, "Per")) {
3252 resultValue = "Per"; 3518 resultValue = "Per";
3253 } else if (equalIgnoringCase(resultValue, "Paal")) { 3519 } else if (equalIgnoringCase(resultValue, "Paal")) {
3254 resultValue = "Paal"; 3520 resultValue = "Paal";
3255 } else if (equalIgnoringCase(resultValue, "Espen")) { 3521 } else if (equalIgnoringCase(resultValue, "Espen")) {
3256 resultValue = "Espen"; 3522 resultValue = "Espen";
3257 } else { 3523 } else {
3258 resultValue = ""; 3524 resultValue = "";
3259 } 3525 }
3260 v8SetReturnValueString(info, resultValue, info.GetIsolate()); 3526 v8SetReturnValueString(info, resultValue, info.GetIsolate());
3261 } 3527 }
3262 3528
3263 static void limitedToOnlyAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3529 static void limitedToOnlyAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3264 { 3530 {
3265 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3531 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3266 TestObjectPythonV8Internal::limitedToOnlyAttributeAttributeGetter(info); 3532 TestObjectPythonV8Internal::limitedToOnlyAttributeAttributeGetter(info);
3267 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3533 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3268 } 3534 }
3269 3535
3270 static void limitedToOnlyAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3536 static void limitedToOnlyAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3271 { 3537 {
3272 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3538 v8::Handle<v8::Object> holder = info.Holder();
3539 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3273 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3540 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3274 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3541 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3275 impl->setAttribute(HTMLNames::limitedtoonlyattributeAttr, cppValue); 3542 impl->setAttribute(HTMLNames::limitedtoonlyattributeAttr, cppValue);
3276 } 3543 }
3277 3544
3278 static void limitedToOnlyAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3545 static void limitedToOnlyAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3279 { 3546 {
3280 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3547 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3281 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3548 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3282 TestObjectPythonV8Internal::limitedToOnlyAttributeAttributeSetter(jsValue, i nfo); 3549 TestObjectPythonV8Internal::limitedToOnlyAttributeAttributeSetter(jsValue, i nfo);
3283 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3550 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3284 } 3551 }
3285 3552
3286 static void limitedToOnlyOtherAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info) 3553 static void limitedToOnlyOtherAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info)
3287 { 3554 {
3288 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3555 v8::Handle<v8::Object> holder = info.Holder();
3556 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3289 String resultValue = impl->fastGetAttribute(HTMLNames::OtherAttr); 3557 String resultValue = impl->fastGetAttribute(HTMLNames::OtherAttr);
3290 if (resultValue.isEmpty()) { 3558 if (resultValue.isEmpty()) {
3291 ; 3559 ;
3292 } else if (equalIgnoringCase(resultValue, "Value1")) { 3560 } else if (equalIgnoringCase(resultValue, "Value1")) {
3293 resultValue = "Value1"; 3561 resultValue = "Value1";
3294 } else if (equalIgnoringCase(resultValue, "Value2")) { 3562 } else if (equalIgnoringCase(resultValue, "Value2")) {
3295 resultValue = "Value2"; 3563 resultValue = "Value2";
3296 } else { 3564 } else {
3297 resultValue = ""; 3565 resultValue = "";
3298 } 3566 }
3299 v8SetReturnValueString(info, resultValue, info.GetIsolate()); 3567 v8SetReturnValueString(info, resultValue, info.GetIsolate());
3300 } 3568 }
3301 3569
3302 static void limitedToOnlyOtherAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info) 3570 static void limitedToOnlyOtherAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info)
3303 { 3571 {
3304 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3572 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3305 TestObjectPythonV8Internal::limitedToOnlyOtherAttributeAttributeGetter(info) ; 3573 TestObjectPythonV8Internal::limitedToOnlyOtherAttributeAttributeGetter(info) ;
3306 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3574 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3307 } 3575 }
3308 3576
3309 static void limitedToOnlyOtherAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info) 3577 static void limitedToOnlyOtherAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info)
3310 { 3578 {
3311 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3579 v8::Handle<v8::Object> holder = info.Holder();
3580 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3312 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3581 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3313 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3582 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3314 impl->setAttribute(HTMLNames::OtherAttr, cppValue); 3583 impl->setAttribute(HTMLNames::OtherAttr, cppValue);
3315 } 3584 }
3316 3585
3317 static void limitedToOnlyOtherAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3586 static void limitedToOnlyOtherAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3318 { 3587 {
3319 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3588 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3320 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3589 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3321 TestObjectPythonV8Internal::limitedToOnlyOtherAttributeAttributeSetter(jsVal ue, info); 3590 TestObjectPythonV8Internal::limitedToOnlyOtherAttributeAttributeSetter(jsVal ue, info);
3322 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3591 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3323 } 3592 }
3324 3593
3325 static void limitedWithMissingDefaultAttributeAttributeGetter(const v8::Property CallbackInfo<v8::Value>& info) 3594 static void limitedWithMissingDefaultAttributeAttributeGetter(const v8::Property CallbackInfo<v8::Value>& info)
3326 { 3595 {
3327 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3596 v8::Handle<v8::Object> holder = info.Holder();
3597 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3328 String resultValue = impl->fastGetAttribute(HTMLNames::limitedwithmissingdef aultattributeAttr); 3598 String resultValue = impl->fastGetAttribute(HTMLNames::limitedwithmissingdef aultattributeAttr);
3329 if (resultValue.isEmpty()) { 3599 if (resultValue.isEmpty()) {
3330 resultValue = "rsa"; 3600 resultValue = "rsa";
3331 } else if (equalIgnoringCase(resultValue, "rsa")) { 3601 } else if (equalIgnoringCase(resultValue, "rsa")) {
3332 resultValue = "rsa"; 3602 resultValue = "rsa";
3333 } else if (equalIgnoringCase(resultValue, "dsa")) { 3603 } else if (equalIgnoringCase(resultValue, "dsa")) {
3334 resultValue = "dsa"; 3604 resultValue = "dsa";
3335 } else { 3605 } else {
3336 resultValue = ""; 3606 resultValue = "";
3337 } 3607 }
3338 v8SetReturnValueString(info, resultValue, info.GetIsolate()); 3608 v8SetReturnValueString(info, resultValue, info.GetIsolate());
3339 } 3609 }
3340 3610
3341 static void limitedWithMissingDefaultAttributeAttributeGetterCallback(v8::Local< v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3611 static void limitedWithMissingDefaultAttributeAttributeGetterCallback(v8::Local< v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3342 { 3612 {
3343 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3613 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3344 TestObjectPythonV8Internal::limitedWithMissingDefaultAttributeAttributeGette r(info); 3614 TestObjectPythonV8Internal::limitedWithMissingDefaultAttributeAttributeGette r(info);
3345 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3615 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3346 } 3616 }
3347 3617
3348 static void limitedWithMissingDefaultAttributeAttributeSetter(v8::Local<v8::Valu e> jsValue, const v8::PropertyCallbackInfo<void>& info) 3618 static void limitedWithMissingDefaultAttributeAttributeSetter(v8::Local<v8::Valu e> jsValue, const v8::PropertyCallbackInfo<void>& info)
3349 { 3619 {
3350 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3620 v8::Handle<v8::Object> holder = info.Holder();
3621 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3351 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3622 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3352 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3623 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3353 impl->setAttribute(HTMLNames::limitedwithmissingdefaultattributeAttr, cppVal ue); 3624 impl->setAttribute(HTMLNames::limitedwithmissingdefaultattributeAttr, cppVal ue);
3354 } 3625 }
3355 3626
3356 static void limitedWithMissingDefaultAttributeAttributeSetterCallback(v8::Local< v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3627 static void limitedWithMissingDefaultAttributeAttributeSetterCallback(v8::Local< v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3357 { 3628 {
3358 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3629 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3359 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3630 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3360 TestObjectPythonV8Internal::limitedWithMissingDefaultAttributeAttributeSette r(jsValue, info); 3631 TestObjectPythonV8Internal::limitedWithMissingDefaultAttributeAttributeSette r(jsValue, info);
3361 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3632 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3362 } 3633 }
3363 3634
3364 static void limitedWithInvalidMissingDefaultAttributeAttributeGetter(const v8::P ropertyCallbackInfo<v8::Value>& info) 3635 static void limitedWithInvalidMissingDefaultAttributeAttributeGetter(const v8::P ropertyCallbackInfo<v8::Value>& info)
3365 { 3636 {
3366 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3637 v8::Handle<v8::Object> holder = info.Holder();
3638 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3367 String resultValue = impl->fastGetAttribute(HTMLNames::limitedwithinvalidmis singdefaultattributeAttr); 3639 String resultValue = impl->fastGetAttribute(HTMLNames::limitedwithinvalidmis singdefaultattributeAttr);
3368 if (resultValue.isEmpty()) { 3640 if (resultValue.isEmpty()) {
3369 resultValue = "auto"; 3641 resultValue = "auto";
3370 } else if (equalIgnoringCase(resultValue, "ltr")) { 3642 } else if (equalIgnoringCase(resultValue, "ltr")) {
3371 resultValue = "ltr"; 3643 resultValue = "ltr";
3372 } else if (equalIgnoringCase(resultValue, "rtl")) { 3644 } else if (equalIgnoringCase(resultValue, "rtl")) {
3373 resultValue = "rtl"; 3645 resultValue = "rtl";
3374 } else if (equalIgnoringCase(resultValue, "auto")) { 3646 } else if (equalIgnoringCase(resultValue, "auto")) {
3375 resultValue = "auto"; 3647 resultValue = "auto";
3376 } else { 3648 } else {
3377 resultValue = "ltr"; 3649 resultValue = "ltr";
3378 } 3650 }
3379 v8SetReturnValueString(info, resultValue, info.GetIsolate()); 3651 v8SetReturnValueString(info, resultValue, info.GetIsolate());
3380 } 3652 }
3381 3653
3382 static void limitedWithInvalidMissingDefaultAttributeAttributeGetterCallback(v8: :Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3654 static void limitedWithInvalidMissingDefaultAttributeAttributeGetterCallback(v8: :Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3383 { 3655 {
3384 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3656 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3385 TestObjectPythonV8Internal::limitedWithInvalidMissingDefaultAttributeAttribu teGetter(info); 3657 TestObjectPythonV8Internal::limitedWithInvalidMissingDefaultAttributeAttribu teGetter(info);
3386 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3658 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3387 } 3659 }
3388 3660
3389 static void limitedWithInvalidMissingDefaultAttributeAttributeSetter(v8::Local<v 8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3661 static void limitedWithInvalidMissingDefaultAttributeAttributeSetter(v8::Local<v 8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3390 { 3662 {
3391 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3663 v8::Handle<v8::Object> holder = info.Holder();
3664 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3392 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3665 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3393 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3666 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3394 impl->setAttribute(HTMLNames::limitedwithinvalidmissingdefaultattributeAttr, cppValue); 3667 impl->setAttribute(HTMLNames::limitedwithinvalidmissingdefaultattributeAttr, cppValue);
3395 } 3668 }
3396 3669
3397 static void limitedWithInvalidMissingDefaultAttributeAttributeSetterCallback(v8: :Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo <void>& info) 3670 static void limitedWithInvalidMissingDefaultAttributeAttributeSetterCallback(v8: :Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo <void>& info)
3398 { 3671 {
3399 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3672 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3400 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 3673 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3401 TestObjectPythonV8Internal::limitedWithInvalidMissingDefaultAttributeAttribu teSetter(jsValue, info); 3674 TestObjectPythonV8Internal::limitedWithInvalidMissingDefaultAttributeAttribu teSetter(jsValue, info);
3402 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3675 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3403 } 3676 }
3404 3677
3405 static void corsSettingAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info) 3678 static void corsSettingAttributeAttributeGetter(const v8::PropertyCallbackInfo<v 8::Value>& info)
3406 { 3679 {
3407 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3680 v8::Handle<v8::Object> holder = info.Holder();
3681 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3408 String resultValue = impl->fastGetAttribute(HTMLNames::corssettingattributeA ttr); 3682 String resultValue = impl->fastGetAttribute(HTMLNames::corssettingattributeA ttr);
3409 if (resultValue.isNull()) { 3683 if (resultValue.isNull()) {
3410 ; 3684 ;
3411 } else if (resultValue.isEmpty()) { 3685 } else if (resultValue.isEmpty()) {
3412 resultValue = "anonymous"; 3686 resultValue = "anonymous";
3413 } else if (equalIgnoringCase(resultValue, "anonymous")) { 3687 } else if (equalIgnoringCase(resultValue, "anonymous")) {
3414 resultValue = "anonymous"; 3688 resultValue = "anonymous";
3415 } else if (equalIgnoringCase(resultValue, "use-credentials")) { 3689 } else if (equalIgnoringCase(resultValue, "use-credentials")) {
3416 resultValue = "use-credentials"; 3690 resultValue = "use-credentials";
3417 } else { 3691 } else {
3418 resultValue = "anonymous"; 3692 resultValue = "anonymous";
3419 } 3693 }
3420 v8SetReturnValueString(info, resultValue, info.GetIsolate()); 3694 v8SetReturnValueString(info, resultValue, info.GetIsolate());
3421 } 3695 }
3422 3696
3423 static void corsSettingAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info) 3697 static void corsSettingAttributeAttributeGetterCallback(v8::Local<v8::String>, c onst v8::PropertyCallbackInfo<v8::Value>& info)
3424 { 3698 {
3425 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3699 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3426 TestObjectPythonV8Internal::corsSettingAttributeAttributeGetter(info); 3700 TestObjectPythonV8Internal::corsSettingAttributeAttributeGetter(info);
3427 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3701 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3428 } 3702 }
3429 3703
3430 static void limitedWithEmptyMissingInvalidAttributeAttributeGetter(const v8::Pro pertyCallbackInfo<v8::Value>& info) 3704 static void limitedWithEmptyMissingInvalidAttributeAttributeGetter(const v8::Pro pertyCallbackInfo<v8::Value>& info)
3431 { 3705 {
3432 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3706 v8::Handle<v8::Object> holder = info.Holder();
3707 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3433 String resultValue = impl->fastGetAttribute(HTMLNames::limitedwithemptymissi nginvalidattributeAttr); 3708 String resultValue = impl->fastGetAttribute(HTMLNames::limitedwithemptymissi nginvalidattributeAttr);
3434 if (resultValue.isNull()) { 3709 if (resultValue.isNull()) {
3435 resultValue = "missing"; 3710 resultValue = "missing";
3436 } else if (resultValue.isEmpty()) { 3711 } else if (resultValue.isEmpty()) {
3437 resultValue = "empty"; 3712 resultValue = "empty";
3438 } else if (equalIgnoringCase(resultValue, "empty")) { 3713 } else if (equalIgnoringCase(resultValue, "empty")) {
3439 resultValue = "empty"; 3714 resultValue = "empty";
3440 } else if (equalIgnoringCase(resultValue, "missing")) { 3715 } else if (equalIgnoringCase(resultValue, "missing")) {
3441 resultValue = "missing"; 3716 resultValue = "missing";
3442 } else if (equalIgnoringCase(resultValue, "invalid")) { 3717 } else if (equalIgnoringCase(resultValue, "invalid")) {
3443 resultValue = "invalid"; 3718 resultValue = "invalid";
3444 } else if (equalIgnoringCase(resultValue, "a-normal")) { 3719 } else if (equalIgnoringCase(resultValue, "a-normal")) {
3445 resultValue = "a-normal"; 3720 resultValue = "a-normal";
3446 } else { 3721 } else {
3447 resultValue = "invalid"; 3722 resultValue = "invalid";
3448 } 3723 }
3449 v8SetReturnValueString(info, resultValue, info.GetIsolate()); 3724 v8SetReturnValueString(info, resultValue, info.GetIsolate());
3450 } 3725 }
3451 3726
3452 static void limitedWithEmptyMissingInvalidAttributeAttributeGetterCallback(v8::L ocal<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3727 static void limitedWithEmptyMissingInvalidAttributeAttributeGetterCallback(v8::L ocal<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3453 { 3728 {
3454 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3729 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3455 TestObjectPythonV8Internal::limitedWithEmptyMissingInvalidAttributeAttribute Getter(info); 3730 TestObjectPythonV8Internal::limitedWithEmptyMissingInvalidAttributeAttribute Getter(info);
3456 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3731 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3457 } 3732 }
3458 3733
3459 static void replaceableReadonlyLongAttributeAttributeGetter(const v8::PropertyCa llbackInfo<v8::Value>& info) 3734 static void replaceableReadonlyLongAttributeAttributeGetter(const v8::PropertyCa llbackInfo<v8::Value>& info)
3460 { 3735 {
3461 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3736 v8::Handle<v8::Object> holder = info.Holder();
3737 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3462 v8SetReturnValueInt(info, impl->replaceableReadonlyLongAttribute()); 3738 v8SetReturnValueInt(info, impl->replaceableReadonlyLongAttribute());
3463 } 3739 }
3464 3740
3465 static void replaceableReadonlyLongAttributeAttributeGetterCallback(v8::Local<v8 ::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3741 static void replaceableReadonlyLongAttributeAttributeGetterCallback(v8::Local<v8 ::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3466 { 3742 {
3467 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3743 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3468 TestObjectPythonV8Internal::replaceableReadonlyLongAttributeAttributeGetter( info); 3744 TestObjectPythonV8Internal::replaceableReadonlyLongAttributeAttributeGetter( info);
3469 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3745 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3470 } 3746 }
3471 3747
3472 static void locationReplaceableAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info) 3748 static void locationReplaceableAttributeGetter(const v8::PropertyCallbackInfo<v8 ::Value>& info)
3473 { 3749 {
3474 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3750 v8::Handle<v8::Object> holder = info.Holder();
3751 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3475 v8SetReturnValueFast(info, WTF::getPtr(impl->locationReplaceable()), impl); 3752 v8SetReturnValueFast(info, WTF::getPtr(impl->locationReplaceable()), impl);
3476 } 3753 }
3477 3754
3478 static void locationReplaceableAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info) 3755 static void locationReplaceableAttributeGetterCallback(v8::Local<v8::String>, co nst v8::PropertyCallbackInfo<v8::Value>& info)
3479 { 3756 {
3480 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3757 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3481 TestObjectPythonV8Internal::locationReplaceableAttributeGetter(info); 3758 TestObjectPythonV8Internal::locationReplaceableAttributeGetter(info);
3482 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3759 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3483 } 3760 }
3484 3761
3485 static void locationReplaceableAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info) 3762 static void locationReplaceableAttributeSetter(v8::Local<v8::Value> jsValue, con st v8::PropertyCallbackInfo<void>& info)
3486 { 3763 {
3487 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(info.Holder()); 3764 v8::Handle<v8::Object> holder = info.Holder();
3765 TestObjectPython* proxyImpl = V8TestObjectPython::toNative(holder);
3488 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationReplaceable()); 3766 RefPtr<TestNode> impl = WTF::getPtr(proxyImpl->locationReplaceable());
3489 if (!impl) 3767 if (!impl)
3490 return; 3768 return;
3491 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3769 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3492 impl->setHref(cppValue); 3770 impl->setHref(cppValue);
3493 } 3771 }
3494 3772
3495 static void locationReplaceableAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3773 static void locationReplaceableAttributeSetterCallback(v8::Local<v8::String>, v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3496 { 3774 {
3497 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3775 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3498 TestObjectPythonV8Internal::locationReplaceableAttributeSetter(jsValue, info ); 3776 TestObjectPythonV8Internal::locationReplaceableAttributeSetter(jsValue, info );
3499 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3777 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3500 } 3778 }
3501 3779
3502 static void runtimeEnabledLongAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info) 3780 static void runtimeEnabledLongAttributeAttributeGetter(const v8::PropertyCallbac kInfo<v8::Value>& info)
3503 { 3781 {
3504 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3782 v8::Handle<v8::Object> holder = info.Holder();
3783 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3505 v8SetReturnValueInt(info, impl->runtimeEnabledLongAttribute()); 3784 v8SetReturnValueInt(info, impl->runtimeEnabledLongAttribute());
3506 } 3785 }
3507 3786
3508 static void runtimeEnabledLongAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info) 3787 static void runtimeEnabledLongAttributeAttributeGetterCallback(v8::Local<v8::Str ing>, const v8::PropertyCallbackInfo<v8::Value>& info)
3509 { 3788 {
3510 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3789 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3511 TestObjectPythonV8Internal::runtimeEnabledLongAttributeAttributeGetter(info) ; 3790 TestObjectPythonV8Internal::runtimeEnabledLongAttributeAttributeGetter(info) ;
3512 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3791 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3513 } 3792 }
3514 3793
3515 static void runtimeEnabledLongAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info) 3794 static void runtimeEnabledLongAttributeAttributeSetter(v8::Local<v8::Value> jsVa lue, const v8::PropertyCallbackInfo<void>& info)
3516 { 3795 {
3517 ExceptionState exceptionState(ExceptionState::SetterContext, "runtimeEnabled LongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 3796 v8::Isolate* isolate = info.GetIsolate();
3518 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3797 v8::Handle<v8::Object> holder = info.Holder();
3798 ExceptionState exceptionState(ExceptionState::SetterContext, "runtimeEnabled LongAttribute", "TestObjectPython", holder, isolate);
3799 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3519 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 3800 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
3520 impl->setRuntimeEnabledLongAttribute(cppValue); 3801 impl->setRuntimeEnabledLongAttribute(cppValue);
3521 } 3802 }
3522 3803
3523 static void runtimeEnabledLongAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3804 static void runtimeEnabledLongAttributeAttributeSetterCallback(v8::Local<v8::Str ing>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3524 { 3805 {
3525 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3806 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3526 TestObjectPythonV8Internal::runtimeEnabledLongAttributeAttributeSetter(jsVal ue, info); 3807 TestObjectPythonV8Internal::runtimeEnabledLongAttributeAttributeSetter(jsVal ue, info);
3527 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3808 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3528 } 3809 }
3529 3810
3530 static void perContextEnabledRuntimeEnabledLongAttributeAttributeGetter(const v8 ::PropertyCallbackInfo<v8::Value>& info) 3811 static void perContextEnabledRuntimeEnabledLongAttributeAttributeGetter(const v8 ::PropertyCallbackInfo<v8::Value>& info)
3531 { 3812 {
3532 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3813 v8::Handle<v8::Object> holder = info.Holder();
3814 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3533 v8SetReturnValueInt(info, impl->perContextEnabledRuntimeEnabledLongAttribute ()); 3815 v8SetReturnValueInt(info, impl->perContextEnabledRuntimeEnabledLongAttribute ());
3534 } 3816 }
3535 3817
3536 static void perContextEnabledRuntimeEnabledLongAttributeAttributeGetterCallback( v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3818 static void perContextEnabledRuntimeEnabledLongAttributeAttributeGetterCallback( v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3537 { 3819 {
3538 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3820 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3539 TestObjectPythonV8Internal::perContextEnabledRuntimeEnabledLongAttributeAttr ibuteGetter(info); 3821 TestObjectPythonV8Internal::perContextEnabledRuntimeEnabledLongAttributeAttr ibuteGetter(info);
3540 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3822 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3541 } 3823 }
3542 3824
3543 static void perContextEnabledRuntimeEnabledLongAttributeAttributeSetter(v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3825 static void perContextEnabledRuntimeEnabledLongAttributeAttributeSetter(v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3544 { 3826 {
3545 ExceptionState exceptionState(ExceptionState::SetterContext, "perContextEnab ledRuntimeEnabledLongAttribute", "TestObjectPython", info.Holder(), info.GetIsol ate()); 3827 v8::Isolate* isolate = info.GetIsolate();
3546 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3828 v8::Handle<v8::Object> holder = info.Holder();
3829 ExceptionState exceptionState(ExceptionState::SetterContext, "perContextEnab ledRuntimeEnabledLongAttribute", "TestObjectPython", holder, isolate);
3830 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3547 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 3831 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
3548 impl->setPerContextEnabledRuntimeEnabledLongAttribute(cppValue); 3832 impl->setPerContextEnabledRuntimeEnabledLongAttribute(cppValue);
3549 } 3833 }
3550 3834
3551 static void perContextEnabledRuntimeEnabledLongAttributeAttributeSetterCallback( v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackI nfo<void>& info) 3835 static void perContextEnabledRuntimeEnabledLongAttributeAttributeSetterCallback( v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackI nfo<void>& info)
3552 { 3836 {
3553 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3837 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3554 TestObjectPythonV8Internal::perContextEnabledRuntimeEnabledLongAttributeAttr ibuteSetter(jsValue, info); 3838 TestObjectPythonV8Internal::perContextEnabledRuntimeEnabledLongAttributeAttr ibuteSetter(jsValue, info);
3555 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3839 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3556 } 3840 }
3557 3841
3558 #if ENABLE(CONDITION) 3842 #if ENABLE(CONDITION)
3559 static void conditionalRuntimeEnabledLongAttributeAttributeGetter(const v8::Prop ertyCallbackInfo<v8::Value>& info) 3843 static void conditionalRuntimeEnabledLongAttributeAttributeGetter(const v8::Prop ertyCallbackInfo<v8::Value>& info)
3560 { 3844 {
3561 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3845 v8::Handle<v8::Object> holder = info.Holder();
3846 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3562 v8SetReturnValueInt(info, impl->conditionalRuntimeEnabledLongAttribute()); 3847 v8SetReturnValueInt(info, impl->conditionalRuntimeEnabledLongAttribute());
3563 } 3848 }
3564 #endif // ENABLE(CONDITION) 3849 #endif // ENABLE(CONDITION)
3565 3850
3566 #if ENABLE(CONDITION) 3851 #if ENABLE(CONDITION)
3567 static void conditionalRuntimeEnabledLongAttributeAttributeGetterCallback(v8::Lo cal<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3852 static void conditionalRuntimeEnabledLongAttributeAttributeGetterCallback(v8::Lo cal<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3568 { 3853 {
3569 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3854 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3570 TestObjectPythonV8Internal::conditionalRuntimeEnabledLongAttributeAttributeG etter(info); 3855 TestObjectPythonV8Internal::conditionalRuntimeEnabledLongAttributeAttributeG etter(info);
3571 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3856 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3572 } 3857 }
3573 #endif // ENABLE(CONDITION) 3858 #endif // ENABLE(CONDITION)
3574 3859
3575 #if ENABLE(CONDITION) 3860 #if ENABLE(CONDITION)
3576 static void conditionalRuntimeEnabledLongAttributeAttributeSetter(v8::Local<v8:: Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3861 static void conditionalRuntimeEnabledLongAttributeAttributeSetter(v8::Local<v8:: Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3577 { 3862 {
3578 ExceptionState exceptionState(ExceptionState::SetterContext, "conditionalRun timeEnabledLongAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()) ; 3863 v8::Isolate* isolate = info.GetIsolate();
3579 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3864 v8::Handle<v8::Object> holder = info.Holder();
3865 ExceptionState exceptionState(ExceptionState::SetterContext, "conditionalRun timeEnabledLongAttribute", "TestObjectPython", holder, isolate);
3866 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3580 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 3867 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
3581 impl->setConditionalRuntimeEnabledLongAttribute(cppValue); 3868 impl->setConditionalRuntimeEnabledLongAttribute(cppValue);
3582 } 3869 }
3583 #endif // ENABLE(CONDITION) 3870 #endif // ENABLE(CONDITION)
3584 3871
3585 #if ENABLE(CONDITION) 3872 #if ENABLE(CONDITION)
3586 static void conditionalRuntimeEnabledLongAttributeAttributeSetterCallback(v8::Lo cal<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<vo id>& info) 3873 static void conditionalRuntimeEnabledLongAttributeAttributeSetterCallback(v8::Lo cal<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<vo id>& info)
3587 { 3874 {
3588 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3875 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3589 TestObjectPythonV8Internal::conditionalRuntimeEnabledLongAttributeAttributeS etter(jsValue, info); 3876 TestObjectPythonV8Internal::conditionalRuntimeEnabledLongAttributeAttributeS etter(jsValue, info);
3590 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3877 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3591 } 3878 }
3592 #endif // ENABLE(CONDITION) 3879 #endif // ENABLE(CONDITION)
3593 3880
3594 static void setterCallWithActiveWindowAndFirstWindowStringAttributeAttributeGett er(const v8::PropertyCallbackInfo<v8::Value>& info) 3881 static void setterCallWithActiveWindowAndFirstWindowStringAttributeAttributeGett er(const v8::PropertyCallbackInfo<v8::Value>& info)
3595 { 3882 {
3596 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3883 v8::Handle<v8::Object> holder = info.Holder();
3884 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3597 v8SetReturnValueString(info, impl->setterCallWithActiveWindowAndFirstWindowS tringAttribute(), info.GetIsolate()); 3885 v8SetReturnValueString(info, impl->setterCallWithActiveWindowAndFirstWindowS tringAttribute(), info.GetIsolate());
3598 } 3886 }
3599 3887
3600 static void setterCallWithActiveWindowAndFirstWindowStringAttributeAttributeGett erCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& inf o) 3888 static void setterCallWithActiveWindowAndFirstWindowStringAttributeAttributeGett erCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& inf o)
3601 { 3889 {
3602 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3890 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3603 TestObjectPythonV8Internal::setterCallWithActiveWindowAndFirstWindowStringAt tributeAttributeGetter(info); 3891 TestObjectPythonV8Internal::setterCallWithActiveWindowAndFirstWindowStringAt tributeAttributeGetter(info);
3604 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3892 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3605 } 3893 }
3606 3894
3607 static void setterCallWithActiveWindowAndFirstWindowStringAttributeAttributeSett er(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3895 static void setterCallWithActiveWindowAndFirstWindowStringAttributeAttributeSett er(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3608 { 3896 {
3609 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3897 v8::Handle<v8::Object> holder = info.Holder();
3898 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3610 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3899 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3611 impl->setSetterCallWithActiveWindowAndFirstWindowStringAttribute(callingDOMW indow(info.GetIsolate()), enteredDOMWindow(info.GetIsolate()), cppValue); 3900 impl->setSetterCallWithActiveWindowAndFirstWindowStringAttribute(callingDOMW indow(info.GetIsolate()), enteredDOMWindow(info.GetIsolate()), cppValue);
3612 } 3901 }
3613 3902
3614 static void setterCallWithActiveWindowAndFirstWindowStringAttributeAttributeSett erCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::Proper tyCallbackInfo<void>& info) 3903 static void setterCallWithActiveWindowAndFirstWindowStringAttributeAttributeSett erCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::Proper tyCallbackInfo<void>& info)
3615 { 3904 {
3616 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3905 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3617 TestObjectPythonV8Internal::setterCallWithActiveWindowAndFirstWindowStringAt tributeAttributeSetter(jsValue, info); 3906 TestObjectPythonV8Internal::setterCallWithActiveWindowAndFirstWindowStringAt tributeAttributeSetter(jsValue, info);
3618 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3907 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3619 } 3908 }
3620 3909
3621 static void setterCallWithExecutionContextStringAttributeAttributeGetter(const v 8::PropertyCallbackInfo<v8::Value>& info) 3910 static void setterCallWithExecutionContextStringAttributeAttributeGetter(const v 8::PropertyCallbackInfo<v8::Value>& info)
3622 { 3911 {
3623 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3912 v8::Handle<v8::Object> holder = info.Holder();
3913 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3624 v8SetReturnValueString(info, impl->setterCallWithExecutionContextStringAttri bute(), info.GetIsolate()); 3914 v8SetReturnValueString(info, impl->setterCallWithExecutionContextStringAttri bute(), info.GetIsolate());
3625 } 3915 }
3626 3916
3627 static void setterCallWithExecutionContextStringAttributeAttributeGetterCallback (v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3917 static void setterCallWithExecutionContextStringAttributeAttributeGetterCallback (v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3628 { 3918 {
3629 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3919 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3630 TestObjectPythonV8Internal::setterCallWithExecutionContextStringAttributeAtt ributeGetter(info); 3920 TestObjectPythonV8Internal::setterCallWithExecutionContextStringAttributeAtt ributeGetter(info);
3631 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3921 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3632 } 3922 }
3633 3923
3634 static void setterCallWithExecutionContextStringAttributeAttributeSetter(v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3924 static void setterCallWithExecutionContextStringAttributeAttributeSetter(v8::Loc al<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3635 { 3925 {
3636 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3926 v8::Isolate* isolate = info.GetIsolate();
3927 v8::Handle<v8::Object> holder = info.Holder();
3928 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3637 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 3929 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3638 ExecutionContext* scriptContext = currentExecutionContext(info.GetIsolate()) ; 3930 ExecutionContext* scriptContext = currentExecutionContext(isolate);
3639 impl->setSetterCallWithExecutionContextStringAttribute(scriptContext, cppVal ue); 3931 impl->setSetterCallWithExecutionContextStringAttribute(scriptContext, cppVal ue);
3640 } 3932 }
3641 3933
3642 static void setterCallWithExecutionContextStringAttributeAttributeSetterCallback (v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallback Info<void>& info) 3934 static void setterCallWithExecutionContextStringAttributeAttributeSetterCallback (v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallback Info<void>& info)
3643 { 3935 {
3644 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3936 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3645 TestObjectPythonV8Internal::setterCallWithExecutionContextStringAttributeAtt ributeSetter(jsValue, info); 3937 TestObjectPythonV8Internal::setterCallWithExecutionContextStringAttributeAtt ributeSetter(jsValue, info);
3646 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3938 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3647 } 3939 }
3648 3940
3649 static void strictTypeCheckingFloatAttributeAttributeGetter(const v8::PropertyCa llbackInfo<v8::Value>& info) 3941 static void strictTypeCheckingFloatAttributeAttributeGetter(const v8::PropertyCa llbackInfo<v8::Value>& info)
3650 { 3942 {
3651 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3943 v8::Handle<v8::Object> holder = info.Holder();
3944 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3652 v8SetReturnValue(info, impl->strictTypeCheckingFloatAttribute()); 3945 v8SetReturnValue(info, impl->strictTypeCheckingFloatAttribute());
3653 } 3946 }
3654 3947
3655 static void strictTypeCheckingFloatAttributeAttributeGetterCallback(v8::Local<v8 ::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3948 static void strictTypeCheckingFloatAttributeAttributeGetterCallback(v8::Local<v8 ::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3656 { 3949 {
3657 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3950 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3658 TestObjectPythonV8Internal::strictTypeCheckingFloatAttributeAttributeGetter( info); 3951 TestObjectPythonV8Internal::strictTypeCheckingFloatAttributeAttributeGetter( info);
3659 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3952 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3660 } 3953 }
3661 3954
3662 static void strictTypeCheckingFloatAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3955 static void strictTypeCheckingFloatAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3663 { 3956 {
3664 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3957 v8::Handle<v8::Object> holder = info.Holder();
3958 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3665 V8TRYCATCH_VOID(float, cppValue, static_cast<float>(jsValue->NumberValue())) ; 3959 V8TRYCATCH_VOID(float, cppValue, static_cast<float>(jsValue->NumberValue())) ;
3666 impl->setStrictTypeCheckingFloatAttribute(cppValue); 3960 impl->setStrictTypeCheckingFloatAttribute(cppValue);
3667 } 3961 }
3668 3962
3669 static void strictTypeCheckingFloatAttributeAttributeSetterCallback(v8::Local<v8 ::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& i nfo) 3963 static void strictTypeCheckingFloatAttributeAttributeSetterCallback(v8::Local<v8 ::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& i nfo)
3670 { 3964 {
3671 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 3965 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3672 TestObjectPythonV8Internal::strictTypeCheckingFloatAttributeAttributeSetter( jsValue, info); 3966 TestObjectPythonV8Internal::strictTypeCheckingFloatAttributeAttributeSetter( jsValue, info);
3673 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3967 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3674 } 3968 }
3675 3969
3676 static void strictTypeCheckingTestInterfaceAttributeAttributeGetter(const v8::Pr opertyCallbackInfo<v8::Value>& info) 3970 static void strictTypeCheckingTestInterfaceAttributeAttributeGetter(const v8::Pr opertyCallbackInfo<v8::Value>& info)
3677 { 3971 {
3678 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3972 v8::Handle<v8::Object> holder = info.Holder();
3973 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3679 v8SetReturnValueFast(info, WTF::getPtr(impl->strictTypeCheckingTestInterface Attribute()), impl); 3974 v8SetReturnValueFast(info, WTF::getPtr(impl->strictTypeCheckingTestInterface Attribute()), impl);
3680 } 3975 }
3681 3976
3682 static void strictTypeCheckingTestInterfaceAttributeAttributeGetterCallback(v8:: Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 3977 static void strictTypeCheckingTestInterfaceAttributeAttributeGetterCallback(v8:: Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3683 { 3978 {
3684 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 3979 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3685 TestObjectPythonV8Internal::strictTypeCheckingTestInterfaceAttributeAttribut eGetter(info); 3980 TestObjectPythonV8Internal::strictTypeCheckingTestInterfaceAttributeAttribut eGetter(info);
3686 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 3981 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3687 } 3982 }
3688 3983
3689 static void strictTypeCheckingTestInterfaceAttributeAttributeSetter(v8::Local<v8 ::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 3984 static void strictTypeCheckingTestInterfaceAttributeAttributeSetter(v8::Local<v8 ::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3690 { 3985 {
3691 ExceptionState exceptionState(ExceptionState::SetterContext, "strictTypeChec kingTestInterfaceAttribute", "TestObjectPython", info.Holder(), info.GetIsolate( )); 3986 v8::Isolate* isolate = info.GetIsolate();
3692 if (!isUndefinedOrNull(jsValue) && !V8TestInterface::hasInstance(jsValue, in fo.GetIsolate())) { 3987 v8::Handle<v8::Object> holder = info.Holder();
3988 ExceptionState exceptionState(ExceptionState::SetterContext, "strictTypeChec kingTestInterfaceAttribute", "TestObjectPython", holder, isolate);
3989 if (!isUndefinedOrNull(jsValue) && !V8TestInterface::hasInstance(jsValue, is olate)) {
3693 exceptionState.throwTypeError("The provided value is not of type 'TestIn terface'."); 3990 exceptionState.throwTypeError("The provided value is not of type 'TestIn terface'.");
3694 exceptionState.throwIfNeeded(); 3991 exceptionState.throwIfNeeded();
3695 return; 3992 return;
3696 } 3993 }
3697 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 3994 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3698 V8TRYCATCH_VOID(TestInterface*, cppValue, V8TestInterface::toNativeWithTypeC heck(info.GetIsolate(), jsValue)); 3995 V8TRYCATCH_VOID(TestInterface*, cppValue, V8TestInterface::toNativeWithTypeC heck(info.GetIsolate(), jsValue));
3699 impl->setStrictTypeCheckingTestInterfaceAttribute(WTF::getPtr(cppValue)); 3996 impl->setStrictTypeCheckingTestInterfaceAttribute(WTF::getPtr(cppValue));
3700 } 3997 }
3701 3998
3702 static void strictTypeCheckingTestInterfaceAttributeAttributeSetterCallback(v8:: Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo< void>& info) 3999 static void strictTypeCheckingTestInterfaceAttributeAttributeSetterCallback(v8:: Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo< void>& info)
3703 { 4000 {
3704 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4001 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3705 TestObjectPythonV8Internal::strictTypeCheckingTestInterfaceAttributeAttribut eSetter(jsValue, info); 4002 TestObjectPythonV8Internal::strictTypeCheckingTestInterfaceAttributeAttribut eSetter(jsValue, info);
3706 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4003 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3707 } 4004 }
3708 4005
3709 static void treatNullAsNullStringStringAttributeAttributeGetter(const v8::Proper tyCallbackInfo<v8::Value>& info) 4006 static void treatNullAsNullStringStringAttributeAttributeGetter(const v8::Proper tyCallbackInfo<v8::Value>& info)
3710 { 4007 {
3711 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4008 v8::Handle<v8::Object> holder = info.Holder();
4009 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3712 v8SetReturnValueString(info, impl->treatNullAsNullStringStringAttribute(), i nfo.GetIsolate()); 4010 v8SetReturnValueString(info, impl->treatNullAsNullStringStringAttribute(), i nfo.GetIsolate());
3713 } 4011 }
3714 4012
3715 static void treatNullAsNullStringStringAttributeAttributeGetterCallback(v8::Loca l<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 4013 static void treatNullAsNullStringStringAttributeAttributeGetterCallback(v8::Loca l<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3716 { 4014 {
3717 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4015 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3718 TestObjectPythonV8Internal::treatNullAsNullStringStringAttributeAttributeGet ter(info); 4016 TestObjectPythonV8Internal::treatNullAsNullStringStringAttributeAttributeGet ter(info);
3719 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4017 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3720 } 4018 }
3721 4019
3722 static void treatNullAsNullStringStringAttributeAttributeSetter(v8::Local<v8::Va lue> jsValue, const v8::PropertyCallbackInfo<void>& info) 4020 static void treatNullAsNullStringStringAttributeAttributeSetter(v8::Local<v8::Va lue> jsValue, const v8::PropertyCallbackInfo<void>& info)
3723 { 4021 {
3724 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4022 v8::Handle<v8::Object> holder = info.Holder();
4023 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3725 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithNullCheck>, cppVal ue, jsValue); 4024 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithNullCheck>, cppVal ue, jsValue);
3726 impl->setTreatNullAsNullStringStringAttribute(cppValue); 4025 impl->setTreatNullAsNullStringStringAttribute(cppValue);
3727 } 4026 }
3728 4027
3729 static void treatNullAsNullStringStringAttributeAttributeSetterCallback(v8::Loca l<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void >& info) 4028 static void treatNullAsNullStringStringAttributeAttributeSetterCallback(v8::Loca l<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void >& info)
3730 { 4029 {
3731 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4030 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3732 TestObjectPythonV8Internal::treatNullAsNullStringStringAttributeAttributeSet ter(jsValue, info); 4031 TestObjectPythonV8Internal::treatNullAsNullStringStringAttributeAttributeSet ter(jsValue, info);
3733 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4032 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3734 } 4033 }
3735 4034
3736 static void treatReturnedNullStringAsNullStringAttributeAttributeGetter(const v8 ::PropertyCallbackInfo<v8::Value>& info) 4035 static void treatReturnedNullStringAsNullStringAttributeAttributeGetter(const v8 ::PropertyCallbackInfo<v8::Value>& info)
3737 { 4036 {
3738 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4037 v8::Handle<v8::Object> holder = info.Holder();
4038 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3739 v8SetReturnValueStringOrNull(info, impl->treatReturnedNullStringAsNullString Attribute(), info.GetIsolate()); 4039 v8SetReturnValueStringOrNull(info, impl->treatReturnedNullStringAsNullString Attribute(), info.GetIsolate());
3740 } 4040 }
3741 4041
3742 static void treatReturnedNullStringAsNullStringAttributeAttributeGetterCallback( v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 4042 static void treatReturnedNullStringAsNullStringAttributeAttributeGetterCallback( v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3743 { 4043 {
3744 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4044 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3745 TestObjectPythonV8Internal::treatReturnedNullStringAsNullStringAttributeAttr ibuteGetter(info); 4045 TestObjectPythonV8Internal::treatReturnedNullStringAsNullStringAttributeAttr ibuteGetter(info);
3746 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4046 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3747 } 4047 }
3748 4048
3749 static void treatReturnedNullStringAsNullStringAttributeAttributeSetter(v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4049 static void treatReturnedNullStringAsNullStringAttributeAttributeSetter(v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3750 { 4050 {
3751 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4051 v8::Handle<v8::Object> holder = info.Holder();
4052 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3752 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 4053 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3753 impl->setTreatReturnedNullStringAsNullStringAttribute(cppValue); 4054 impl->setTreatReturnedNullStringAsNullStringAttribute(cppValue);
3754 } 4055 }
3755 4056
3756 static void treatReturnedNullStringAsNullStringAttributeAttributeSetterCallback( v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackI nfo<void>& info) 4057 static void treatReturnedNullStringAsNullStringAttributeAttributeSetterCallback( v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackI nfo<void>& info)
3757 { 4058 {
3758 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4059 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3759 TestObjectPythonV8Internal::treatReturnedNullStringAsNullStringAttributeAttr ibuteSetter(jsValue, info); 4060 TestObjectPythonV8Internal::treatReturnedNullStringAsNullStringAttributeAttr ibuteSetter(jsValue, info);
3760 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4061 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3761 } 4062 }
3762 4063
3763 static void treatReturnedNullStringAsUndefinedStringAttributeAttributeGetter(con st v8::PropertyCallbackInfo<v8::Value>& info) 4064 static void treatReturnedNullStringAsUndefinedStringAttributeAttributeGetter(con st v8::PropertyCallbackInfo<v8::Value>& info)
3764 { 4065 {
3765 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4066 v8::Handle<v8::Object> holder = info.Holder();
4067 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3766 v8SetReturnValueStringOrUndefined(info, impl->treatReturnedNullStringAsUndef inedStringAttribute(), info.GetIsolate()); 4068 v8SetReturnValueStringOrUndefined(info, impl->treatReturnedNullStringAsUndef inedStringAttribute(), info.GetIsolate());
3767 } 4069 }
3768 4070
3769 static void treatReturnedNullStringAsUndefinedStringAttributeAttributeGetterCall back(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 4071 static void treatReturnedNullStringAsUndefinedStringAttributeAttributeGetterCall back(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3770 { 4072 {
3771 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4073 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3772 TestObjectPythonV8Internal::treatReturnedNullStringAsUndefinedStringAttribut eAttributeGetter(info); 4074 TestObjectPythonV8Internal::treatReturnedNullStringAsUndefinedStringAttribut eAttributeGetter(info);
3773 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4075 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3774 } 4076 }
3775 4077
3776 static void treatReturnedNullStringAsUndefinedStringAttributeAttributeSetter(v8: :Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4078 static void treatReturnedNullStringAsUndefinedStringAttributeAttributeSetter(v8: :Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3777 { 4079 {
3778 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4080 v8::Handle<v8::Object> holder = info.Holder();
4081 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3779 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 4082 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3780 impl->setTreatReturnedNullStringAsUndefinedStringAttribute(cppValue); 4083 impl->setTreatReturnedNullStringAsUndefinedStringAttribute(cppValue);
3781 } 4084 }
3782 4085
3783 static void treatReturnedNullStringAsUndefinedStringAttributeAttributeSetterCall back(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCall backInfo<void>& info) 4086 static void treatReturnedNullStringAsUndefinedStringAttributeAttributeSetterCall back(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCall backInfo<void>& info)
3784 { 4087 {
3785 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4088 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3786 TestObjectPythonV8Internal::treatReturnedNullStringAsUndefinedStringAttribut eAttributeSetter(jsValue, info); 4089 TestObjectPythonV8Internal::treatReturnedNullStringAsUndefinedStringAttribut eAttributeSetter(jsValue, info);
3787 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4090 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3788 } 4091 }
3789 4092
3790 static void urlStringAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8: :Value>& info) 4093 static void urlStringAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8: :Value>& info)
3791 { 4094 {
3792 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4095 v8::Handle<v8::Object> holder = info.Holder();
4096 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3793 v8SetReturnValueString(info, impl->getURLAttribute(HTMLNames::urlstringattri buteAttr), info.GetIsolate()); 4097 v8SetReturnValueString(info, impl->getURLAttribute(HTMLNames::urlstringattri buteAttr), info.GetIsolate());
3794 } 4098 }
3795 4099
3796 static void urlStringAttributeAttributeGetterCallback(v8::Local<v8::String>, con st v8::PropertyCallbackInfo<v8::Value>& info) 4100 static void urlStringAttributeAttributeGetterCallback(v8::Local<v8::String>, con st v8::PropertyCallbackInfo<v8::Value>& info)
3797 { 4101 {
3798 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4102 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3799 TestObjectPythonV8Internal::urlStringAttributeAttributeGetter(info); 4103 TestObjectPythonV8Internal::urlStringAttributeAttributeGetter(info);
3800 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4104 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3801 } 4105 }
3802 4106
3803 static void urlStringAttributeAttributeSetter(v8::Local<v8::Value> jsValue, cons t v8::PropertyCallbackInfo<void>& info) 4107 static void urlStringAttributeAttributeSetter(v8::Local<v8::Value> jsValue, cons t v8::PropertyCallbackInfo<void>& info)
3804 { 4108 {
3805 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4109 v8::Handle<v8::Object> holder = info.Holder();
4110 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3806 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 4111 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3807 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 4112 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3808 impl->setAttribute(HTMLNames::urlstringattributeAttr, cppValue); 4113 impl->setAttribute(HTMLNames::urlstringattributeAttr, cppValue);
3809 } 4114 }
3810 4115
3811 static void urlStringAttributeAttributeSetterCallback(v8::Local<v8::String>, v8: :Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4116 static void urlStringAttributeAttributeSetterCallback(v8::Local<v8::String>, v8: :Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3812 { 4117 {
3813 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4118 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3814 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 4119 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3815 TestObjectPythonV8Internal::urlStringAttributeAttributeSetter(jsValue, info) ; 4120 TestObjectPythonV8Internal::urlStringAttributeAttributeSetter(jsValue, info) ;
3816 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4121 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3817 } 4122 }
3818 4123
3819 static void urlStringAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8: :Value>& info) 4124 static void urlStringAttributeAttributeGetter(const v8::PropertyCallbackInfo<v8: :Value>& info)
3820 { 4125 {
3821 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4126 v8::Handle<v8::Object> holder = info.Holder();
4127 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3822 v8SetReturnValueString(info, impl->getURLAttribute(HTMLNames::ReflectUrlAttr ibuteAttr), info.GetIsolate()); 4128 v8SetReturnValueString(info, impl->getURLAttribute(HTMLNames::ReflectUrlAttr ibuteAttr), info.GetIsolate());
3823 } 4129 }
3824 4130
3825 static void urlStringAttributeAttributeGetterCallback(v8::Local<v8::String>, con st v8::PropertyCallbackInfo<v8::Value>& info) 4131 static void urlStringAttributeAttributeGetterCallback(v8::Local<v8::String>, con st v8::PropertyCallbackInfo<v8::Value>& info)
3826 { 4132 {
3827 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4133 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3828 TestObjectPythonV8Internal::urlStringAttributeAttributeGetter(info); 4134 TestObjectPythonV8Internal::urlStringAttributeAttributeGetter(info);
3829 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4135 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3830 } 4136 }
3831 4137
3832 static void urlStringAttributeAttributeSetter(v8::Local<v8::Value> jsValue, cons t v8::PropertyCallbackInfo<void>& info) 4138 static void urlStringAttributeAttributeSetter(v8::Local<v8::Value> jsValue, cons t v8::PropertyCallbackInfo<void>& info)
3833 { 4139 {
3834 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4140 v8::Handle<v8::Object> holder = info.Holder();
4141 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3835 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 4142 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3836 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 4143 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3837 impl->setAttribute(HTMLNames::ReflectUrlAttributeAttr, cppValue); 4144 impl->setAttribute(HTMLNames::ReflectUrlAttributeAttr, cppValue);
3838 } 4145 }
3839 4146
3840 static void urlStringAttributeAttributeSetterCallback(v8::Local<v8::String>, v8: :Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4147 static void urlStringAttributeAttributeSetterCallback(v8::Local<v8::String>, v8: :Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3841 { 4148 {
3842 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4149 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3843 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 4150 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3844 TestObjectPythonV8Internal::urlStringAttributeAttributeSetter(jsValue, info) ; 4151 TestObjectPythonV8Internal::urlStringAttributeAttributeSetter(jsValue, info) ;
(...skipping 11 matching lines...) Expand all
3856 4163
3857 static void unforgeableLongAttributeAttributeGetterCallback(v8::Local<v8::String >, const v8::PropertyCallbackInfo<v8::Value>& info) 4164 static void unforgeableLongAttributeAttributeGetterCallback(v8::Local<v8::String >, const v8::PropertyCallbackInfo<v8::Value>& info)
3858 { 4165 {
3859 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4166 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3860 TestObjectPythonV8Internal::unforgeableLongAttributeAttributeGetter(info); 4167 TestObjectPythonV8Internal::unforgeableLongAttributeAttributeGetter(info);
3861 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4168 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3862 } 4169 }
3863 4170
3864 static void unforgeableLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue , const v8::PropertyCallbackInfo<void>& info) 4171 static void unforgeableLongAttributeAttributeSetter(v8::Local<v8::Value> jsValue , const v8::PropertyCallbackInfo<void>& info)
3865 { 4172 {
3866 ExceptionState exceptionState(ExceptionState::SetterContext, "unforgeableLon gAttribute", "TestObjectPython", info.Holder(), info.GetIsolate()); 4173 v8::Isolate* isolate = info.GetIsolate();
3867 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4174 v8::Handle<v8::Object> holder = info.Holder();
4175 ExceptionState exceptionState(ExceptionState::SetterContext, "unforgeableLon gAttribute", "TestObjectPython", holder, isolate);
4176 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3868 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState); 4177 V8TRYCATCH_EXCEPTION_VOID(int, cppValue, toInt32(jsValue, exceptionState), e xceptionState);
3869 impl->setUnforgeableLongAttribute(cppValue); 4178 impl->setUnforgeableLongAttribute(cppValue);
3870 } 4179 }
3871 4180
3872 static void unforgeableLongAttributeAttributeSetterCallback(v8::Local<v8::String >, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4181 static void unforgeableLongAttributeAttributeSetterCallback(v8::Local<v8::String >, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3873 { 4182 {
3874 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4183 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3875 TestObjectPythonV8Internal::unforgeableLongAttributeAttributeSetter(jsValue, info); 4184 TestObjectPythonV8Internal::unforgeableLongAttributeAttributeSetter(jsValue, info);
3876 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4185 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3877 } 4186 }
3878 4187
3879 static void anotherStringAttributeAttributeGetter(const v8::PropertyCallbackInfo <v8::Value>& info) 4188 static void anotherStringAttributeAttributeGetter(const v8::PropertyCallbackInfo <v8::Value>& info)
3880 { 4189 {
3881 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4190 v8::Handle<v8::Object> holder = info.Holder();
4191 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3882 v8SetReturnValueString(info, impl->fastGetAttribute(HTMLNames::ReflectUrlAtt ributeAsAStringAttr), info.GetIsolate()); 4192 v8SetReturnValueString(info, impl->fastGetAttribute(HTMLNames::ReflectUrlAtt ributeAsAStringAttr), info.GetIsolate());
3883 } 4193 }
3884 4194
3885 static void anotherStringAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 4195 static void anotherStringAttributeAttributeGetterCallback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3886 { 4196 {
3887 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4197 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3888 TestObjectPythonV8Internal::anotherStringAttributeAttributeGetter(info); 4198 TestObjectPythonV8Internal::anotherStringAttributeAttributeGetter(info);
3889 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4199 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3890 } 4200 }
3891 4201
3892 static void anotherStringAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4202 static void anotherStringAttributeAttributeSetter(v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3893 { 4203 {
3894 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4204 v8::Handle<v8::Object> holder = info.Holder();
4205 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3895 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue); 4206 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, cppValue, jsValue);
3896 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 4207 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3897 impl->setAttribute(HTMLNames::ReflectUrlAttributeAsAStringAttr, cppValue); 4208 impl->setAttribute(HTMLNames::ReflectUrlAttributeAsAStringAttr, cppValue);
3898 } 4209 }
3899 4210
3900 static void anotherStringAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4211 static void anotherStringAttributeAttributeSetterCallback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3901 { 4212 {
3902 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4213 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3903 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope; 4214 CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;
3904 TestObjectPythonV8Internal::anotherStringAttributeAttributeSetter(jsValue, i nfo); 4215 TestObjectPythonV8Internal::anotherStringAttributeAttributeSetter(jsValue, i nfo);
3905 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4216 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3906 } 4217 }
3907 4218
3908 static void testInterfacePythonAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info) 4219 static void testInterfacePythonAttributeAttributeGetter(const v8::PropertyCallba ckInfo<v8::Value>& info)
3909 { 4220 {
3910 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4221 v8::Handle<v8::Object> holder = info.Holder();
4222 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3911 v8SetReturnValueFast(info, WTF::getPtr(impl->testInterfacePythonAttribute()) , impl); 4223 v8SetReturnValueFast(info, WTF::getPtr(impl->testInterfacePythonAttribute()) , impl);
3912 } 4224 }
3913 4225
3914 static void testInterfacePythonAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info) 4226 static void testInterfacePythonAttributeAttributeGetterCallback(v8::Local<v8::St ring>, const v8::PropertyCallbackInfo<v8::Value>& info)
3915 { 4227 {
3916 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4228 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3917 TestObjectPythonV8Internal::testInterfacePythonAttributeAttributeGetter(info ); 4229 TestObjectPythonV8Internal::testInterfacePythonAttributeAttributeGetter(info );
3918 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4230 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3919 } 4231 }
3920 4232
3921 static void testInterfacePythonAttributeAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info) 4233 static void testInterfacePythonAttributeAttributeSetter(v8::Local<v8::Value> jsV alue, const v8::PropertyCallbackInfo<void>& info)
3922 { 4234 {
3923 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4235 v8::Handle<v8::Object> holder = info.Holder();
4236 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3924 V8TRYCATCH_VOID(TestInterfacePythonImplementation*, cppValue, V8TestInterfac ePython::toNativeWithTypeCheck(info.GetIsolate(), jsValue)); 4237 V8TRYCATCH_VOID(TestInterfacePythonImplementation*, cppValue, V8TestInterfac ePython::toNativeWithTypeCheck(info.GetIsolate(), jsValue));
3925 impl->setTestInterfacePythonAttribute(WTF::getPtr(cppValue)); 4238 impl->setTestInterfacePythonAttribute(WTF::getPtr(cppValue));
3926 } 4239 }
3927 4240
3928 static void testInterfacePythonAttributeAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4241 static void testInterfacePythonAttributeAttributeSetterCallback(v8::Local<v8::St ring>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3929 { 4242 {
3930 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4243 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3931 TestObjectPythonV8Internal::testInterfacePythonAttributeAttributeSetter(jsVa lue, info); 4244 TestObjectPythonV8Internal::testInterfacePythonAttributeAttributeSetter(jsVa lue, info);
3932 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4245 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3933 } 4246 }
3934 4247
3935 static void testInterfaceWillBeGarbageCollectedAttributeAttributeGetter(const v8 ::PropertyCallbackInfo<v8::Value>& info) 4248 static void testInterfaceWillBeGarbageCollectedAttributeAttributeGetter(const v8 ::PropertyCallbackInfo<v8::Value>& info)
3936 { 4249 {
3937 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4250 v8::Handle<v8::Object> holder = info.Holder();
4251 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3938 v8SetReturnValueFast(info, WTF::getPtr(impl->testInterfaceWillBeGarbageColle ctedAttribute()), impl); 4252 v8SetReturnValueFast(info, WTF::getPtr(impl->testInterfaceWillBeGarbageColle ctedAttribute()), impl);
3939 } 4253 }
3940 4254
3941 static void testInterfaceWillBeGarbageCollectedAttributeAttributeGetterCallback( v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 4255 static void testInterfaceWillBeGarbageCollectedAttributeAttributeGetterCallback( v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3942 { 4256 {
3943 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4257 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3944 TestObjectPythonV8Internal::testInterfaceWillBeGarbageCollectedAttributeAttr ibuteGetter(info); 4258 TestObjectPythonV8Internal::testInterfaceWillBeGarbageCollectedAttributeAttr ibuteGetter(info);
3945 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4259 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3946 } 4260 }
3947 4261
3948 static void testInterfaceWillBeGarbageCollectedAttributeAttributeSetter(v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4262 static void testInterfaceWillBeGarbageCollectedAttributeAttributeSetter(v8::Loca l<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3949 { 4263 {
3950 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4264 v8::Handle<v8::Object> holder = info.Holder();
4265 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3951 V8TRYCATCH_VOID(TestInterfaceWillBeGarbageCollected*, cppValue, V8TestInterf aceWillBeGarbageCollected::toNativeWithTypeCheck(info.GetIsolate(), jsValue)); 4266 V8TRYCATCH_VOID(TestInterfaceWillBeGarbageCollected*, cppValue, V8TestInterf aceWillBeGarbageCollected::toNativeWithTypeCheck(info.GetIsolate(), jsValue));
3952 impl->setTestInterfaceWillBeGarbageCollectedAttribute(WTF::getPtr(cppValue)) ; 4267 impl->setTestInterfaceWillBeGarbageCollectedAttribute(WTF::getPtr(cppValue)) ;
3953 } 4268 }
3954 4269
3955 static void testInterfaceWillBeGarbageCollectedAttributeAttributeSetterCallback( v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackI nfo<void>& info) 4270 static void testInterfaceWillBeGarbageCollectedAttributeAttributeSetterCallback( v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCallbackI nfo<void>& info)
3956 { 4271 {
3957 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4272 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3958 TestObjectPythonV8Internal::testInterfaceWillBeGarbageCollectedAttributeAttr ibuteSetter(jsValue, info); 4273 TestObjectPythonV8Internal::testInterfaceWillBeGarbageCollectedAttributeAttr ibuteSetter(jsValue, info);
3959 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4274 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3960 } 4275 }
3961 4276
3962 static void testInterfaceWillBeGarbageCollectedOrNullAttributeAttributeGetter(co nst v8::PropertyCallbackInfo<v8::Value>& info) 4277 static void testInterfaceWillBeGarbageCollectedOrNullAttributeAttributeGetter(co nst v8::PropertyCallbackInfo<v8::Value>& info)
3963 { 4278 {
3964 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4279 v8::Handle<v8::Object> holder = info.Holder();
4280 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3965 bool isNull = false; 4281 bool isNull = false;
3966 RefPtrWillBeRawPtr<TestInterfaceWillBeGarbageCollected> jsValue = impl->test InterfaceWillBeGarbageCollectedOrNullAttribute(isNull); 4282 RefPtrWillBeRawPtr<TestInterfaceWillBeGarbageCollected> jsValue = impl->test InterfaceWillBeGarbageCollectedOrNullAttribute(isNull);
3967 if (isNull) { 4283 if (isNull) {
3968 v8SetReturnValueNull(info); 4284 v8SetReturnValueNull(info);
3969 return; 4285 return;
3970 } 4286 }
3971 v8SetReturnValueFast(info, WTF::getPtr(jsValue.release()), impl); 4287 v8SetReturnValueFast(info, WTF::getPtr(jsValue.release()), impl);
3972 } 4288 }
3973 4289
3974 static void testInterfaceWillBeGarbageCollectedOrNullAttributeAttributeGetterCal lback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info) 4290 static void testInterfaceWillBeGarbageCollectedOrNullAttributeAttributeGetterCal lback(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>& info)
3975 { 4291 {
3976 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter"); 4292 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMGetter");
3977 TestObjectPythonV8Internal::testInterfaceWillBeGarbageCollectedOrNullAttribu teAttributeGetter(info); 4293 TestObjectPythonV8Internal::testInterfaceWillBeGarbageCollectedOrNullAttribu teAttributeGetter(info);
3978 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4294 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3979 } 4295 }
3980 4296
3981 static void testInterfaceWillBeGarbageCollectedOrNullAttributeAttributeSetter(v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info) 4297 static void testInterfaceWillBeGarbageCollectedOrNullAttributeAttributeSetter(v8 ::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info)
3982 { 4298 {
3983 TestObjectPython* impl = V8TestObjectPython::toNative(info.Holder()); 4299 v8::Handle<v8::Object> holder = info.Holder();
4300 TestObjectPython* impl = V8TestObjectPython::toNative(holder);
3984 V8TRYCATCH_VOID(TestInterfaceWillBeGarbageCollected*, cppValue, V8TestInterf aceWillBeGarbageCollected::toNativeWithTypeCheck(info.GetIsolate(), jsValue)); 4301 V8TRYCATCH_VOID(TestInterfaceWillBeGarbageCollected*, cppValue, V8TestInterf aceWillBeGarbageCollected::toNativeWithTypeCheck(info.GetIsolate(), jsValue));
3985 impl->setTestInterfaceWillBeGarbageCollectedOrNullAttribute(WTF::getPtr(cppV alue)); 4302 impl->setTestInterfaceWillBeGarbageCollectedOrNullAttribute(WTF::getPtr(cppV alue));
3986 } 4303 }
3987 4304
3988 static void testInterfaceWillBeGarbageCollectedOrNullAttributeAttributeSetterCal lback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCal lbackInfo<void>& info) 4305 static void testInterfaceWillBeGarbageCollectedOrNullAttributeAttributeSetterCal lback(v8::Local<v8::String>, v8::Local<v8::Value> jsValue, const v8::PropertyCal lbackInfo<void>& info)
3989 { 4306 {
3990 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter"); 4307 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMSetter");
3991 TestObjectPythonV8Internal::testInterfaceWillBeGarbageCollectedOrNullAttribu teAttributeSetter(jsValue, info); 4308 TestObjectPythonV8Internal::testInterfaceWillBeGarbageCollectedOrNullAttribu teAttributeSetter(jsValue, info);
3992 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution"); 4309 TRACE_EVENT_SET_SAMPLING_STATE("V8", "V8Execution");
3993 } 4310 }
(...skipping 3795 matching lines...) Expand 10 before | Expand all | Expand 10 after
7789 fromInternalPointer(object)->deref(); 8106 fromInternalPointer(object)->deref();
7790 } 8107 }
7791 8108
7792 template<> 8109 template<>
7793 v8::Handle<v8::Value> toV8NoInline(TestObjectPython* impl, v8::Handle<v8::Object > creationContext, v8::Isolate* isolate) 8110 v8::Handle<v8::Value> toV8NoInline(TestObjectPython* impl, v8::Handle<v8::Object > creationContext, v8::Isolate* isolate)
7794 { 8111 {
7795 return toV8(impl, creationContext, isolate); 8112 return toV8(impl, creationContext, isolate);
7796 } 8113 }
7797 8114
7798 } // namespace WebCore 8115 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698