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

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

Powered by Google App Engine
This is Rietveld 408576698