1/*
2 *  This file is part of the WebKit open source project.
3 *  This file has been generated by generate-bindings.pl. DO NOT MODIFY!
4 *
5 *  This library is free software; you can redistribute it and/or
6 *  modify it under the terms of the GNU Library General Public
7 *  License as published by the Free Software Foundation; either
8 *  version 2 of the License, or (at your option) any later version.
9 *
10 *  This library is distributed in the hope that it will be useful,
11 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 *  Library General Public License for more details.
14 *
15 *  You should have received a copy of the GNU Library General Public License
16 *  along with this library; see the file COPYING.LIB.  If not, write to
17 *  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 *  Boston, MA 02110-1301, USA.
19 */
20
21#include "config.h"
22#include "WebKitDOMTestObj.h"
23
24#include "CSSImportRule.h"
25#include "DOMObjectCache.h"
26#include "Document.h"
27#include "ExceptionCode.h"
28#include "HTMLNames.h"
29#include "JSMainThreadExecState.h"
30#include "WebKitDOMDictionaryPrivate.h"
31#include "WebKitDOMDocumentPrivate.h"
32#include "WebKitDOMNodePrivate.h"
33#include "WebKitDOMPrivate.h"
34#include "WebKitDOMSVGPointPrivate.h"
35#include "WebKitDOMSerializedScriptValuePrivate.h"
36#include "WebKitDOMTestEnumTypePrivate.h"
37#include "WebKitDOMTestNodePrivate.h"
38#include "WebKitDOMTestObjPrivate.h"
39#include "WebKitDOMboolPrivate.h"
40#include "gobject/ConvertToUTF8String.h"
41#include <wtf/GetPtr.h>
42#include <wtf/RefPtr.h>
43
44#define WEBKIT_DOM_TEST_OBJ_GET_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE(obj, WEBKIT_DOM_TYPE_TEST_OBJ, WebKitDOMTestObjPrivate)
45
46typedef struct _WebKitDOMTestObjPrivate {
47    RefPtr<WebCore::TestObj> coreObject;
48} WebKitDOMTestObjPrivate;
49
50namespace WebKit {
51
52WebKitDOMTestObj* kit(WebCore::TestObj* obj)
53{
54    if (!obj)
55        return 0;
56
57    if (gpointer ret = DOMObjectCache::get(obj))
58        return WEBKIT_DOM_TEST_OBJ(ret);
59
60    return wrapTestObj(obj);
61}
62
63WebCore::TestObj* core(WebKitDOMTestObj* request)
64{
65    return request ? static_cast<WebCore::TestObj*>(WEBKIT_DOM_OBJECT(request)->coreObject) : 0;
66}
67
68WebKitDOMTestObj* wrapTestObj(WebCore::TestObj* coreObject)
69{
70    ASSERT(coreObject);
71    return WEBKIT_DOM_TEST_OBJ(g_object_new(WEBKIT_DOM_TYPE_TEST_OBJ, "core-object", coreObject, nullptr));
72}
73
74} // namespace WebKit
75
76G_DEFINE_TYPE(WebKitDOMTestObj, webkit_dom_test_obj, WEBKIT_DOM_TYPE_OBJECT)
77
78enum {
79    PROP_0,
80    PROP_READ_ONLY_LONG_ATTR,
81    PROP_READ_ONLY_STRING_ATTR,
82    PROP_READ_ONLY_TEST_OBJ_ATTR,
83    PROP_BYTE_ATTR,
84    PROP_OCTET_ATTR,
85    PROP_SHORT_ATTR,
86    PROP_UNSIGNED_SHORT_ATTR,
87    PROP_LONG_ATTR,
88    PROP_LONG_LONG_ATTR,
89    PROP_UNSIGNED_LONG_LONG_ATTR,
90    PROP_STRING_ATTR,
91    PROP_TEST_OBJ_ATTR,
92    PROP_XML_OBJ_ATTR,
93    PROP_CREATE,
94    PROP_REFLECTED_STRING_ATTR,
95    PROP_REFLECTED_INTEGRAL_ATTR,
96    PROP_REFLECTED_UNSIGNED_INTEGRAL_ATTR,
97    PROP_REFLECTED_BOOLEAN_ATTR,
98    PROP_REFLECTED_URL_ATTR,
99    PROP_REFLECTED_STRING_ATTR,
100    PROP_REFLECTED_CUSTOM_INTEGRAL_ATTR,
101    PROP_REFLECTED_CUSTOM_BOOLEAN_ATTR,
102    PROP_REFLECTED_CUSTOM_URL_ATTR,
103    PROP_ATTR_WITH_GETTER_EXCEPTION,
104    PROP_ATTR_WITH_SETTER_EXCEPTION,
105    PROP_STRING_ATTR_WITH_GETTER_EXCEPTION,
106    PROP_STRING_ATTR_WITH_SETTER_EXCEPTION,
107    PROP_WITH_SCRIPT_STATE_ATTRIBUTE,
108    PROP_WITH_SCRIPT_EXECUTION_CONTEXT_ATTRIBUTE,
109    PROP_WITH_SCRIPT_STATE_ATTRIBUTE_RAISES,
110    PROP_WITH_SCRIPT_EXECUTION_CONTEXT_ATTRIBUTE_RAISES,
111    PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_ATTRIBUTE,
112    PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_ATTRIBUTE_RAISES,
113    PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_WITH_SPACES_ATTRIBUTE,
114    PROP_WITH_SCRIPT_ARGUMENTS_AND_CALL_STACK_ATTRIBUTE,
115    PROP_CONDITIONAL_ATTR1,
116    PROP_CONDITIONAL_ATTR2,
117    PROP_CONDITIONAL_ATTR3,
118    PROP_ANY_ATTRIBUTE,
119    PROP_CONTENT_DOCUMENT,
120    PROP_MUTABLE_POINT,
121    PROP_IMMUTABLE_POINT,
122    PROP_STRAWBERRY,
123    PROP_STRICT_FLOAT,
124    PROP_DESCRIPTION,
125    PROP_ID,
126    PROP_HASH,
127    PROP_REPLACEABLE_ATTRIBUTE,
128    PROP_NULLABLE_DOUBLE_ATTRIBUTE,
129    PROP_NULLABLE_LONG_ATTRIBUTE,
130    PROP_NULLABLE_BOOLEAN_ATTRIBUTE,
131    PROP_NULLABLE_STRING_ATTRIBUTE,
132    PROP_NULLABLE_LONG_SETTABLE_ATTRIBUTE,
133    PROP_NULLABLE_STRING_VALUE,
134    PROP_ATTRIBUTE,
135};
136
137static void webkit_dom_test_obj_finalize(GObject* object)
138{
139    WebKitDOMTestObjPrivate* priv = WEBKIT_DOM_TEST_OBJ_GET_PRIVATE(object);
140
141    WebKit::DOMObjectCache::forget(priv->coreObject.get());
142
143    priv->~WebKitDOMTestObjPrivate();
144    G_OBJECT_CLASS(webkit_dom_test_obj_parent_class)->finalize(object);
145}
146
147static void webkit_dom_test_obj_set_property(GObject* object, guint propertyId, const GValue* value, GParamSpec* pspec)
148{
149    WebKitDOMTestObj* self = WEBKIT_DOM_TEST_OBJ(object);
150
151    switch (propertyId) {
152    case PROP_BYTE_ATTR:
153        webkit_dom_test_obj_set_byte_attr(self, g_value_get_int8(value));
154        break;
155    case PROP_OCTET_ATTR:
156        webkit_dom_test_obj_set_octet_attr(self, g_value_get_uint8(value));
157        break;
158    case PROP_SHORT_ATTR:
159        webkit_dom_test_obj_set_short_attr(self, g_value_get_int(value));
160        break;
161    case PROP_UNSIGNED_SHORT_ATTR:
162        webkit_dom_test_obj_set_unsigned_short_attr(self, g_value_get_uint(value));
163        break;
164    case PROP_LONG_ATTR:
165        webkit_dom_test_obj_set_long_attr(self, g_value_get_long(value));
166        break;
167    case PROP_LONG_LONG_ATTR:
168        webkit_dom_test_obj_set_long_long_attr(self, g_value_get_int64(value));
169        break;
170    case PROP_UNSIGNED_LONG_LONG_ATTR:
171        webkit_dom_test_obj_set_unsigned_long_long_attr(self, g_value_get_uint64(value));
172        break;
173    case PROP_STRING_ATTR:
174        webkit_dom_test_obj_set_string_attr(self, g_value_get_string(value));
175        break;
176    case PROP_CREATE:
177        webkit_dom_test_obj_set_create(self, g_value_get_boolean(value));
178        break;
179    case PROP_REFLECTED_STRING_ATTR:
180        webkit_dom_test_obj_set_reflected_string_attr(self, g_value_get_string(value));
181        break;
182    case PROP_REFLECTED_INTEGRAL_ATTR:
183        webkit_dom_test_obj_set_reflected_integral_attr(self, g_value_get_long(value));
184        break;
185    case PROP_REFLECTED_UNSIGNED_INTEGRAL_ATTR:
186        webkit_dom_test_obj_set_reflected_unsigned_integral_attr(self, g_value_get_ulong(value));
187        break;
188    case PROP_REFLECTED_BOOLEAN_ATTR:
189        webkit_dom_test_obj_set_reflected_boolean_attr(self, g_value_get_boolean(value));
190        break;
191    case PROP_REFLECTED_URL_ATTR:
192        webkit_dom_test_obj_set_reflected_url_attr(self, g_value_get_string(value));
193        break;
194    case PROP_REFLECTED_STRING_ATTR:
195        webkit_dom_test_obj_set_reflected_string_attr(self, g_value_get_string(value));
196        break;
197    case PROP_REFLECTED_CUSTOM_INTEGRAL_ATTR:
198        webkit_dom_test_obj_set_reflected_custom_integral_attr(self, g_value_get_long(value));
199        break;
200    case PROP_REFLECTED_CUSTOM_BOOLEAN_ATTR:
201        webkit_dom_test_obj_set_reflected_custom_boolean_attr(self, g_value_get_boolean(value));
202        break;
203    case PROP_REFLECTED_CUSTOM_URL_ATTR:
204        webkit_dom_test_obj_set_reflected_custom_url_attr(self, g_value_get_string(value));
205        break;
206    case PROP_ATTR_WITH_GETTER_EXCEPTION:
207        webkit_dom_test_obj_set_attr_with_getter_exception(self, g_value_get_long(value));
208        break;
209    case PROP_ATTR_WITH_SETTER_EXCEPTION:
210        webkit_dom_test_obj_set_attr_with_setter_exception(self, g_value_get_long(value), nullptr);
211        break;
212    case PROP_STRING_ATTR_WITH_GETTER_EXCEPTION:
213        webkit_dom_test_obj_set_string_attr_with_getter_exception(self, g_value_get_string(value));
214        break;
215    case PROP_STRING_ATTR_WITH_SETTER_EXCEPTION:
216        webkit_dom_test_obj_set_string_attr_with_setter_exception(self, g_value_get_string(value), nullptr);
217        break;
218    case PROP_WITH_SCRIPT_STATE_ATTRIBUTE:
219        webkit_dom_test_obj_set_with_script_state_attribute(self, g_value_get_long(value));
220        break;
221    case PROP_CONDITIONAL_ATTR1:
222        webkit_dom_test_obj_set_conditional_attr1(self, g_value_get_long(value));
223        break;
224    case PROP_CONDITIONAL_ATTR2:
225        webkit_dom_test_obj_set_conditional_attr2(self, g_value_get_long(value));
226        break;
227    case PROP_CONDITIONAL_ATTR3:
228        webkit_dom_test_obj_set_conditional_attr3(self, g_value_get_long(value));
229        break;
230    case PROP_STRAWBERRY:
231        webkit_dom_test_obj_set_strawberry(self, g_value_get_long(value));
232        break;
233    case PROP_STRICT_FLOAT:
234        webkit_dom_test_obj_set_strict_float(self, g_value_get_float(value));
235        break;
236    case PROP_ID:
237        webkit_dom_test_obj_set_id(self, g_value_get_long(value));
238        break;
239    case PROP_NULLABLE_LONG_SETTABLE_ATTRIBUTE:
240        webkit_dom_test_obj_set_nullable_long_settable_attribute(self, g_value_get_long(value));
241        break;
242    case PROP_NULLABLE_STRING_VALUE:
243        webkit_dom_test_obj_set_nullable_string_value(self, g_value_get_long(value));
244        break;
245    default:
246        G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec);
247        break;
248    }
249}
250
251static void webkit_dom_test_obj_get_property(GObject* object, guint propertyId, GValue* value, GParamSpec* pspec)
252{
253    WebKitDOMTestObj* self = WEBKIT_DOM_TEST_OBJ(object);
254
255    switch (propertyId) {
256    case PROP_READ_ONLY_LONG_ATTR:
257        g_value_set_long(value, webkit_dom_test_obj_get_read_only_long_attr(self));
258        break;
259    case PROP_READ_ONLY_STRING_ATTR:
260        g_value_take_string(value, webkit_dom_test_obj_get_read_only_string_attr(self));
261        break;
262    case PROP_READ_ONLY_TEST_OBJ_ATTR:
263        g_value_set_object(value, webkit_dom_test_obj_get_read_only_test_obj_attr(self));
264        break;
265    case PROP_BYTE_ATTR:
266        g_value_set_int8(value, webkit_dom_test_obj_get_byte_attr(self));
267        break;
268    case PROP_OCTET_ATTR:
269        g_value_set_uint8(value, webkit_dom_test_obj_get_octet_attr(self));
270        break;
271    case PROP_SHORT_ATTR:
272        g_value_set_int(value, webkit_dom_test_obj_get_short_attr(self));
273        break;
274    case PROP_UNSIGNED_SHORT_ATTR:
275        g_value_set_uint(value, webkit_dom_test_obj_get_unsigned_short_attr(self));
276        break;
277    case PROP_LONG_ATTR:
278        g_value_set_long(value, webkit_dom_test_obj_get_long_attr(self));
279        break;
280    case PROP_LONG_LONG_ATTR:
281        g_value_set_int64(value, webkit_dom_test_obj_get_long_long_attr(self));
282        break;
283    case PROP_UNSIGNED_LONG_LONG_ATTR:
284        g_value_set_uint64(value, webkit_dom_test_obj_get_unsigned_long_long_attr(self));
285        break;
286    case PROP_STRING_ATTR:
287        g_value_take_string(value, webkit_dom_test_obj_get_string_attr(self));
288        break;
289    case PROP_TEST_OBJ_ATTR:
290        g_value_set_object(value, webkit_dom_test_obj_get_test_obj_attr(self));
291        break;
292    case PROP_XML_OBJ_ATTR:
293        g_value_set_object(value, webkit_dom_test_obj_get_xml_obj_attr(self));
294        break;
295    case PROP_CREATE:
296        g_value_set_boolean(value, webkit_dom_test_obj_get_create(self));
297        break;
298    case PROP_REFLECTED_STRING_ATTR:
299        g_value_take_string(value, webkit_dom_test_obj_get_reflected_string_attr(self));
300        break;
301    case PROP_REFLECTED_INTEGRAL_ATTR:
302        g_value_set_long(value, webkit_dom_test_obj_get_reflected_integral_attr(self));
303        break;
304    case PROP_REFLECTED_UNSIGNED_INTEGRAL_ATTR:
305        g_value_set_ulong(value, webkit_dom_test_obj_get_reflected_unsigned_integral_attr(self));
306        break;
307    case PROP_REFLECTED_BOOLEAN_ATTR:
308        g_value_set_boolean(value, webkit_dom_test_obj_get_reflected_boolean_attr(self));
309        break;
310    case PROP_REFLECTED_URL_ATTR:
311        g_value_take_string(value, webkit_dom_test_obj_get_reflected_url_attr(self));
312        break;
313    case PROP_REFLECTED_STRING_ATTR:
314        g_value_take_string(value, webkit_dom_test_obj_get_reflected_string_attr(self));
315        break;
316    case PROP_REFLECTED_CUSTOM_INTEGRAL_ATTR:
317        g_value_set_long(value, webkit_dom_test_obj_get_reflected_custom_integral_attr(self));
318        break;
319    case PROP_REFLECTED_CUSTOM_BOOLEAN_ATTR:
320        g_value_set_boolean(value, webkit_dom_test_obj_get_reflected_custom_boolean_attr(self));
321        break;
322    case PROP_REFLECTED_CUSTOM_URL_ATTR:
323        g_value_take_string(value, webkit_dom_test_obj_get_reflected_custom_url_attr(self));
324        break;
325    case PROP_ATTR_WITH_GETTER_EXCEPTION:
326        g_value_set_long(value, webkit_dom_test_obj_get_attr_with_getter_exception(self, nullptr));
327        break;
328    case PROP_ATTR_WITH_SETTER_EXCEPTION:
329        g_value_set_long(value, webkit_dom_test_obj_get_attr_with_setter_exception(self));
330        break;
331    case PROP_STRING_ATTR_WITH_GETTER_EXCEPTION:
332        g_value_take_string(value, webkit_dom_test_obj_get_string_attr_with_getter_exception(self, nullptr));
333        break;
334    case PROP_STRING_ATTR_WITH_SETTER_EXCEPTION:
335        g_value_take_string(value, webkit_dom_test_obj_get_string_attr_with_setter_exception(self));
336        break;
337    case PROP_WITH_SCRIPT_STATE_ATTRIBUTE:
338        g_value_set_long(value, webkit_dom_test_obj_get_with_script_state_attribute(self));
339        break;
340    case PROP_WITH_SCRIPT_EXECUTION_CONTEXT_ATTRIBUTE:
341        g_value_set_object(value, webkit_dom_test_obj_get_with_script_execution_context_attribute(self));
342        break;
343    case PROP_WITH_SCRIPT_STATE_ATTRIBUTE_RAISES:
344        g_value_set_object(value, webkit_dom_test_obj_get_with_script_state_attribute_raises(self, nullptr));
345        break;
346    case PROP_WITH_SCRIPT_EXECUTION_CONTEXT_ATTRIBUTE_RAISES:
347        g_value_set_object(value, webkit_dom_test_obj_get_with_script_execution_context_attribute_raises(self, nullptr));
348        break;
349    case PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_ATTRIBUTE:
350        g_value_set_object(value, webkit_dom_test_obj_get_with_script_execution_context_and_script_state_attribute(self));
351        break;
352    case PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_ATTRIBUTE_RAISES:
353        g_value_set_object(value, webkit_dom_test_obj_get_with_script_execution_context_and_script_state_attribute_raises(self, nullptr));
354        break;
355    case PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_WITH_SPACES_ATTRIBUTE:
356        g_value_set_object(value, webkit_dom_test_obj_get_with_script_execution_context_and_script_state_with_spaces_attribute(self));
357        break;
358    case PROP_WITH_SCRIPT_ARGUMENTS_AND_CALL_STACK_ATTRIBUTE:
359        g_value_set_object(value, webkit_dom_test_obj_get_with_script_arguments_and_call_stack_attribute(self));
360        break;
361    case PROP_CONDITIONAL_ATTR1:
362        g_value_set_long(value, webkit_dom_test_obj_get_conditional_attr1(self));
363        break;
364    case PROP_CONDITIONAL_ATTR2:
365        g_value_set_long(value, webkit_dom_test_obj_get_conditional_attr2(self));
366        break;
367    case PROP_CONDITIONAL_ATTR3:
368        g_value_set_long(value, webkit_dom_test_obj_get_conditional_attr3(self));
369        break;
370    case PROP_ANY_ATTRIBUTE:
371        g_value_set_object(value, webkit_dom_test_obj_get_any_attribute(self));
372        break;
373    case PROP_CONTENT_DOCUMENT:
374        g_value_set_object(value, webkit_dom_test_obj_get_content_document(self));
375        break;
376    case PROP_MUTABLE_POINT:
377        g_value_set_object(value, webkit_dom_test_obj_get_mutable_point(self));
378        break;
379    case PROP_IMMUTABLE_POINT:
380        g_value_set_object(value, webkit_dom_test_obj_get_immutable_point(self));
381        break;
382    case PROP_STRAWBERRY:
383        g_value_set_long(value, webkit_dom_test_obj_get_strawberry(self));
384        break;
385    case PROP_STRICT_FLOAT:
386        g_value_set_float(value, webkit_dom_test_obj_get_strict_float(self));
387        break;
388    case PROP_DESCRIPTION:
389        g_value_set_long(value, webkit_dom_test_obj_get_description(self));
390        break;
391    case PROP_ID:
392        g_value_set_long(value, webkit_dom_test_obj_get_id(self));
393        break;
394    case PROP_HASH:
395        g_value_take_string(value, webkit_dom_test_obj_get_hash(self));
396        break;
397    case PROP_REPLACEABLE_ATTRIBUTE:
398        g_value_set_long(value, webkit_dom_test_obj_get_replaceable_attribute(self));
399        break;
400    case PROP_NULLABLE_DOUBLE_ATTRIBUTE:
401        g_value_set_double(value, webkit_dom_test_obj_get_nullable_double_attribute(self));
402        break;
403    case PROP_NULLABLE_LONG_ATTRIBUTE:
404        g_value_set_long(value, webkit_dom_test_obj_get_nullable_long_attribute(self));
405        break;
406    case PROP_NULLABLE_BOOLEAN_ATTRIBUTE:
407        g_value_set_boolean(value, webkit_dom_test_obj_get_nullable_boolean_attribute(self));
408        break;
409    case PROP_NULLABLE_STRING_ATTRIBUTE:
410        g_value_take_string(value, webkit_dom_test_obj_get_nullable_string_attribute(self));
411        break;
412    case PROP_NULLABLE_LONG_SETTABLE_ATTRIBUTE:
413        g_value_set_long(value, webkit_dom_test_obj_get_nullable_long_settable_attribute(self));
414        break;
415    case PROP_NULLABLE_STRING_VALUE:
416        g_value_set_long(value, webkit_dom_test_obj_get_nullable_string_value(self, nullptr));
417        break;
418    case PROP_ATTRIBUTE:
419        g_value_take_string(value, webkit_dom_test_obj_get_attribute(self));
420        break;
421    default:
422        G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec);
423        break;
424    }
425}
426
427static GObject* webkit_dom_test_obj_constructor(GType type, guint constructPropertiesCount, GObjectConstructParam* constructProperties)
428{
429    GObject* object = G_OBJECT_CLASS(webkit_dom_test_obj_parent_class)->constructor(type, constructPropertiesCount, constructProperties);
430
431    WebKitDOMTestObjPrivate* priv = WEBKIT_DOM_TEST_OBJ_GET_PRIVATE(object);
432    priv->coreObject = static_cast<WebCore::TestObj*>(WEBKIT_DOM_OBJECT(object)->coreObject);
433    WebKit::DOMObjectCache::put(priv->coreObject.get(), object);
434
435    return object;
436}
437
438static void webkit_dom_test_obj_class_init(WebKitDOMTestObjClass* requestClass)
439{
440    GObjectClass* gobjectClass = G_OBJECT_CLASS(requestClass);
441    g_type_class_add_private(gobjectClass, sizeof(WebKitDOMTestObjPrivate));
442    gobjectClass->constructor = webkit_dom_test_obj_constructor;
443    gobjectClass->finalize = webkit_dom_test_obj_finalize;
444    gobjectClass->set_property = webkit_dom_test_obj_set_property;
445    gobjectClass->get_property = webkit_dom_test_obj_get_property;
446
447    g_object_class_install_property(
448        gobjectClass,
449        PROP_READ_ONLY_LONG_ATTR,
450        g_param_spec_long(
451            "read-only-long-attr",
452            "TestObj:read-only-long-attr",
453            "read-only glong TestObj:read-only-long-attr",
454            G_MINLONG, G_MAXLONG, 0,
455            WEBKIT_PARAM_READABLE));
456
457    g_object_class_install_property(
458        gobjectClass,
459        PROP_READ_ONLY_STRING_ATTR,
460        g_param_spec_string(
461            "read-only-string-attr",
462            "TestObj:read-only-string-attr",
463            "read-only gchar* TestObj:read-only-string-attr",
464            "",
465            WEBKIT_PARAM_READABLE));
466
467    g_object_class_install_property(
468        gobjectClass,
469        PROP_READ_ONLY_TEST_OBJ_ATTR,
470        g_param_spec_object(
471            "read-only-test-obj-attr",
472            "TestObj:read-only-test-obj-attr",
473            "read-only WebKitDOMTestObj* TestObj:read-only-test-obj-attr",
474            WEBKIT_DOM_TYPE_TEST_OBJ,
475            WEBKIT_PARAM_READABLE));
476
477    g_object_class_install_property(
478        gobjectClass,
479        PROP_BYTE_ATTR,
480        g_param_spec_int8(
481            "byte-attr",
482            "TestObj:byte-attr",
483            "read-write gint8 TestObj:byte-attr",
484            G_MININT8, G_MAXINT8, 0,
485            WEBKIT_PARAM_READWRITE));
486
487    g_object_class_install_property(
488        gobjectClass,
489        PROP_OCTET_ATTR,
490        g_param_spec_uint8(
491            "octet-attr",
492            "TestObj:octet-attr",
493            "read-write guint8 TestObj:octet-attr",
494            0, G_MAXUINT8, 0,
495            WEBKIT_PARAM_READWRITE));
496
497    g_object_class_install_property(
498        gobjectClass,
499        PROP_SHORT_ATTR,
500        g_param_spec_int(
501            "short-attr",
502            "TestObj:short-attr",
503            "read-write gshort TestObj:short-attr",
504            G_MININT, G_MAXINT, 0,
505            WEBKIT_PARAM_READWRITE));
506
507    g_object_class_install_property(
508        gobjectClass,
509        PROP_UNSIGNED_SHORT_ATTR,
510        g_param_spec_uint(
511            "unsigned-short-attr",
512            "TestObj:unsigned-short-attr",
513            "read-write gushort TestObj:unsigned-short-attr",
514            0, G_MAXUINT, 0,
515            WEBKIT_PARAM_READWRITE));
516
517    g_object_class_install_property(
518        gobjectClass,
519        PROP_LONG_ATTR,
520        g_param_spec_long(
521            "long-attr",
522            "TestObj:long-attr",
523            "read-write glong TestObj:long-attr",
524            G_MINLONG, G_MAXLONG, 0,
525            WEBKIT_PARAM_READWRITE));
526
527    g_object_class_install_property(
528        gobjectClass,
529        PROP_LONG_LONG_ATTR,
530        g_param_spec_int64(
531            "long-long-attr",
532            "TestObj:long-long-attr",
533            "read-write gint64 TestObj:long-long-attr",
534            G_MININT64, G_MAXINT64, 0,
535            WEBKIT_PARAM_READWRITE));
536
537    g_object_class_install_property(
538        gobjectClass,
539        PROP_UNSIGNED_LONG_LONG_ATTR,
540        g_param_spec_uint64(
541            "unsigned-long-long-attr",
542            "TestObj:unsigned-long-long-attr",
543            "read-write guint64 TestObj:unsigned-long-long-attr",
544            0, G_MAXUINT64, 0,
545            WEBKIT_PARAM_READWRITE));
546
547    g_object_class_install_property(
548        gobjectClass,
549        PROP_STRING_ATTR,
550        g_param_spec_string(
551            "string-attr",
552            "TestObj:string-attr",
553            "read-write gchar* TestObj:string-attr",
554            "",
555            WEBKIT_PARAM_READWRITE));
556
557    g_object_class_install_property(
558        gobjectClass,
559        PROP_TEST_OBJ_ATTR,
560        g_param_spec_object(
561            "test-obj-attr",
562            "TestObj:test-obj-attr",
563            "read-only WebKitDOMTestObj* TestObj:test-obj-attr",
564            WEBKIT_DOM_TYPE_TEST_OBJ,
565            WEBKIT_PARAM_READABLE));
566
567    g_object_class_install_property(
568        gobjectClass,
569        PROP_XML_OBJ_ATTR,
570        g_param_spec_object(
571            "xml-obj-attr",
572            "TestObj:xml-obj-attr",
573            "read-only WebKitDOMTestObj* TestObj:xml-obj-attr",
574            WEBKIT_DOM_TYPE_TEST_OBJ,
575            WEBKIT_PARAM_READABLE));
576
577    g_object_class_install_property(
578        gobjectClass,
579        PROP_CREATE,
580        g_param_spec_boolean(
581            "create",
582            "TestObj:create",
583            "read-write gboolean TestObj:create",
584            FALSE,
585            WEBKIT_PARAM_READWRITE));
586
587    g_object_class_install_property(
588        gobjectClass,
589        PROP_REFLECTED_STRING_ATTR,
590        g_param_spec_string(
591            "reflected-string-attr",
592            "TestObj:reflected-string-attr",
593            "read-write gchar* TestObj:reflected-string-attr",
594            "",
595            WEBKIT_PARAM_READWRITE));
596
597    g_object_class_install_property(
598        gobjectClass,
599        PROP_REFLECTED_INTEGRAL_ATTR,
600        g_param_spec_long(
601            "reflected-integral-attr",
602            "TestObj:reflected-integral-attr",
603            "read-write glong TestObj:reflected-integral-attr",
604            G_MINLONG, G_MAXLONG, 0,
605            WEBKIT_PARAM_READWRITE));
606
607    g_object_class_install_property(
608        gobjectClass,
609        PROP_REFLECTED_UNSIGNED_INTEGRAL_ATTR,
610        g_param_spec_ulong(
611            "reflected-unsigned-integral-attr",
612            "TestObj:reflected-unsigned-integral-attr",
613            "read-write gulong TestObj:reflected-unsigned-integral-attr",
614            0, G_MAXULONG, 0,
615            WEBKIT_PARAM_READWRITE));
616
617    g_object_class_install_property(
618        gobjectClass,
619        PROP_REFLECTED_BOOLEAN_ATTR,
620        g_param_spec_boolean(
621            "reflected-boolean-attr",
622            "TestObj:reflected-boolean-attr",
623            "read-write gboolean TestObj:reflected-boolean-attr",
624            FALSE,
625            WEBKIT_PARAM_READWRITE));
626
627    g_object_class_install_property(
628        gobjectClass,
629        PROP_REFLECTED_URL_ATTR,
630        g_param_spec_string(
631            "reflected-url-attr",
632            "TestObj:reflected-url-attr",
633            "read-write gchar* TestObj:reflected-url-attr",
634            "",
635            WEBKIT_PARAM_READWRITE));
636
637    g_object_class_install_property(
638        gobjectClass,
639        PROP_REFLECTED_STRING_ATTR,
640        g_param_spec_string(
641            "reflected-string-attr",
642            "TestObj:reflected-string-attr",
643            "read-write gchar* TestObj:reflected-string-attr",
644            "",
645            WEBKIT_PARAM_READWRITE));
646
647    g_object_class_install_property(
648        gobjectClass,
649        PROP_REFLECTED_CUSTOM_INTEGRAL_ATTR,
650        g_param_spec_long(
651            "reflected-custom-integral-attr",
652            "TestObj:reflected-custom-integral-attr",
653            "read-write glong TestObj:reflected-custom-integral-attr",
654            G_MINLONG, G_MAXLONG, 0,
655            WEBKIT_PARAM_READWRITE));
656
657    g_object_class_install_property(
658        gobjectClass,
659        PROP_REFLECTED_CUSTOM_BOOLEAN_ATTR,
660        g_param_spec_boolean(
661            "reflected-custom-boolean-attr",
662            "TestObj:reflected-custom-boolean-attr",
663            "read-write gboolean TestObj:reflected-custom-boolean-attr",
664            FALSE,
665            WEBKIT_PARAM_READWRITE));
666
667    g_object_class_install_property(
668        gobjectClass,
669        PROP_REFLECTED_CUSTOM_URL_ATTR,
670        g_param_spec_string(
671            "reflected-custom-url-attr",
672            "TestObj:reflected-custom-url-attr",
673            "read-write gchar* TestObj:reflected-custom-url-attr",
674            "",
675            WEBKIT_PARAM_READWRITE));
676
677    g_object_class_install_property(
678        gobjectClass,
679        PROP_ATTR_WITH_GETTER_EXCEPTION,
680        g_param_spec_long(
681            "attr-with-getter-exception",
682            "TestObj:attr-with-getter-exception",
683            "read-write glong TestObj:attr-with-getter-exception",
684            G_MINLONG, G_MAXLONG, 0,
685            WEBKIT_PARAM_READWRITE));
686
687    g_object_class_install_property(
688        gobjectClass,
689        PROP_ATTR_WITH_SETTER_EXCEPTION,
690        g_param_spec_long(
691            "attr-with-setter-exception",
692            "TestObj:attr-with-setter-exception",
693            "read-write glong TestObj:attr-with-setter-exception",
694            G_MINLONG, G_MAXLONG, 0,
695            WEBKIT_PARAM_READWRITE));
696
697    g_object_class_install_property(
698        gobjectClass,
699        PROP_STRING_ATTR_WITH_GETTER_EXCEPTION,
700        g_param_spec_string(
701            "string-attr-with-getter-exception",
702            "TestObj:string-attr-with-getter-exception",
703            "read-write gchar* TestObj:string-attr-with-getter-exception",
704            "",
705            WEBKIT_PARAM_READWRITE));
706
707    g_object_class_install_property(
708        gobjectClass,
709        PROP_STRING_ATTR_WITH_SETTER_EXCEPTION,
710        g_param_spec_string(
711            "string-attr-with-setter-exception",
712            "TestObj:string-attr-with-setter-exception",
713            "read-write gchar* TestObj:string-attr-with-setter-exception",
714            "",
715            WEBKIT_PARAM_READWRITE));
716
717    g_object_class_install_property(
718        gobjectClass,
719        PROP_WITH_SCRIPT_STATE_ATTRIBUTE,
720        g_param_spec_long(
721            "with-script-state-attribute",
722            "TestObj:with-script-state-attribute",
723            "read-write glong TestObj:with-script-state-attribute",
724            G_MINLONG, G_MAXLONG, 0,
725            WEBKIT_PARAM_READWRITE));
726
727    g_object_class_install_property(
728        gobjectClass,
729        PROP_WITH_SCRIPT_EXECUTION_CONTEXT_ATTRIBUTE,
730        g_param_spec_object(
731            "with-script-execution-context-attribute",
732            "TestObj:with-script-execution-context-attribute",
733            "read-only WebKitDOMTestObj* TestObj:with-script-execution-context-attribute",
734            WEBKIT_DOM_TYPE_TEST_OBJ,
735            WEBKIT_PARAM_READABLE));
736
737    g_object_class_install_property(
738        gobjectClass,
739        PROP_WITH_SCRIPT_STATE_ATTRIBUTE_RAISES,
740        g_param_spec_object(
741            "with-script-state-attribute-raises",
742            "TestObj:with-script-state-attribute-raises",
743            "read-only WebKitDOMTestObj* TestObj:with-script-state-attribute-raises",
744            WEBKIT_DOM_TYPE_TEST_OBJ,
745            WEBKIT_PARAM_READABLE));
746
747    g_object_class_install_property(
748        gobjectClass,
749        PROP_WITH_SCRIPT_EXECUTION_CONTEXT_ATTRIBUTE_RAISES,
750        g_param_spec_object(
751            "with-script-execution-context-attribute-raises",
752            "TestObj:with-script-execution-context-attribute-raises",
753            "read-only WebKitDOMTestObj* TestObj:with-script-execution-context-attribute-raises",
754            WEBKIT_DOM_TYPE_TEST_OBJ,
755            WEBKIT_PARAM_READABLE));
756
757    g_object_class_install_property(
758        gobjectClass,
759        PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_ATTRIBUTE,
760        g_param_spec_object(
761            "with-script-execution-context-and-script-state-attribute",
762            "TestObj:with-script-execution-context-and-script-state-attribute",
763            "read-only WebKitDOMTestObj* TestObj:with-script-execution-context-and-script-state-attribute",
764            WEBKIT_DOM_TYPE_TEST_OBJ,
765            WEBKIT_PARAM_READABLE));
766
767    g_object_class_install_property(
768        gobjectClass,
769        PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_ATTRIBUTE_RAISES,
770        g_param_spec_object(
771            "with-script-execution-context-and-script-state-attribute-raises",
772            "TestObj:with-script-execution-context-and-script-state-attribute-raises",
773            "read-only WebKitDOMTestObj* TestObj:with-script-execution-context-and-script-state-attribute-raises",
774            WEBKIT_DOM_TYPE_TEST_OBJ,
775            WEBKIT_PARAM_READABLE));
776
777    g_object_class_install_property(
778        gobjectClass,
779        PROP_WITH_SCRIPT_EXECUTION_CONTEXT_AND_SCRIPT_STATE_WITH_SPACES_ATTRIBUTE,
780        g_param_spec_object(
781            "with-script-execution-context-and-script-state-with-spaces-attribute",
782            "TestObj:with-script-execution-context-and-script-state-with-spaces-attribute",
783            "read-only WebKitDOMTestObj* TestObj:with-script-execution-context-and-script-state-with-spaces-attribute",
784            WEBKIT_DOM_TYPE_TEST_OBJ,
785            WEBKIT_PARAM_READABLE));
786
787    g_object_class_install_property(
788        gobjectClass,
789        PROP_WITH_SCRIPT_ARGUMENTS_AND_CALL_STACK_ATTRIBUTE,
790        g_param_spec_object(
791            "with-script-arguments-and-call-stack-attribute",
792            "TestObj:with-script-arguments-and-call-stack-attribute",
793            "read-only WebKitDOMTestObj* TestObj:with-script-arguments-and-call-stack-attribute",
794            WEBKIT_DOM_TYPE_TEST_OBJ,
795            WEBKIT_PARAM_READABLE));
796
797    g_object_class_install_property(
798        gobjectClass,
799        PROP_CONDITIONAL_ATTR1,
800        g_param_spec_long(
801            "conditional-attr1",
802            "TestObj:conditional-attr1",
803            "read-write glong TestObj:conditional-attr1",
804            G_MINLONG, G_MAXLONG, 0,
805            WEBKIT_PARAM_READWRITE));
806
807    g_object_class_install_property(
808        gobjectClass,
809        PROP_CONDITIONAL_ATTR2,
810        g_param_spec_long(
811            "conditional-attr2",
812            "TestObj:conditional-attr2",
813            "read-write glong TestObj:conditional-attr2",
814            G_MINLONG, G_MAXLONG, 0,
815            WEBKIT_PARAM_READWRITE));
816
817    g_object_class_install_property(
818        gobjectClass,
819        PROP_CONDITIONAL_ATTR3,
820        g_param_spec_long(
821            "conditional-attr3",
822            "TestObj:conditional-attr3",
823            "read-write glong TestObj:conditional-attr3",
824            G_MINLONG, G_MAXLONG, 0,
825            WEBKIT_PARAM_READWRITE));
826
827    g_object_class_install_property(
828        gobjectClass,
829        PROP_ANY_ATTRIBUTE,
830        g_param_spec_object(
831            "any-attribute",
832            "TestObj:any-attribute",
833            "read-only WebKitDOMany* TestObj:any-attribute",
834            WEBKIT_DOM_TYPE_ANY,
835            WEBKIT_PARAM_READABLE));
836
837    g_object_class_install_property(
838        gobjectClass,
839        PROP_CONTENT_DOCUMENT,
840        g_param_spec_object(
841            "content-document",
842            "TestObj:content-document",
843            "read-only WebKitDOMDocument* TestObj:content-document",
844            WEBKIT_DOM_TYPE_DOCUMENT,
845            WEBKIT_PARAM_READABLE));
846
847    g_object_class_install_property(
848        gobjectClass,
849        PROP_MUTABLE_POINT,
850        g_param_spec_object(
851            "mutable-point",
852            "TestObj:mutable-point",
853            "read-only WebKitDOMSVGPoint* TestObj:mutable-point",
854            WEBKIT_DOM_TYPE_SVG_POINT,
855            WEBKIT_PARAM_READABLE));
856
857    g_object_class_install_property(
858        gobjectClass,
859        PROP_IMMUTABLE_POINT,
860        g_param_spec_object(
861            "immutable-point",
862            "TestObj:immutable-point",
863            "read-only WebKitDOMSVGPoint* TestObj:immutable-point",
864            WEBKIT_DOM_TYPE_SVG_POINT,
865            WEBKIT_PARAM_READABLE));
866
867    g_object_class_install_property(
868        gobjectClass,
869        PROP_STRAWBERRY,
870        g_param_spec_long(
871            "strawberry",
872            "TestObj:strawberry",
873            "read-write glong TestObj:strawberry",
874            G_MINLONG, G_MAXLONG, 0,
875            WEBKIT_PARAM_READWRITE));
876
877    g_object_class_install_property(
878        gobjectClass,
879        PROP_STRICT_FLOAT,
880        g_param_spec_float(
881            "strict-float",
882            "TestObj:strict-float",
883            "read-write gfloat TestObj:strict-float",
884            -G_MAXFLOAT, G_MAXFLOAT, 0,
885            WEBKIT_PARAM_READWRITE));
886
887    g_object_class_install_property(
888        gobjectClass,
889        PROP_DESCRIPTION,
890        g_param_spec_long(
891            "description",
892            "TestObj:description",
893            "read-only glong TestObj:description",
894            G_MINLONG, G_MAXLONG, 0,
895            WEBKIT_PARAM_READABLE));
896
897    g_object_class_install_property(
898        gobjectClass,
899        PROP_ID,
900        g_param_spec_long(
901            "id",
902            "TestObj:id",
903            "read-write glong TestObj:id",
904            G_MINLONG, G_MAXLONG, 0,
905            WEBKIT_PARAM_READWRITE));
906
907    g_object_class_install_property(
908        gobjectClass,
909        PROP_HASH,
910        g_param_spec_string(
911            "hash",
912            "TestObj:hash",
913            "read-only gchar* TestObj:hash",
914            "",
915            WEBKIT_PARAM_READABLE));
916
917    g_object_class_install_property(
918        gobjectClass,
919        PROP_REPLACEABLE_ATTRIBUTE,
920        g_param_spec_long(
921            "replaceable-attribute",
922            "TestObj:replaceable-attribute",
923            "read-only glong TestObj:replaceable-attribute",
924            G_MINLONG, G_MAXLONG, 0,
925            WEBKIT_PARAM_READABLE));
926
927    g_object_class_install_property(
928        gobjectClass,
929        PROP_NULLABLE_DOUBLE_ATTRIBUTE,
930        g_param_spec_double(
931            "nullable-double-attribute",
932            "TestObj:nullable-double-attribute",
933            "read-only gdouble TestObj:nullable-double-attribute",
934            -G_MAXDOUBLE, G_MAXDOUBLE, 0,
935            WEBKIT_PARAM_READABLE));
936
937    g_object_class_install_property(
938        gobjectClass,
939        PROP_NULLABLE_LONG_ATTRIBUTE,
940        g_param_spec_long(
941            "nullable-long-attribute",
942            "TestObj:nullable-long-attribute",
943            "read-only glong TestObj:nullable-long-attribute",
944            G_MINLONG, G_MAXLONG, 0,
945            WEBKIT_PARAM_READABLE));
946
947    g_object_class_install_property(
948        gobjectClass,
949        PROP_NULLABLE_BOOLEAN_ATTRIBUTE,
950        g_param_spec_boolean(
951            "nullable-boolean-attribute",
952            "TestObj:nullable-boolean-attribute",
953            "read-only gboolean TestObj:nullable-boolean-attribute",
954            FALSE,
955            WEBKIT_PARAM_READABLE));
956
957    g_object_class_install_property(
958        gobjectClass,
959        PROP_NULLABLE_STRING_ATTRIBUTE,
960        g_param_spec_string(
961            "nullable-string-attribute",
962            "TestObj:nullable-string-attribute",
963            "read-only gchar* TestObj:nullable-string-attribute",
964            "",
965            WEBKIT_PARAM_READABLE));
966
967    g_object_class_install_property(
968        gobjectClass,
969        PROP_NULLABLE_LONG_SETTABLE_ATTRIBUTE,
970        g_param_spec_long(
971            "nullable-long-settable-attribute",
972            "TestObj:nullable-long-settable-attribute",
973            "read-write glong TestObj:nullable-long-settable-attribute",
974            G_MINLONG, G_MAXLONG, 0,
975            WEBKIT_PARAM_READWRITE));
976
977    g_object_class_install_property(
978        gobjectClass,
979        PROP_NULLABLE_STRING_VALUE,
980        g_param_spec_long(
981            "nullable-string-value",
982            "TestObj:nullable-string-value",
983            "read-write glong TestObj:nullable-string-value",
984            G_MINLONG, G_MAXLONG, 0,
985            WEBKIT_PARAM_READWRITE));
986
987    g_object_class_install_property(
988        gobjectClass,
989        PROP_ATTRIBUTE,
990        g_param_spec_string(
991            "attribute",
992            "TestObj:attribute",
993            "read-only gchar* TestObj:attribute",
994            "",
995            WEBKIT_PARAM_READABLE));
996
997}
998
999static void webkit_dom_test_obj_init(WebKitDOMTestObj* request)
1000{
1001    WebKitDOMTestObjPrivate* priv = WEBKIT_DOM_TEST_OBJ_GET_PRIVATE(request);
1002    new (priv) WebKitDOMTestObjPrivate();
1003}
1004
1005void webkit_dom_test_obj_void_method(WebKitDOMTestObj* self)
1006{
1007    WebCore::JSMainThreadNullState state;
1008    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1009    WebCore::TestObj* item = WebKit::core(self);
1010    item->voidMethod();
1011}
1012
1013void webkit_dom_test_obj_void_method_with_args(WebKitDOMTestObj* self, glong longArg, const gchar* strArg, WebKitDOMTestObj* objArg)
1014{
1015    WebCore::JSMainThreadNullState state;
1016    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1017    g_return_if_fail(strArg);
1018    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(objArg));
1019    WebCore::TestObj* item = WebKit::core(self);
1020    WTF::String convertedStrArg = WTF::String::fromUTF8(strArg);
1021    WebCore::TestObj* convertedObjArg = WebKit::core(objArg);
1022    item->voidMethodWithArgs(longArg, convertedStrArg, convertedObjArg);
1023}
1024
1025gint8 webkit_dom_test_obj_byte_method(WebKitDOMTestObj* self)
1026{
1027    WebCore::JSMainThreadNullState state;
1028    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1029    WebCore::TestObj* item = WebKit::core(self);
1030    gint8 result = item->byteMethod();
1031    return result;
1032}
1033
1034gint8 webkit_dom_test_obj_byte_method_with_args(WebKitDOMTestObj* self, gint8 byteArg, const gchar* strArg, WebKitDOMTestObj* objArg)
1035{
1036    WebCore::JSMainThreadNullState state;
1037    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1038    g_return_val_if_fail(strArg, 0);
1039    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(objArg), 0);
1040    WebCore::TestObj* item = WebKit::core(self);
1041    WTF::String convertedStrArg = WTF::String::fromUTF8(strArg);
1042    WebCore::TestObj* convertedObjArg = WebKit::core(objArg);
1043    gint8 result = item->byteMethodWithArgs(byteArg, convertedStrArg, convertedObjArg);
1044    return result;
1045}
1046
1047guint8 webkit_dom_test_obj_octet_method(WebKitDOMTestObj* self)
1048{
1049    WebCore::JSMainThreadNullState state;
1050    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1051    WebCore::TestObj* item = WebKit::core(self);
1052    guint8 result = item->octetMethod();
1053    return result;
1054}
1055
1056guint8 webkit_dom_test_obj_octet_method_with_args(WebKitDOMTestObj* self, guint8 octetArg, const gchar* strArg, WebKitDOMTestObj* objArg)
1057{
1058    WebCore::JSMainThreadNullState state;
1059    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1060    g_return_val_if_fail(strArg, 0);
1061    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(objArg), 0);
1062    WebCore::TestObj* item = WebKit::core(self);
1063    WTF::String convertedStrArg = WTF::String::fromUTF8(strArg);
1064    WebCore::TestObj* convertedObjArg = WebKit::core(objArg);
1065    guint8 result = item->octetMethodWithArgs(octetArg, convertedStrArg, convertedObjArg);
1066    return result;
1067}
1068
1069glong webkit_dom_test_obj_long_method(WebKitDOMTestObj* self)
1070{
1071    WebCore::JSMainThreadNullState state;
1072    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1073    WebCore::TestObj* item = WebKit::core(self);
1074    glong result = item->longMethod();
1075    return result;
1076}
1077
1078glong webkit_dom_test_obj_long_method_with_args(WebKitDOMTestObj* self, glong longArg, const gchar* strArg, WebKitDOMTestObj* objArg)
1079{
1080    WebCore::JSMainThreadNullState state;
1081    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1082    g_return_val_if_fail(strArg, 0);
1083    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(objArg), 0);
1084    WebCore::TestObj* item = WebKit::core(self);
1085    WTF::String convertedStrArg = WTF::String::fromUTF8(strArg);
1086    WebCore::TestObj* convertedObjArg = WebKit::core(objArg);
1087    glong result = item->longMethodWithArgs(longArg, convertedStrArg, convertedObjArg);
1088    return result;
1089}
1090
1091WebKitDOMTestObj* webkit_dom_test_obj_obj_method(WebKitDOMTestObj* self)
1092{
1093    WebCore::JSMainThreadNullState state;
1094    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1095    WebCore::TestObj* item = WebKit::core(self);
1096    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->objMethod());
1097    return WebKit::kit(gobjectResult.get());
1098}
1099
1100WebKitDOMTestObj* webkit_dom_test_obj_obj_method_with_args(WebKitDOMTestObj* self, glong longArg, const gchar* strArg, WebKitDOMTestObj* objArg)
1101{
1102    WebCore::JSMainThreadNullState state;
1103    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1104    g_return_val_if_fail(strArg, 0);
1105    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(objArg), 0);
1106    WebCore::TestObj* item = WebKit::core(self);
1107    WTF::String convertedStrArg = WTF::String::fromUTF8(strArg);
1108    WebCore::TestObj* convertedObjArg = WebKit::core(objArg);
1109    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->objMethodWithArgs(longArg, convertedStrArg, convertedObjArg));
1110    return WebKit::kit(gobjectResult.get());
1111}
1112
1113void webkit_dom_test_obj_method_with_enum_arg(WebKitDOMTestObj* self, WebKitDOMTestEnumType* enumArg)
1114{
1115    WebCore::JSMainThreadNullState state;
1116    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1117    g_return_if_fail(WEBKIT_DOM_IS_TEST_ENUM_TYPE(enumArg));
1118    WebCore::TestObj* item = WebKit::core(self);
1119    WebCore::TestEnumType* convertedEnumArg = WebKit::core(enumArg);
1120    item->methodWithEnumArg(convertedEnumArg);
1121}
1122
1123WebKitDOMTestObj* webkit_dom_test_obj_method_that_requires_all_args_and_throws(WebKitDOMTestObj* self, const gchar* strArg, WebKitDOMTestObj* objArg, GError** error)
1124{
1125    WebCore::JSMainThreadNullState state;
1126    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1127    g_return_val_if_fail(strArg, 0);
1128    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(objArg), 0);
1129    g_return_val_if_fail(!error || !*error, 0);
1130    WebCore::TestObj* item = WebKit::core(self);
1131    WTF::String convertedStrArg = WTF::String::fromUTF8(strArg);
1132    WebCore::TestObj* convertedObjArg = WebKit::core(objArg);
1133    WebCore::ExceptionCode ec = 0;
1134    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->methodThatRequiresAllArgsAndThrows(convertedStrArg, convertedObjArg, ec));
1135    if (ec) {
1136        WebCore::ExceptionCodeDescription ecdesc(ec);
1137        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
1138    }
1139    return WebKit::kit(gobjectResult.get());
1140}
1141
1142void webkit_dom_test_obj_serialized_value(WebKitDOMTestObj* self, WebKitDOMSerializedScriptValue* serializedArg)
1143{
1144    WebCore::JSMainThreadNullState state;
1145    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1146    g_return_if_fail(WEBKIT_DOM_IS_SERIALIZED_SCRIPT_VALUE(serializedArg));
1147    WebCore::TestObj* item = WebKit::core(self);
1148    WebCore::SerializedScriptValue* convertedSerializedArg = WebKit::core(serializedArg);
1149    item->serializedValue(convertedSerializedArg);
1150}
1151
1152void webkit_dom_test_obj_options_object(WebKitDOMTestObj* self, WebKitDOMDictionary* oo, WebKitDOMDictionary* ooo)
1153{
1154    WebCore::JSMainThreadNullState state;
1155    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1156    g_return_if_fail(WEBKIT_DOM_IS_DICTIONARY(oo));
1157    g_return_if_fail(WEBKIT_DOM_IS_DICTIONARY(ooo));
1158    WebCore::TestObj* item = WebKit::core(self);
1159    WebCore::Dictionary* convertedOo = WebKit::core(oo);
1160    WebCore::Dictionary* convertedOoo = WebKit::core(ooo);
1161    item->optionsObject(convertedOo, convertedOoo);
1162}
1163
1164void webkit_dom_test_obj_method_with_exception(WebKitDOMTestObj* self, GError** error)
1165{
1166    WebCore::JSMainThreadNullState state;
1167    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1168    g_return_if_fail(!error || !*error);
1169    WebCore::TestObj* item = WebKit::core(self);
1170    WebCore::ExceptionCode ec = 0;
1171    item->methodWithException(ec);
1172    if (ec) {
1173        WebCore::ExceptionCodeDescription ecdesc(ec);
1174        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
1175    }
1176}
1177
1178void webkit_dom_test_obj_with_script_state_void(WebKitDOMTestObj* self)
1179{
1180    WebCore::JSMainThreadNullState state;
1181    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1182    WebCore::TestObj* item = WebKit::core(self);
1183    item->withScriptStateVoid();
1184}
1185
1186WebKitDOMTestObj* webkit_dom_test_obj_with_script_state_obj(WebKitDOMTestObj* self)
1187{
1188    WebCore::JSMainThreadNullState state;
1189    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1190    WebCore::TestObj* item = WebKit::core(self);
1191    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptStateObj());
1192    return WebKit::kit(gobjectResult.get());
1193}
1194
1195void webkit_dom_test_obj_with_script_state_void_exception(WebKitDOMTestObj* self, GError** error)
1196{
1197    WebCore::JSMainThreadNullState state;
1198    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1199    g_return_if_fail(!error || !*error);
1200    WebCore::TestObj* item = WebKit::core(self);
1201    WebCore::ExceptionCode ec = 0;
1202    item->withScriptStateVoidException(ec);
1203    if (ec) {
1204        WebCore::ExceptionCodeDescription ecdesc(ec);
1205        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
1206    }
1207}
1208
1209WebKitDOMTestObj* webkit_dom_test_obj_with_script_state_obj_exception(WebKitDOMTestObj* self, GError** error)
1210{
1211    WebCore::JSMainThreadNullState state;
1212    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1213    g_return_val_if_fail(!error || !*error, 0);
1214    WebCore::TestObj* item = WebKit::core(self);
1215    WebCore::ExceptionCode ec = 0;
1216    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptStateObjException(ec));
1217    if (ec) {
1218        WebCore::ExceptionCodeDescription ecdesc(ec);
1219        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
1220    }
1221    return WebKit::kit(gobjectResult.get());
1222}
1223
1224void webkit_dom_test_obj_with_script_execution_context(WebKitDOMTestObj* self)
1225{
1226    WebCore::JSMainThreadNullState state;
1227    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1228    WebCore::TestObj* item = WebKit::core(self);
1229    item->withScriptExecutionContext();
1230}
1231
1232void webkit_dom_test_obj_with_script_execution_context_and_script_state(WebKitDOMTestObj* self)
1233{
1234    WebCore::JSMainThreadNullState state;
1235    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1236    WebCore::TestObj* item = WebKit::core(self);
1237    item->withScriptExecutionContextAndScriptState();
1238}
1239
1240WebKitDOMTestObj* webkit_dom_test_obj_with_script_execution_context_and_script_state_obj_exception(WebKitDOMTestObj* self, GError** error)
1241{
1242    WebCore::JSMainThreadNullState state;
1243    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1244    g_return_val_if_fail(!error || !*error, 0);
1245    WebCore::TestObj* item = WebKit::core(self);
1246    WebCore::ExceptionCode ec = 0;
1247    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptExecutionContextAndScriptStateObjException(ec));
1248    if (ec) {
1249        WebCore::ExceptionCodeDescription ecdesc(ec);
1250        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
1251    }
1252    return WebKit::kit(gobjectResult.get());
1253}
1254
1255WebKitDOMTestObj* webkit_dom_test_obj_with_script_execution_context_and_script_state_with_spaces(WebKitDOMTestObj* self)
1256{
1257    WebCore::JSMainThreadNullState state;
1258    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1259    WebCore::TestObj* item = WebKit::core(self);
1260    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptExecutionContextAndScriptStateWithSpaces());
1261    return WebKit::kit(gobjectResult.get());
1262}
1263
1264void webkit_dom_test_obj_method_with_optional_arg(WebKitDOMTestObj* self, glong opt)
1265{
1266    WebCore::JSMainThreadNullState state;
1267    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1268    WebCore::TestObj* item = WebKit::core(self);
1269    item->methodWithOptionalArg(opt);
1270}
1271
1272void webkit_dom_test_obj_method_with_non_optional_arg_and_optional_arg(WebKitDOMTestObj* self, glong nonOpt, glong opt)
1273{
1274    WebCore::JSMainThreadNullState state;
1275    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1276    WebCore::TestObj* item = WebKit::core(self);
1277    item->methodWithNonOptionalArgAndOptionalArg(nonOpt, opt);
1278}
1279
1280void webkit_dom_test_obj_method_with_non_optional_arg_and_two_optional_args(WebKitDOMTestObj* self, glong nonOpt, glong opt1, glong opt2)
1281{
1282    WebCore::JSMainThreadNullState state;
1283    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1284    WebCore::TestObj* item = WebKit::core(self);
1285    item->methodWithNonOptionalArgAndTwoOptionalArgs(nonOpt, opt1, opt2);
1286}
1287
1288void webkit_dom_test_obj_method_with_optional_string(WebKitDOMTestObj* self, const gchar* str)
1289{
1290    WebCore::JSMainThreadNullState state;
1291    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1292    g_return_if_fail(str);
1293    WebCore::TestObj* item = WebKit::core(self);
1294    WTF::String convertedStr = WTF::String::fromUTF8(str);
1295    item->methodWithOptionalString(convertedStr);
1296}
1297
1298void webkit_dom_test_obj_method_with_optional_string_is_undefined(WebKitDOMTestObj* self, const gchar* str)
1299{
1300    WebCore::JSMainThreadNullState state;
1301    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1302    g_return_if_fail(str);
1303    WebCore::TestObj* item = WebKit::core(self);
1304    WTF::String convertedStr = WTF::String::fromUTF8(str);
1305    item->methodWithOptionalStringIsUndefined(convertedStr);
1306}
1307
1308void webkit_dom_test_obj_method_with_optional_string_is_null_string(WebKitDOMTestObj* self, const gchar* str)
1309{
1310    WebCore::JSMainThreadNullState state;
1311    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1312    g_return_if_fail(str);
1313    WebCore::TestObj* item = WebKit::core(self);
1314    WTF::String convertedStr = WTF::String::fromUTF8(str);
1315    item->methodWithOptionalStringIsNullString(convertedStr);
1316}
1317
1318gchar* webkit_dom_test_obj_conditional_method1(WebKitDOMTestObj* self)
1319{
1320#if ENABLE(Condition1)
1321    WebCore::JSMainThreadNullState state;
1322    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1323    WebCore::TestObj* item = WebKit::core(self);
1324    gchar* result = convertToUTF8String(item->conditionalMethod1());
1325    return result;
1326#else
1327    UNUSED_PARAM(self);
1328    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
1329    return 0;
1330#endif /* ENABLE(Condition1) */
1331}
1332
1333void webkit_dom_test_obj_conditional_method2(WebKitDOMTestObj* self)
1334{
1335#if ENABLE(Condition1) && ENABLE(Condition2)
1336    WebCore::JSMainThreadNullState state;
1337    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1338    WebCore::TestObj* item = WebKit::core(self);
1339    item->conditionalMethod2();
1340#else
1341    UNUSED_PARAM(self);
1342#if !ENABLE(Condition1)
1343    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
1344#endif
1345#if !ENABLE(Condition2)
1346    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
1347#endif
1348#endif /* ENABLE(Condition1) && ENABLE(Condition2) */
1349}
1350
1351void webkit_dom_test_obj_conditional_method3(WebKitDOMTestObj* self)
1352{
1353#if ENABLE(Condition1) || ENABLE(Condition2)
1354    WebCore::JSMainThreadNullState state;
1355    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1356    WebCore::TestObj* item = WebKit::core(self);
1357    item->conditionalMethod3();
1358#else
1359    UNUSED_PARAM(self);
1360    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
1361    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
1362#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
1363}
1364
1365void webkit_dom_test_obj_class_method(WebKitDOMTestObj* self)
1366{
1367    WebCore::JSMainThreadNullState state;
1368    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1369    WebCore::TestObj* item = WebKit::core(self);
1370    item->classMethod();
1371}
1372
1373glong webkit_dom_test_obj_class_method_with_optional(WebKitDOMTestObj* self, glong arg)
1374{
1375    WebCore::JSMainThreadNullState state;
1376    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1377    WebCore::TestObj* item = WebKit::core(self);
1378    glong result = item->classMethodWithOptional(arg);
1379    return result;
1380}
1381
1382void webkit_dom_test_obj_overloaded_method1(WebKitDOMTestObj* self, glong arg)
1383{
1384#if ENABLE(Condition1)
1385    WebCore::JSMainThreadNullState state;
1386    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1387    WebCore::TestObj* item = WebKit::core(self);
1388    item->overloadedMethod1(arg);
1389#else
1390    UNUSED_PARAM(self);
1391    UNUSED_PARAM(arg);
1392    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
1393#endif /* ENABLE(Condition1) */
1394}
1395
1396void webkit_dom_test_obj_overloaded_method1(WebKitDOMTestObj* self, const gchar* type)
1397{
1398#if ENABLE(Condition1)
1399    WebCore::JSMainThreadNullState state;
1400    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1401    g_return_if_fail(type);
1402    WebCore::TestObj* item = WebKit::core(self);
1403    WTF::String convertedType = WTF::String::fromUTF8(type);
1404    item->overloadedMethod1(convertedType);
1405#else
1406    UNUSED_PARAM(self);
1407    UNUSED_PARAM(type);
1408    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
1409#endif /* ENABLE(Condition1) */
1410}
1411
1412void webkit_dom_test_obj_convert1(WebKitDOMTestObj* self, WebKitDOMTestNode* value)
1413{
1414    WebCore::JSMainThreadNullState state;
1415    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1416    g_return_if_fail(WEBKIT_DOM_IS_TEST_NODE(value));
1417    WebCore::TestObj* item = WebKit::core(self);
1418    WebCore::TestNode* convertedValue = WebKit::core(value);
1419    item->convert1(convertedValue);
1420}
1421
1422void webkit_dom_test_obj_convert2(WebKitDOMTestObj* self, WebKitDOMTestNode* value)
1423{
1424    WebCore::JSMainThreadNullState state;
1425    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1426    g_return_if_fail(WEBKIT_DOM_IS_TEST_NODE(value));
1427    WebCore::TestObj* item = WebKit::core(self);
1428    WebCore::TestNode* convertedValue = WebKit::core(value);
1429    item->convert2(convertedValue);
1430}
1431
1432void webkit_dom_test_obj_convert4(WebKitDOMTestObj* self, WebKitDOMTestNode* value)
1433{
1434    WebCore::JSMainThreadNullState state;
1435    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1436    g_return_if_fail(WEBKIT_DOM_IS_TEST_NODE(value));
1437    WebCore::TestObj* item = WebKit::core(self);
1438    WebCore::TestNode* convertedValue = WebKit::core(value);
1439    item->convert4(convertedValue);
1440}
1441
1442void webkit_dom_test_obj_convert5(WebKitDOMTestObj* self, WebKitDOMTestNode* value)
1443{
1444    WebCore::JSMainThreadNullState state;
1445    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1446    g_return_if_fail(WEBKIT_DOM_IS_TEST_NODE(value));
1447    WebCore::TestObj* item = WebKit::core(self);
1448    WebCore::TestNode* convertedValue = WebKit::core(value);
1449    item->convert5(convertedValue);
1450}
1451
1452WebKitDOMSVGPoint* webkit_dom_test_obj_mutable_point_function(WebKitDOMTestObj* self)
1453{
1454    WebCore::JSMainThreadNullState state;
1455    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1456    WebCore::TestObj* item = WebKit::core(self);
1457    RefPtr<WebCore::SVGPoint> gobjectResult = WTF::getPtr(item->mutablePointFunction());
1458    return WebKit::kit(gobjectResult.get());
1459}
1460
1461WebKitDOMSVGPoint* webkit_dom_test_obj_immutable_point_function(WebKitDOMTestObj* self)
1462{
1463    WebCore::JSMainThreadNullState state;
1464    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1465    WebCore::TestObj* item = WebKit::core(self);
1466    RefPtr<WebCore::SVGPoint> gobjectResult = WTF::getPtr(item->immutablePointFunction());
1467    return WebKit::kit(gobjectResult.get());
1468}
1469
1470void webkit_dom_test_obj_orange(WebKitDOMTestObj* self)
1471{
1472    WebCore::JSMainThreadNullState state;
1473    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1474    WebCore::TestObj* item = WebKit::core(self);
1475    item->banana();
1476}
1477
1478WebKitDOMbool* webkit_dom_test_obj_strict_function(WebKitDOMTestObj* self, const gchar* str, gfloat a, glong b, GError** error)
1479{
1480    WebCore::JSMainThreadNullState state;
1481    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1482    g_return_val_if_fail(str, 0);
1483    g_return_val_if_fail(!error || !*error, 0);
1484    WebCore::TestObj* item = WebKit::core(self);
1485    WTF::String convertedStr = WTF::String::fromUTF8(str);
1486    WebCore::ExceptionCode ec = 0;
1487    RefPtr<WebCore::bool> gobjectResult = WTF::getPtr(item->strictFunction(convertedStr, a, b, ec));
1488    if (ec) {
1489        WebCore::ExceptionCodeDescription ecdesc(ec);
1490        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
1491    }
1492    return WebKit::kit(gobjectResult.get());
1493}
1494
1495void webkit_dom_test_obj_variadic_string_method(WebKitDOMTestObj* self, const gchar* head, const gchar* tail)
1496{
1497    WebCore::JSMainThreadNullState state;
1498    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1499    g_return_if_fail(head);
1500    g_return_if_fail(tail);
1501    WebCore::TestObj* item = WebKit::core(self);
1502    WTF::String convertedHead = WTF::String::fromUTF8(head);
1503    WTF::String convertedTail = WTF::String::fromUTF8(tail);
1504    item->variadicStringMethod(convertedHead, convertedTail);
1505}
1506
1507void webkit_dom_test_obj_variadic_double_method(WebKitDOMTestObj* self, gdouble head, gdouble tail)
1508{
1509    WebCore::JSMainThreadNullState state;
1510    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1511    WebCore::TestObj* item = WebKit::core(self);
1512    item->variadicDoubleMethod(head, tail);
1513}
1514
1515void webkit_dom_test_obj_variadic_node_method(WebKitDOMTestObj* self, WebKitDOMNode* head, WebKitDOMNode* tail)
1516{
1517    WebCore::JSMainThreadNullState state;
1518    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1519    g_return_if_fail(WEBKIT_DOM_IS_NODE(head));
1520    g_return_if_fail(WEBKIT_DOM_IS_NODE(tail));
1521    WebCore::TestObj* item = WebKit::core(self);
1522    WebCore::Node* convertedHead = WebKit::core(head);
1523    WebCore::Node* convertedTail = WebKit::core(tail);
1524    item->variadicNodeMethod(convertedHead, convertedTail);
1525}
1526
1527void webkit_dom_test_obj_any(WebKitDOMTestObj* self, gfloat a, glong b)
1528{
1529    WebCore::JSMainThreadNullState state;
1530    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1531    WebCore::TestObj* item = WebKit::core(self);
1532    item->any(a, b);
1533}
1534
1535glong webkit_dom_test_obj_get_read_only_long_attr(WebKitDOMTestObj* self)
1536{
1537    WebCore::JSMainThreadNullState state;
1538    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1539    WebCore::TestObj* item = WebKit::core(self);
1540    glong result = item->readOnlyLongAttr();
1541    return result;
1542}
1543
1544gchar* webkit_dom_test_obj_get_read_only_string_attr(WebKitDOMTestObj* self)
1545{
1546    WebCore::JSMainThreadNullState state;
1547    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1548    WebCore::TestObj* item = WebKit::core(self);
1549    gchar* result = convertToUTF8String(item->readOnlyStringAttr());
1550    return result;
1551}
1552
1553WebKitDOMTestObj* webkit_dom_test_obj_get_read_only_test_obj_attr(WebKitDOMTestObj* self)
1554{
1555    WebCore::JSMainThreadNullState state;
1556    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1557    WebCore::TestObj* item = WebKit::core(self);
1558    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->readOnlyTestObjAttr());
1559    return WebKit::kit(gobjectResult.get());
1560}
1561
1562gint8 webkit_dom_test_obj_get_byte_attr(WebKitDOMTestObj* self)
1563{
1564    WebCore::JSMainThreadNullState state;
1565    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1566    WebCore::TestObj* item = WebKit::core(self);
1567    gint8 result = item->byteAttr();
1568    return result;
1569}
1570
1571void webkit_dom_test_obj_set_byte_attr(WebKitDOMTestObj* self, gint8 value)
1572{
1573    WebCore::JSMainThreadNullState state;
1574    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1575    WebCore::TestObj* item = WebKit::core(self);
1576    item->setByteAttr(value);
1577}
1578
1579guint8 webkit_dom_test_obj_get_octet_attr(WebKitDOMTestObj* self)
1580{
1581    WebCore::JSMainThreadNullState state;
1582    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1583    WebCore::TestObj* item = WebKit::core(self);
1584    guint8 result = item->octetAttr();
1585    return result;
1586}
1587
1588void webkit_dom_test_obj_set_octet_attr(WebKitDOMTestObj* self, guint8 value)
1589{
1590    WebCore::JSMainThreadNullState state;
1591    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1592    WebCore::TestObj* item = WebKit::core(self);
1593    item->setOctetAttr(value);
1594}
1595
1596gshort webkit_dom_test_obj_get_short_attr(WebKitDOMTestObj* self)
1597{
1598    WebCore::JSMainThreadNullState state;
1599    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1600    WebCore::TestObj* item = WebKit::core(self);
1601    gshort result = item->shortAttr();
1602    return result;
1603}
1604
1605void webkit_dom_test_obj_set_short_attr(WebKitDOMTestObj* self, gshort value)
1606{
1607    WebCore::JSMainThreadNullState state;
1608    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1609    WebCore::TestObj* item = WebKit::core(self);
1610    item->setShortAttr(value);
1611}
1612
1613gushort webkit_dom_test_obj_get_unsigned_short_attr(WebKitDOMTestObj* self)
1614{
1615    WebCore::JSMainThreadNullState state;
1616    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1617    WebCore::TestObj* item = WebKit::core(self);
1618    gushort result = item->unsignedShortAttr();
1619    return result;
1620}
1621
1622void webkit_dom_test_obj_set_unsigned_short_attr(WebKitDOMTestObj* self, gushort value)
1623{
1624    WebCore::JSMainThreadNullState state;
1625    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1626    WebCore::TestObj* item = WebKit::core(self);
1627    item->setUnsignedShortAttr(value);
1628}
1629
1630glong webkit_dom_test_obj_get_long_attr(WebKitDOMTestObj* self)
1631{
1632    WebCore::JSMainThreadNullState state;
1633    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1634    WebCore::TestObj* item = WebKit::core(self);
1635    glong result = item->longAttr();
1636    return result;
1637}
1638
1639void webkit_dom_test_obj_set_long_attr(WebKitDOMTestObj* self, glong value)
1640{
1641    WebCore::JSMainThreadNullState state;
1642    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1643    WebCore::TestObj* item = WebKit::core(self);
1644    item->setLongAttr(value);
1645}
1646
1647gint64 webkit_dom_test_obj_get_long_long_attr(WebKitDOMTestObj* self)
1648{
1649    WebCore::JSMainThreadNullState state;
1650    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1651    WebCore::TestObj* item = WebKit::core(self);
1652    gint64 result = item->longLongAttr();
1653    return result;
1654}
1655
1656void webkit_dom_test_obj_set_long_long_attr(WebKitDOMTestObj* self, gint64 value)
1657{
1658    WebCore::JSMainThreadNullState state;
1659    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1660    WebCore::TestObj* item = WebKit::core(self);
1661    item->setLongLongAttr(value);
1662}
1663
1664guint64 webkit_dom_test_obj_get_unsigned_long_long_attr(WebKitDOMTestObj* self)
1665{
1666    WebCore::JSMainThreadNullState state;
1667    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1668    WebCore::TestObj* item = WebKit::core(self);
1669    guint64 result = item->unsignedLongLongAttr();
1670    return result;
1671}
1672
1673void webkit_dom_test_obj_set_unsigned_long_long_attr(WebKitDOMTestObj* self, guint64 value)
1674{
1675    WebCore::JSMainThreadNullState state;
1676    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1677    WebCore::TestObj* item = WebKit::core(self);
1678    item->setUnsignedLongLongAttr(value);
1679}
1680
1681gchar* webkit_dom_test_obj_get_string_attr(WebKitDOMTestObj* self)
1682{
1683    WebCore::JSMainThreadNullState state;
1684    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1685    WebCore::TestObj* item = WebKit::core(self);
1686    gchar* result = convertToUTF8String(item->stringAttr());
1687    return result;
1688}
1689
1690void webkit_dom_test_obj_set_string_attr(WebKitDOMTestObj* self, const gchar* value)
1691{
1692    WebCore::JSMainThreadNullState state;
1693    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1694    g_return_if_fail(value);
1695    WebCore::TestObj* item = WebKit::core(self);
1696    WTF::String convertedValue = WTF::String::fromUTF8(value);
1697    item->setStringAttr(convertedValue);
1698}
1699
1700WebKitDOMTestObj* webkit_dom_test_obj_get_test_obj_attr(WebKitDOMTestObj* self)
1701{
1702    WebCore::JSMainThreadNullState state;
1703    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1704    WebCore::TestObj* item = WebKit::core(self);
1705    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->testObjAttr());
1706    return WebKit::kit(gobjectResult.get());
1707}
1708
1709void webkit_dom_test_obj_set_test_obj_attr(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
1710{
1711    WebCore::JSMainThreadNullState state;
1712    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1713    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(value));
1714    WebCore::TestObj* item = WebKit::core(self);
1715    WebCore::TestObj* convertedValue = WebKit::core(value);
1716    item->setTestObjAttr(convertedValue);
1717}
1718
1719WebKitDOMTestObj* webkit_dom_test_obj_get_xml_obj_attr(WebKitDOMTestObj* self)
1720{
1721    WebCore::JSMainThreadNullState state;
1722    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1723    WebCore::TestObj* item = WebKit::core(self);
1724    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->xmlObjAttr());
1725    return WebKit::kit(gobjectResult.get());
1726}
1727
1728void webkit_dom_test_obj_set_xml_obj_attr(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
1729{
1730    WebCore::JSMainThreadNullState state;
1731    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1732    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(value));
1733    WebCore::TestObj* item = WebKit::core(self);
1734    WebCore::TestObj* convertedValue = WebKit::core(value);
1735    item->setXMLObjAttr(convertedValue);
1736}
1737
1738gboolean webkit_dom_test_obj_get_create(WebKitDOMTestObj* self)
1739{
1740    WebCore::JSMainThreadNullState state;
1741    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), FALSE);
1742    WebCore::TestObj* item = WebKit::core(self);
1743    gboolean result = item->isCreate();
1744    return result;
1745}
1746
1747void webkit_dom_test_obj_set_create(WebKitDOMTestObj* self, gboolean value)
1748{
1749    WebCore::JSMainThreadNullState state;
1750    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1751    WebCore::TestObj* item = WebKit::core(self);
1752    item->setCreate(value);
1753}
1754
1755gchar* webkit_dom_test_obj_get_reflected_string_attr(WebKitDOMTestObj* self)
1756{
1757    WebCore::JSMainThreadNullState state;
1758    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1759    WebCore::TestObj* item = WebKit::core(self);
1760    gchar* result = convertToUTF8String(item->fastGetAttribute(WebCore::HTMLNames::reflectedstringattrAttr));
1761    return result;
1762}
1763
1764void webkit_dom_test_obj_set_reflected_string_attr(WebKitDOMTestObj* self, const gchar* value)
1765{
1766    WebCore::JSMainThreadNullState state;
1767    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1768    g_return_if_fail(value);
1769    WebCore::TestObj* item = WebKit::core(self);
1770    WTF::String convertedValue = WTF::String::fromUTF8(value);
1771    item->setAttributeWithoutSynchronization(WebCore::HTMLNames::reflectedstringattrAttr, convertedValue);
1772}
1773
1774glong webkit_dom_test_obj_get_reflected_integral_attr(WebKitDOMTestObj* self)
1775{
1776    WebCore::JSMainThreadNullState state;
1777    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1778    WebCore::TestObj* item = WebKit::core(self);
1779    glong result = item->getIntegralAttribute(WebCore::HTMLNames::reflectedintegralattrAttr);
1780    return result;
1781}
1782
1783void webkit_dom_test_obj_set_reflected_integral_attr(WebKitDOMTestObj* self, glong value)
1784{
1785    WebCore::JSMainThreadNullState state;
1786    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1787    WebCore::TestObj* item = WebKit::core(self);
1788    item->setIntegralAttribute(WebCore::HTMLNames::reflectedintegralattrAttr, value);
1789}
1790
1791gulong webkit_dom_test_obj_get_reflected_unsigned_integral_attr(WebKitDOMTestObj* self)
1792{
1793    WebCore::JSMainThreadNullState state;
1794    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1795    WebCore::TestObj* item = WebKit::core(self);
1796    gulong result = item->getUnsignedIntegralAttribute(WebCore::HTMLNames::reflectedunsignedintegralattrAttr);
1797    return result;
1798}
1799
1800void webkit_dom_test_obj_set_reflected_unsigned_integral_attr(WebKitDOMTestObj* self, gulong value)
1801{
1802    WebCore::JSMainThreadNullState state;
1803    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1804    WebCore::TestObj* item = WebKit::core(self);
1805    item->setUnsignedIntegralAttribute(WebCore::HTMLNames::reflectedunsignedintegralattrAttr, value);
1806}
1807
1808gboolean webkit_dom_test_obj_get_reflected_boolean_attr(WebKitDOMTestObj* self)
1809{
1810    WebCore::JSMainThreadNullState state;
1811    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), FALSE);
1812    WebCore::TestObj* item = WebKit::core(self);
1813    gboolean result = item->fastHasAttribute(WebCore::HTMLNames::reflectedbooleanattrAttr);
1814    return result;
1815}
1816
1817void webkit_dom_test_obj_set_reflected_boolean_attr(WebKitDOMTestObj* self, gboolean value)
1818{
1819    WebCore::JSMainThreadNullState state;
1820    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1821    WebCore::TestObj* item = WebKit::core(self);
1822    item->setBooleanAttribute(WebCore::HTMLNames::reflectedbooleanattrAttr, value);
1823}
1824
1825gchar* webkit_dom_test_obj_get_reflected_url_attr(WebKitDOMTestObj* self)
1826{
1827    WebCore::JSMainThreadNullState state;
1828    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1829    WebCore::TestObj* item = WebKit::core(self);
1830    gchar* result = convertToUTF8String(item->getURLAttribute(WebCore::HTMLNames::reflectedurlattrAttr));
1831    return result;
1832}
1833
1834void webkit_dom_test_obj_set_reflected_url_attr(WebKitDOMTestObj* self, const gchar* value)
1835{
1836    WebCore::JSMainThreadNullState state;
1837    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1838    g_return_if_fail(value);
1839    WebCore::TestObj* item = WebKit::core(self);
1840    WTF::String convertedValue = WTF::String::fromUTF8(value);
1841    item->setAttributeWithoutSynchronization(WebCore::HTMLNames::reflectedurlattrAttr, convertedValue);
1842}
1843
1844gchar* webkit_dom_test_obj_get_reflected_string_attr(WebKitDOMTestObj* self)
1845{
1846    WebCore::JSMainThreadNullState state;
1847    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1848    WebCore::TestObj* item = WebKit::core(self);
1849    gchar* result = convertToUTF8String(item->fastGetAttribute(WebCore::HTMLNames::customContentStringAttrAttr));
1850    return result;
1851}
1852
1853void webkit_dom_test_obj_set_reflected_string_attr(WebKitDOMTestObj* self, const gchar* value)
1854{
1855    WebCore::JSMainThreadNullState state;
1856    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1857    g_return_if_fail(value);
1858    WebCore::TestObj* item = WebKit::core(self);
1859    WTF::String convertedValue = WTF::String::fromUTF8(value);
1860    item->setAttributeWithoutSynchronization(WebCore::HTMLNames::customContentStringAttrAttr, convertedValue);
1861}
1862
1863glong webkit_dom_test_obj_get_reflected_custom_integral_attr(WebKitDOMTestObj* self)
1864{
1865    WebCore::JSMainThreadNullState state;
1866    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1867    WebCore::TestObj* item = WebKit::core(self);
1868    glong result = item->getIntegralAttribute(WebCore::HTMLNames::customContentIntegralAttrAttr);
1869    return result;
1870}
1871
1872void webkit_dom_test_obj_set_reflected_custom_integral_attr(WebKitDOMTestObj* self, glong value)
1873{
1874    WebCore::JSMainThreadNullState state;
1875    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1876    WebCore::TestObj* item = WebKit::core(self);
1877    item->setIntegralAttribute(WebCore::HTMLNames::customContentIntegralAttrAttr, value);
1878}
1879
1880gboolean webkit_dom_test_obj_get_reflected_custom_boolean_attr(WebKitDOMTestObj* self)
1881{
1882    WebCore::JSMainThreadNullState state;
1883    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), FALSE);
1884    WebCore::TestObj* item = WebKit::core(self);
1885    gboolean result = item->fastHasAttribute(WebCore::HTMLNames::customContentBooleanAttrAttr);
1886    return result;
1887}
1888
1889void webkit_dom_test_obj_set_reflected_custom_boolean_attr(WebKitDOMTestObj* self, gboolean value)
1890{
1891    WebCore::JSMainThreadNullState state;
1892    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1893    WebCore::TestObj* item = WebKit::core(self);
1894    item->setBooleanAttribute(WebCore::HTMLNames::customContentBooleanAttrAttr, value);
1895}
1896
1897gchar* webkit_dom_test_obj_get_reflected_custom_url_attr(WebKitDOMTestObj* self)
1898{
1899    WebCore::JSMainThreadNullState state;
1900    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1901    WebCore::TestObj* item = WebKit::core(self);
1902    gchar* result = convertToUTF8String(item->getURLAttribute(WebCore::HTMLNames::customContentURLAttrAttr));
1903    return result;
1904}
1905
1906void webkit_dom_test_obj_set_reflected_custom_url_attr(WebKitDOMTestObj* self, const gchar* value)
1907{
1908    WebCore::JSMainThreadNullState state;
1909    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1910    g_return_if_fail(value);
1911    WebCore::TestObj* item = WebKit::core(self);
1912    WTF::String convertedValue = WTF::String::fromUTF8(value);
1913    item->setAttributeWithoutSynchronization(WebCore::HTMLNames::customContentURLAttrAttr, convertedValue);
1914}
1915
1916glong webkit_dom_test_obj_get_attr_with_getter_exception(WebKitDOMTestObj* self, GError** error)
1917{
1918    WebCore::JSMainThreadNullState state;
1919    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1920    g_return_val_if_fail(!error || !*error, 0);
1921    WebCore::TestObj* item = WebKit::core(self);
1922    WebCore::ExceptionCode ec = 0;
1923    glong result = item->attrWithGetterException(ec);
1924    if (ec) {
1925        WebCore::ExceptionCodeDescription ecdesc(ec);
1926        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
1927    }
1928    return result;
1929}
1930
1931void webkit_dom_test_obj_set_attr_with_getter_exception(WebKitDOMTestObj* self, glong value)
1932{
1933    WebCore::JSMainThreadNullState state;
1934    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1935    WebCore::TestObj* item = WebKit::core(self);
1936    item->setAttrWithGetterException(value);
1937}
1938
1939glong webkit_dom_test_obj_get_attr_with_setter_exception(WebKitDOMTestObj* self)
1940{
1941    WebCore::JSMainThreadNullState state;
1942    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1943    WebCore::TestObj* item = WebKit::core(self);
1944    glong result = item->attrWithSetterException();
1945    return result;
1946}
1947
1948void webkit_dom_test_obj_set_attr_with_setter_exception(WebKitDOMTestObj* self, glong value, GError** error)
1949{
1950    WebCore::JSMainThreadNullState state;
1951    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1952    g_return_if_fail(!error || !*error);
1953    WebCore::TestObj* item = WebKit::core(self);
1954    WebCore::ExceptionCode ec = 0;
1955    item->setAttrWithSetterException(value, ec);
1956    if (ec) {
1957        WebCore::ExceptionCodeDescription ecdesc(ec);
1958        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
1959    }
1960}
1961
1962gchar* webkit_dom_test_obj_get_string_attr_with_getter_exception(WebKitDOMTestObj* self, GError** error)
1963{
1964    WebCore::JSMainThreadNullState state;
1965    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1966    g_return_val_if_fail(!error || !*error, 0);
1967    WebCore::TestObj* item = WebKit::core(self);
1968    WebCore::ExceptionCode ec = 0;
1969    gchar* result = convertToUTF8String(item->stringAttrWithGetterException(ec));
1970    return result;
1971}
1972
1973void webkit_dom_test_obj_set_string_attr_with_getter_exception(WebKitDOMTestObj* self, const gchar* value)
1974{
1975    WebCore::JSMainThreadNullState state;
1976    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1977    g_return_if_fail(value);
1978    WebCore::TestObj* item = WebKit::core(self);
1979    WTF::String convertedValue = WTF::String::fromUTF8(value);
1980    item->setStringAttrWithGetterException(convertedValue);
1981}
1982
1983gchar* webkit_dom_test_obj_get_string_attr_with_setter_exception(WebKitDOMTestObj* self)
1984{
1985    WebCore::JSMainThreadNullState state;
1986    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
1987    WebCore::TestObj* item = WebKit::core(self);
1988    gchar* result = convertToUTF8String(item->stringAttrWithSetterException());
1989    return result;
1990}
1991
1992void webkit_dom_test_obj_set_string_attr_with_setter_exception(WebKitDOMTestObj* self, const gchar* value, GError** error)
1993{
1994    WebCore::JSMainThreadNullState state;
1995    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
1996    g_return_if_fail(value);
1997    g_return_if_fail(!error || !*error);
1998    WebCore::TestObj* item = WebKit::core(self);
1999    WTF::String convertedValue = WTF::String::fromUTF8(value);
2000    WebCore::ExceptionCode ec = 0;
2001    item->setStringAttrWithSetterException(convertedValue, ec);
2002    if (ec) {
2003        WebCore::ExceptionCodeDescription ecdesc(ec);
2004        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
2005    }
2006}
2007
2008glong webkit_dom_test_obj_get_with_script_state_attribute(WebKitDOMTestObj* self)
2009{
2010    WebCore::JSMainThreadNullState state;
2011    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2012    WebCore::TestObj* item = WebKit::core(self);
2013    glong result = item->withScriptStateAttribute();
2014    return result;
2015}
2016
2017void webkit_dom_test_obj_set_with_script_state_attribute(WebKitDOMTestObj* self, glong value)
2018{
2019    WebCore::JSMainThreadNullState state;
2020    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2021    WebCore::TestObj* item = WebKit::core(self);
2022    item->setWithScriptStateAttribute(value);
2023}
2024
2025WebKitDOMTestObj* webkit_dom_test_obj_get_with_script_execution_context_attribute(WebKitDOMTestObj* self)
2026{
2027    WebCore::JSMainThreadNullState state;
2028    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2029    WebCore::TestObj* item = WebKit::core(self);
2030    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptExecutionContextAttribute());
2031    return WebKit::kit(gobjectResult.get());
2032}
2033
2034void webkit_dom_test_obj_set_with_script_execution_context_attribute(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
2035{
2036    WebCore::JSMainThreadNullState state;
2037    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2038    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(value));
2039    WebCore::TestObj* item = WebKit::core(self);
2040    WebCore::TestObj* convertedValue = WebKit::core(value);
2041    item->setWithScriptExecutionContextAttribute(convertedValue);
2042}
2043
2044WebKitDOMTestObj* webkit_dom_test_obj_get_with_script_state_attribute_raises(WebKitDOMTestObj* self, GError** error)
2045{
2046    WebCore::JSMainThreadNullState state;
2047    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2048    g_return_val_if_fail(!error || !*error, 0);
2049    WebCore::TestObj* item = WebKit::core(self);
2050    WebCore::ExceptionCode ec = 0;
2051    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptStateAttributeRaises(ec));
2052    if (ec) {
2053        WebCore::ExceptionCodeDescription ecdesc(ec);
2054        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
2055    }
2056    return WebKit::kit(gobjectResult.get());
2057}
2058
2059void webkit_dom_test_obj_set_with_script_state_attribute_raises(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
2060{
2061    WebCore::JSMainThreadNullState state;
2062    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2063    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(value));
2064    WebCore::TestObj* item = WebKit::core(self);
2065    WebCore::TestObj* convertedValue = WebKit::core(value);
2066    item->setWithScriptStateAttributeRaises(convertedValue);
2067}
2068
2069WebKitDOMTestObj* webkit_dom_test_obj_get_with_script_execution_context_attribute_raises(WebKitDOMTestObj* self, GError** error)
2070{
2071    WebCore::JSMainThreadNullState state;
2072    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2073    g_return_val_if_fail(!error || !*error, 0);
2074    WebCore::TestObj* item = WebKit::core(self);
2075    WebCore::ExceptionCode ec = 0;
2076    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptExecutionContextAttributeRaises(ec));
2077    if (ec) {
2078        WebCore::ExceptionCodeDescription ecdesc(ec);
2079        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
2080    }
2081    return WebKit::kit(gobjectResult.get());
2082}
2083
2084void webkit_dom_test_obj_set_with_script_execution_context_attribute_raises(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
2085{
2086    WebCore::JSMainThreadNullState state;
2087    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2088    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(value));
2089    WebCore::TestObj* item = WebKit::core(self);
2090    WebCore::TestObj* convertedValue = WebKit::core(value);
2091    item->setWithScriptExecutionContextAttributeRaises(convertedValue);
2092}
2093
2094WebKitDOMTestObj* webkit_dom_test_obj_get_with_script_execution_context_and_script_state_attribute(WebKitDOMTestObj* self)
2095{
2096    WebCore::JSMainThreadNullState state;
2097    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2098    WebCore::TestObj* item = WebKit::core(self);
2099    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptExecutionContextAndScriptStateAttribute());
2100    return WebKit::kit(gobjectResult.get());
2101}
2102
2103void webkit_dom_test_obj_set_with_script_execution_context_and_script_state_attribute(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
2104{
2105    WebCore::JSMainThreadNullState state;
2106    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2107    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(value));
2108    WebCore::TestObj* item = WebKit::core(self);
2109    WebCore::TestObj* convertedValue = WebKit::core(value);
2110    item->setWithScriptExecutionContextAndScriptStateAttribute(convertedValue);
2111}
2112
2113WebKitDOMTestObj* webkit_dom_test_obj_get_with_script_execution_context_and_script_state_attribute_raises(WebKitDOMTestObj* self, GError** error)
2114{
2115    WebCore::JSMainThreadNullState state;
2116    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2117    g_return_val_if_fail(!error || !*error, 0);
2118    WebCore::TestObj* item = WebKit::core(self);
2119    WebCore::ExceptionCode ec = 0;
2120    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptExecutionContextAndScriptStateAttributeRaises(ec));
2121    if (ec) {
2122        WebCore::ExceptionCodeDescription ecdesc(ec);
2123        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
2124    }
2125    return WebKit::kit(gobjectResult.get());
2126}
2127
2128void webkit_dom_test_obj_set_with_script_execution_context_and_script_state_attribute_raises(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
2129{
2130    WebCore::JSMainThreadNullState state;
2131    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2132    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(value));
2133    WebCore::TestObj* item = WebKit::core(self);
2134    WebCore::TestObj* convertedValue = WebKit::core(value);
2135    item->setWithScriptExecutionContextAndScriptStateAttributeRaises(convertedValue);
2136}
2137
2138WebKitDOMTestObj* webkit_dom_test_obj_get_with_script_execution_context_and_script_state_with_spaces_attribute(WebKitDOMTestObj* self)
2139{
2140    WebCore::JSMainThreadNullState state;
2141    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2142    WebCore::TestObj* item = WebKit::core(self);
2143    RefPtr<WebCore::TestObj> gobjectResult = WTF::getPtr(item->withScriptExecutionContextAndScriptStateWithSpacesAttribute());
2144    return WebKit::kit(gobjectResult.get());
2145}
2146
2147void webkit_dom_test_obj_set_with_script_execution_context_and_script_state_with_spaces_attribute(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
2148{
2149    WebCore::JSMainThreadNullState state;
2150    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2151    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(value));
2152    WebCore::TestObj* item = WebKit::core(self);
2153    WebCore::TestObj* convertedValue = WebKit::core(value);
2154    item->setWithScriptExecutionContextAndScriptStateWithSpacesAttribute(convertedValue);
2155}
2156
2157glong webkit_dom_test_obj_get_conditional_attr1(WebKitDOMTestObj* self)
2158{
2159#if ENABLE(Condition1)
2160    WebCore::JSMainThreadNullState state;
2161    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2162    WebCore::TestObj* item = WebKit::core(self);
2163    glong result = item->conditionalAttr1();
2164    return result;
2165#else
2166    UNUSED_PARAM(self);
2167    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
2168    return static_cast<glong>(0);
2169#endif /* ENABLE(Condition1) */
2170}
2171
2172void webkit_dom_test_obj_set_conditional_attr1(WebKitDOMTestObj* self, glong value)
2173{
2174#if ENABLE(Condition1)
2175    WebCore::JSMainThreadNullState state;
2176    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2177    WebCore::TestObj* item = WebKit::core(self);
2178    item->setConditionalAttr1(value);
2179#else
2180    UNUSED_PARAM(self);
2181    UNUSED_PARAM(value);
2182    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
2183#endif /* ENABLE(Condition1) */
2184}
2185
2186glong webkit_dom_test_obj_get_conditional_attr2(WebKitDOMTestObj* self)
2187{
2188#if ENABLE(Condition1) && ENABLE(Condition2)
2189    WebCore::JSMainThreadNullState state;
2190    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2191    WebCore::TestObj* item = WebKit::core(self);
2192    glong result = item->conditionalAttr2();
2193    return result;
2194#else
2195    UNUSED_PARAM(self);
2196#if !ENABLE(Condition1)
2197    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
2198#endif
2199#if !ENABLE(Condition2)
2200    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
2201#endif
2202    return static_cast<glong>(0);
2203#endif /* ENABLE(Condition1) && ENABLE(Condition2) */
2204}
2205
2206void webkit_dom_test_obj_set_conditional_attr2(WebKitDOMTestObj* self, glong value)
2207{
2208#if ENABLE(Condition1) && ENABLE(Condition2)
2209    WebCore::JSMainThreadNullState state;
2210    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2211    WebCore::TestObj* item = WebKit::core(self);
2212    item->setConditionalAttr2(value);
2213#else
2214    UNUSED_PARAM(self);
2215    UNUSED_PARAM(value);
2216#if !ENABLE(Condition1)
2217    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
2218#endif
2219#if !ENABLE(Condition2)
2220    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
2221#endif
2222#endif /* ENABLE(Condition1) && ENABLE(Condition2) */
2223}
2224
2225glong webkit_dom_test_obj_get_conditional_attr3(WebKitDOMTestObj* self)
2226{
2227#if ENABLE(Condition1) || ENABLE(Condition2)
2228    WebCore::JSMainThreadNullState state;
2229    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2230    WebCore::TestObj* item = WebKit::core(self);
2231    glong result = item->conditionalAttr3();
2232    return result;
2233#else
2234    UNUSED_PARAM(self);
2235    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
2236    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
2237    return static_cast<glong>(0);
2238#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
2239}
2240
2241void webkit_dom_test_obj_set_conditional_attr3(WebKitDOMTestObj* self, glong value)
2242{
2243#if ENABLE(Condition1) || ENABLE(Condition2)
2244    WebCore::JSMainThreadNullState state;
2245    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2246    WebCore::TestObj* item = WebKit::core(self);
2247    item->setConditionalAttr3(value);
2248#else
2249    UNUSED_PARAM(self);
2250    UNUSED_PARAM(value);
2251    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
2252    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
2253#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
2254}
2255
2256WebKitDOMany* webkit_dom_test_obj_get_any_attribute(WebKitDOMTestObj* self)
2257{
2258    WebCore::JSMainThreadNullState state;
2259    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2260    WebCore::TestObj* item = WebKit::core(self);
2261    RefPtr<WebCore::any> gobjectResult = WTF::getPtr(item->anyAttribute());
2262    return 0; // TODO: return canvas object
2263}
2264
2265void webkit_dom_test_obj_set_any_attribute(WebKitDOMTestObj* self, WebKitDOMany* value)
2266{
2267    WebCore::JSMainThreadNullState state;
2268    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2269    g_return_if_fail(WEBKIT_DOM_IS_ANY(value));
2270    WebCore::TestObj* item = WebKit::core(self);
2271    WebCore::any* convertedValue = WebKit::core(value);
2272    item->setAnyAttribute(convertedValue);
2273}
2274
2275WebKitDOMDocument* webkit_dom_test_obj_get_content_document(WebKitDOMTestObj* self)
2276{
2277    WebCore::JSMainThreadNullState state;
2278    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2279    WebCore::TestObj* item = WebKit::core(self);
2280    RefPtr<WebCore::Document> gobjectResult = WTF::getPtr(item->contentDocument());
2281    return WebKit::kit(gobjectResult.get());
2282}
2283
2284WebKitDOMSVGPoint* webkit_dom_test_obj_get_mutable_point(WebKitDOMTestObj* self)
2285{
2286    WebCore::JSMainThreadNullState state;
2287    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2288    WebCore::TestObj* item = WebKit::core(self);
2289    RefPtr<WebCore::SVGPoint> gobjectResult = WTF::getPtr(item->mutablePoint());
2290    return WebKit::kit(gobjectResult.get());
2291}
2292
2293void webkit_dom_test_obj_set_mutable_point(WebKitDOMTestObj* self, WebKitDOMSVGPoint* value)
2294{
2295    WebCore::JSMainThreadNullState state;
2296    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2297    g_return_if_fail(WEBKIT_DOM_IS_SVG_POINT(value));
2298    WebCore::TestObj* item = WebKit::core(self);
2299    WebCore::SVGPoint* convertedValue = WebKit::core(value);
2300    item->setMutablePoint(convertedValue);
2301}
2302
2303WebKitDOMSVGPoint* webkit_dom_test_obj_get_immutable_point(WebKitDOMTestObj* self)
2304{
2305    WebCore::JSMainThreadNullState state;
2306    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2307    WebCore::TestObj* item = WebKit::core(self);
2308    RefPtr<WebCore::SVGPoint> gobjectResult = WTF::getPtr(item->immutablePoint());
2309    return WebKit::kit(gobjectResult.get());
2310}
2311
2312void webkit_dom_test_obj_set_immutable_point(WebKitDOMTestObj* self, WebKitDOMSVGPoint* value)
2313{
2314    WebCore::JSMainThreadNullState state;
2315    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2316    g_return_if_fail(WEBKIT_DOM_IS_SVG_POINT(value));
2317    WebCore::TestObj* item = WebKit::core(self);
2318    WebCore::SVGPoint* convertedValue = WebKit::core(value);
2319    item->setImmutablePoint(convertedValue);
2320}
2321
2322glong webkit_dom_test_obj_get_strawberry(WebKitDOMTestObj* self)
2323{
2324    WebCore::JSMainThreadNullState state;
2325    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2326    WebCore::TestObj* item = WebKit::core(self);
2327    glong result = item->blueberry();
2328    return result;
2329}
2330
2331void webkit_dom_test_obj_set_strawberry(WebKitDOMTestObj* self, glong value)
2332{
2333    WebCore::JSMainThreadNullState state;
2334    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2335    WebCore::TestObj* item = WebKit::core(self);
2336    item->setBlueberry(value);
2337}
2338
2339gfloat webkit_dom_test_obj_get_strict_float(WebKitDOMTestObj* self)
2340{
2341    WebCore::JSMainThreadNullState state;
2342    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2343    WebCore::TestObj* item = WebKit::core(self);
2344    gfloat result = item->strictFloat();
2345    return result;
2346}
2347
2348void webkit_dom_test_obj_set_strict_float(WebKitDOMTestObj* self, gfloat value)
2349{
2350    WebCore::JSMainThreadNullState state;
2351    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2352    WebCore::TestObj* item = WebKit::core(self);
2353    item->setStrictFloat(value);
2354}
2355
2356glong webkit_dom_test_obj_get_description(WebKitDOMTestObj* self)
2357{
2358    WebCore::JSMainThreadNullState state;
2359    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2360    WebCore::TestObj* item = WebKit::core(self);
2361    glong result = item->description();
2362    return result;
2363}
2364
2365glong webkit_dom_test_obj_get_id(WebKitDOMTestObj* self)
2366{
2367    WebCore::JSMainThreadNullState state;
2368    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2369    WebCore::TestObj* item = WebKit::core(self);
2370    glong result = item->id();
2371    return result;
2372}
2373
2374void webkit_dom_test_obj_set_id(WebKitDOMTestObj* self, glong value)
2375{
2376    WebCore::JSMainThreadNullState state;
2377    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2378    WebCore::TestObj* item = WebKit::core(self);
2379    item->setId(value);
2380}
2381
2382gchar* webkit_dom_test_obj_get_hash(WebKitDOMTestObj* self)
2383{
2384    WebCore::JSMainThreadNullState state;
2385    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2386    WebCore::TestObj* item = WebKit::core(self);
2387    gchar* result = convertToUTF8String(item->hash());
2388    return result;
2389}
2390
2391glong webkit_dom_test_obj_get_replaceable_attribute(WebKitDOMTestObj* self)
2392{
2393    WebCore::JSMainThreadNullState state;
2394    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2395    WebCore::TestObj* item = WebKit::core(self);
2396    glong result = item->replaceableAttribute();
2397    return result;
2398}
2399
2400gdouble webkit_dom_test_obj_get_nullable_double_attribute(WebKitDOMTestObj* self)
2401{
2402    WebCore::JSMainThreadNullState state;
2403    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2404    WebCore::TestObj* item = WebKit::core(self);
2405    bool isNull = false;
2406    gdouble result = item->nullableDoubleAttribute(isNull);
2407    return result;
2408}
2409
2410glong webkit_dom_test_obj_get_nullable_long_attribute(WebKitDOMTestObj* self)
2411{
2412    WebCore::JSMainThreadNullState state;
2413    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2414    WebCore::TestObj* item = WebKit::core(self);
2415    bool isNull = false;
2416    glong result = item->nullableLongAttribute(isNull);
2417    return result;
2418}
2419
2420gboolean webkit_dom_test_obj_get_nullable_boolean_attribute(WebKitDOMTestObj* self)
2421{
2422    WebCore::JSMainThreadNullState state;
2423    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), FALSE);
2424    WebCore::TestObj* item = WebKit::core(self);
2425    bool isNull = false;
2426    gboolean result = item->nullableBooleanAttribute(isNull);
2427    return result;
2428}
2429
2430gchar* webkit_dom_test_obj_get_nullable_string_attribute(WebKitDOMTestObj* self)
2431{
2432    WebCore::JSMainThreadNullState state;
2433    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2434    WebCore::TestObj* item = WebKit::core(self);
2435    bool isNull = false;
2436    gchar* result = convertToUTF8String(item->nullableStringAttribute(isNull));
2437    return result;
2438}
2439
2440glong webkit_dom_test_obj_get_nullable_long_settable_attribute(WebKitDOMTestObj* self)
2441{
2442    WebCore::JSMainThreadNullState state;
2443    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2444    WebCore::TestObj* item = WebKit::core(self);
2445    bool isNull = false;
2446    glong result = item->nullableLongSettableAttribute(isNull);
2447    return result;
2448}
2449
2450void webkit_dom_test_obj_set_nullable_long_settable_attribute(WebKitDOMTestObj* self, glong value)
2451{
2452    WebCore::JSMainThreadNullState state;
2453    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2454    WebCore::TestObj* item = WebKit::core(self);
2455    item->setNullableLongSettableAttribute(value);
2456}
2457
2458glong webkit_dom_test_obj_get_nullable_string_value(WebKitDOMTestObj* self, GError** error)
2459{
2460    WebCore::JSMainThreadNullState state;
2461    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2462    g_return_val_if_fail(!error || !*error, 0);
2463    WebCore::TestObj* item = WebKit::core(self);
2464    bool isNull = false;
2465    WebCore::ExceptionCode ec = 0;
2466    glong result = item->nullableStringValue(isNull, ec);
2467    if (ec) {
2468        WebCore::ExceptionCodeDescription ecdesc(ec);
2469        g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
2470    }
2471    return result;
2472}
2473
2474void webkit_dom_test_obj_set_nullable_string_value(WebKitDOMTestObj* self, glong value)
2475{
2476    WebCore::JSMainThreadNullState state;
2477    g_return_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self));
2478    WebCore::TestObj* item = WebKit::core(self);
2479    item->setNullableStringValue(value);
2480}
2481
2482gchar* webkit_dom_test_obj_get_attribute(WebKitDOMTestObj* self)
2483{
2484    WebCore::JSMainThreadNullState state;
2485    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
2486    WebCore::TestObj* item = WebKit::core(self);
2487    gchar* result = convertToUTF8String(item->attribute());
2488    return result;
2489}
2490
2491