Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / bindings / tests / results / core / V8TestDictionary.cpp
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // This file has been auto-generated by code_generator_v8.py. DO NOT MODIFY!
6
7 #include "config.h"
8 #include "V8TestDictionary.h"
9
10 #include "bindings/core/v8/Dictionary.h"
11 #include "bindings/core/v8/ExceptionState.h"
12 #include "bindings/core/v8/ScriptValue.h"
13 #include "bindings/core/v8/V8Element.h"
14 #include "bindings/core/v8/V8TestInterface.h"
15 #include "bindings/core/v8/V8TestInterfaceGarbageCollected.h"
16 #include "bindings/core/v8/V8TestInterfaceWillBeGarbageCollected.h"
17
18 namespace blink {
19
20 void V8TestDictionary::toImpl(v8::Isolate* isolate, v8::Handle<v8::Value> v8Value, TestDictionary& impl, ExceptionState& exceptionState)
21 {
22     if (isUndefinedOrNull(v8Value))
23         return;
24     if (!v8Value->IsObject()) {
25         exceptionState.throwTypeError("cannot convert to dictionary.");
26         return;
27     }
28
29     // FIXME: Do not use Dictionary and DictionaryHelper
30     // https://crbug.com/321462
31     Dictionary dictionary(v8Value, isolate);
32     // FIXME: Remove this v8::TryCatch once the code is switched from
33     // Dictionary/DictionaryHelper to something that uses ExceptionState.
34     v8::TryCatch block;
35     bool booleanMember;
36     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "booleanMember", booleanMember)) {
37         impl.setBooleanMember(booleanMember);
38     } else if (block.HasCaught()) {
39         exceptionState.rethrowV8Exception(block.Exception());
40         return;
41     }
42
43     bool create;
44     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "create", create)) {
45         impl.setCreateMember(create);
46     } else if (block.HasCaught()) {
47         exceptionState.rethrowV8Exception(block.Exception());
48         return;
49     }
50
51     double doubleOrNullMember;
52     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "doubleOrNullMember", doubleOrNullMember)) {
53         impl.setDoubleOrNullMember(doubleOrNullMember);
54     } else if (block.HasCaught()) {
55         exceptionState.rethrowV8Exception(block.Exception());
56         return;
57     }
58
59     RefPtrWillBeRawPtr<Element> elementOrNullMember;
60     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "elementOrNullMember", elementOrNullMember)) {
61         impl.setElementOrNullMember(elementOrNullMember);
62     } else if (block.HasCaught()) {
63         exceptionState.rethrowV8Exception(block.Exception());
64         return;
65     }
66
67     String enumMember;
68     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "enumMember", enumMember)) {
69         String string = enumMember;
70         if (!(string == "foo" || string == "bar" || string == "baz")) {
71             exceptionState.throwTypeError("member enumMember ('" + string + "') is not a valid enum value.");
72             return;
73         }
74         impl.setEnumMember(enumMember);
75     } else if (block.HasCaught()) {
76         exceptionState.rethrowV8Exception(block.Exception());
77         return;
78     }
79
80     int longMember;
81     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "longMember", longMember)) {
82         impl.setLongMember(longMember);
83     } else if (block.HasCaught()) {
84         exceptionState.rethrowV8Exception(block.Exception());
85         return;
86     }
87
88     ScriptValue objectMember;
89     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "objectMember", objectMember)) {
90         if (!objectMember.isObject()) {
91             exceptionState.throwTypeError("member objectMember is not an object.");
92             return;
93         }
94         impl.setObjectMember(objectMember);
95     } else if (block.HasCaught()) {
96         exceptionState.rethrowV8Exception(block.Exception());
97         return;
98     }
99
100     ScriptValue objectOrNullMember;
101     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "objectOrNullMember", objectOrNullMember)) {
102         if (!objectOrNullMember.isObject()) {
103             exceptionState.throwTypeError("member objectOrNullMember is not an object.");
104             return;
105         }
106         impl.setObjectOrNullMember(objectOrNullMember);
107     } else if (block.HasCaught()) {
108         exceptionState.rethrowV8Exception(block.Exception());
109         return;
110     }
111
112     Vector<String> stringArrayMember;
113     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "stringArrayMember", stringArrayMember)) {
114         impl.setStringArrayMember(stringArrayMember);
115     } else if (block.HasCaught()) {
116         exceptionState.rethrowV8Exception(block.Exception());
117         return;
118     }
119
120     String stringMember;
121     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "stringMember", stringMember)) {
122         impl.setStringMember(stringMember);
123     } else if (block.HasCaught()) {
124         exceptionState.rethrowV8Exception(block.Exception());
125         return;
126     }
127
128     String stringOrNullMember;
129     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "stringOrNullMember", stringOrNullMember)) {
130         impl.setStringOrNullMember(stringOrNullMember);
131     } else if (block.HasCaught()) {
132         exceptionState.rethrowV8Exception(block.Exception());
133         return;
134     }
135
136     Vector<String> stringSequenceMember;
137     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "stringSequenceMember", stringSequenceMember)) {
138         impl.setStringSequenceMember(stringSequenceMember);
139     } else if (block.HasCaught()) {
140         exceptionState.rethrowV8Exception(block.Exception());
141         return;
142     }
143
144     RawPtr<TestInterfaceGarbageCollected> testInterfaceGarbageCollectedMember;
145     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "testInterfaceGarbageCollectedMember", testInterfaceGarbageCollectedMember)) {
146         impl.setTestInterfaceGarbageCollectedMember(testInterfaceGarbageCollectedMember);
147     } else if (block.HasCaught()) {
148         exceptionState.rethrowV8Exception(block.Exception());
149         return;
150     }
151
152     RawPtr<TestInterfaceGarbageCollected> testInterfaceGarbageCollectedOrNullMember;
153     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "testInterfaceGarbageCollectedOrNullMember", testInterfaceGarbageCollectedOrNullMember)) {
154         impl.setTestInterfaceGarbageCollectedOrNullMember(testInterfaceGarbageCollectedOrNullMember);
155     } else if (block.HasCaught()) {
156         exceptionState.rethrowV8Exception(block.Exception());
157         return;
158     }
159
160     RefPtr<TestInterfaceImplementation> testInterfaceMember;
161     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "testInterfaceMember", testInterfaceMember)) {
162         impl.setTestInterfaceMember(testInterfaceMember);
163     } else if (block.HasCaught()) {
164         exceptionState.rethrowV8Exception(block.Exception());
165         return;
166     }
167
168     RefPtr<TestInterfaceImplementation> testInterfaceOrNullMember;
169     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "testInterfaceOrNullMember", testInterfaceOrNullMember)) {
170         impl.setTestInterfaceOrNullMember(testInterfaceOrNullMember);
171     } else if (block.HasCaught()) {
172         exceptionState.rethrowV8Exception(block.Exception());
173         return;
174     }
175
176     RefPtrWillBeRawPtr<TestInterfaceWillBeGarbageCollected> testInterfaceWillBeGarbageCollectedMember;
177     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "testInterfaceWillBeGarbageCollectedMember", testInterfaceWillBeGarbageCollectedMember)) {
178         impl.setTestInterfaceWillBeGarbageCollectedMember(testInterfaceWillBeGarbageCollectedMember);
179     } else if (block.HasCaught()) {
180         exceptionState.rethrowV8Exception(block.Exception());
181         return;
182     }
183
184     RefPtrWillBeRawPtr<TestInterfaceWillBeGarbageCollected> testInterfaceWillBeGarbageCollectedOrNullMember;
185     if (DictionaryHelper::getWithUndefinedOrNullCheck(dictionary, "testInterfaceWillBeGarbageCollectedOrNullMember", testInterfaceWillBeGarbageCollectedOrNullMember)) {
186         impl.setTestInterfaceWillBeGarbageCollectedOrNullMember(testInterfaceWillBeGarbageCollectedOrNullMember);
187     } else if (block.HasCaught()) {
188         exceptionState.rethrowV8Exception(block.Exception());
189         return;
190     }
191
192 }
193
194 v8::Handle<v8::Value> toV8(TestDictionary& impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
195 {
196     v8::Handle<v8::Object> v8Object = v8::Object::New(isolate);
197     if (impl.hasBooleanMember()) {
198         v8Object->Set(v8String(isolate, "booleanMember"), v8Boolean(impl.booleanMember(), isolate));
199     }
200
201     if (impl.hasCreateMember()) {
202         v8Object->Set(v8String(isolate, "create"), v8Boolean(impl.createMember(), isolate));
203     }
204
205     if (impl.hasDoubleOrNullMember()) {
206         v8Object->Set(v8String(isolate, "doubleOrNullMember"), v8::Number::New(isolate, impl.doubleOrNullMember()));
207     } else {
208         v8Object->Set(v8String(isolate, "doubleOrNullMember"), v8::Null(isolate));
209     }
210
211     if (impl.hasElementOrNullMember()) {
212         v8Object->Set(v8String(isolate, "elementOrNullMember"), toV8(impl.elementOrNullMember(), creationContext, isolate));
213     }
214
215     if (impl.hasEnumMember()) {
216         v8Object->Set(v8String(isolate, "enumMember"), v8String(isolate, impl.enumMember()));
217     } else {
218         v8Object->Set(v8String(isolate, "enumMember"), v8String(isolate, String("foo")));
219     }
220
221     if (impl.hasLongMember()) {
222         v8Object->Set(v8String(isolate, "longMember"), v8::Integer::New(isolate, impl.longMember()));
223     } else {
224         v8Object->Set(v8String(isolate, "longMember"), v8::Integer::New(isolate, 1));
225     }
226
227     if (impl.hasObjectMember()) {
228         ASSERT(impl.objectMember().isObject());
229         v8Object->Set(v8String(isolate, "objectMember"), impl.objectMember().v8Value());
230     }
231
232     if (impl.hasObjectOrNullMember()) {
233         ASSERT(impl.objectOrNullMember().isObject());
234         v8Object->Set(v8String(isolate, "objectOrNullMember"), impl.objectOrNullMember().v8Value());
235     }
236
237     if (impl.hasStringArrayMember()) {
238         v8Object->Set(v8String(isolate, "stringArrayMember"), v8Array(impl.stringArrayMember(), creationContext, isolate));
239     }
240
241     if (impl.hasStringMember()) {
242         v8Object->Set(v8String(isolate, "stringMember"), v8String(isolate, impl.stringMember()));
243     }
244
245     if (impl.hasStringOrNullMember()) {
246         v8Object->Set(v8String(isolate, "stringOrNullMember"), v8String(isolate, impl.stringOrNullMember()));
247     } else {
248         v8Object->Set(v8String(isolate, "stringOrNullMember"), v8String(isolate, String("default string value")));
249     }
250
251     if (impl.hasStringSequenceMember()) {
252         v8Object->Set(v8String(isolate, "stringSequenceMember"), v8Array(impl.stringSequenceMember(), creationContext, isolate));
253     }
254
255     if (impl.hasTestInterfaceGarbageCollectedMember()) {
256         v8Object->Set(v8String(isolate, "testInterfaceGarbageCollectedMember"), toV8(impl.testInterfaceGarbageCollectedMember(), creationContext, isolate));
257     }
258
259     if (impl.hasTestInterfaceGarbageCollectedOrNullMember()) {
260         v8Object->Set(v8String(isolate, "testInterfaceGarbageCollectedOrNullMember"), toV8(impl.testInterfaceGarbageCollectedOrNullMember(), creationContext, isolate));
261     }
262
263     if (impl.hasTestInterfaceMember()) {
264         v8Object->Set(v8String(isolate, "testInterfaceMember"), toV8(impl.testInterfaceMember(), creationContext, isolate));
265     }
266
267     if (impl.hasTestInterfaceOrNullMember()) {
268         v8Object->Set(v8String(isolate, "testInterfaceOrNullMember"), toV8(impl.testInterfaceOrNullMember(), creationContext, isolate));
269     }
270
271     if (impl.hasTestInterfaceWillBeGarbageCollectedMember()) {
272         v8Object->Set(v8String(isolate, "testInterfaceWillBeGarbageCollectedMember"), toV8(impl.testInterfaceWillBeGarbageCollectedMember(), creationContext, isolate));
273     }
274
275     if (impl.hasTestInterfaceWillBeGarbageCollectedOrNullMember()) {
276         v8Object->Set(v8String(isolate, "testInterfaceWillBeGarbageCollectedOrNullMember"), toV8(impl.testInterfaceWillBeGarbageCollectedOrNullMember(), creationContext, isolate));
277     }
278
279     return v8Object;
280 }
281
282 } // namespace blink