fb82c270df1d21ef07c14dfc98fca722731e48f1
[WebKit-https.git] / Source / WebCore / bindings / scripts / test / JS / JSTestDOMJIT.h
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 #pragma once
22
23 #include "JSNode.h"
24 #include "TestDOMJIT.h"
25 #include <domjit/DOMJITGetterSetter.h>
26
27 namespace WebCore {
28
29 class JSTestDOMJIT : public JSNode {
30 public:
31     using Base = JSNode;
32     using DOMWrapped = TestDOMJIT;
33     static JSTestDOMJIT* create(JSC::Structure* structure, JSDOMGlobalObject* globalObject, Ref<TestDOMJIT>&& impl)
34     {
35         JSTestDOMJIT* ptr = new (NotNull, JSC::allocateCell<JSTestDOMJIT>(globalObject->vm().heap)) JSTestDOMJIT(structure, *globalObject, WTFMove(impl));
36         ptr->finishCreation(globalObject->vm());
37         return ptr;
38     }
39
40     static JSC::JSObject* createPrototype(JSC::VM&, JSDOMGlobalObject&);
41     static JSC::JSObject* prototype(JSC::VM&, JSDOMGlobalObject&);
42
43     DECLARE_INFO;
44
45     static JSC::Structure* createStructure(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSC::JSValue prototype)
46     {
47         return JSC::Structure::create(vm, globalObject, prototype, JSC::TypeInfo(JSC::JSType(JSNodeType), StructureFlags), info());
48     }
49
50     static JSC::JSValue getConstructor(JSC::VM&, const JSC::JSGlobalObject*);
51     static void visitChildren(JSCell*, JSC::SlotVisitor&);
52
53     TestDOMJIT& wrapped() const
54     {
55         return static_cast<TestDOMJIT&>(Base::wrapped());
56     }
57 protected:
58     JSTestDOMJIT(JSC::Structure*, JSDOMGlobalObject&, Ref<TestDOMJIT>&&);
59
60     void finishCreation(JSC::VM&);
61 };
62
63
64 // DOMJIT emitters for attributes
65
66 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITAnyAttr(void);
67 class TestDOMJITAnyAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
68 public:
69     TestDOMJITAnyAttrDOMJIT();
70 #if ENABLE(JIT)
71     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
72 #endif
73 };
74
75 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITBooleanAttr(void);
76 class TestDOMJITBooleanAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
77 public:
78     TestDOMJITBooleanAttrDOMJIT();
79 #if ENABLE(JIT)
80     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
81 #endif
82 };
83
84 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITByteAttr(void);
85 class TestDOMJITByteAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
86 public:
87     TestDOMJITByteAttrDOMJIT();
88 #if ENABLE(JIT)
89     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
90 #endif
91 };
92
93 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITOctetAttr(void);
94 class TestDOMJITOctetAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
95 public:
96     TestDOMJITOctetAttrDOMJIT();
97 #if ENABLE(JIT)
98     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
99 #endif
100 };
101
102 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITShortAttr(void);
103 class TestDOMJITShortAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
104 public:
105     TestDOMJITShortAttrDOMJIT();
106 #if ENABLE(JIT)
107     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
108 #endif
109 };
110
111 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnsignedShortAttr(void);
112 class TestDOMJITUnsignedShortAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
113 public:
114     TestDOMJITUnsignedShortAttrDOMJIT();
115 #if ENABLE(JIT)
116     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
117 #endif
118 };
119
120 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITLongAttr(void);
121 class TestDOMJITLongAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
122 public:
123     TestDOMJITLongAttrDOMJIT();
124 #if ENABLE(JIT)
125     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
126 #endif
127 };
128
129 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnsignedLongAttr(void);
130 class TestDOMJITUnsignedLongAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
131 public:
132     TestDOMJITUnsignedLongAttrDOMJIT();
133 #if ENABLE(JIT)
134     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
135 #endif
136 };
137
138 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITLongLongAttr(void);
139 class TestDOMJITLongLongAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
140 public:
141     TestDOMJITLongLongAttrDOMJIT();
142 #if ENABLE(JIT)
143     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
144 #endif
145 };
146
147 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnsignedLongLongAttr(void);
148 class TestDOMJITUnsignedLongLongAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
149 public:
150     TestDOMJITUnsignedLongLongAttrDOMJIT();
151 #if ENABLE(JIT)
152     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
153 #endif
154 };
155
156 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITFloatAttr(void);
157 class TestDOMJITFloatAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
158 public:
159     TestDOMJITFloatAttrDOMJIT();
160 #if ENABLE(JIT)
161     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
162 #endif
163 };
164
165 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnrestrictedFloatAttr(void);
166 class TestDOMJITUnrestrictedFloatAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
167 public:
168     TestDOMJITUnrestrictedFloatAttrDOMJIT();
169 #if ENABLE(JIT)
170     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
171 #endif
172 };
173
174 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITDoubleAttr(void);
175 class TestDOMJITDoubleAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
176 public:
177     TestDOMJITDoubleAttrDOMJIT();
178 #if ENABLE(JIT)
179     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
180 #endif
181 };
182
183 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnrestrictedDoubleAttr(void);
184 class TestDOMJITUnrestrictedDoubleAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
185 public:
186     TestDOMJITUnrestrictedDoubleAttrDOMJIT();
187 #if ENABLE(JIT)
188     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
189 #endif
190 };
191
192 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITDomStringAttr(void);
193 class TestDOMJITDomStringAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
194 public:
195     TestDOMJITDomStringAttrDOMJIT();
196 #if ENABLE(JIT)
197     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
198 #endif
199 };
200
201 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITByteStringAttr(void);
202 class TestDOMJITByteStringAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
203 public:
204     TestDOMJITByteStringAttrDOMJIT();
205 #if ENABLE(JIT)
206     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
207 #endif
208 };
209
210 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUsvStringAttr(void);
211 class TestDOMJITUsvStringAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
212 public:
213     TestDOMJITUsvStringAttrDOMJIT();
214 #if ENABLE(JIT)
215     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
216 #endif
217 };
218
219 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITNodeAttr(void);
220 class TestDOMJITNodeAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
221 public:
222     TestDOMJITNodeAttrDOMJIT();
223 #if ENABLE(JIT)
224     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
225 #endif
226 };
227
228 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITBooleanNullableAttr(void);
229 class TestDOMJITBooleanNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
230 public:
231     TestDOMJITBooleanNullableAttrDOMJIT();
232 #if ENABLE(JIT)
233     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
234 #endif
235 };
236
237 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITByteNullableAttr(void);
238 class TestDOMJITByteNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
239 public:
240     TestDOMJITByteNullableAttrDOMJIT();
241 #if ENABLE(JIT)
242     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
243 #endif
244 };
245
246 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITOctetNullableAttr(void);
247 class TestDOMJITOctetNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
248 public:
249     TestDOMJITOctetNullableAttrDOMJIT();
250 #if ENABLE(JIT)
251     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
252 #endif
253 };
254
255 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITShortNullableAttr(void);
256 class TestDOMJITShortNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
257 public:
258     TestDOMJITShortNullableAttrDOMJIT();
259 #if ENABLE(JIT)
260     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
261 #endif
262 };
263
264 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnsignedShortNullableAttr(void);
265 class TestDOMJITUnsignedShortNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
266 public:
267     TestDOMJITUnsignedShortNullableAttrDOMJIT();
268 #if ENABLE(JIT)
269     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
270 #endif
271 };
272
273 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITLongNullableAttr(void);
274 class TestDOMJITLongNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
275 public:
276     TestDOMJITLongNullableAttrDOMJIT();
277 #if ENABLE(JIT)
278     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
279 #endif
280 };
281
282 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnsignedLongNullableAttr(void);
283 class TestDOMJITUnsignedLongNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
284 public:
285     TestDOMJITUnsignedLongNullableAttrDOMJIT();
286 #if ENABLE(JIT)
287     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
288 #endif
289 };
290
291 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITLongLongNullableAttr(void);
292 class TestDOMJITLongLongNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
293 public:
294     TestDOMJITLongLongNullableAttrDOMJIT();
295 #if ENABLE(JIT)
296     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
297 #endif
298 };
299
300 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnsignedLongLongNullableAttr(void);
301 class TestDOMJITUnsignedLongLongNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
302 public:
303     TestDOMJITUnsignedLongLongNullableAttrDOMJIT();
304 #if ENABLE(JIT)
305     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
306 #endif
307 };
308
309 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITFloatNullableAttr(void);
310 class TestDOMJITFloatNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
311 public:
312     TestDOMJITFloatNullableAttrDOMJIT();
313 #if ENABLE(JIT)
314     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
315 #endif
316 };
317
318 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnrestrictedFloatNullableAttr(void);
319 class TestDOMJITUnrestrictedFloatNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
320 public:
321     TestDOMJITUnrestrictedFloatNullableAttrDOMJIT();
322 #if ENABLE(JIT)
323     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
324 #endif
325 };
326
327 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITDoubleNullableAttr(void);
328 class TestDOMJITDoubleNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
329 public:
330     TestDOMJITDoubleNullableAttrDOMJIT();
331 #if ENABLE(JIT)
332     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
333 #endif
334 };
335
336 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUnrestrictedDoubleNullableAttr(void);
337 class TestDOMJITUnrestrictedDoubleNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
338 public:
339     TestDOMJITUnrestrictedDoubleNullableAttrDOMJIT();
340 #if ENABLE(JIT)
341     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
342 #endif
343 };
344
345 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITDomStringNullableAttr(void);
346 class TestDOMJITDomStringNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
347 public:
348     TestDOMJITDomStringNullableAttrDOMJIT();
349 #if ENABLE(JIT)
350     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
351 #endif
352 };
353
354 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITByteStringNullableAttr(void);
355 class TestDOMJITByteStringNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
356 public:
357     TestDOMJITByteStringNullableAttrDOMJIT();
358 #if ENABLE(JIT)
359     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
360 #endif
361 };
362
363 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITUsvStringNullableAttr(void);
364 class TestDOMJITUsvStringNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
365 public:
366     TestDOMJITUsvStringNullableAttrDOMJIT();
367 #if ENABLE(JIT)
368     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
369 #endif
370 };
371
372 JSC::DOMJIT::GetterSetter* domJITGetterSetterForTestDOMJITNodeNullableAttr(void);
373 class TestDOMJITNodeNullableAttrDOMJIT : public JSC::DOMJIT::GetterSetter {
374 public:
375     TestDOMJITNodeNullableAttrDOMJIT();
376 #if ENABLE(JIT)
377     Ref<JSC::DOMJIT::CallDOMGetterPatchpoint> callDOMGetter() override;
378 #endif
379 };
380
381 template<> struct JSDOMWrapperConverterTraits<TestDOMJIT> {
382     using WrapperClass = JSTestDOMJIT;
383     using ToWrappedReturnType = TestDOMJIT*;
384 };
385
386 } // namespace WebCore