1 module libwasm.bindings.SVGMatrix;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 @safe:
7 nothrow:
8 
9 struct SVGMatrix {
10   nothrow:
11   JsHandle handle;
12   alias handle this;
13   this(Handle h) {
14     this.handle = JsHandle(h);
15   }
16   void a()(float a) {
17     Object_Call_float__void(this.handle, "a", a);
18   }
19   float a()() {
20     return Object_Getter__float(this.handle, "a");
21   }
22   void b()(float b) {
23     Object_Call_float__void(this.handle, "b", b);
24   }
25   float b()() {
26     return Object_Getter__float(this.handle, "b");
27   }
28   void c()(float c) {
29     Object_Call_float__void(this.handle, "c", c);
30   }
31   float c()() {
32     return Object_Getter__float(this.handle, "c");
33   }
34   void d()(float d) {
35     Object_Call_float__void(this.handle, "d", d);
36   }
37   float d()() {
38     return Object_Getter__float(this.handle, "d");
39   }
40   void e()(float e) {
41     Object_Call_float__void(this.handle, "e", e);
42   }
43   float e()() {
44     return Object_Getter__float(this.handle, "e");
45   }
46   void f()(float f) {
47     Object_Call_float__void(this.handle, "f", f);
48   }
49   float f()() {
50     return Object_Getter__float(this.handle, "f");
51   }
52   auto multiply()(scope ref SVGMatrix secondMatrix) {
53     return SVGMatrix(Object_Call_Handle__Handle(this.handle, "multiply", secondMatrix.handle));
54   }
55   auto inverse()() {
56     return SVGMatrix(Object_Getter__Handle(this.handle, "inverse"));
57   }
58   auto translate()(float x, float y) {
59     return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "translate", "float;float", tuple(x, y)));
60   }
61   auto scale()(float scaleFactor) {
62     return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "scale", "float", tuple(scaleFactor)));
63   }
64   auto scaleNonUniform()(float scaleFactorX, float scaleFactorY) {
65     return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "scaleNonUniform", "float;float", tuple(scaleFactorX, scaleFactorY)));
66   }
67   auto rotate()(float angle) {
68     return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "rotate", "float", tuple(angle)));
69   }
70   auto rotateFromVector()(float x, float y) {
71     return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "rotateFromVector", "float;float", tuple(x, y)));
72   }
73   auto flipX()() {
74     return SVGMatrix(Object_Getter__Handle(this.handle, "flipX"));
75   }
76   auto flipY()() {
77     return SVGMatrix(Object_Getter__Handle(this.handle, "flipY"));
78   }
79   auto skewX()(float angle) {
80     return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "skewX", "float", tuple(angle)));
81   }
82   auto skewY()(float angle) {
83     return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "skewY", "float", tuple(angle)));
84   }
85 }
86 
87