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 
23 #if ENABLE(SVG) && ENABLE(FILTERS)
24 
25 #include "JSSVGFECompositeElement.h"
26 
27 #include "CSSMutableStyleDeclaration.h"
28 #include "CSSStyleDeclaration.h"
29 #include "CSSValue.h"
30 #include "ExceptionCode.h"
31 #include "JSCSSStyleDeclaration.h"
32 #include "JSCSSValue.h"
33 #include "JSDOMBinding.h"
34 #include "JSSVGAnimatedEnumeration.h"
35 #include "JSSVGAnimatedLength.h"
36 #include "JSSVGAnimatedNumber.h"
37 #include "JSSVGAnimatedString.h"
38 #include "SVGFECompositeElement.h"
39 #include <runtime/Error.h>
40 #include <wtf/GetPtr.h>
41 
42 using namespace JSC;
43 
44 namespace WebCore {
45 
46 ASSERT_CLASS_FITS_IN_CELL(JSSVGFECompositeElement);
47 
48 /* Hash table */
49 #if ENABLE(JIT)
50 #define THUNK_GENERATOR(generator) , generator
51 #else
52 #define THUNK_GENERATOR(generator)
53 #endif
54 
55 static const HashTableValue JSSVGFECompositeElementTableValues[16] =
56 {
57     { "in1", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementIn1), (intptr_t)0 THUNK_GENERATOR(0) },
58     { "in2", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementIn2), (intptr_t)0 THUNK_GENERATOR(0) },
59     { "operator", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementOperator), (intptr_t)0 THUNK_GENERATOR(0) },
60     { "k1", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementK1), (intptr_t)0 THUNK_GENERATOR(0) },
61     { "k2", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementK2), (intptr_t)0 THUNK_GENERATOR(0) },
62     { "k3", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementK3), (intptr_t)0 THUNK_GENERATOR(0) },
63     { "k4", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementK4), (intptr_t)0 THUNK_GENERATOR(0) },
64     { "x", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementX), (intptr_t)0 THUNK_GENERATOR(0) },
65     { "y", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementY), (intptr_t)0 THUNK_GENERATOR(0) },
66     { "width", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementWidth), (intptr_t)0 THUNK_GENERATOR(0) },
67     { "height", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementHeight), (intptr_t)0 THUNK_GENERATOR(0) },
68     { "result", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementResult), (intptr_t)0 THUNK_GENERATOR(0) },
69     { "className", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementClassName), (intptr_t)0 THUNK_GENERATOR(0) },
70     { "style", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementStyle), (intptr_t)0 THUNK_GENERATOR(0) },
71     { "constructor", DontEnum | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementConstructor), (intptr_t)0 THUNK_GENERATOR(0) },
72     { 0, 0, 0, 0 THUNK_GENERATOR(0) }
73 };
74 
75 #undef THUNK_GENERATOR
76 static JSC_CONST_HASHTABLE HashTable JSSVGFECompositeElementTable = { 34, 31, JSSVGFECompositeElementTableValues, 0 };
77 /* Hash table for constructor */
78 #if ENABLE(JIT)
79 #define THUNK_GENERATOR(generator) , generator
80 #else
81 #define THUNK_GENERATOR(generator)
82 #endif
83 
84 static const HashTableValue JSSVGFECompositeElementConstructorTableValues[8] =
85 {
86     { "SVG_FECOMPOSITE_OPERATOR_UNKNOWN", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_UNKNOWN), (intptr_t)0 THUNK_GENERATOR(0) },
87     { "SVG_FECOMPOSITE_OPERATOR_OVER", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_OVER), (intptr_t)0 THUNK_GENERATOR(0) },
88     { "SVG_FECOMPOSITE_OPERATOR_IN", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_IN), (intptr_t)0 THUNK_GENERATOR(0) },
89     { "SVG_FECOMPOSITE_OPERATOR_OUT", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_OUT), (intptr_t)0 THUNK_GENERATOR(0) },
90     { "SVG_FECOMPOSITE_OPERATOR_ATOP", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_ATOP), (intptr_t)0 THUNK_GENERATOR(0) },
91     { "SVG_FECOMPOSITE_OPERATOR_XOR", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_XOR), (intptr_t)0 THUNK_GENERATOR(0) },
92     { "SVG_FECOMPOSITE_OPERATOR_ARITHMETIC", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_ARITHMETIC), (intptr_t)0 THUNK_GENERATOR(0) },
93     { 0, 0, 0, 0 THUNK_GENERATOR(0) }
94 };
95 
96 #undef THUNK_GENERATOR
97 static JSC_CONST_HASHTABLE HashTable JSSVGFECompositeElementConstructorTable = { 16, 15, JSSVGFECompositeElementConstructorTableValues, 0 };
98 class JSSVGFECompositeElementConstructor : public DOMConstructorObject {
99 public:
100     JSSVGFECompositeElementConstructor(JSC::ExecState*, JSC::Structure*, JSDOMGlobalObject*);
101 
102     virtual bool getOwnPropertySlot(JSC::ExecState*, const JSC::Identifier&, JSC::PropertySlot&);
103     virtual bool getOwnPropertyDescriptor(JSC::ExecState*, const JSC::Identifier&, JSC::PropertyDescriptor&);
104     static const JSC::ClassInfo s_info;
createStructure(JSC::JSGlobalData & globalData,JSC::JSValue prototype)105     static JSC::Structure* createStructure(JSC::JSGlobalData& globalData, JSC::JSValue prototype)
106     {
107         return JSC::Structure::create(globalData, prototype, JSC::TypeInfo(JSC::ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
108     }
109 protected:
110     static const unsigned StructureFlags = JSC::OverridesGetOwnPropertySlot | JSC::ImplementsHasInstance | DOMConstructorObject::StructureFlags;
111 };
112 
113 const ClassInfo JSSVGFECompositeElementConstructor::s_info = { "SVGFECompositeElementConstructor", &DOMConstructorObject::s_info, &JSSVGFECompositeElementConstructorTable, 0 };
114 
JSSVGFECompositeElementConstructor(ExecState * exec,Structure * structure,JSDOMGlobalObject * globalObject)115 JSSVGFECompositeElementConstructor::JSSVGFECompositeElementConstructor(ExecState* exec, Structure* structure, JSDOMGlobalObject* globalObject)
116     : DOMConstructorObject(structure, globalObject)
117 {
118     ASSERT(inherits(&s_info));
119     putDirect(exec->globalData(), exec->propertyNames().prototype, JSSVGFECompositeElementPrototype::self(exec, globalObject), DontDelete | ReadOnly);
120 }
121 
getOwnPropertySlot(ExecState * exec,const Identifier & propertyName,PropertySlot & slot)122 bool JSSVGFECompositeElementConstructor::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
123 {
124     return getStaticValueSlot<JSSVGFECompositeElementConstructor, JSDOMWrapper>(exec, &JSSVGFECompositeElementConstructorTable, this, propertyName, slot);
125 }
126 
getOwnPropertyDescriptor(ExecState * exec,const Identifier & propertyName,PropertyDescriptor & descriptor)127 bool JSSVGFECompositeElementConstructor::getOwnPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor)
128 {
129     return getStaticValueDescriptor<JSSVGFECompositeElementConstructor, JSDOMWrapper>(exec, &JSSVGFECompositeElementConstructorTable, this, propertyName, descriptor);
130 }
131 
132 /* Hash table for prototype */
133 #if ENABLE(JIT)
134 #define THUNK_GENERATOR(generator) , generator
135 #else
136 #define THUNK_GENERATOR(generator)
137 #endif
138 
139 static const HashTableValue JSSVGFECompositeElementPrototypeTableValues[9] =
140 {
141     { "SVG_FECOMPOSITE_OPERATOR_UNKNOWN", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_UNKNOWN), (intptr_t)0 THUNK_GENERATOR(0) },
142     { "SVG_FECOMPOSITE_OPERATOR_OVER", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_OVER), (intptr_t)0 THUNK_GENERATOR(0) },
143     { "SVG_FECOMPOSITE_OPERATOR_IN", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_IN), (intptr_t)0 THUNK_GENERATOR(0) },
144     { "SVG_FECOMPOSITE_OPERATOR_OUT", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_OUT), (intptr_t)0 THUNK_GENERATOR(0) },
145     { "SVG_FECOMPOSITE_OPERATOR_ATOP", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_ATOP), (intptr_t)0 THUNK_GENERATOR(0) },
146     { "SVG_FECOMPOSITE_OPERATOR_XOR", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_XOR), (intptr_t)0 THUNK_GENERATOR(0) },
147     { "SVG_FECOMPOSITE_OPERATOR_ARITHMETIC", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_ARITHMETIC), (intptr_t)0 THUNK_GENERATOR(0) },
148     { "getPresentationAttribute", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsSVGFECompositeElementPrototypeFunctionGetPresentationAttribute), (intptr_t)1 THUNK_GENERATOR(0) },
149     { 0, 0, 0, 0 THUNK_GENERATOR(0) }
150 };
151 
152 #undef THUNK_GENERATOR
153 static JSC_CONST_HASHTABLE HashTable JSSVGFECompositeElementPrototypeTable = { 17, 15, JSSVGFECompositeElementPrototypeTableValues, 0 };
154 const ClassInfo JSSVGFECompositeElementPrototype::s_info = { "SVGFECompositeElementPrototype", &JSC::JSObjectWithGlobalObject::s_info, &JSSVGFECompositeElementPrototypeTable, 0 };
155 
self(ExecState * exec,JSGlobalObject * globalObject)156 JSObject* JSSVGFECompositeElementPrototype::self(ExecState* exec, JSGlobalObject* globalObject)
157 {
158     return getDOMPrototype<JSSVGFECompositeElement>(exec, globalObject);
159 }
160 
getOwnPropertySlot(ExecState * exec,const Identifier & propertyName,PropertySlot & slot)161 bool JSSVGFECompositeElementPrototype::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
162 {
163     return getStaticPropertySlot<JSSVGFECompositeElementPrototype, JSObject>(exec, &JSSVGFECompositeElementPrototypeTable, this, propertyName, slot);
164 }
165 
getOwnPropertyDescriptor(ExecState * exec,const Identifier & propertyName,PropertyDescriptor & descriptor)166 bool JSSVGFECompositeElementPrototype::getOwnPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor)
167 {
168     return getStaticPropertyDescriptor<JSSVGFECompositeElementPrototype, JSObject>(exec, &JSSVGFECompositeElementPrototypeTable, this, propertyName, descriptor);
169 }
170 
171 const ClassInfo JSSVGFECompositeElement::s_info = { "SVGFECompositeElement", &JSSVGElement::s_info, &JSSVGFECompositeElementTable, 0 };
172 
JSSVGFECompositeElement(Structure * structure,JSDOMGlobalObject * globalObject,PassRefPtr<SVGFECompositeElement> impl)173 JSSVGFECompositeElement::JSSVGFECompositeElement(Structure* structure, JSDOMGlobalObject* globalObject, PassRefPtr<SVGFECompositeElement> impl)
174     : JSSVGElement(structure, globalObject, impl)
175 {
176     ASSERT(inherits(&s_info));
177 }
178 
createPrototype(ExecState * exec,JSGlobalObject * globalObject)179 JSObject* JSSVGFECompositeElement::createPrototype(ExecState* exec, JSGlobalObject* globalObject)
180 {
181     return new (exec) JSSVGFECompositeElementPrototype(exec->globalData(), globalObject, JSSVGFECompositeElementPrototype::createStructure(exec->globalData(), JSSVGElementPrototype::self(exec, globalObject)));
182 }
183 
getOwnPropertySlot(ExecState * exec,const Identifier & propertyName,PropertySlot & slot)184 bool JSSVGFECompositeElement::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
185 {
186     return getStaticValueSlot<JSSVGFECompositeElement, Base>(exec, &JSSVGFECompositeElementTable, this, propertyName, slot);
187 }
188 
getOwnPropertyDescriptor(ExecState * exec,const Identifier & propertyName,PropertyDescriptor & descriptor)189 bool JSSVGFECompositeElement::getOwnPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor)
190 {
191     return getStaticValueDescriptor<JSSVGFECompositeElement, Base>(exec, &JSSVGFECompositeElementTable, this, propertyName, descriptor);
192 }
193 
jsSVGFECompositeElementIn1(ExecState * exec,JSValue slotBase,const Identifier &)194 JSValue jsSVGFECompositeElementIn1(ExecState* exec, JSValue slotBase, const Identifier&)
195 {
196     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
197     UNUSED_PARAM(exec);
198     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
199     RefPtr<SVGAnimatedString> obj = imp->in1Animated();
200     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
201     return result;
202 }
203 
204 
jsSVGFECompositeElementIn2(ExecState * exec,JSValue slotBase,const Identifier &)205 JSValue jsSVGFECompositeElementIn2(ExecState* exec, JSValue slotBase, const Identifier&)
206 {
207     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
208     UNUSED_PARAM(exec);
209     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
210     RefPtr<SVGAnimatedString> obj = imp->in2Animated();
211     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
212     return result;
213 }
214 
215 
jsSVGFECompositeElementOperator(ExecState * exec,JSValue slotBase,const Identifier &)216 JSValue jsSVGFECompositeElementOperator(ExecState* exec, JSValue slotBase, const Identifier&)
217 {
218     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
219     UNUSED_PARAM(exec);
220     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
221     RefPtr<SVGAnimatedEnumeration> obj = imp->_operatorAnimated();
222     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
223     return result;
224 }
225 
226 
jsSVGFECompositeElementK1(ExecState * exec,JSValue slotBase,const Identifier &)227 JSValue jsSVGFECompositeElementK1(ExecState* exec, JSValue slotBase, const Identifier&)
228 {
229     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
230     UNUSED_PARAM(exec);
231     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
232     RefPtr<SVGAnimatedNumber> obj = imp->k1Animated();
233     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
234     return result;
235 }
236 
237 
jsSVGFECompositeElementK2(ExecState * exec,JSValue slotBase,const Identifier &)238 JSValue jsSVGFECompositeElementK2(ExecState* exec, JSValue slotBase, const Identifier&)
239 {
240     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
241     UNUSED_PARAM(exec);
242     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
243     RefPtr<SVGAnimatedNumber> obj = imp->k2Animated();
244     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
245     return result;
246 }
247 
248 
jsSVGFECompositeElementK3(ExecState * exec,JSValue slotBase,const Identifier &)249 JSValue jsSVGFECompositeElementK3(ExecState* exec, JSValue slotBase, const Identifier&)
250 {
251     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
252     UNUSED_PARAM(exec);
253     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
254     RefPtr<SVGAnimatedNumber> obj = imp->k3Animated();
255     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
256     return result;
257 }
258 
259 
jsSVGFECompositeElementK4(ExecState * exec,JSValue slotBase,const Identifier &)260 JSValue jsSVGFECompositeElementK4(ExecState* exec, JSValue slotBase, const Identifier&)
261 {
262     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
263     UNUSED_PARAM(exec);
264     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
265     RefPtr<SVGAnimatedNumber> obj = imp->k4Animated();
266     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
267     return result;
268 }
269 
270 
jsSVGFECompositeElementX(ExecState * exec,JSValue slotBase,const Identifier &)271 JSValue jsSVGFECompositeElementX(ExecState* exec, JSValue slotBase, const Identifier&)
272 {
273     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
274     UNUSED_PARAM(exec);
275     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
276     RefPtr<SVGAnimatedLength> obj = imp->xAnimated();
277     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
278     return result;
279 }
280 
281 
jsSVGFECompositeElementY(ExecState * exec,JSValue slotBase,const Identifier &)282 JSValue jsSVGFECompositeElementY(ExecState* exec, JSValue slotBase, const Identifier&)
283 {
284     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
285     UNUSED_PARAM(exec);
286     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
287     RefPtr<SVGAnimatedLength> obj = imp->yAnimated();
288     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
289     return result;
290 }
291 
292 
jsSVGFECompositeElementWidth(ExecState * exec,JSValue slotBase,const Identifier &)293 JSValue jsSVGFECompositeElementWidth(ExecState* exec, JSValue slotBase, const Identifier&)
294 {
295     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
296     UNUSED_PARAM(exec);
297     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
298     RefPtr<SVGAnimatedLength> obj = imp->widthAnimated();
299     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
300     return result;
301 }
302 
303 
jsSVGFECompositeElementHeight(ExecState * exec,JSValue slotBase,const Identifier &)304 JSValue jsSVGFECompositeElementHeight(ExecState* exec, JSValue slotBase, const Identifier&)
305 {
306     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
307     UNUSED_PARAM(exec);
308     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
309     RefPtr<SVGAnimatedLength> obj = imp->heightAnimated();
310     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
311     return result;
312 }
313 
314 
jsSVGFECompositeElementResult(ExecState * exec,JSValue slotBase,const Identifier &)315 JSValue jsSVGFECompositeElementResult(ExecState* exec, JSValue slotBase, const Identifier&)
316 {
317     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
318     UNUSED_PARAM(exec);
319     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
320     RefPtr<SVGAnimatedString> obj = imp->resultAnimated();
321     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
322     return result;
323 }
324 
325 
jsSVGFECompositeElementClassName(ExecState * exec,JSValue slotBase,const Identifier &)326 JSValue jsSVGFECompositeElementClassName(ExecState* exec, JSValue slotBase, const Identifier&)
327 {
328     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
329     UNUSED_PARAM(exec);
330     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
331     RefPtr<SVGAnimatedString> obj = imp->classNameAnimated();
332     JSValue result =  toJS(exec, castedThis->globalObject(), obj.get());
333     return result;
334 }
335 
336 
jsSVGFECompositeElementStyle(ExecState * exec,JSValue slotBase,const Identifier &)337 JSValue jsSVGFECompositeElementStyle(ExecState* exec, JSValue slotBase, const Identifier&)
338 {
339     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
340     UNUSED_PARAM(exec);
341     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
342     JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->style()));
343     return result;
344 }
345 
346 
jsSVGFECompositeElementConstructor(ExecState * exec,JSValue slotBase,const Identifier &)347 JSValue jsSVGFECompositeElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
348 {
349     JSSVGFECompositeElement* domObject = static_cast<JSSVGFECompositeElement*>(asObject(slotBase));
350     return JSSVGFECompositeElement::getConstructor(exec, domObject->globalObject());
351 }
352 
getConstructor(ExecState * exec,JSGlobalObject * globalObject)353 JSValue JSSVGFECompositeElement::getConstructor(ExecState* exec, JSGlobalObject* globalObject)
354 {
355     return getDOMConstructor<JSSVGFECompositeElementConstructor>(exec, static_cast<JSDOMGlobalObject*>(globalObject));
356 }
357 
jsSVGFECompositeElementPrototypeFunctionGetPresentationAttribute(ExecState * exec)358 EncodedJSValue JSC_HOST_CALL jsSVGFECompositeElementPrototypeFunctionGetPresentationAttribute(ExecState* exec)
359 {
360     JSValue thisValue = exec->hostThisValue();
361     if (!thisValue.inherits(&JSSVGFECompositeElement::s_info))
362         return throwVMTypeError(exec);
363     JSSVGFECompositeElement* castedThis = static_cast<JSSVGFECompositeElement*>(asObject(thisValue));
364     SVGFECompositeElement* imp = static_cast<SVGFECompositeElement*>(castedThis->impl());
365     const String& name(ustringToString(exec->argument(0).toString(exec)));
366     if (exec->hadException())
367         return JSValue::encode(jsUndefined());
368 
369 
370     JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->getPresentationAttribute(name)));
371     return JSValue::encode(result);
372 }
373 
374 // Constant getters
375 
jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_UNKNOWN(ExecState * exec,JSValue,const Identifier &)376 JSValue jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_UNKNOWN(ExecState* exec, JSValue, const Identifier&)
377 {
378     UNUSED_PARAM(exec);
379     return jsNumber(static_cast<int>(0));
380 }
381 
jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_OVER(ExecState * exec,JSValue,const Identifier &)382 JSValue jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_OVER(ExecState* exec, JSValue, const Identifier&)
383 {
384     UNUSED_PARAM(exec);
385     return jsNumber(static_cast<int>(1));
386 }
387 
jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_IN(ExecState * exec,JSValue,const Identifier &)388 JSValue jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_IN(ExecState* exec, JSValue, const Identifier&)
389 {
390     UNUSED_PARAM(exec);
391     return jsNumber(static_cast<int>(2));
392 }
393 
jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_OUT(ExecState * exec,JSValue,const Identifier &)394 JSValue jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_OUT(ExecState* exec, JSValue, const Identifier&)
395 {
396     UNUSED_PARAM(exec);
397     return jsNumber(static_cast<int>(3));
398 }
399 
jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_ATOP(ExecState * exec,JSValue,const Identifier &)400 JSValue jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_ATOP(ExecState* exec, JSValue, const Identifier&)
401 {
402     UNUSED_PARAM(exec);
403     return jsNumber(static_cast<int>(4));
404 }
405 
jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_XOR(ExecState * exec,JSValue,const Identifier &)406 JSValue jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_XOR(ExecState* exec, JSValue, const Identifier&)
407 {
408     UNUSED_PARAM(exec);
409     return jsNumber(static_cast<int>(5));
410 }
411 
jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_ARITHMETIC(ExecState * exec,JSValue,const Identifier &)412 JSValue jsSVGFECompositeElementSVG_FECOMPOSITE_OPERATOR_ARITHMETIC(ExecState* exec, JSValue, const Identifier&)
413 {
414     UNUSED_PARAM(exec);
415     return jsNumber(static_cast<int>(6));
416 }
417 
418 
419 }
420 
421 #endif // ENABLE(SVG) && ENABLE(FILTERS)
422