p5_sys/
global.rs

1#![allow(non_upper_case_globals)]
2use crate::types::*;
3use crate::constants::*;
4use wasm_bindgen::prelude::*;
5#[doc=r##"<p>Draw a plane with given a width and height</p>
6"##]
7///<h2>Examples</h2>
8///
9
10#[doc=r###"```rust
11// draw a plane
12// with width 50 and height 50
13function setup() {
14  createCanvas(100, 100, WEBGL);
15}
16
17function draw() {
18  background(200);
19  plane(50, 50);
20}
21```"###]
22/// <h2>Parameters</h2>
23///
24#[doc = r##"<code>width?</code> width of the plane
25
26"##]
27///
28///
29#[doc = r##"<code>height?</code> height of the plane
30
31"##]
32///
33///
34#[doc = r##"<code>detailX?</code> Optional number of triangle
35                            subdivisions in x-dimension
36
37"##]
38///
39///
40#[doc = r##"<code>detailY?</code> Optional number of triangle
41                            subdivisions in y-dimension
42
43"##]
44///
45
46pub static plane: PlaneInternalType = PlaneInternalType;
47#[doc(hidden)]
48pub struct PlaneInternalType;
49
50
51#[wasm_bindgen]
52extern {
53    #[wasm_bindgen(js_name = "plane")]
54    fn plane2585599206(_ : f64, _ : f64, _ : i32, _ : i32, ) ;
55}
56
57#[doc(hidden)]
58impl FnOnce<(f64,f64,i32,i32,)> for PlaneInternalType {
59    type Output = ();
60    extern "rust-call" fn call_once(self, args: (f64,f64,i32,i32,)) -> Self::Output {
61        plane2585599206.call(args)
62    }
63}
64
65#[doc(hidden)]
66impl FnMut<(f64,f64,i32,i32,)> for PlaneInternalType {
67    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,i32,)) -> Self::Output {
68        plane2585599206.call(args)
69    }
70}
71
72#[doc(hidden)]
73impl Fn<(f64,f64,i32,i32,)> for PlaneInternalType {
74    extern "rust-call" fn call(&self, args: (f64,f64,i32,i32,)) -> Self::Output {
75        plane2585599206.call(args)
76    }
77}
78
79#[wasm_bindgen]
80extern {
81    #[wasm_bindgen(js_name = "plane")]
82    fn plane2406826182(_ : f64, _ : f64, _ : i32, ) ;
83}
84
85#[doc(hidden)]
86impl FnOnce<(f64,f64,i32,)> for PlaneInternalType {
87    type Output = ();
88    extern "rust-call" fn call_once(self, args: (f64,f64,i32,)) -> Self::Output {
89        plane2406826182.call(args)
90    }
91}
92
93#[doc(hidden)]
94impl FnMut<(f64,f64,i32,)> for PlaneInternalType {
95    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,)) -> Self::Output {
96        plane2406826182.call(args)
97    }
98}
99
100#[doc(hidden)]
101impl Fn<(f64,f64,i32,)> for PlaneInternalType {
102    extern "rust-call" fn call(&self, args: (f64,f64,i32,)) -> Self::Output {
103        plane2406826182.call(args)
104    }
105}
106
107#[wasm_bindgen]
108extern {
109    #[wasm_bindgen(js_name = "plane")]
110    fn plane2283584251(_ : f64, _ : f64, ) ;
111}
112
113#[doc(hidden)]
114impl FnOnce<(f64,f64,)> for PlaneInternalType {
115    type Output = ();
116    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
117        plane2283584251.call(args)
118    }
119}
120
121#[doc(hidden)]
122impl FnMut<(f64,f64,)> for PlaneInternalType {
123    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
124        plane2283584251.call(args)
125    }
126}
127
128#[doc(hidden)]
129impl Fn<(f64,f64,)> for PlaneInternalType {
130    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
131        plane2283584251.call(args)
132    }
133}
134
135#[wasm_bindgen]
136extern {
137    #[wasm_bindgen(js_name = "plane")]
138    fn plane4150062490(_ : f64, ) ;
139}
140
141#[doc(hidden)]
142impl FnOnce<(f64,)> for PlaneInternalType {
143    type Output = ();
144    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
145        plane4150062490.call(args)
146    }
147}
148
149#[doc(hidden)]
150impl FnMut<(f64,)> for PlaneInternalType {
151    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
152        plane4150062490.call(args)
153    }
154}
155
156#[doc(hidden)]
157impl Fn<(f64,)> for PlaneInternalType {
158    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
159        plane4150062490.call(args)
160    }
161}
162
163#[wasm_bindgen]
164extern {
165    #[wasm_bindgen(js_name = "plane")]
166    fn plane3752690872() ;
167}
168
169#[doc(hidden)]
170impl FnOnce<()> for PlaneInternalType {
171    type Output = ();
172    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
173        plane3752690872.call(args)
174    }
175}
176
177#[doc(hidden)]
178impl FnMut<()> for PlaneInternalType {
179    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
180        plane3752690872.call(args)
181    }
182}
183
184#[doc(hidden)]
185impl Fn<()> for PlaneInternalType {
186    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
187        plane3752690872.call(args)
188    }
189}
190#[doc=r##"<p>Draw a box with given width, height and depth</p>
191"##]
192///<h2>Examples</h2>
193///
194
195#[doc=r###"```rust
196// draw a spinning box
197// with width, height and depth of 50
198function setup() {
199  createCanvas(100, 100, WEBGL);
200}
201
202function draw() {
203  background(200);
204  rotateX(frameCount * 0.01);
205  rotateY(frameCount * 0.01);
206  box(50);
207}
208```"###]
209/// <h2>Parameters</h2>
210///
211#[doc = r##"<code>width?</code> width of the box
212
213"##]
214///
215///
216#[doc = r##"<code>Height?</code> height of the box
217
218"##]
219///
220///
221#[doc = r##"<code>depth?</code> depth of the box
222
223"##]
224///
225///
226#[doc = r##"<code>detailX?</code> Optional number of triangle
227                           subdivisions in x-dimension
228
229"##]
230///
231///
232#[doc = r##"<code>detailY?</code> Optional number of triangle
233                           subdivisions in y-dimension
234
235"##]
236///
237
238pub static r#box: RBoxInternalType = RBoxInternalType;
239#[doc(hidden)]
240pub struct RBoxInternalType;
241
242
243#[wasm_bindgen]
244extern {
245    #[wasm_bindgen(js_name = "r#box")]
246    fn r#box1627006999(_ : f64, _ : f64, _ : f64, _ : i32, _ : i32, ) ;
247}
248
249#[doc(hidden)]
250impl FnOnce<(f64,f64,f64,i32,i32,)> for RBoxInternalType {
251    type Output = ();
252    extern "rust-call" fn call_once(self, args: (f64,f64,f64,i32,i32,)) -> Self::Output {
253        r#box1627006999.call(args)
254    }
255}
256
257#[doc(hidden)]
258impl FnMut<(f64,f64,f64,i32,i32,)> for RBoxInternalType {
259    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,i32,i32,)) -> Self::Output {
260        r#box1627006999.call(args)
261    }
262}
263
264#[doc(hidden)]
265impl Fn<(f64,f64,f64,i32,i32,)> for RBoxInternalType {
266    extern "rust-call" fn call(&self, args: (f64,f64,f64,i32,i32,)) -> Self::Output {
267        r#box1627006999.call(args)
268    }
269}
270
271#[wasm_bindgen]
272extern {
273    #[wasm_bindgen(js_name = "r#box")]
274    fn r#box2875443328(_ : f64, _ : f64, _ : f64, _ : i32, ) ;
275}
276
277#[doc(hidden)]
278impl FnOnce<(f64,f64,f64,i32,)> for RBoxInternalType {
279    type Output = ();
280    extern "rust-call" fn call_once(self, args: (f64,f64,f64,i32,)) -> Self::Output {
281        r#box2875443328.call(args)
282    }
283}
284
285#[doc(hidden)]
286impl FnMut<(f64,f64,f64,i32,)> for RBoxInternalType {
287    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,i32,)) -> Self::Output {
288        r#box2875443328.call(args)
289    }
290}
291
292#[doc(hidden)]
293impl Fn<(f64,f64,f64,i32,)> for RBoxInternalType {
294    extern "rust-call" fn call(&self, args: (f64,f64,f64,i32,)) -> Self::Output {
295        r#box2875443328.call(args)
296    }
297}
298
299#[wasm_bindgen]
300extern {
301    #[wasm_bindgen(js_name = "r#box")]
302    fn r#box2303590482(_ : f64, _ : f64, _ : f64, ) ;
303}
304
305#[doc(hidden)]
306impl FnOnce<(f64,f64,f64,)> for RBoxInternalType {
307    type Output = ();
308    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
309        r#box2303590482.call(args)
310    }
311}
312
313#[doc(hidden)]
314impl FnMut<(f64,f64,f64,)> for RBoxInternalType {
315    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
316        r#box2303590482.call(args)
317    }
318}
319
320#[doc(hidden)]
321impl Fn<(f64,f64,f64,)> for RBoxInternalType {
322    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
323        r#box2303590482.call(args)
324    }
325}
326
327#[wasm_bindgen]
328extern {
329    #[wasm_bindgen(js_name = "r#box")]
330    fn r#box1345169569(_ : f64, _ : f64, ) ;
331}
332
333#[doc(hidden)]
334impl FnOnce<(f64,f64,)> for RBoxInternalType {
335    type Output = ();
336    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
337        r#box1345169569.call(args)
338    }
339}
340
341#[doc(hidden)]
342impl FnMut<(f64,f64,)> for RBoxInternalType {
343    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
344        r#box1345169569.call(args)
345    }
346}
347
348#[doc(hidden)]
349impl Fn<(f64,f64,)> for RBoxInternalType {
350    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
351        r#box1345169569.call(args)
352    }
353}
354
355#[wasm_bindgen]
356extern {
357    #[wasm_bindgen(js_name = "r#box")]
358    fn r#box804119330(_ : f64, ) ;
359}
360
361#[doc(hidden)]
362impl FnOnce<(f64,)> for RBoxInternalType {
363    type Output = ();
364    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
365        r#box804119330.call(args)
366    }
367}
368
369#[doc(hidden)]
370impl FnMut<(f64,)> for RBoxInternalType {
371    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
372        r#box804119330.call(args)
373    }
374}
375
376#[doc(hidden)]
377impl Fn<(f64,)> for RBoxInternalType {
378    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
379        r#box804119330.call(args)
380    }
381}
382
383#[wasm_bindgen]
384extern {
385    #[wasm_bindgen(js_name = "r#box")]
386    fn r#box4208199793() ;
387}
388
389#[doc(hidden)]
390impl FnOnce<()> for RBoxInternalType {
391    type Output = ();
392    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
393        r#box4208199793.call(args)
394    }
395}
396
397#[doc(hidden)]
398impl FnMut<()> for RBoxInternalType {
399    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
400        r#box4208199793.call(args)
401    }
402}
403
404#[doc(hidden)]
405impl Fn<()> for RBoxInternalType {
406    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
407        r#box4208199793.call(args)
408    }
409}
410#[doc=r##"<p>Draw a sphere with given radius.</p>
411<p>DetailX and detailY determines the number of subdivisions in the x-dimension
412and the y-dimension of a sphere. More subdivisions make the sphere seem
413smoother. The recommended maximum values are both 24. Using a value greater
414than 24 may cause a warning or slow down the browser.</p>
415"##]
416///<h2>Examples</h2>
417///
418
419#[doc=r###"```rust
420// draw a sphere with radius 40
421function setup() {
422  createCanvas(100, 100, WEBGL);
423}
424
425function draw() {
426  background(205, 102, 94);
427  sphere(40);
428}
429```"###]
430#[doc=r###"```rust
431let detailX;
432// slide to see how detailX works
433function setup() {
434  createCanvas(100, 100, WEBGL);
435  detailX = createSlider(3, 24, 3);
436  detailX.position(10, height + 5);
437  detailX.style('width', '80px');
438}
439
440function draw() {
441  background(205, 105, 94);
442  rotateY(millis() / 1000);
443  sphere(40, detailX.value(), 16);
444}
445```"###]
446#[doc=r###"```rust
447let detailY;
448// slide to see how detailY works
449function setup() {
450  createCanvas(100, 100, WEBGL);
451  detailY = createSlider(3, 16, 3);
452  detailY.position(10, height + 5);
453  detailY.style('width', '80px');
454}
455
456function draw() {
457  background(205, 105, 94);
458  rotateY(millis() / 1000);
459  sphere(40, 16, detailY.value());
460}
461```"###]
462/// <h2>Parameters</h2>
463///
464#[doc = r##"<code>radius?</code> radius of circle
465
466"##]
467///
468///
469#[doc = r##"<code>detailX?</code> optional number of subdivisions in x-dimension
470
471"##]
472///
473///
474#[doc = r##"<code>detailY?</code> optional number of subdivisions in y-dimension
475
476"##]
477///
478
479pub static sphere: SphereInternalType = SphereInternalType;
480#[doc(hidden)]
481pub struct SphereInternalType;
482
483
484#[wasm_bindgen]
485extern {
486    #[wasm_bindgen(js_name = "sphere")]
487    fn sphere2282512766(_ : f64, _ : i32, _ : i32, ) ;
488}
489
490#[doc(hidden)]
491impl FnOnce<(f64,i32,i32,)> for SphereInternalType {
492    type Output = ();
493    extern "rust-call" fn call_once(self, args: (f64,i32,i32,)) -> Self::Output {
494        sphere2282512766.call(args)
495    }
496}
497
498#[doc(hidden)]
499impl FnMut<(f64,i32,i32,)> for SphereInternalType {
500    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,i32,)) -> Self::Output {
501        sphere2282512766.call(args)
502    }
503}
504
505#[doc(hidden)]
506impl Fn<(f64,i32,i32,)> for SphereInternalType {
507    extern "rust-call" fn call(&self, args: (f64,i32,i32,)) -> Self::Output {
508        sphere2282512766.call(args)
509    }
510}
511
512#[wasm_bindgen]
513extern {
514    #[wasm_bindgen(js_name = "sphere")]
515    fn sphere2478419053(_ : f64, _ : i32, ) ;
516}
517
518#[doc(hidden)]
519impl FnOnce<(f64,i32,)> for SphereInternalType {
520    type Output = ();
521    extern "rust-call" fn call_once(self, args: (f64,i32,)) -> Self::Output {
522        sphere2478419053.call(args)
523    }
524}
525
526#[doc(hidden)]
527impl FnMut<(f64,i32,)> for SphereInternalType {
528    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,)) -> Self::Output {
529        sphere2478419053.call(args)
530    }
531}
532
533#[doc(hidden)]
534impl Fn<(f64,i32,)> for SphereInternalType {
535    extern "rust-call" fn call(&self, args: (f64,i32,)) -> Self::Output {
536        sphere2478419053.call(args)
537    }
538}
539
540#[wasm_bindgen]
541extern {
542    #[wasm_bindgen(js_name = "sphere")]
543    fn sphere2039576775(_ : f64, ) ;
544}
545
546#[doc(hidden)]
547impl FnOnce<(f64,)> for SphereInternalType {
548    type Output = ();
549    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
550        sphere2039576775.call(args)
551    }
552}
553
554#[doc(hidden)]
555impl FnMut<(f64,)> for SphereInternalType {
556    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
557        sphere2039576775.call(args)
558    }
559}
560
561#[doc(hidden)]
562impl Fn<(f64,)> for SphereInternalType {
563    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
564        sphere2039576775.call(args)
565    }
566}
567
568#[wasm_bindgen]
569extern {
570    #[wasm_bindgen(js_name = "sphere")]
571    fn sphere2633905878() ;
572}
573
574#[doc(hidden)]
575impl FnOnce<()> for SphereInternalType {
576    type Output = ();
577    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
578        sphere2633905878.call(args)
579    }
580}
581
582#[doc(hidden)]
583impl FnMut<()> for SphereInternalType {
584    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
585        sphere2633905878.call(args)
586    }
587}
588
589#[doc(hidden)]
590impl Fn<()> for SphereInternalType {
591    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
592        sphere2633905878.call(args)
593    }
594}
595#[doc=r##"<p>Draw a cylinder with given radius and height</p>
596<p>DetailX and detailY determines the number of subdivisions in the x-dimension
597and the y-dimension of a cylinder. More subdivisions make the cylinder seem smoother.
598The recommended maximum value for detailX is 24. Using a value greater than 24
599may cause a warning or slow down the browser.</p>
600"##]
601///<h2>Examples</h2>
602///
603
604#[doc=r###"```rust
605// draw a spinning cylinder
606// with radius 20 and height 50
607function setup() {
608  createCanvas(100, 100, WEBGL);
609}
610
611function draw() {
612  background(205, 105, 94);
613  rotateX(frameCount * 0.01);
614  rotateZ(frameCount * 0.01);
615  cylinder(20, 50);
616}
617```"###]
618#[doc=r###"```rust
619// slide to see how detailX works
620let detailX;
621function setup() {
622  createCanvas(100, 100, WEBGL);
623  detailX = createSlider(3, 24, 3);
624  detailX.position(10, height + 5);
625  detailX.style('width', '80px');
626}
627
628function draw() {
629  background(205, 105, 94);
630  rotateY(millis() / 1000);
631  cylinder(20, 75, detailX.value(), 1);
632}
633```"###]
634#[doc=r###"```rust
635// slide to see how detailY works
636let detailY;
637function setup() {
638  createCanvas(100, 100, WEBGL);
639  detailY = createSlider(1, 16, 1);
640  detailY.position(10, height + 5);
641  detailY.style('width', '80px');
642}
643
644function draw() {
645  background(205, 105, 94);
646  rotateY(millis() / 1000);
647  cylinder(20, 75, 16, detailY.value());
648}
649```"###]
650/// <h2>Parameters</h2>
651///
652#[doc = r##"<code>radius?</code> radius of the surface
653
654"##]
655///
656///
657#[doc = r##"<code>height?</code> height of the cylinder
658
659"##]
660///
661///
662#[doc = r##"<code>detailX?</code> number of subdivisions in x-dimension;
663                              default is 24
664
665"##]
666///
667///
668#[doc = r##"<code>detailY?</code> number of subdivisions in y-dimension;
669                              default is 1
670
671"##]
672///
673///
674#[doc = r##"<code>bottomCap?</code> whether to draw the bottom of the cylinder
675
676"##]
677///
678///
679#[doc = r##"<code>topCap?</code> whether to draw the top of the cylinder
680
681"##]
682///
683
684pub static cylinder: CylinderInternalType = CylinderInternalType;
685#[doc(hidden)]
686pub struct CylinderInternalType;
687
688
689#[wasm_bindgen]
690extern {
691    #[wasm_bindgen(js_name = "cylinder")]
692    fn cylinder3607002648(_ : f64, _ : f64, _ : i32, _ : i32, _ : bool, _ : bool, ) ;
693}
694
695#[doc(hidden)]
696impl FnOnce<(f64,f64,i32,i32,bool,bool,)> for CylinderInternalType {
697    type Output = ();
698    extern "rust-call" fn call_once(self, args: (f64,f64,i32,i32,bool,bool,)) -> Self::Output {
699        cylinder3607002648.call(args)
700    }
701}
702
703#[doc(hidden)]
704impl FnMut<(f64,f64,i32,i32,bool,bool,)> for CylinderInternalType {
705    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,i32,bool,bool,)) -> Self::Output {
706        cylinder3607002648.call(args)
707    }
708}
709
710#[doc(hidden)]
711impl Fn<(f64,f64,i32,i32,bool,bool,)> for CylinderInternalType {
712    extern "rust-call" fn call(&self, args: (f64,f64,i32,i32,bool,bool,)) -> Self::Output {
713        cylinder3607002648.call(args)
714    }
715}
716
717#[wasm_bindgen]
718extern {
719    #[wasm_bindgen(js_name = "cylinder")]
720    fn cylinder838797870(_ : f64, _ : f64, _ : i32, _ : i32, _ : bool, ) ;
721}
722
723#[doc(hidden)]
724impl FnOnce<(f64,f64,i32,i32,bool,)> for CylinderInternalType {
725    type Output = ();
726    extern "rust-call" fn call_once(self, args: (f64,f64,i32,i32,bool,)) -> Self::Output {
727        cylinder838797870.call(args)
728    }
729}
730
731#[doc(hidden)]
732impl FnMut<(f64,f64,i32,i32,bool,)> for CylinderInternalType {
733    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,i32,bool,)) -> Self::Output {
734        cylinder838797870.call(args)
735    }
736}
737
738#[doc(hidden)]
739impl Fn<(f64,f64,i32,i32,bool,)> for CylinderInternalType {
740    extern "rust-call" fn call(&self, args: (f64,f64,i32,i32,bool,)) -> Self::Output {
741        cylinder838797870.call(args)
742    }
743}
744
745#[wasm_bindgen]
746extern {
747    #[wasm_bindgen(js_name = "cylinder")]
748    fn cylinder3346681972(_ : f64, _ : f64, _ : i32, _ : i32, ) ;
749}
750
751#[doc(hidden)]
752impl FnOnce<(f64,f64,i32,i32,)> for CylinderInternalType {
753    type Output = ();
754    extern "rust-call" fn call_once(self, args: (f64,f64,i32,i32,)) -> Self::Output {
755        cylinder3346681972.call(args)
756    }
757}
758
759#[doc(hidden)]
760impl FnMut<(f64,f64,i32,i32,)> for CylinderInternalType {
761    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,i32,)) -> Self::Output {
762        cylinder3346681972.call(args)
763    }
764}
765
766#[doc(hidden)]
767impl Fn<(f64,f64,i32,i32,)> for CylinderInternalType {
768    extern "rust-call" fn call(&self, args: (f64,f64,i32,i32,)) -> Self::Output {
769        cylinder3346681972.call(args)
770    }
771}
772
773#[wasm_bindgen]
774extern {
775    #[wasm_bindgen(js_name = "cylinder")]
776    fn cylinder374494451(_ : f64, _ : f64, _ : i32, ) ;
777}
778
779#[doc(hidden)]
780impl FnOnce<(f64,f64,i32,)> for CylinderInternalType {
781    type Output = ();
782    extern "rust-call" fn call_once(self, args: (f64,f64,i32,)) -> Self::Output {
783        cylinder374494451.call(args)
784    }
785}
786
787#[doc(hidden)]
788impl FnMut<(f64,f64,i32,)> for CylinderInternalType {
789    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,)) -> Self::Output {
790        cylinder374494451.call(args)
791    }
792}
793
794#[doc(hidden)]
795impl Fn<(f64,f64,i32,)> for CylinderInternalType {
796    extern "rust-call" fn call(&self, args: (f64,f64,i32,)) -> Self::Output {
797        cylinder374494451.call(args)
798    }
799}
800
801#[wasm_bindgen]
802extern {
803    #[wasm_bindgen(js_name = "cylinder")]
804    fn cylinder3593978055(_ : f64, _ : f64, ) ;
805}
806
807#[doc(hidden)]
808impl FnOnce<(f64,f64,)> for CylinderInternalType {
809    type Output = ();
810    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
811        cylinder3593978055.call(args)
812    }
813}
814
815#[doc(hidden)]
816impl FnMut<(f64,f64,)> for CylinderInternalType {
817    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
818        cylinder3593978055.call(args)
819    }
820}
821
822#[doc(hidden)]
823impl Fn<(f64,f64,)> for CylinderInternalType {
824    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
825        cylinder3593978055.call(args)
826    }
827}
828
829#[wasm_bindgen]
830extern {
831    #[wasm_bindgen(js_name = "cylinder")]
832    fn cylinder3215966866(_ : f64, ) ;
833}
834
835#[doc(hidden)]
836impl FnOnce<(f64,)> for CylinderInternalType {
837    type Output = ();
838    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
839        cylinder3215966866.call(args)
840    }
841}
842
843#[doc(hidden)]
844impl FnMut<(f64,)> for CylinderInternalType {
845    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
846        cylinder3215966866.call(args)
847    }
848}
849
850#[doc(hidden)]
851impl Fn<(f64,)> for CylinderInternalType {
852    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
853        cylinder3215966866.call(args)
854    }
855}
856
857#[wasm_bindgen]
858extern {
859    #[wasm_bindgen(js_name = "cylinder")]
860    fn cylinder1175085779() ;
861}
862
863#[doc(hidden)]
864impl FnOnce<()> for CylinderInternalType {
865    type Output = ();
866    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
867        cylinder1175085779.call(args)
868    }
869}
870
871#[doc(hidden)]
872impl FnMut<()> for CylinderInternalType {
873    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
874        cylinder1175085779.call(args)
875    }
876}
877
878#[doc(hidden)]
879impl Fn<()> for CylinderInternalType {
880    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
881        cylinder1175085779.call(args)
882    }
883}
884#[doc=r##"<p>Draw a cone with given radius and height</p>
885<p>DetailX and detailY determine the number of subdivisions in the x-dimension and
886the y-dimension of a cone. More subdivisions make the cone seem smoother. The
887recommended maximum value for detailX is 24. Using a value greater than 24
888may cause a warning or slow down the browser.</p>
889"##]
890///<h2>Examples</h2>
891///
892
893#[doc=r###"```rust
894// draw a spinning cone
895// with radius 40 and height 70
896function setup() {
897  createCanvas(100, 100, WEBGL);
898}
899
900function draw() {
901  background(200);
902  rotateX(frameCount * 0.01);
903  rotateZ(frameCount * 0.01);
904  cone(40, 70);
905}
906```"###]
907#[doc=r###"```rust
908// slide to see how detailx works
909let detailX;
910function setup() {
911  createCanvas(100, 100, WEBGL);
912  detailX = createSlider(3, 16, 3);
913  detailX.position(10, height + 5);
914  detailX.style('width', '80px');
915}
916
917function draw() {
918  background(205, 102, 94);
919  rotateY(millis() / 1000);
920  cone(30, 65, detailX.value(), 16);
921}
922```"###]
923#[doc=r###"```rust
924// slide to see how detailY works
925let detailY;
926function setup() {
927  createCanvas(100, 100, WEBGL);
928  detailY = createSlider(3, 16, 3);
929  detailY.position(10, height + 5);
930  detailY.style('width', '80px');
931}
932
933function draw() {
934  background(205, 102, 94);
935  rotateY(millis() / 1000);
936  cone(30, 65, 16, detailY.value());
937}
938```"###]
939/// <h2>Parameters</h2>
940///
941#[doc = r##"<code>radius?</code> radius of the bottom surface
942
943"##]
944///
945///
946#[doc = r##"<code>height?</code> height of the cone
947
948"##]
949///
950///
951#[doc = r##"<code>detailX?</code> number of segments,
952                            the more segments the smoother geometry
953                            default is 24
954
955"##]
956///
957///
958#[doc = r##"<code>detailY?</code> number of segments,
959                            the more segments the smoother geometry
960                            default is 1
961
962"##]
963///
964///
965#[doc = r##"<code>cap?</code> whether to draw the base of the cone
966
967"##]
968///
969
970pub static cone: ConeInternalType = ConeInternalType;
971#[doc(hidden)]
972pub struct ConeInternalType;
973
974
975#[wasm_bindgen]
976extern {
977    #[wasm_bindgen(js_name = "cone")]
978    fn cone244031306(_ : f64, _ : f64, _ : i32, _ : i32, _ : bool, ) ;
979}
980
981#[doc(hidden)]
982impl FnOnce<(f64,f64,i32,i32,bool,)> for ConeInternalType {
983    type Output = ();
984    extern "rust-call" fn call_once(self, args: (f64,f64,i32,i32,bool,)) -> Self::Output {
985        cone244031306.call(args)
986    }
987}
988
989#[doc(hidden)]
990impl FnMut<(f64,f64,i32,i32,bool,)> for ConeInternalType {
991    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,i32,bool,)) -> Self::Output {
992        cone244031306.call(args)
993    }
994}
995
996#[doc(hidden)]
997impl Fn<(f64,f64,i32,i32,bool,)> for ConeInternalType {
998    extern "rust-call" fn call(&self, args: (f64,f64,i32,i32,bool,)) -> Self::Output {
999        cone244031306.call(args)
1000    }
1001}
1002
1003#[wasm_bindgen]
1004extern {
1005    #[wasm_bindgen(js_name = "cone")]
1006    fn cone1649964555(_ : f64, _ : f64, _ : i32, _ : i32, ) ;
1007}
1008
1009#[doc(hidden)]
1010impl FnOnce<(f64,f64,i32,i32,)> for ConeInternalType {
1011    type Output = ();
1012    extern "rust-call" fn call_once(self, args: (f64,f64,i32,i32,)) -> Self::Output {
1013        cone1649964555.call(args)
1014    }
1015}
1016
1017#[doc(hidden)]
1018impl FnMut<(f64,f64,i32,i32,)> for ConeInternalType {
1019    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,i32,)) -> Self::Output {
1020        cone1649964555.call(args)
1021    }
1022}
1023
1024#[doc(hidden)]
1025impl Fn<(f64,f64,i32,i32,)> for ConeInternalType {
1026    extern "rust-call" fn call(&self, args: (f64,f64,i32,i32,)) -> Self::Output {
1027        cone1649964555.call(args)
1028    }
1029}
1030
1031#[wasm_bindgen]
1032extern {
1033    #[wasm_bindgen(js_name = "cone")]
1034    fn cone4145843906(_ : f64, _ : f64, _ : i32, ) ;
1035}
1036
1037#[doc(hidden)]
1038impl FnOnce<(f64,f64,i32,)> for ConeInternalType {
1039    type Output = ();
1040    extern "rust-call" fn call_once(self, args: (f64,f64,i32,)) -> Self::Output {
1041        cone4145843906.call(args)
1042    }
1043}
1044
1045#[doc(hidden)]
1046impl FnMut<(f64,f64,i32,)> for ConeInternalType {
1047    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,)) -> Self::Output {
1048        cone4145843906.call(args)
1049    }
1050}
1051
1052#[doc(hidden)]
1053impl Fn<(f64,f64,i32,)> for ConeInternalType {
1054    extern "rust-call" fn call(&self, args: (f64,f64,i32,)) -> Self::Output {
1055        cone4145843906.call(args)
1056    }
1057}
1058
1059#[wasm_bindgen]
1060extern {
1061    #[wasm_bindgen(js_name = "cone")]
1062    fn cone38068920(_ : f64, _ : f64, ) ;
1063}
1064
1065#[doc(hidden)]
1066impl FnOnce<(f64,f64,)> for ConeInternalType {
1067    type Output = ();
1068    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
1069        cone38068920.call(args)
1070    }
1071}
1072
1073#[doc(hidden)]
1074impl FnMut<(f64,f64,)> for ConeInternalType {
1075    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
1076        cone38068920.call(args)
1077    }
1078}
1079
1080#[doc(hidden)]
1081impl Fn<(f64,f64,)> for ConeInternalType {
1082    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
1083        cone38068920.call(args)
1084    }
1085}
1086
1087#[wasm_bindgen]
1088extern {
1089    #[wasm_bindgen(js_name = "cone")]
1090    fn cone3153721414(_ : f64, ) ;
1091}
1092
1093#[doc(hidden)]
1094impl FnOnce<(f64,)> for ConeInternalType {
1095    type Output = ();
1096    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
1097        cone3153721414.call(args)
1098    }
1099}
1100
1101#[doc(hidden)]
1102impl FnMut<(f64,)> for ConeInternalType {
1103    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
1104        cone3153721414.call(args)
1105    }
1106}
1107
1108#[doc(hidden)]
1109impl Fn<(f64,)> for ConeInternalType {
1110    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
1111        cone3153721414.call(args)
1112    }
1113}
1114
1115#[wasm_bindgen]
1116extern {
1117    #[wasm_bindgen(js_name = "cone")]
1118    fn cone3105658346() ;
1119}
1120
1121#[doc(hidden)]
1122impl FnOnce<()> for ConeInternalType {
1123    type Output = ();
1124    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
1125        cone3105658346.call(args)
1126    }
1127}
1128
1129#[doc(hidden)]
1130impl FnMut<()> for ConeInternalType {
1131    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
1132        cone3105658346.call(args)
1133    }
1134}
1135
1136#[doc(hidden)]
1137impl Fn<()> for ConeInternalType {
1138    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
1139        cone3105658346.call(args)
1140    }
1141}
1142#[doc=r##"<p>Draw an ellipsoid with given radius</p>
1143<p>DetailX and detailY determine the number of subdivisions in the x-dimension and
1144the y-dimension of a cone. More subdivisions make the ellipsoid appear to be smoother.
1145Avoid detail number above 150, it may crash the browser.</p>
1146"##]
1147///<h2>Examples</h2>
1148///
1149
1150#[doc=r###"```rust
1151// draw an ellipsoid
1152// with radius 30, 40 and 40.
1153function setup() {
1154  createCanvas(100, 100, WEBGL);
1155}
1156
1157function draw() {
1158  background(205, 105, 94);
1159  ellipsoid(30, 40, 40);
1160}
1161```"###]
1162#[doc=r###"```rust
1163// slide to see how detailX works
1164let detailX;
1165function setup() {
1166  createCanvas(100, 100, WEBGL);
1167  detailX = createSlider(2, 24, 12);
1168  detailX.position(10, height + 5);
1169  detailX.style('width', '80px');
1170}
1171
1172function draw() {
1173  background(205, 105, 94);
1174  rotateY(millis() / 1000);
1175  ellipsoid(30, 40, 40, detailX.value(), 8);
1176}
1177```"###]
1178#[doc=r###"```rust
1179// slide to see how detailY works
1180let detailY;
1181function setup() {
1182  createCanvas(100, 100, WEBGL);
1183  detailY = createSlider(2, 24, 6);
1184  detailY.position(10, height + 5);
1185  detailY.style('width', '80px');
1186}
1187
1188function draw() {
1189  background(205, 105, 9);
1190  rotateY(millis() / 1000);
1191  ellipsoid(30, 40, 40, 12, detailY.value());
1192}
1193```"###]
1194/// <h2>Parameters</h2>
1195///
1196#[doc = r##"<code>radiusx?</code> x-radius of ellipsoid
1197
1198"##]
1199///
1200///
1201#[doc = r##"<code>radiusy?</code> y-radius of ellipsoid
1202
1203"##]
1204///
1205///
1206#[doc = r##"<code>radiusz?</code> z-radius of ellipsoid
1207
1208"##]
1209///
1210///
1211#[doc = r##"<code>detailX?</code> number of segments,
1212                                   the more segments the smoother geometry
1213                                   default is 24. Avoid detail number above
1214                                   150, it may crash the browser.
1215
1216"##]
1217///
1218///
1219#[doc = r##"<code>detailY?</code> number of segments,
1220                                   the more segments the smoother geometry
1221                                   default is 16. Avoid detail number above
1222                                   150, it may crash the browser.
1223
1224"##]
1225///
1226
1227pub static ellipsoid: EllipsoidInternalType = EllipsoidInternalType;
1228#[doc(hidden)]
1229pub struct EllipsoidInternalType;
1230
1231
1232#[wasm_bindgen]
1233extern {
1234    #[wasm_bindgen(js_name = "ellipsoid")]
1235    fn ellipsoid381941463(_ : f64, _ : f64, _ : f64, _ : i32, _ : i32, ) ;
1236}
1237
1238#[doc(hidden)]
1239impl FnOnce<(f64,f64,f64,i32,i32,)> for EllipsoidInternalType {
1240    type Output = ();
1241    extern "rust-call" fn call_once(self, args: (f64,f64,f64,i32,i32,)) -> Self::Output {
1242        ellipsoid381941463.call(args)
1243    }
1244}
1245
1246#[doc(hidden)]
1247impl FnMut<(f64,f64,f64,i32,i32,)> for EllipsoidInternalType {
1248    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,i32,i32,)) -> Self::Output {
1249        ellipsoid381941463.call(args)
1250    }
1251}
1252
1253#[doc(hidden)]
1254impl Fn<(f64,f64,f64,i32,i32,)> for EllipsoidInternalType {
1255    extern "rust-call" fn call(&self, args: (f64,f64,f64,i32,i32,)) -> Self::Output {
1256        ellipsoid381941463.call(args)
1257    }
1258}
1259
1260#[wasm_bindgen]
1261extern {
1262    #[wasm_bindgen(js_name = "ellipsoid")]
1263    fn ellipsoid498476693(_ : f64, _ : f64, _ : f64, _ : i32, ) ;
1264}
1265
1266#[doc(hidden)]
1267impl FnOnce<(f64,f64,f64,i32,)> for EllipsoidInternalType {
1268    type Output = ();
1269    extern "rust-call" fn call_once(self, args: (f64,f64,f64,i32,)) -> Self::Output {
1270        ellipsoid498476693.call(args)
1271    }
1272}
1273
1274#[doc(hidden)]
1275impl FnMut<(f64,f64,f64,i32,)> for EllipsoidInternalType {
1276    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,i32,)) -> Self::Output {
1277        ellipsoid498476693.call(args)
1278    }
1279}
1280
1281#[doc(hidden)]
1282impl Fn<(f64,f64,f64,i32,)> for EllipsoidInternalType {
1283    extern "rust-call" fn call(&self, args: (f64,f64,f64,i32,)) -> Self::Output {
1284        ellipsoid498476693.call(args)
1285    }
1286}
1287
1288#[wasm_bindgen]
1289extern {
1290    #[wasm_bindgen(js_name = "ellipsoid")]
1291    fn ellipsoid2642596539(_ : f64, _ : f64, _ : f64, ) ;
1292}
1293
1294#[doc(hidden)]
1295impl FnOnce<(f64,f64,f64,)> for EllipsoidInternalType {
1296    type Output = ();
1297    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
1298        ellipsoid2642596539.call(args)
1299    }
1300}
1301
1302#[doc(hidden)]
1303impl FnMut<(f64,f64,f64,)> for EllipsoidInternalType {
1304    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
1305        ellipsoid2642596539.call(args)
1306    }
1307}
1308
1309#[doc(hidden)]
1310impl Fn<(f64,f64,f64,)> for EllipsoidInternalType {
1311    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
1312        ellipsoid2642596539.call(args)
1313    }
1314}
1315
1316#[wasm_bindgen]
1317extern {
1318    #[wasm_bindgen(js_name = "ellipsoid")]
1319    fn ellipsoid117457045(_ : f64, _ : f64, ) ;
1320}
1321
1322#[doc(hidden)]
1323impl FnOnce<(f64,f64,)> for EllipsoidInternalType {
1324    type Output = ();
1325    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
1326        ellipsoid117457045.call(args)
1327    }
1328}
1329
1330#[doc(hidden)]
1331impl FnMut<(f64,f64,)> for EllipsoidInternalType {
1332    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
1333        ellipsoid117457045.call(args)
1334    }
1335}
1336
1337#[doc(hidden)]
1338impl Fn<(f64,f64,)> for EllipsoidInternalType {
1339    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
1340        ellipsoid117457045.call(args)
1341    }
1342}
1343
1344#[wasm_bindgen]
1345extern {
1346    #[wasm_bindgen(js_name = "ellipsoid")]
1347    fn ellipsoid217783363(_ : f64, ) ;
1348}
1349
1350#[doc(hidden)]
1351impl FnOnce<(f64,)> for EllipsoidInternalType {
1352    type Output = ();
1353    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
1354        ellipsoid217783363.call(args)
1355    }
1356}
1357
1358#[doc(hidden)]
1359impl FnMut<(f64,)> for EllipsoidInternalType {
1360    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
1361        ellipsoid217783363.call(args)
1362    }
1363}
1364
1365#[doc(hidden)]
1366impl Fn<(f64,)> for EllipsoidInternalType {
1367    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
1368        ellipsoid217783363.call(args)
1369    }
1370}
1371
1372#[wasm_bindgen]
1373extern {
1374    #[wasm_bindgen(js_name = "ellipsoid")]
1375    fn ellipsoid426001174() ;
1376}
1377
1378#[doc(hidden)]
1379impl FnOnce<()> for EllipsoidInternalType {
1380    type Output = ();
1381    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
1382        ellipsoid426001174.call(args)
1383    }
1384}
1385
1386#[doc(hidden)]
1387impl FnMut<()> for EllipsoidInternalType {
1388    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
1389        ellipsoid426001174.call(args)
1390    }
1391}
1392
1393#[doc(hidden)]
1394impl Fn<()> for EllipsoidInternalType {
1395    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
1396        ellipsoid426001174.call(args)
1397    }
1398}
1399#[doc=r##"<p>Draw a torus with given radius and tube radius</p>
1400<p>DetailX and detailY determine the number of subdivisions in the x-dimension and
1401the y-dimension of a torus. More subdivisions make the torus appear to be smoother.
1402The default and maximum values for detailX and detailY are 24 and 16, respectively.
1403Setting them to relatively small values like 4 and 6 allows you to create new
1404shapes other than a torus.</p>
1405"##]
1406///<h2>Examples</h2>
1407///
1408
1409#[doc=r###"```rust
1410// draw a spinning torus
1411// with ring radius 30 and tube radius 15
1412function setup() {
1413  createCanvas(100, 100, WEBGL);
1414}
1415
1416function draw() {
1417  background(205, 102, 94);
1418  rotateX(frameCount * 0.01);
1419  rotateY(frameCount * 0.01);
1420  torus(30, 15);
1421}
1422```"###]
1423#[doc=r###"```rust
1424// slide to see how detailX works
1425let detailX;
1426function setup() {
1427  createCanvas(100, 100, WEBGL);
1428  detailX = createSlider(3, 24, 3);
1429  detailX.position(10, height + 5);
1430  detailX.style('width', '80px');
1431}
1432
1433function draw() {
1434  background(205, 102, 94);
1435  rotateY(millis() / 1000);
1436  torus(30, 15, detailX.value(), 12);
1437}
1438```"###]
1439#[doc=r###"```rust
1440// slide to see how detailY works
1441let detailY;
1442function setup() {
1443  createCanvas(100, 100, WEBGL);
1444  detailY = createSlider(3, 16, 3);
1445  detailY.position(10, height + 5);
1446  detailY.style('width', '80px');
1447}
1448
1449function draw() {
1450  background(205, 102, 94);
1451  rotateY(millis() / 1000);
1452  torus(30, 15, 16, detailY.value());
1453}
1454```"###]
1455/// <h2>Parameters</h2>
1456///
1457#[doc = r##"<code>radius?</code> radius of the whole ring
1458
1459"##]
1460///
1461///
1462#[doc = r##"<code>tubeRadius?</code> radius of the tube
1463
1464"##]
1465///
1466///
1467#[doc = r##"<code>detailX?</code> number of segments in x-dimension,
1468                               the more segments the smoother geometry
1469                               default is 24
1470
1471"##]
1472///
1473///
1474#[doc = r##"<code>detailY?</code> number of segments in y-dimension,
1475                               the more segments the smoother geometry
1476                               default is 16
1477
1478"##]
1479///
1480
1481pub static torus: TorusInternalType = TorusInternalType;
1482#[doc(hidden)]
1483pub struct TorusInternalType;
1484
1485
1486#[wasm_bindgen]
1487extern {
1488    #[wasm_bindgen(js_name = "torus")]
1489    fn torus600724799(_ : f64, _ : f64, _ : i32, _ : i32, ) ;
1490}
1491
1492#[doc(hidden)]
1493impl FnOnce<(f64,f64,i32,i32,)> for TorusInternalType {
1494    type Output = ();
1495    extern "rust-call" fn call_once(self, args: (f64,f64,i32,i32,)) -> Self::Output {
1496        torus600724799.call(args)
1497    }
1498}
1499
1500#[doc(hidden)]
1501impl FnMut<(f64,f64,i32,i32,)> for TorusInternalType {
1502    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,i32,)) -> Self::Output {
1503        torus600724799.call(args)
1504    }
1505}
1506
1507#[doc(hidden)]
1508impl Fn<(f64,f64,i32,i32,)> for TorusInternalType {
1509    extern "rust-call" fn call(&self, args: (f64,f64,i32,i32,)) -> Self::Output {
1510        torus600724799.call(args)
1511    }
1512}
1513
1514#[wasm_bindgen]
1515extern {
1516    #[wasm_bindgen(js_name = "torus")]
1517    fn torus3116411155(_ : f64, _ : f64, _ : i32, ) ;
1518}
1519
1520#[doc(hidden)]
1521impl FnOnce<(f64,f64,i32,)> for TorusInternalType {
1522    type Output = ();
1523    extern "rust-call" fn call_once(self, args: (f64,f64,i32,)) -> Self::Output {
1524        torus3116411155.call(args)
1525    }
1526}
1527
1528#[doc(hidden)]
1529impl FnMut<(f64,f64,i32,)> for TorusInternalType {
1530    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,i32,)) -> Self::Output {
1531        torus3116411155.call(args)
1532    }
1533}
1534
1535#[doc(hidden)]
1536impl Fn<(f64,f64,i32,)> for TorusInternalType {
1537    extern "rust-call" fn call(&self, args: (f64,f64,i32,)) -> Self::Output {
1538        torus3116411155.call(args)
1539    }
1540}
1541
1542#[wasm_bindgen]
1543extern {
1544    #[wasm_bindgen(js_name = "torus")]
1545    fn torus667053617(_ : f64, _ : f64, ) ;
1546}
1547
1548#[doc(hidden)]
1549impl FnOnce<(f64,f64,)> for TorusInternalType {
1550    type Output = ();
1551    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
1552        torus667053617.call(args)
1553    }
1554}
1555
1556#[doc(hidden)]
1557impl FnMut<(f64,f64,)> for TorusInternalType {
1558    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
1559        torus667053617.call(args)
1560    }
1561}
1562
1563#[doc(hidden)]
1564impl Fn<(f64,f64,)> for TorusInternalType {
1565    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
1566        torus667053617.call(args)
1567    }
1568}
1569
1570#[wasm_bindgen]
1571extern {
1572    #[wasm_bindgen(js_name = "torus")]
1573    fn torus4219204190(_ : f64, ) ;
1574}
1575
1576#[doc(hidden)]
1577impl FnOnce<(f64,)> for TorusInternalType {
1578    type Output = ();
1579    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
1580        torus4219204190.call(args)
1581    }
1582}
1583
1584#[doc(hidden)]
1585impl FnMut<(f64,)> for TorusInternalType {
1586    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
1587        torus4219204190.call(args)
1588    }
1589}
1590
1591#[doc(hidden)]
1592impl Fn<(f64,)> for TorusInternalType {
1593    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
1594        torus4219204190.call(args)
1595    }
1596}
1597
1598#[wasm_bindgen]
1599extern {
1600    #[wasm_bindgen(js_name = "torus")]
1601    fn torus2253754188() ;
1602}
1603
1604#[doc(hidden)]
1605impl FnOnce<()> for TorusInternalType {
1606    type Output = ();
1607    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
1608        torus2253754188.call(args)
1609    }
1610}
1611
1612#[doc(hidden)]
1613impl FnMut<()> for TorusInternalType {
1614    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
1615        torus2253754188.call(args)
1616    }
1617}
1618
1619#[doc(hidden)]
1620impl Fn<()> for TorusInternalType {
1621    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
1622        torus2253754188.call(args)
1623    }
1624}
1625#[doc=r##"<p>Loads a custom shader from the provided vertex and fragment
1626shader paths. The shader files are loaded asynchronously in the
1627background, so this method should be used in <a href="#/p5/preload">preload()</a>.</p>
1628<p>For now, there are three main types of shaders. p5 will automatically
1629supply appropriate vertices, normals, colors, and lighting attributes
1630if the parameters defined in the shader match the names.</p>
1631"##]
1632///<h2>Examples</h2>
1633///
1634
1635#[doc=r###"```rust
1636let mandel;
1637function preload() {
1638  // load the shader definitions from files
1639  mandel = loadShader('assets/shader.vert', 'assets/shader.frag');
1640}
1641function setup() {
1642  createCanvas(100, 100, WEBGL);
1643  // use the shader
1644  shader(mandel);
1645  noStroke();
1646  mandel.setUniform('p', [-0.74364388703, 0.13182590421]);
1647}
1648
1649function draw() {
1650  mandel.setUniform('r', 1.5 * exp(-6.5 * (1 + sin(millis() / 2000))));
1651  quad(-1, -1, 1, -1, 1, 1, -1, 1);
1652}
1653```"###]
1654/// <h2>Parameters</h2>
1655///
1656#[doc = r##"<code>vertFilename</code> path to file containing vertex shader
1657source code
1658
1659"##]
1660///
1661///
1662#[doc = r##"<code>fragFilename</code> path to file containing fragment shader
1663source code
1664
1665"##]
1666///
1667///
1668#[doc = r##"<code>callback?</code> callback to be executed after loadShader
1669completes. On success, the Shader object is passed as the first argument.
1670
1671"##]
1672///
1673///
1674#[doc = r##"<code>errorCallback?</code> callback to be executed when an error
1675occurs inside loadShader. On error, the error is passed as the first
1676argument.
1677
1678"##]
1679///
1680
1681pub static loadShader: LoadShaderInternalType = LoadShaderInternalType;
1682#[doc(hidden)]
1683pub struct LoadShaderInternalType;
1684
1685
1686#[wasm_bindgen]
1687extern {
1688    #[wasm_bindgen(js_name = "loadShader")]
1689    fn loadShader1398834873(_ : & str, _ : & str, _ : js_sys::Function, _ : js_sys::Function, ) ->  Shader;
1690}
1691
1692#[doc(hidden)]
1693impl FnOnce<(&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadShaderInternalType {
1694    type Output =  Shader;
1695    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
1696        loadShader1398834873.call(args)
1697    }
1698}
1699
1700#[doc(hidden)]
1701impl FnMut<(&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadShaderInternalType {
1702    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
1703        loadShader1398834873.call(args)
1704    }
1705}
1706
1707#[doc(hidden)]
1708impl Fn<(&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadShaderInternalType {
1709    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
1710        loadShader1398834873.call(args)
1711    }
1712}
1713
1714#[wasm_bindgen]
1715extern {
1716    #[wasm_bindgen(js_name = "loadShader")]
1717    fn loadShader3218830193(_ : & str, _ : & str, _ : js_sys::Function, ) ->  Shader;
1718}
1719
1720#[doc(hidden)]
1721impl FnOnce<(&'_ str,&'_ str,js_sys::Function,)> for LoadShaderInternalType {
1722    type Output =  Shader;
1723    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
1724        loadShader3218830193.call(args)
1725    }
1726}
1727
1728#[doc(hidden)]
1729impl FnMut<(&'_ str,&'_ str,js_sys::Function,)> for LoadShaderInternalType {
1730    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
1731        loadShader3218830193.call(args)
1732    }
1733}
1734
1735#[doc(hidden)]
1736impl Fn<(&'_ str,&'_ str,js_sys::Function,)> for LoadShaderInternalType {
1737    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
1738        loadShader3218830193.call(args)
1739    }
1740}
1741
1742#[wasm_bindgen]
1743extern {
1744    #[wasm_bindgen(js_name = "loadShader")]
1745    fn loadShader2141838164(_ : & str, _ : & str, ) ->  Shader;
1746}
1747
1748#[doc(hidden)]
1749impl FnOnce<(&'_ str,&'_ str,)> for LoadShaderInternalType {
1750    type Output =  Shader;
1751    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
1752        loadShader2141838164.call(args)
1753    }
1754}
1755
1756#[doc(hidden)]
1757impl FnMut<(&'_ str,&'_ str,)> for LoadShaderInternalType {
1758    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
1759        loadShader2141838164.call(args)
1760    }
1761}
1762
1763#[doc(hidden)]
1764impl Fn<(&'_ str,&'_ str,)> for LoadShaderInternalType {
1765    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
1766        loadShader2141838164.call(args)
1767    }
1768}
1769/// No description available
1770
1771///<h2>Examples</h2>
1772///
1773
1774#[doc=r###"```rust
1775// the 'varying's are shared between both vertex & fragment shaders
1776let varying = 'precision highp float; varying vec2 vPos;';
1777
1778// the vertex shader is called for each vertex
1779let vs =
1780  varying +
1781  'attribute vec3 aPosition;' +
1782  'void main() { vPos = (gl_Position = vec4(aPosition,1.0)).xy; }';
1783
1784// the fragment shader is called for each pixel
1785let fs =
1786  varying +
1787  'uniform vec2 p;' +
1788  'uniform float r;' +
1789  'const int I = 500;' +
1790  'void main() {' +
1791  '  vec2 c = p + vPos * r, z = c;' +
1792  '  float n = 0.0;' +
1793  '  for (int i = I; i > 0; i --) {' +
1794  '    if(z.x*z.x+z.y*z.y > 4.0) {' +
1795  '      n = float(i)/float(I);' +
1796  '      break;' +
1797  '    }' +
1798  '    z = vec2(z.x*z.x-z.y*z.y, 2.0*z.x*z.y) + c;' +
1799  '  }' +
1800  '  gl_FragColor = vec4(0.5-cos(n*17.0)/2.0,0.5-cos(n*13.0)/2.0,0.5-cos(n*23.0)/2.0,1.0);' +
1801  '}';
1802
1803let mandel;
1804function setup() {
1805  createCanvas(100, 100, WEBGL);
1806
1807  // create and initialize the shader
1808  mandel = createShader(vs, fs);
1809  shader(mandel);
1810  noStroke();
1811
1812  // 'p' is the center point of the Mandelbrot image
1813  mandel.setUniform('p', [-0.74364388703, 0.13182590421]);
1814}
1815
1816function draw() {
1817  // 'r' is the size of the image in Mandelbrot-space
1818  mandel.setUniform('r', 1.5 * exp(-6.5 * (1 + sin(millis() / 2000))));
1819  quad(-1, -1, 1, -1, 1, 1, -1, 1);
1820}
1821```"###]
1822/// <h2>Parameters</h2>
1823///
1824#[doc = r##"<code>vertSrc</code> source code for the vertex shader
1825
1826"##]
1827///
1828///
1829#[doc = r##"<code>fragSrc</code> source code for the fragment shader
1830
1831"##]
1832///
1833
1834pub static createShader: CreateShaderInternalType = CreateShaderInternalType;
1835#[doc(hidden)]
1836pub struct CreateShaderInternalType;
1837
1838
1839#[wasm_bindgen]
1840extern {
1841    #[wasm_bindgen(js_name = "createShader")]
1842    fn createShader1103143503(_ : & str, _ : & str, ) ->  Shader;
1843}
1844
1845#[doc(hidden)]
1846impl FnOnce<(&'_ str,&'_ str,)> for CreateShaderInternalType {
1847    type Output =  Shader;
1848    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
1849        createShader1103143503.call(args)
1850    }
1851}
1852
1853#[doc(hidden)]
1854impl FnMut<(&'_ str,&'_ str,)> for CreateShaderInternalType {
1855    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
1856        createShader1103143503.call(args)
1857    }
1858}
1859
1860#[doc(hidden)]
1861impl Fn<(&'_ str,&'_ str,)> for CreateShaderInternalType {
1862    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
1863        createShader1103143503.call(args)
1864    }
1865}
1866#[doc=r##"<p>The <a href="#/p5/shader">shader()</a> function lets the user provide a custom shader
1867to fill in shapes in WEBGL mode. Users can create their
1868own shaders by loading vertex and fragment shaders with
1869<a href="#/p5/loadShader">loadShader()</a>.</p>
1870"##]
1871///<h2>Examples</h2>
1872///
1873
1874#[doc=r###"```rust
1875// Click within the image to toggle
1876// the shader used by the quad shape
1877// Note: for an alternative approach to the same example,
1878// involving changing uniforms please refer to:
1879// https://p5js.org/reference/#/p5.Shader/setUniform
1880
1881let redGreen;
1882let orangeBlue;
1883let showRedGreen = false;
1884
1885function preload() {
1886  // note that we are using two instances
1887  // of the same vertex and fragment shaders
1888  redGreen = loadShader('assets/shader.vert', 'assets/shader-gradient.frag');
1889  orangeBlue = loadShader('assets/shader.vert', 'assets/shader-gradient.frag');
1890}
1891
1892function setup() {
1893  createCanvas(100, 100, WEBGL);
1894
1895  // initialize the colors for redGreen shader
1896  shader(redGreen);
1897  redGreen.setUniform('colorCenter', [1.0, 0.0, 0.0]);
1898  redGreen.setUniform('colorBackground', [0.0, 1.0, 0.0]);
1899
1900  // initialize the colors for orangeBlue shader
1901  shader(orangeBlue);
1902  orangeBlue.setUniform('colorCenter', [1.0, 0.5, 0.0]);
1903  orangeBlue.setUniform('colorBackground', [0.226, 0.0, 0.615]);
1904
1905  noStroke();
1906}
1907
1908function draw() {
1909  // update the offset values for each shader,
1910  // moving orangeBlue in vertical and redGreen
1911  // in horizontal direction
1912  orangeBlue.setUniform('offset', [0, sin(millis() / 2000) + 1]);
1913  redGreen.setUniform('offset', [sin(millis() / 2000), 1]);
1914
1915  if (showRedGreen === true) {
1916    shader(redGreen);
1917  } else {
1918    shader(orangeBlue);
1919  }
1920  quad(-1, -1, 1, -1, 1, 1, -1, 1);
1921}
1922
1923function mouseClicked() {
1924  showRedGreen = !showRedGreen;
1925}
1926```"###]
1927/// <h2>Parameters</h2>
1928///
1929#[doc = r##"<code>s?</code> the desired p5.Shader to use for rendering
1930shapes.
1931
1932"##]
1933///
1934
1935pub static shader: ShaderInternalType = ShaderInternalType;
1936#[doc(hidden)]
1937pub struct ShaderInternalType;
1938
1939
1940#[wasm_bindgen]
1941extern {
1942    #[wasm_bindgen(js_name = "shader")]
1943    fn shader2235502569(_ : & Shader, ) ;
1944}
1945
1946#[doc(hidden)]
1947impl FnOnce<(&'_ Shader,)> for ShaderInternalType {
1948    type Output = ();
1949    extern "rust-call" fn call_once(self, args: (&'_ Shader,)) -> Self::Output {
1950        shader2235502569.call(args)
1951    }
1952}
1953
1954#[doc(hidden)]
1955impl FnMut<(&'_ Shader,)> for ShaderInternalType {
1956    extern "rust-call" fn call_mut(&mut self, args: (&'_ Shader,)) -> Self::Output {
1957        shader2235502569.call(args)
1958    }
1959}
1960
1961#[doc(hidden)]
1962impl Fn<(&'_ Shader,)> for ShaderInternalType {
1963    extern "rust-call" fn call(&self, args: (&'_ Shader,)) -> Self::Output {
1964        shader2235502569.call(args)
1965    }
1966}
1967
1968#[wasm_bindgen]
1969extern {
1970    #[wasm_bindgen(js_name = "shader")]
1971    fn shader1269949606() ;
1972}
1973
1974#[doc(hidden)]
1975impl FnOnce<()> for ShaderInternalType {
1976    type Output = ();
1977    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
1978        shader1269949606.call(args)
1979    }
1980}
1981
1982#[doc(hidden)]
1983impl FnMut<()> for ShaderInternalType {
1984    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
1985        shader1269949606.call(args)
1986    }
1987}
1988
1989#[doc(hidden)]
1990impl Fn<()> for ShaderInternalType {
1991    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
1992        shader1269949606.call(args)
1993    }
1994}
1995#[doc=r##"<p>This function restores the default shaders in WEBGL mode. Code that runs
1996after resetShader() will not be affected by previously defined
1997shaders. Should be run after <a href="#/p5/shader">shader()</a>.</p>
1998"##]
1999
2000pub static resetShader: ResetShaderInternalType = ResetShaderInternalType;
2001#[doc(hidden)]
2002pub struct ResetShaderInternalType;
2003
2004
2005#[wasm_bindgen]
2006extern {
2007    #[wasm_bindgen(js_name = "resetShader")]
2008    fn resetShader1665737980() ;
2009}
2010
2011#[doc(hidden)]
2012impl FnOnce<()> for ResetShaderInternalType {
2013    type Output = ();
2014    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
2015        resetShader1665737980.call(args)
2016    }
2017}
2018
2019#[doc(hidden)]
2020impl FnMut<()> for ResetShaderInternalType {
2021    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
2022        resetShader1665737980.call(args)
2023    }
2024}
2025
2026#[doc(hidden)]
2027impl Fn<()> for ResetShaderInternalType {
2028    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
2029        resetShader1665737980.call(args)
2030    }
2031}
2032#[doc=r##"<p>Normal material for geometry is a material that is not affected by light.
2033It is not reflective and is a placeholder material often used for debugging.
2034Surfaces facing the X-axis, become red, those facing the Y-axis, become green and those facing the Z-axis, become blue.
2035You can view all possible materials in this
2036<a href="https://p5js.org/examples/3d-materials.html">example</a>.</p>
2037"##]
2038///<h2>Examples</h2>
2039///
2040
2041#[doc=r###"```rust
2042function setup() {
2043  createCanvas(100, 100, WEBGL);
2044}
2045
2046function draw() {
2047  background(200);
2048  normalMaterial();
2049  sphere(40);
2050}
2051```"###]
2052
2053pub static normalMaterial: NormalMaterialInternalType = NormalMaterialInternalType;
2054#[doc(hidden)]
2055pub struct NormalMaterialInternalType;
2056
2057
2058#[wasm_bindgen]
2059extern {
2060    #[wasm_bindgen(js_name = "normalMaterial")]
2061    fn normalMaterial1894598176() ;
2062}
2063
2064#[doc(hidden)]
2065impl FnOnce<()> for NormalMaterialInternalType {
2066    type Output = ();
2067    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
2068        normalMaterial1894598176.call(args)
2069    }
2070}
2071
2072#[doc(hidden)]
2073impl FnMut<()> for NormalMaterialInternalType {
2074    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
2075        normalMaterial1894598176.call(args)
2076    }
2077}
2078
2079#[doc(hidden)]
2080impl Fn<()> for NormalMaterialInternalType {
2081    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
2082        normalMaterial1894598176.call(args)
2083    }
2084}
2085#[doc=r##"<p>Texture for geometry.  You can view other possible materials in this
2086<a href="https://p5js.org/examples/3d-materials.html">example</a>.</p>
2087"##]
2088///<h2>Examples</h2>
2089///
2090
2091#[doc=r###"```rust
2092let img;
2093function preload() {
2094  img = loadImage('assets/laDefense.jpg');
2095}
2096
2097function setup() {
2098  createCanvas(100, 100, WEBGL);
2099}
2100
2101function draw() {
2102  background(0);
2103  rotateZ(frameCount * 0.01);
2104  rotateX(frameCount * 0.01);
2105  rotateY(frameCount * 0.01);
2106  //pass image as texture
2107  texture(img);
2108  box(200, 200, 200);
2109}
2110```"###]
2111#[doc=r###"```rust
2112let pg;
2113
2114function setup() {
2115  createCanvas(100, 100, WEBGL);
2116  pg = createGraphics(200, 200);
2117  pg.textSize(75);
2118}
2119
2120function draw() {
2121  background(0);
2122  pg.background(255);
2123  pg.text('hello!', 0, 100);
2124  //pass image as texture
2125  texture(pg);
2126  rotateX(0.5);
2127  noStroke();
2128  plane(50);
2129}
2130```"###]
2131#[doc=r###"```rust
2132let vid;
2133function preload() {
2134  vid = createVideo('assets/fingers.mov');
2135  vid.hide();
2136}
2137function setup() {
2138  createCanvas(100, 100, WEBGL);
2139}
2140
2141function draw() {
2142  background(0);
2143  //pass video frame as texture
2144  texture(vid);
2145  rect(-40, -40, 80, 80);
2146}
2147
2148function mousePressed() {
2149  vid.loop();
2150}
2151```"###]
2152/// <h2>Parameters</h2>
2153///
2154#[doc = r##"<code>tex</code> 2-dimensional graphics
2155                   to render as texture
2156
2157"##]
2158///
2159
2160pub static texture: TextureInternalType = TextureInternalType;
2161#[doc(hidden)]
2162pub struct TextureInternalType;
2163
2164
2165#[wasm_bindgen]
2166extern {
2167    #[wasm_bindgen(js_name = "texture")]
2168    fn texture687108883(_ : & Image, ) ;
2169}
2170
2171#[doc(hidden)]
2172impl FnOnce<(&'_ Image,)> for TextureInternalType {
2173    type Output = ();
2174    extern "rust-call" fn call_once(self, args: (&'_ Image,)) -> Self::Output {
2175        texture687108883.call(args)
2176    }
2177}
2178
2179#[doc(hidden)]
2180impl FnMut<(&'_ Image,)> for TextureInternalType {
2181    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,)) -> Self::Output {
2182        texture687108883.call(args)
2183    }
2184}
2185
2186#[doc(hidden)]
2187impl Fn<(&'_ Image,)> for TextureInternalType {
2188    extern "rust-call" fn call(&self, args: (&'_ Image,)) -> Self::Output {
2189        texture687108883.call(args)
2190    }
2191}
2192
2193#[wasm_bindgen]
2194extern {
2195    #[wasm_bindgen(js_name = "texture")]
2196    fn texture1622397976(_ : & MediaElement, ) ;
2197}
2198
2199#[doc(hidden)]
2200impl FnOnce<(&'_ MediaElement,)> for TextureInternalType {
2201    type Output = ();
2202    extern "rust-call" fn call_once(self, args: (&'_ MediaElement,)) -> Self::Output {
2203        texture1622397976.call(args)
2204    }
2205}
2206
2207#[doc(hidden)]
2208impl FnMut<(&'_ MediaElement,)> for TextureInternalType {
2209    extern "rust-call" fn call_mut(&mut self, args: (&'_ MediaElement,)) -> Self::Output {
2210        texture1622397976.call(args)
2211    }
2212}
2213
2214#[doc(hidden)]
2215impl Fn<(&'_ MediaElement,)> for TextureInternalType {
2216    extern "rust-call" fn call(&self, args: (&'_ MediaElement,)) -> Self::Output {
2217        texture1622397976.call(args)
2218    }
2219}
2220
2221#[wasm_bindgen]
2222extern {
2223    #[wasm_bindgen(js_name = "texture")]
2224    fn texture1640822620(_ : & Graphics, ) ;
2225}
2226
2227#[doc(hidden)]
2228impl FnOnce<(&'_ Graphics,)> for TextureInternalType {
2229    type Output = ();
2230    extern "rust-call" fn call_once(self, args: (&'_ Graphics,)) -> Self::Output {
2231        texture1640822620.call(args)
2232    }
2233}
2234
2235#[doc(hidden)]
2236impl FnMut<(&'_ Graphics,)> for TextureInternalType {
2237    extern "rust-call" fn call_mut(&mut self, args: (&'_ Graphics,)) -> Self::Output {
2238        texture1640822620.call(args)
2239    }
2240}
2241
2242#[doc(hidden)]
2243impl Fn<(&'_ Graphics,)> for TextureInternalType {
2244    extern "rust-call" fn call(&self, args: (&'_ Graphics,)) -> Self::Output {
2245        texture1640822620.call(args)
2246    }
2247}
2248#[doc=r##"<p>Sets the coordinate space for texture mapping. The default mode is IMAGE
2249which refers to the actual coordinates of the image.
2250NORMAL refers to a normalized space of values ranging from 0 to 1.
2251This function only works in WEBGL mode.</p>
2252<p>With IMAGE, if an image is 100 x 200 pixels, mapping the image onto the entire
2253size of a quad would require the points (0,0) (100, 0) (100,200) (0,200).
2254The same mapping in NORMAL is (0,0) (1,0) (1,1) (0,1).</p>
2255"##]
2256///<h2>Examples</h2>
2257///
2258
2259#[doc=r###"```rust
2260let img;
2261
2262function preload() {
2263  img = loadImage('assets/laDefense.jpg');
2264}
2265
2266function setup() {
2267  createCanvas(100, 100, WEBGL);
2268}
2269
2270function draw() {
2271  texture(img);
2272  textureMode(NORMAL);
2273  beginShape();
2274  vertex(-50, -50, 0, 0);
2275  vertex(50, -50, 1, 0);
2276  vertex(50, 50, 1, 1);
2277  vertex(-50, 50, 0, 1);
2278  endShape();
2279}
2280```"###]
2281/// <h2>Parameters</h2>
2282///
2283#[doc = r##"<code>mode</code> either IMAGE or NORMAL
2284
2285"##]
2286///
2287
2288pub static textureMode: TextureModeInternalType = TextureModeInternalType;
2289#[doc(hidden)]
2290pub struct TextureModeInternalType;
2291
2292
2293#[wasm_bindgen]
2294extern {
2295    #[wasm_bindgen(js_name = "textureMode")]
2296    fn textureMode3563658509(_ : TEXTURE_MODE, ) ;
2297}
2298
2299#[doc(hidden)]
2300impl FnOnce<(TEXTURE_MODE,)> for TextureModeInternalType {
2301    type Output = ();
2302    extern "rust-call" fn call_once(self, args: (TEXTURE_MODE,)) -> Self::Output {
2303        textureMode3563658509.call(args)
2304    }
2305}
2306
2307#[doc(hidden)]
2308impl FnMut<(TEXTURE_MODE,)> for TextureModeInternalType {
2309    extern "rust-call" fn call_mut(&mut self, args: (TEXTURE_MODE,)) -> Self::Output {
2310        textureMode3563658509.call(args)
2311    }
2312}
2313
2314#[doc(hidden)]
2315impl Fn<(TEXTURE_MODE,)> for TextureModeInternalType {
2316    extern "rust-call" fn call(&self, args: (TEXTURE_MODE,)) -> Self::Output {
2317        textureMode3563658509.call(args)
2318    }
2319}
2320#[doc=r##"<p>Sets the global texture wrapping mode. This controls how textures behave
2321when their uv's go outside of the 0 - 1 range. There are three options:
2322CLAMP, REPEAT, and MIRROR.</p>
2323<p>CLAMP causes the pixels at the edge of the texture to extend to the bounds
2324REPEAT causes the texture to tile repeatedly until reaching the bounds
2325MIRROR works similarly to REPEAT but it flips the texture with every new tile</p>
2326<p>REPEAT & MIRROR are only available if the texture
2327is a power of two size (128, 256, 512, 1024, etc.).</p>
2328<p>This method will affect all textures in your sketch until a subsequent
2329textureWrap call is made.</p>
2330<p>If only one argument is provided, it will be applied to both the
2331horizontal and vertical axes.</p>
2332"##]
2333///<h2>Examples</h2>
2334///
2335
2336#[doc=r###"```rust
2337let img;
2338function preload() {
2339  img = loadImage('assets/rockies128.jpg');
2340}
2341
2342function setup() {
2343  createCanvas(100, 100, WEBGL);
2344  textureWrap(MIRROR);
2345}
2346
2347function draw() {
2348  background(0);
2349
2350  let dX = mouseX;
2351  let dY = mouseY;
2352
2353  let u = lerp(1.0, 2.0, dX);
2354  let v = lerp(1.0, 2.0, dY);
2355
2356  scale(width / 2);
2357
2358  texture(img);
2359
2360  beginShape(TRIANGLES);
2361  vertex(-1, -1, 0, 0, 0);
2362  vertex(1, -1, 0, u, 0);
2363  vertex(1, 1, 0, u, v);
2364
2365  vertex(1, 1, 0, u, v);
2366  vertex(-1, 1, 0, 0, v);
2367  vertex(-1, -1, 0, 0, 0);
2368  endShape();
2369}
2370```"###]
2371/// <h2>Parameters</h2>
2372///
2373#[doc = r##"<code>wrapX</code> either CLAMP, REPEAT, or MIRROR
2374
2375"##]
2376///
2377///
2378#[doc = r##"<code>wrapY?</code> either CLAMP, REPEAT, or MIRROR
2379
2380"##]
2381///
2382
2383pub static textureWrap: TextureWrapInternalType = TextureWrapInternalType;
2384#[doc(hidden)]
2385pub struct TextureWrapInternalType;
2386
2387
2388#[wasm_bindgen]
2389extern {
2390    #[wasm_bindgen(js_name = "textureWrap")]
2391    fn textureWrap420882032(_ : WRAP_X, _ : WRAP_Y, ) ;
2392}
2393
2394#[doc(hidden)]
2395impl FnOnce<(WRAP_X,WRAP_Y,)> for TextureWrapInternalType {
2396    type Output = ();
2397    extern "rust-call" fn call_once(self, args: (WRAP_X,WRAP_Y,)) -> Self::Output {
2398        textureWrap420882032.call(args)
2399    }
2400}
2401
2402#[doc(hidden)]
2403impl FnMut<(WRAP_X,WRAP_Y,)> for TextureWrapInternalType {
2404    extern "rust-call" fn call_mut(&mut self, args: (WRAP_X,WRAP_Y,)) -> Self::Output {
2405        textureWrap420882032.call(args)
2406    }
2407}
2408
2409#[doc(hidden)]
2410impl Fn<(WRAP_X,WRAP_Y,)> for TextureWrapInternalType {
2411    extern "rust-call" fn call(&self, args: (WRAP_X,WRAP_Y,)) -> Self::Output {
2412        textureWrap420882032.call(args)
2413    }
2414}
2415
2416#[wasm_bindgen]
2417extern {
2418    #[wasm_bindgen(js_name = "textureWrap")]
2419    fn textureWrap2540824476(_ : WRAP_X, ) ;
2420}
2421
2422#[doc(hidden)]
2423impl FnOnce<(WRAP_X,)> for TextureWrapInternalType {
2424    type Output = ();
2425    extern "rust-call" fn call_once(self, args: (WRAP_X,)) -> Self::Output {
2426        textureWrap2540824476.call(args)
2427    }
2428}
2429
2430#[doc(hidden)]
2431impl FnMut<(WRAP_X,)> for TextureWrapInternalType {
2432    extern "rust-call" fn call_mut(&mut self, args: (WRAP_X,)) -> Self::Output {
2433        textureWrap2540824476.call(args)
2434    }
2435}
2436
2437#[doc(hidden)]
2438impl Fn<(WRAP_X,)> for TextureWrapInternalType {
2439    extern "rust-call" fn call(&self, args: (WRAP_X,)) -> Self::Output {
2440        textureWrap2540824476.call(args)
2441    }
2442}
2443#[doc=r##"<p>Ambient material for geometry with a given color. Ambient material defines the color the object reflects under any lighting.
2444For example, if the ambient material of an object is pure red, but the ambient lighting only contains green, the object will not reflect any light.
2445Here's an <a href="https://p5js.org/examples/3d-materials.html">example containing all possible materials</a>.</p>
2446"##]
2447///<h2>Examples</h2>
2448///
2449
2450#[doc=r###"```rust
2451function setup() {
2452  createCanvas(100, 100, WEBGL);
2453}
2454function draw() {
2455  background(0);
2456  noStroke();
2457  ambientLight(200);
2458  ambientMaterial(70, 130, 230);
2459  sphere(40);
2460}
2461```"###]
2462#[doc=r###"```rust
2463// ambientLight is both red and blue (magenta),
2464// so object only reflects it's red and blue components
2465function setup() {
2466  createCanvas(100, 100, WEBGL);
2467}
2468function draw() {
2469  background(70);
2470  ambientLight(100); // white light
2471  ambientMaterial(255, 0, 255); // pink material
2472  box(30);
2473}
2474```"###]
2475#[doc=r###"```rust
2476// ambientLight is green. Since object does not contain
2477// green, it does not reflect any light
2478function setup() {
2479  createCanvas(100, 100, WEBGL);
2480}
2481function draw() {
2482  background(70);
2483  ambientLight(0, 255, 0); // green light
2484  ambientMaterial(255, 0, 255); // pink material
2485  box(30);
2486}
2487```"###]
2488/// <h2>Overloads</h2>
2489///
2490#[doc = r##"<code>v1</code> gray value, red or hue value
2491                        (depending on the current color mode),
2492
2493"##]
2494///
2495///
2496#[doc = r##"<code>v2?</code> green or saturation value
2497
2498"##]
2499///
2500///
2501#[doc = r##"<code>v3?</code> blue or brightness value
2502
2503"##]
2504///
2505///
2506/// ---
2507///
2508///
2509#[doc = r##"<code>color</code> color, color Array, or CSS color string
2510
2511"##]
2512///
2513///
2514/// ---
2515///
2516
2517pub static ambientMaterial: AmbientMaterialInternalType = AmbientMaterialInternalType;
2518#[doc(hidden)]
2519pub struct AmbientMaterialInternalType;
2520
2521
2522#[wasm_bindgen]
2523extern {
2524    #[wasm_bindgen(js_name = "ambientMaterial")]
2525    fn ambientMaterial3514194483(_ : f64, _ : f64, _ : f64, ) ;
2526}
2527
2528#[doc(hidden)]
2529impl FnOnce<(f64,f64,f64,)> for AmbientMaterialInternalType {
2530    type Output = ();
2531    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
2532        ambientMaterial3514194483.call(args)
2533    }
2534}
2535
2536#[doc(hidden)]
2537impl FnMut<(f64,f64,f64,)> for AmbientMaterialInternalType {
2538    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
2539        ambientMaterial3514194483.call(args)
2540    }
2541}
2542
2543#[doc(hidden)]
2544impl Fn<(f64,f64,f64,)> for AmbientMaterialInternalType {
2545    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
2546        ambientMaterial3514194483.call(args)
2547    }
2548}
2549
2550#[wasm_bindgen]
2551extern {
2552    #[wasm_bindgen(js_name = "ambientMaterial")]
2553    fn ambientMaterial2780234946(_ : f64, _ : f64, ) ;
2554}
2555
2556#[doc(hidden)]
2557impl FnOnce<(f64,f64,)> for AmbientMaterialInternalType {
2558    type Output = ();
2559    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
2560        ambientMaterial2780234946.call(args)
2561    }
2562}
2563
2564#[doc(hidden)]
2565impl FnMut<(f64,f64,)> for AmbientMaterialInternalType {
2566    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
2567        ambientMaterial2780234946.call(args)
2568    }
2569}
2570
2571#[doc(hidden)]
2572impl Fn<(f64,f64,)> for AmbientMaterialInternalType {
2573    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
2574        ambientMaterial2780234946.call(args)
2575    }
2576}
2577
2578#[wasm_bindgen]
2579extern {
2580    #[wasm_bindgen(js_name = "ambientMaterial")]
2581    fn ambientMaterial228896057(_ : f64, ) ;
2582}
2583
2584#[doc(hidden)]
2585impl FnOnce<(f64,)> for AmbientMaterialInternalType {
2586    type Output = ();
2587    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
2588        ambientMaterial228896057.call(args)
2589    }
2590}
2591
2592#[doc(hidden)]
2593impl FnMut<(f64,)> for AmbientMaterialInternalType {
2594    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
2595        ambientMaterial228896057.call(args)
2596    }
2597}
2598
2599#[doc(hidden)]
2600impl Fn<(f64,)> for AmbientMaterialInternalType {
2601    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
2602        ambientMaterial228896057.call(args)
2603    }
2604}
2605
2606#[wasm_bindgen]
2607extern {
2608    #[wasm_bindgen(js_name = "ambientMaterial")]
2609    fn ambientMaterial2230790634(_ : & [f64], ) ;
2610}
2611
2612#[doc(hidden)]
2613impl FnOnce<(&'_ [f64],)> for AmbientMaterialInternalType {
2614    type Output = ();
2615    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
2616        ambientMaterial2230790634.call(args)
2617    }
2618}
2619
2620#[doc(hidden)]
2621impl FnMut<(&'_ [f64],)> for AmbientMaterialInternalType {
2622    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
2623        ambientMaterial2230790634.call(args)
2624    }
2625}
2626
2627#[doc(hidden)]
2628impl Fn<(&'_ [f64],)> for AmbientMaterialInternalType {
2629    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
2630        ambientMaterial2230790634.call(args)
2631    }
2632}
2633
2634#[wasm_bindgen]
2635extern {
2636    #[wasm_bindgen(js_name = "ambientMaterial")]
2637    fn ambientMaterial1074646642(_ : & str, ) ;
2638}
2639
2640#[doc(hidden)]
2641impl FnOnce<(&'_ str,)> for AmbientMaterialInternalType {
2642    type Output = ();
2643    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
2644        ambientMaterial1074646642.call(args)
2645    }
2646}
2647
2648#[doc(hidden)]
2649impl FnMut<(&'_ str,)> for AmbientMaterialInternalType {
2650    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
2651        ambientMaterial1074646642.call(args)
2652    }
2653}
2654
2655#[doc(hidden)]
2656impl Fn<(&'_ str,)> for AmbientMaterialInternalType {
2657    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
2658        ambientMaterial1074646642.call(args)
2659    }
2660}
2661
2662#[wasm_bindgen]
2663extern {
2664    #[wasm_bindgen(js_name = "ambientMaterial")]
2665    fn ambientMaterial4123762854(_ : & Color, ) ;
2666}
2667
2668#[doc(hidden)]
2669impl FnOnce<(&'_ Color,)> for AmbientMaterialInternalType {
2670    type Output = ();
2671    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
2672        ambientMaterial4123762854.call(args)
2673    }
2674}
2675
2676#[doc(hidden)]
2677impl FnMut<(&'_ Color,)> for AmbientMaterialInternalType {
2678    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
2679        ambientMaterial4123762854.call(args)
2680    }
2681}
2682
2683#[doc(hidden)]
2684impl Fn<(&'_ Color,)> for AmbientMaterialInternalType {
2685    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
2686        ambientMaterial4123762854.call(args)
2687    }
2688}
2689#[doc=r##"<p>Sets the emissive color of the material used for geometry drawn to
2690the screen. This is a misnomer in the sense that the material does not
2691actually emit light that effects surrounding polygons. Instead,
2692it gives the appearance that the object is glowing. An emissive material
2693will display at full strength even if there is no light for it to reflect.</p>
2694"##]
2695///<h2>Examples</h2>
2696///
2697
2698#[doc=r###"```rust
2699function setup() {
2700  createCanvas(100, 100, WEBGL);
2701}
2702function draw() {
2703  background(0);
2704  noStroke();
2705  ambientLight(0);
2706  emissiveMaterial(130, 230, 0);
2707  sphere(40);
2708}
2709```"###]
2710/// <h2>Overloads</h2>
2711///
2712#[doc = r##"<code>v1</code> gray value, red or hue value
2713                        (depending on the current color mode),
2714
2715"##]
2716///
2717///
2718#[doc = r##"<code>v2?</code> green or saturation value
2719
2720"##]
2721///
2722///
2723#[doc = r##"<code>v3?</code> blue or brightness value
2724
2725"##]
2726///
2727///
2728#[doc = r##"<code>a?</code> opacity
2729
2730"##]
2731///
2732///
2733/// ---
2734///
2735///
2736#[doc = r##"<code>color</code> color, color Array, or CSS color string
2737
2738"##]
2739///
2740///
2741/// ---
2742///
2743
2744pub static emissiveMaterial: EmissiveMaterialInternalType = EmissiveMaterialInternalType;
2745#[doc(hidden)]
2746pub struct EmissiveMaterialInternalType;
2747
2748
2749#[wasm_bindgen]
2750extern {
2751    #[wasm_bindgen(js_name = "emissiveMaterial")]
2752    fn emissiveMaterial1085112925(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
2753}
2754
2755#[doc(hidden)]
2756impl FnOnce<(f64,f64,f64,f64,)> for EmissiveMaterialInternalType {
2757    type Output = ();
2758    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
2759        emissiveMaterial1085112925.call(args)
2760    }
2761}
2762
2763#[doc(hidden)]
2764impl FnMut<(f64,f64,f64,f64,)> for EmissiveMaterialInternalType {
2765    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
2766        emissiveMaterial1085112925.call(args)
2767    }
2768}
2769
2770#[doc(hidden)]
2771impl Fn<(f64,f64,f64,f64,)> for EmissiveMaterialInternalType {
2772    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
2773        emissiveMaterial1085112925.call(args)
2774    }
2775}
2776
2777#[wasm_bindgen]
2778extern {
2779    #[wasm_bindgen(js_name = "emissiveMaterial")]
2780    fn emissiveMaterial3499544487(_ : f64, _ : f64, _ : f64, ) ;
2781}
2782
2783#[doc(hidden)]
2784impl FnOnce<(f64,f64,f64,)> for EmissiveMaterialInternalType {
2785    type Output = ();
2786    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
2787        emissiveMaterial3499544487.call(args)
2788    }
2789}
2790
2791#[doc(hidden)]
2792impl FnMut<(f64,f64,f64,)> for EmissiveMaterialInternalType {
2793    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
2794        emissiveMaterial3499544487.call(args)
2795    }
2796}
2797
2798#[doc(hidden)]
2799impl Fn<(f64,f64,f64,)> for EmissiveMaterialInternalType {
2800    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
2801        emissiveMaterial3499544487.call(args)
2802    }
2803}
2804
2805#[wasm_bindgen]
2806extern {
2807    #[wasm_bindgen(js_name = "emissiveMaterial")]
2808    fn emissiveMaterial1477521296(_ : f64, _ : f64, ) ;
2809}
2810
2811#[doc(hidden)]
2812impl FnOnce<(f64,f64,)> for EmissiveMaterialInternalType {
2813    type Output = ();
2814    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
2815        emissiveMaterial1477521296.call(args)
2816    }
2817}
2818
2819#[doc(hidden)]
2820impl FnMut<(f64,f64,)> for EmissiveMaterialInternalType {
2821    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
2822        emissiveMaterial1477521296.call(args)
2823    }
2824}
2825
2826#[doc(hidden)]
2827impl Fn<(f64,f64,)> for EmissiveMaterialInternalType {
2828    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
2829        emissiveMaterial1477521296.call(args)
2830    }
2831}
2832
2833#[wasm_bindgen]
2834extern {
2835    #[wasm_bindgen(js_name = "emissiveMaterial")]
2836    fn emissiveMaterial1935825941(_ : f64, ) ;
2837}
2838
2839#[doc(hidden)]
2840impl FnOnce<(f64,)> for EmissiveMaterialInternalType {
2841    type Output = ();
2842    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
2843        emissiveMaterial1935825941.call(args)
2844    }
2845}
2846
2847#[doc(hidden)]
2848impl FnMut<(f64,)> for EmissiveMaterialInternalType {
2849    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
2850        emissiveMaterial1935825941.call(args)
2851    }
2852}
2853
2854#[doc(hidden)]
2855impl Fn<(f64,)> for EmissiveMaterialInternalType {
2856    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
2857        emissiveMaterial1935825941.call(args)
2858    }
2859}
2860
2861#[wasm_bindgen]
2862extern {
2863    #[wasm_bindgen(js_name = "emissiveMaterial")]
2864    fn emissiveMaterial2191204501(_ : & [f64], ) ;
2865}
2866
2867#[doc(hidden)]
2868impl FnOnce<(&'_ [f64],)> for EmissiveMaterialInternalType {
2869    type Output = ();
2870    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
2871        emissiveMaterial2191204501.call(args)
2872    }
2873}
2874
2875#[doc(hidden)]
2876impl FnMut<(&'_ [f64],)> for EmissiveMaterialInternalType {
2877    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
2878        emissiveMaterial2191204501.call(args)
2879    }
2880}
2881
2882#[doc(hidden)]
2883impl Fn<(&'_ [f64],)> for EmissiveMaterialInternalType {
2884    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
2885        emissiveMaterial2191204501.call(args)
2886    }
2887}
2888
2889#[wasm_bindgen]
2890extern {
2891    #[wasm_bindgen(js_name = "emissiveMaterial")]
2892    fn emissiveMaterial3908629366(_ : & str, ) ;
2893}
2894
2895#[doc(hidden)]
2896impl FnOnce<(&'_ str,)> for EmissiveMaterialInternalType {
2897    type Output = ();
2898    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
2899        emissiveMaterial3908629366.call(args)
2900    }
2901}
2902
2903#[doc(hidden)]
2904impl FnMut<(&'_ str,)> for EmissiveMaterialInternalType {
2905    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
2906        emissiveMaterial3908629366.call(args)
2907    }
2908}
2909
2910#[doc(hidden)]
2911impl Fn<(&'_ str,)> for EmissiveMaterialInternalType {
2912    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
2913        emissiveMaterial3908629366.call(args)
2914    }
2915}
2916
2917#[wasm_bindgen]
2918extern {
2919    #[wasm_bindgen(js_name = "emissiveMaterial")]
2920    fn emissiveMaterial2969483702(_ : & Color, ) ;
2921}
2922
2923#[doc(hidden)]
2924impl FnOnce<(&'_ Color,)> for EmissiveMaterialInternalType {
2925    type Output = ();
2926    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
2927        emissiveMaterial2969483702.call(args)
2928    }
2929}
2930
2931#[doc(hidden)]
2932impl FnMut<(&'_ Color,)> for EmissiveMaterialInternalType {
2933    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
2934        emissiveMaterial2969483702.call(args)
2935    }
2936}
2937
2938#[doc(hidden)]
2939impl Fn<(&'_ Color,)> for EmissiveMaterialInternalType {
2940    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
2941        emissiveMaterial2969483702.call(args)
2942    }
2943}
2944#[doc=r##"<p>Specular material for geometry with a given color. Specular material is a shiny reflective material.
2945Like ambient material it also defines the color the object reflects under ambient lighting.
2946For example, if the specular material of an object is pure red, but the ambient lighting only contains green, the object will not reflect any light.
2947For all other types of light like point and directional light, a specular material will reflect the color of the light source to the viewer.
2948Here's an <a href="https://p5js.org/examples/3d-materials.html">example containing all possible materials</a>.</p>
2949"##]
2950/// <h2>Overloads</h2>
2951///
2952#[doc = r##"<code>gray</code> number specifying value between white and black.
2953
2954"##]
2955///
2956///
2957#[doc = r##"<code>alpha?</code> alpha value relative to current color range
2958                                (default is 0-255)
2959
2960"##]
2961///
2962///
2963/// ---
2964///
2965///
2966#[doc = r##"<code>v1</code> red or hue value relative to
2967                                the current color range
2968
2969"##]
2970///
2971///
2972#[doc = r##"<code>v2</code> green or saturation value
2973                                relative to the current color range
2974
2975"##]
2976///
2977///
2978#[doc = r##"<code>v3</code> blue or brightness value
2979                                relative to the current color range
2980
2981"##]
2982///
2983///
2984#[doc = r##"<code>alpha?</code> alpha value relative to current color range
2985                                (default is 0-255)
2986
2987"##]
2988///
2989///
2990/// ---
2991///
2992///
2993#[doc = r##"<code>color</code> color Array, or CSS color string
2994
2995"##]
2996///
2997///
2998/// ---
2999///
3000
3001pub static specularMaterial: SpecularMaterialInternalType = SpecularMaterialInternalType;
3002#[doc(hidden)]
3003pub struct SpecularMaterialInternalType;
3004
3005
3006#[wasm_bindgen]
3007extern {
3008    #[wasm_bindgen(js_name = "specularMaterial")]
3009    fn specularMaterial1579383874(_ : f64, _ : f64, ) ;
3010}
3011
3012#[doc(hidden)]
3013impl FnOnce<(f64,f64,)> for SpecularMaterialInternalType {
3014    type Output = ();
3015    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
3016        specularMaterial1579383874.call(args)
3017    }
3018}
3019
3020#[doc(hidden)]
3021impl FnMut<(f64,f64,)> for SpecularMaterialInternalType {
3022    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
3023        specularMaterial1579383874.call(args)
3024    }
3025}
3026
3027#[doc(hidden)]
3028impl Fn<(f64,f64,)> for SpecularMaterialInternalType {
3029    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
3030        specularMaterial1579383874.call(args)
3031    }
3032}
3033
3034#[wasm_bindgen]
3035extern {
3036    #[wasm_bindgen(js_name = "specularMaterial")]
3037    fn specularMaterial4239906708(_ : f64, ) ;
3038}
3039
3040#[doc(hidden)]
3041impl FnOnce<(f64,)> for SpecularMaterialInternalType {
3042    type Output = ();
3043    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
3044        specularMaterial4239906708.call(args)
3045    }
3046}
3047
3048#[doc(hidden)]
3049impl FnMut<(f64,)> for SpecularMaterialInternalType {
3050    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
3051        specularMaterial4239906708.call(args)
3052    }
3053}
3054
3055#[doc(hidden)]
3056impl Fn<(f64,)> for SpecularMaterialInternalType {
3057    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
3058        specularMaterial4239906708.call(args)
3059    }
3060}
3061
3062#[wasm_bindgen]
3063extern {
3064    #[wasm_bindgen(js_name = "specularMaterial")]
3065    fn specularMaterial187021224(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
3066}
3067
3068#[doc(hidden)]
3069impl FnOnce<(f64,f64,f64,f64,)> for SpecularMaterialInternalType {
3070    type Output = ();
3071    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
3072        specularMaterial187021224.call(args)
3073    }
3074}
3075
3076#[doc(hidden)]
3077impl FnMut<(f64,f64,f64,f64,)> for SpecularMaterialInternalType {
3078    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
3079        specularMaterial187021224.call(args)
3080    }
3081}
3082
3083#[doc(hidden)]
3084impl Fn<(f64,f64,f64,f64,)> for SpecularMaterialInternalType {
3085    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
3086        specularMaterial187021224.call(args)
3087    }
3088}
3089
3090#[wasm_bindgen]
3091extern {
3092    #[wasm_bindgen(js_name = "specularMaterial")]
3093    fn specularMaterial1529140662(_ : f64, _ : f64, _ : f64, ) ;
3094}
3095
3096#[doc(hidden)]
3097impl FnOnce<(f64,f64,f64,)> for SpecularMaterialInternalType {
3098    type Output = ();
3099    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
3100        specularMaterial1529140662.call(args)
3101    }
3102}
3103
3104#[doc(hidden)]
3105impl FnMut<(f64,f64,f64,)> for SpecularMaterialInternalType {
3106    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
3107        specularMaterial1529140662.call(args)
3108    }
3109}
3110
3111#[doc(hidden)]
3112impl Fn<(f64,f64,f64,)> for SpecularMaterialInternalType {
3113    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
3114        specularMaterial1529140662.call(args)
3115    }
3116}
3117
3118#[wasm_bindgen]
3119extern {
3120    #[wasm_bindgen(js_name = "specularMaterial")]
3121    fn specularMaterial935427703(_ : & [f64], ) ;
3122}
3123
3124#[doc(hidden)]
3125impl FnOnce<(&'_ [f64],)> for SpecularMaterialInternalType {
3126    type Output = ();
3127    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
3128        specularMaterial935427703.call(args)
3129    }
3130}
3131
3132#[doc(hidden)]
3133impl FnMut<(&'_ [f64],)> for SpecularMaterialInternalType {
3134    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
3135        specularMaterial935427703.call(args)
3136    }
3137}
3138
3139#[doc(hidden)]
3140impl Fn<(&'_ [f64],)> for SpecularMaterialInternalType {
3141    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
3142        specularMaterial935427703.call(args)
3143    }
3144}
3145
3146#[wasm_bindgen]
3147extern {
3148    #[wasm_bindgen(js_name = "specularMaterial")]
3149    fn specularMaterial4109762938(_ : & str, ) ;
3150}
3151
3152#[doc(hidden)]
3153impl FnOnce<(&'_ str,)> for SpecularMaterialInternalType {
3154    type Output = ();
3155    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
3156        specularMaterial4109762938.call(args)
3157    }
3158}
3159
3160#[doc(hidden)]
3161impl FnMut<(&'_ str,)> for SpecularMaterialInternalType {
3162    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
3163        specularMaterial4109762938.call(args)
3164    }
3165}
3166
3167#[doc(hidden)]
3168impl Fn<(&'_ str,)> for SpecularMaterialInternalType {
3169    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
3170        specularMaterial4109762938.call(args)
3171    }
3172}
3173
3174#[wasm_bindgen]
3175extern {
3176    #[wasm_bindgen(js_name = "specularMaterial")]
3177    fn specularMaterial3103974152(_ : & Color, ) ;
3178}
3179
3180#[doc(hidden)]
3181impl FnOnce<(&'_ Color,)> for SpecularMaterialInternalType {
3182    type Output = ();
3183    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
3184        specularMaterial3103974152.call(args)
3185    }
3186}
3187
3188#[doc(hidden)]
3189impl FnMut<(&'_ Color,)> for SpecularMaterialInternalType {
3190    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
3191        specularMaterial3103974152.call(args)
3192    }
3193}
3194
3195#[doc(hidden)]
3196impl Fn<(&'_ Color,)> for SpecularMaterialInternalType {
3197    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
3198        specularMaterial3103974152.call(args)
3199    }
3200}
3201#[doc=r##"<p>Sets the amount of gloss in the surface of shapes.
3202Used in combination with specularMaterial() in setting
3203the material properties of shapes. The default and minimum value is 1.</p>
3204"##]
3205///<h2>Examples</h2>
3206///
3207
3208#[doc=r###"```rust
3209function setup() {
3210  createCanvas(100, 100, WEBGL);
3211}
3212function draw() {
3213  background(0);
3214  noStroke();
3215  let locX = mouseX - width / 2;
3216  let locY = mouseY - height / 2;
3217  ambientLight(60, 60, 60);
3218  pointLight(255, 255, 255, locX, locY, 50);
3219  specularMaterial(250);
3220  translate(-25, 0, 0);
3221  shininess(1);
3222  sphere(20);
3223  translate(50, 0, 0);
3224  shininess(20);
3225  sphere(20);
3226}
3227```"###]
3228/// <h2>Parameters</h2>
3229///
3230#[doc = r##"<code>shine</code> Degree of Shininess.
3231                      Defaults to 1.
3232
3233"##]
3234///
3235
3236pub static shininess: ShininessInternalType = ShininessInternalType;
3237#[doc(hidden)]
3238pub struct ShininessInternalType;
3239
3240
3241#[wasm_bindgen]
3242extern {
3243    #[wasm_bindgen(js_name = "shininess")]
3244    fn shininess1181296280(_ : f64, ) ;
3245}
3246
3247#[doc(hidden)]
3248impl FnOnce<(f64,)> for ShininessInternalType {
3249    type Output = ();
3250    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
3251        shininess1181296280.call(args)
3252    }
3253}
3254
3255#[doc(hidden)]
3256impl FnMut<(f64,)> for ShininessInternalType {
3257    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
3258        shininess1181296280.call(args)
3259    }
3260}
3261
3262#[doc(hidden)]
3263impl Fn<(f64,)> for ShininessInternalType {
3264    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
3265        shininess1181296280.call(args)
3266    }
3267}
3268#[doc=r##"<p>p5.js communicates with the clock on your computer. The <a href="#/p5/day">day()</a> function
3269returns the current day as a value from 1 - 31.</p>
3270"##]
3271///<h2>Examples</h2>
3272///
3273
3274#[doc=r###"```rust
3275let d = day();
3276text('Current day: \n' + d, 5, 50);
3277```"###]
3278
3279pub static day: DayInternalType = DayInternalType;
3280#[doc(hidden)]
3281pub struct DayInternalType;
3282
3283
3284#[wasm_bindgen]
3285extern {
3286    #[wasm_bindgen(js_name = "day")]
3287    fn day1951778498() -> f64;
3288}
3289
3290#[doc(hidden)]
3291impl FnOnce<()> for DayInternalType {
3292    type Output = f64;
3293    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3294        day1951778498.call(args)
3295    }
3296}
3297
3298#[doc(hidden)]
3299impl FnMut<()> for DayInternalType {
3300    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3301        day1951778498.call(args)
3302    }
3303}
3304
3305#[doc(hidden)]
3306impl Fn<()> for DayInternalType {
3307    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3308        day1951778498.call(args)
3309    }
3310}
3311#[doc=r##"<p>p5.js communicates with the clock on your computer. The <a href="#/p5/hour">hour()</a> function
3312returns the current hour as a value from 0 - 23.</p>
3313"##]
3314///<h2>Examples</h2>
3315///
3316
3317#[doc=r###"```rust
3318let h = hour();
3319text('Current hour:\n' + h, 5, 50);
3320```"###]
3321
3322pub static hour: HourInternalType = HourInternalType;
3323#[doc(hidden)]
3324pub struct HourInternalType;
3325
3326
3327#[wasm_bindgen]
3328extern {
3329    #[wasm_bindgen(js_name = "hour")]
3330    fn hour1010888604() -> f64;
3331}
3332
3333#[doc(hidden)]
3334impl FnOnce<()> for HourInternalType {
3335    type Output = f64;
3336    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3337        hour1010888604.call(args)
3338    }
3339}
3340
3341#[doc(hidden)]
3342impl FnMut<()> for HourInternalType {
3343    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3344        hour1010888604.call(args)
3345    }
3346}
3347
3348#[doc(hidden)]
3349impl Fn<()> for HourInternalType {
3350    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3351        hour1010888604.call(args)
3352    }
3353}
3354#[doc=r##"<p>p5.js communicates with the clock on your computer. The <a href="#/p5/minute">minute()</a> function
3355returns the current minute as a value from 0 - 59.</p>
3356"##]
3357///<h2>Examples</h2>
3358///
3359
3360#[doc=r###"```rust
3361let m = minute();
3362text('Current minute: \n' + m, 5, 50);
3363```"###]
3364
3365pub static minute: MinuteInternalType = MinuteInternalType;
3366#[doc(hidden)]
3367pub struct MinuteInternalType;
3368
3369
3370#[wasm_bindgen]
3371extern {
3372    #[wasm_bindgen(js_name = "minute")]
3373    fn minute997032401() -> f64;
3374}
3375
3376#[doc(hidden)]
3377impl FnOnce<()> for MinuteInternalType {
3378    type Output = f64;
3379    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3380        minute997032401.call(args)
3381    }
3382}
3383
3384#[doc(hidden)]
3385impl FnMut<()> for MinuteInternalType {
3386    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3387        minute997032401.call(args)
3388    }
3389}
3390
3391#[doc(hidden)]
3392impl Fn<()> for MinuteInternalType {
3393    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3394        minute997032401.call(args)
3395    }
3396}
3397#[doc=r##"<p>Returns the number of milliseconds (thousandths of a second) since
3398starting the sketch (when <code>setup()</code> is called). This information is often
3399used for timing events and animation sequences.</p>
3400"##]
3401///<h2>Examples</h2>
3402///
3403
3404#[doc=r###"```rust
3405let millisecond = millis();
3406text('Milliseconds \nrunning: \n' + millisecond, 5, 40);
3407```"###]
3408
3409pub static millis: MillisInternalType = MillisInternalType;
3410#[doc(hidden)]
3411pub struct MillisInternalType;
3412
3413
3414#[wasm_bindgen]
3415extern {
3416    #[wasm_bindgen(js_name = "millis")]
3417    fn millis2773617350() -> f64;
3418}
3419
3420#[doc(hidden)]
3421impl FnOnce<()> for MillisInternalType {
3422    type Output = f64;
3423    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3424        millis2773617350.call(args)
3425    }
3426}
3427
3428#[doc(hidden)]
3429impl FnMut<()> for MillisInternalType {
3430    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3431        millis2773617350.call(args)
3432    }
3433}
3434
3435#[doc(hidden)]
3436impl Fn<()> for MillisInternalType {
3437    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3438        millis2773617350.call(args)
3439    }
3440}
3441#[doc=r##"<p>p5.js communicates with the clock on your computer. The <a href="#/p5/month">month()</a> function
3442returns the current month as a value from 1 - 12.</p>
3443"##]
3444///<h2>Examples</h2>
3445///
3446
3447#[doc=r###"```rust
3448let m = month();
3449text('Current month: \n' + m, 5, 50);
3450```"###]
3451
3452pub static month: MonthInternalType = MonthInternalType;
3453#[doc(hidden)]
3454pub struct MonthInternalType;
3455
3456
3457#[wasm_bindgen]
3458extern {
3459    #[wasm_bindgen(js_name = "month")]
3460    fn month1138786635() -> f64;
3461}
3462
3463#[doc(hidden)]
3464impl FnOnce<()> for MonthInternalType {
3465    type Output = f64;
3466    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3467        month1138786635.call(args)
3468    }
3469}
3470
3471#[doc(hidden)]
3472impl FnMut<()> for MonthInternalType {
3473    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3474        month1138786635.call(args)
3475    }
3476}
3477
3478#[doc(hidden)]
3479impl Fn<()> for MonthInternalType {
3480    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3481        month1138786635.call(args)
3482    }
3483}
3484#[doc=r##"<p>p5.js communicates with the clock on your computer. The <a href="#/p5/second">second()</a> function
3485returns the current second as a value from 0 - 59.</p>
3486"##]
3487///<h2>Examples</h2>
3488///
3489
3490#[doc=r###"```rust
3491let s = second();
3492text('Current second: \n' + s, 5, 50);
3493```"###]
3494
3495pub static second: SecondInternalType = SecondInternalType;
3496#[doc(hidden)]
3497pub struct SecondInternalType;
3498
3499
3500#[wasm_bindgen]
3501extern {
3502    #[wasm_bindgen(js_name = "second")]
3503    fn second3443935255() -> f64;
3504}
3505
3506#[doc(hidden)]
3507impl FnOnce<()> for SecondInternalType {
3508    type Output = f64;
3509    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3510        second3443935255.call(args)
3511    }
3512}
3513
3514#[doc(hidden)]
3515impl FnMut<()> for SecondInternalType {
3516    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3517        second3443935255.call(args)
3518    }
3519}
3520
3521#[doc(hidden)]
3522impl Fn<()> for SecondInternalType {
3523    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3524        second3443935255.call(args)
3525    }
3526}
3527#[doc=r##"<p>p5.js communicates with the clock on your computer. The <a href="#/p5/year">year()</a> function
3528returns the current year as an integer (2014, 2015, 2016, etc).</p>
3529"##]
3530///<h2>Examples</h2>
3531///
3532
3533#[doc=r###"```rust
3534let y = year();
3535text('Current year: \n' + y, 5, 50);
3536```"###]
3537
3538pub static year: YearInternalType = YearInternalType;
3539#[doc(hidden)]
3540pub struct YearInternalType;
3541
3542
3543#[wasm_bindgen]
3544extern {
3545    #[wasm_bindgen(js_name = "year")]
3546    fn year218303772() -> f64;
3547}
3548
3549#[doc(hidden)]
3550impl FnOnce<()> for YearInternalType {
3551    type Output = f64;
3552    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3553        year218303772.call(args)
3554    }
3555}
3556
3557#[doc(hidden)]
3558impl FnMut<()> for YearInternalType {
3559    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3560        year218303772.call(args)
3561    }
3562}
3563
3564#[doc(hidden)]
3565impl Fn<()> for YearInternalType {
3566    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3567        year218303772.call(args)
3568    }
3569}
3570#[doc=r##"<p>Sets the seed value for <a href="#/p5/random">random()</a>.</p>
3571<p>By default, <a href="#/p5/random">random()</a> produces different results each time the program
3572is run. Set the seed parameter to a constant to return the same
3573pseudo-random numbers each time the software is run.</p>
3574"##]
3575///<h2>Examples</h2>
3576///
3577
3578#[doc=r###"```rust
3579randomSeed(99);
3580for (let i = 0; i < 100; i++) {
3581  let r = random(0, 255);
3582  stroke(r);
3583  line(i, 0, i, 100);
3584}
3585```"###]
3586/// <h2>Parameters</h2>
3587///
3588#[doc = r##"<code>seed</code> the seed value
3589
3590"##]
3591///
3592
3593pub static randomSeed: RandomSeedInternalType = RandomSeedInternalType;
3594#[doc(hidden)]
3595pub struct RandomSeedInternalType;
3596
3597
3598#[wasm_bindgen]
3599extern {
3600    #[wasm_bindgen(js_name = "randomSeed")]
3601    fn randomSeed2297871959(_ : f64, ) ;
3602}
3603
3604#[doc(hidden)]
3605impl FnOnce<(f64,)> for RandomSeedInternalType {
3606    type Output = ();
3607    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
3608        randomSeed2297871959.call(args)
3609    }
3610}
3611
3612#[doc(hidden)]
3613impl FnMut<(f64,)> for RandomSeedInternalType {
3614    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
3615        randomSeed2297871959.call(args)
3616    }
3617}
3618
3619#[doc(hidden)]
3620impl Fn<(f64,)> for RandomSeedInternalType {
3621    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
3622        randomSeed2297871959.call(args)
3623    }
3624}
3625#[doc=r##"<p>Return a random floating-point number.</p>
3626<p>Takes either 0, 1 or 2 arguments.</p>
3627<p>If no argument is given, returns a random number from 0
3628up to (but not including) 1.</p>
3629<p>If one argument is given and it is a number, returns a random number from 0
3630up to (but not including) the number.</p>
3631<p>If one argument is given and it is an array, returns a random element from
3632that array.</p>
3633<p>If two arguments are given, returns a random number from the
3634first argument up to (but not including) the second argument.</p>
3635"##]
3636///<h2>Examples</h2>
3637///
3638
3639#[doc=r###"```rust
3640for (let i = 0; i < 100; i++) {
3641  let r = random(50);
3642  stroke(r * 5);
3643  line(50, i, 50 + r, i);
3644}
3645```"###]
3646#[doc=r###"```rust
3647for (let i = 0; i < 100; i++) {
3648  let r = random(-50, 50);
3649  line(50, i, 50 + r, i);
3650}
3651```"###]
3652#[doc=r###"```rust
3653// Get a random element from an array using the random(Array) syntax
3654let words = ['apple', 'bear', 'cat', 'dog'];
3655let word = random(words); // select random word
3656text(word, 10, 50); // draw the word
3657```"###]
3658/// <h2>Overloads</h2>
3659///
3660#[doc = r##"<code>min?</code> the lower bound (inclusive)
3661
3662"##]
3663///
3664///
3665#[doc = r##"<code>max?</code> the upper bound (exclusive)
3666
3667"##]
3668///
3669///
3670/// ---
3671///
3672///
3673#[doc = r##"<code>choices</code> the array to choose from
3674
3675"##]
3676///
3677///
3678/// ---
3679///
3680
3681pub static random: RandomInternalType = RandomInternalType;
3682#[doc(hidden)]
3683pub struct RandomInternalType;
3684
3685
3686#[wasm_bindgen]
3687extern {
3688    #[wasm_bindgen(js_name = "random")]
3689    fn random168459599(_ : f64, _ : f64, ) -> f64;
3690}
3691
3692#[doc(hidden)]
3693impl FnOnce<(f64,f64,)> for RandomInternalType {
3694    type Output = f64;
3695    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
3696        random168459599.call(args)
3697    }
3698}
3699
3700#[doc(hidden)]
3701impl FnMut<(f64,f64,)> for RandomInternalType {
3702    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
3703        random168459599.call(args)
3704    }
3705}
3706
3707#[doc(hidden)]
3708impl Fn<(f64,f64,)> for RandomInternalType {
3709    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
3710        random168459599.call(args)
3711    }
3712}
3713
3714#[wasm_bindgen]
3715extern {
3716    #[wasm_bindgen(js_name = "random")]
3717    fn random1030429853(_ : f64, ) -> f64;
3718}
3719
3720#[doc(hidden)]
3721impl FnOnce<(f64,)> for RandomInternalType {
3722    type Output = f64;
3723    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
3724        random1030429853.call(args)
3725    }
3726}
3727
3728#[doc(hidden)]
3729impl FnMut<(f64,)> for RandomInternalType {
3730    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
3731        random1030429853.call(args)
3732    }
3733}
3734
3735#[doc(hidden)]
3736impl Fn<(f64,)> for RandomInternalType {
3737    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
3738        random1030429853.call(args)
3739    }
3740}
3741
3742#[wasm_bindgen]
3743extern {
3744    #[wasm_bindgen(js_name = "random")]
3745    fn random184203624() -> f64;
3746}
3747
3748#[doc(hidden)]
3749impl FnOnce<()> for RandomInternalType {
3750    type Output = f64;
3751    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3752        random184203624.call(args)
3753    }
3754}
3755
3756#[doc(hidden)]
3757impl FnMut<()> for RandomInternalType {
3758    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3759        random184203624.call(args)
3760    }
3761}
3762
3763#[doc(hidden)]
3764impl Fn<()> for RandomInternalType {
3765    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3766        random184203624.call(args)
3767    }
3768}
3769
3770#[wasm_bindgen]
3771extern {
3772    #[wasm_bindgen(js_name = "random")]
3773    fn random1165443980(_ : js_sys::Array, ) -> JsValue;
3774}
3775
3776#[doc(hidden)]
3777impl FnOnce<(js_sys::Array,)> for RandomInternalType {
3778    type Output = JsValue;
3779    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
3780        random1165443980.call(args)
3781    }
3782}
3783
3784#[doc(hidden)]
3785impl FnMut<(js_sys::Array,)> for RandomInternalType {
3786    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
3787        random1165443980.call(args)
3788    }
3789}
3790
3791#[doc(hidden)]
3792impl Fn<(js_sys::Array,)> for RandomInternalType {
3793    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
3794        random1165443980.call(args)
3795    }
3796}
3797#[doc=r##"<p>Returns a random number fitting a Gaussian, or
3798 normal, distribution. There is theoretically no minimum or maximum
3799 value that <a href="#/p5/randomGaussian">randomGaussian()</a> might return. Rather, there is
3800 just a very low probability that values far from the mean will be
3801 returned; and a higher probability that numbers near the mean will
3802 be returned.
3803Takes either 0, 1 or 2 arguments.<br>
3804 If no args, returns a mean of 0 and standard deviation of 1.<br>
3805 If one arg, that arg is the mean (standard deviation is 1).<br>
3806 If two args, first is mean, second is standard deviation.</p>
3807"##]
3808///<h2>Examples</h2>
3809///
3810
3811#[doc=r###"```rust
3812 for (let y = 0; y < 100; y++) {
3813   let x = randomGaussian(50, 15);
3814   line(50, y, x, y);
3815 }
3816 ```"###]
3817#[doc=r###"```rust
3818 let distribution = new Array(360);
3819function setup() {
3820   createCanvas(100, 100);
3821   for (let i = 0; i < distribution.length; i++) {
3822     distribution[i] = floor(randomGaussian(0, 15));
3823   }
3824 }
3825function draw() {
3826   background(204);
3827  translate(width / 2, width / 2);
3828  for (let i = 0; i < distribution.length; i++) {
3829     rotate(TWO_PI / distribution.length);
3830     stroke(0);
3831     let dist = abs(distribution[i]);
3832     line(0, 0, dist, 0);
3833   }
3834 }
3835 ```"###]
3836/// <h2>Parameters</h2>
3837///
3838#[doc = r##"<code>mean?</code> the mean
3839
3840"##]
3841///
3842///
3843#[doc = r##"<code>sd?</code> the standard deviation
3844
3845"##]
3846///
3847
3848pub static randomGaussian: RandomGaussianInternalType = RandomGaussianInternalType;
3849#[doc(hidden)]
3850pub struct RandomGaussianInternalType;
3851
3852
3853#[wasm_bindgen]
3854extern {
3855    #[wasm_bindgen(js_name = "randomGaussian")]
3856    fn randomGaussian1267470261(_ : f64, _ : f64, ) -> f64;
3857}
3858
3859#[doc(hidden)]
3860impl FnOnce<(f64,f64,)> for RandomGaussianInternalType {
3861    type Output = f64;
3862    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
3863        randomGaussian1267470261.call(args)
3864    }
3865}
3866
3867#[doc(hidden)]
3868impl FnMut<(f64,f64,)> for RandomGaussianInternalType {
3869    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
3870        randomGaussian1267470261.call(args)
3871    }
3872}
3873
3874#[doc(hidden)]
3875impl Fn<(f64,f64,)> for RandomGaussianInternalType {
3876    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
3877        randomGaussian1267470261.call(args)
3878    }
3879}
3880
3881#[wasm_bindgen]
3882extern {
3883    #[wasm_bindgen(js_name = "randomGaussian")]
3884    fn randomGaussian3967716940(_ : f64, ) -> f64;
3885}
3886
3887#[doc(hidden)]
3888impl FnOnce<(f64,)> for RandomGaussianInternalType {
3889    type Output = f64;
3890    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
3891        randomGaussian3967716940.call(args)
3892    }
3893}
3894
3895#[doc(hidden)]
3896impl FnMut<(f64,)> for RandomGaussianInternalType {
3897    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
3898        randomGaussian3967716940.call(args)
3899    }
3900}
3901
3902#[doc(hidden)]
3903impl Fn<(f64,)> for RandomGaussianInternalType {
3904    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
3905        randomGaussian3967716940.call(args)
3906    }
3907}
3908
3909#[wasm_bindgen]
3910extern {
3911    #[wasm_bindgen(js_name = "randomGaussian")]
3912    fn randomGaussian633108403() -> f64;
3913}
3914
3915#[doc(hidden)]
3916impl FnOnce<()> for RandomGaussianInternalType {
3917    type Output = f64;
3918    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3919        randomGaussian633108403.call(args)
3920    }
3921}
3922
3923#[doc(hidden)]
3924impl FnMut<()> for RandomGaussianInternalType {
3925    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3926        randomGaussian633108403.call(args)
3927    }
3928}
3929
3930#[doc(hidden)]
3931impl Fn<()> for RandomGaussianInternalType {
3932    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3933        randomGaussian633108403.call(args)
3934    }
3935}
3936#[doc=r##"<p>Use the <a href="#/p5/beginContour">beginContour()</a> and
3937<a href="#/p5/endContour">endContour()</a> functions to create negative shapes
3938within shapes such as the center of the letter 'O'. <a href="#/p5/beginContour">beginContour()</a>
3939begins recording vertices for the shape and <a href="#/p5/endContour">endContour()</a> stops recording.
3940The vertices that define a negative shape must "wind" in the opposite direction
3941from the exterior shape. First draw vertices for the exterior clockwise order, then for internal shapes, draw vertices
3942shape in counter-clockwise.</p>
3943<p>These functions can only be used within a <a href="#/p5/beginShape">beginShape()</a>/<a href="#/p5/endShape">endShape()</a> pair and
3944transformations such as <a href="#/p5/translate">translate()</a>, <a href="#/p5/rotate">rotate()</a>, and <a href="#/p5/scale">scale()</a> do not work
3945within a <a href="#/p5/beginContour">beginContour()</a>/<a href="#/p5/endContour">endContour()</a> pair. It is also not possible to use
3946other shapes, such as <a href="#/p5/ellipse">ellipse()</a> or <a href="#/p5/rect">rect()</a> within.</p>
3947"##]
3948///<h2>Examples</h2>
3949///
3950
3951#[doc=r###"```rust
3952translate(50, 50);
3953stroke(255, 0, 0);
3954beginShape();
3955// Exterior part of shape, clockwise winding
3956vertex(-40, -40);
3957vertex(40, -40);
3958vertex(40, 40);
3959vertex(-40, 40);
3960// Interior part of shape, counter-clockwise winding
3961beginContour();
3962vertex(-20, -20);
3963vertex(-20, 20);
3964vertex(20, 20);
3965vertex(20, -20);
3966endContour();
3967endShape(CLOSE);
3968```"###]
3969
3970pub static beginContour: BeginContourInternalType = BeginContourInternalType;
3971#[doc(hidden)]
3972pub struct BeginContourInternalType;
3973
3974
3975#[wasm_bindgen]
3976extern {
3977    #[wasm_bindgen(js_name = "beginContour")]
3978    fn beginContour1050088261() ;
3979}
3980
3981#[doc(hidden)]
3982impl FnOnce<()> for BeginContourInternalType {
3983    type Output = ();
3984    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
3985        beginContour1050088261.call(args)
3986    }
3987}
3988
3989#[doc(hidden)]
3990impl FnMut<()> for BeginContourInternalType {
3991    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
3992        beginContour1050088261.call(args)
3993    }
3994}
3995
3996#[doc(hidden)]
3997impl Fn<()> for BeginContourInternalType {
3998    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
3999        beginContour1050088261.call(args)
4000    }
4001}
4002#[doc=r##"<p>Using the <a href="#/p5/beginShape">beginShape()</a> and <a href="#/p5/endShape">endShape()</a> functions allow creating more
4003complex forms. <a href="#/p5/beginShape">beginShape()</a> begins recording vertices for a shape and
4004<a href="#/p5/endShape">endShape()</a> stops recording. The value of the kind parameter tells it which
4005types of shapes to create from the provided vertices. With no mode
4006specified, the shape can be any irregular polygon.</p>
4007<p>The parameters available for <a href="#/p5/beginShape">beginShape()</a> are POINTS, LINES, TRIANGLES,
4008TRIANGLE_FAN, TRIANGLE_STRIP, QUADS, QUAD_STRIP, and TESS (WebGL only). After calling the
4009<a href="#/p5/beginShape">beginShape()</a> function, a series of <a href="#/p5/vertex">vertex()</a> commands must follow. To stop
4010drawing the shape, call <a href="#/p5/endShape">endShape()</a>. Each shape will be outlined with the
4011current stroke color and filled with the fill color.</p>
4012<p>Transformations such as <a href="#/p5/translate">translate()</a>, <a href="#/p5/rotate">rotate()</a>, and <a href="#/p5/scale">scale()</a> do not work
4013within <a href="#/p5/beginShape">beginShape()</a>. It is also not possible to use other shapes, such as
4014<a href="#/p5/ellipse">ellipse()</a> or <a href="#/p5/rect">rect()</a> within <a href="#/p5/beginShape">beginShape()</a>.</p>
4015"##]
4016///<h2>Examples</h2>
4017///
4018
4019#[doc=r###"```rust
4020beginShape();
4021vertex(30, 20);
4022vertex(85, 20);
4023vertex(85, 75);
4024vertex(30, 75);
4025endShape(CLOSE);
4026```"###]
4027#[doc=r###"```rust
4028beginShape(POINTS);
4029vertex(30, 20);
4030vertex(85, 20);
4031vertex(85, 75);
4032vertex(30, 75);
4033endShape();
4034```"###]
4035#[doc=r###"```rust
4036beginShape(LINES);
4037vertex(30, 20);
4038vertex(85, 20);
4039vertex(85, 75);
4040vertex(30, 75);
4041endShape();
4042```"###]
4043#[doc=r###"```rust
4044noFill();
4045beginShape();
4046vertex(30, 20);
4047vertex(85, 20);
4048vertex(85, 75);
4049vertex(30, 75);
4050endShape();
4051```"###]
4052#[doc=r###"```rust
4053noFill();
4054beginShape();
4055vertex(30, 20);
4056vertex(85, 20);
4057vertex(85, 75);
4058vertex(30, 75);
4059endShape(CLOSE);
4060```"###]
4061#[doc=r###"```rust
4062beginShape(TRIANGLES);
4063vertex(30, 75);
4064vertex(40, 20);
4065vertex(50, 75);
4066vertex(60, 20);
4067vertex(70, 75);
4068vertex(80, 20);
4069endShape();
4070```"###]
4071#[doc=r###"```rust
4072beginShape(TRIANGLE_STRIP);
4073vertex(30, 75);
4074vertex(40, 20);
4075vertex(50, 75);
4076vertex(60, 20);
4077vertex(70, 75);
4078vertex(80, 20);
4079vertex(90, 75);
4080endShape();
4081```"###]
4082#[doc=r###"```rust
4083beginShape(TRIANGLE_FAN);
4084vertex(57.5, 50);
4085vertex(57.5, 15);
4086vertex(92, 50);
4087vertex(57.5, 85);
4088vertex(22, 50);
4089vertex(57.5, 15);
4090endShape();
4091```"###]
4092#[doc=r###"```rust
4093beginShape(QUADS);
4094vertex(30, 20);
4095vertex(30, 75);
4096vertex(50, 75);
4097vertex(50, 20);
4098vertex(65, 20);
4099vertex(65, 75);
4100vertex(85, 75);
4101vertex(85, 20);
4102endShape();
4103```"###]
4104#[doc=r###"```rust
4105beginShape(QUAD_STRIP);
4106vertex(30, 20);
4107vertex(30, 75);
4108vertex(50, 20);
4109vertex(50, 75);
4110vertex(65, 20);
4111vertex(65, 75);
4112vertex(85, 20);
4113vertex(85, 75);
4114endShape();
4115```"###]
4116#[doc=r###"```rust
4117beginShape();
4118vertex(20, 20);
4119vertex(40, 20);
4120vertex(40, 40);
4121vertex(60, 40);
4122vertex(60, 60);
4123vertex(20, 60);
4124endShape(CLOSE);
4125```"###]
4126/// <h2>Parameters</h2>
4127///
4128#[doc = r##"<code>kind?</code> either POINTS, LINES, TRIANGLES, TRIANGLE_FAN
4129                               TRIANGLE_STRIP, QUADS, QUAD_STRIP or TESS
4130
4131"##]
4132///
4133
4134pub static beginShape: BeginShapeInternalType = BeginShapeInternalType;
4135#[doc(hidden)]
4136pub struct BeginShapeInternalType;
4137
4138
4139#[wasm_bindgen]
4140extern {
4141    #[wasm_bindgen(js_name = "beginShape")]
4142    fn beginShape2906350777(_ : BEGIN_KIND, ) ;
4143}
4144
4145#[doc(hidden)]
4146impl FnOnce<(BEGIN_KIND,)> for BeginShapeInternalType {
4147    type Output = ();
4148    extern "rust-call" fn call_once(self, args: (BEGIN_KIND,)) -> Self::Output {
4149        beginShape2906350777.call(args)
4150    }
4151}
4152
4153#[doc(hidden)]
4154impl FnMut<(BEGIN_KIND,)> for BeginShapeInternalType {
4155    extern "rust-call" fn call_mut(&mut self, args: (BEGIN_KIND,)) -> Self::Output {
4156        beginShape2906350777.call(args)
4157    }
4158}
4159
4160#[doc(hidden)]
4161impl Fn<(BEGIN_KIND,)> for BeginShapeInternalType {
4162    extern "rust-call" fn call(&self, args: (BEGIN_KIND,)) -> Self::Output {
4163        beginShape2906350777.call(args)
4164    }
4165}
4166
4167#[wasm_bindgen]
4168extern {
4169    #[wasm_bindgen(js_name = "beginShape")]
4170    fn beginShape1797231439() ;
4171}
4172
4173#[doc(hidden)]
4174impl FnOnce<()> for BeginShapeInternalType {
4175    type Output = ();
4176    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
4177        beginShape1797231439.call(args)
4178    }
4179}
4180
4181#[doc(hidden)]
4182impl FnMut<()> for BeginShapeInternalType {
4183    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
4184        beginShape1797231439.call(args)
4185    }
4186}
4187
4188#[doc(hidden)]
4189impl Fn<()> for BeginShapeInternalType {
4190    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
4191        beginShape1797231439.call(args)
4192    }
4193}
4194#[doc=r##"<p>Specifies vertex coordinates for Bezier curves. Each call to
4195bezierVertex() defines the position of two control points and
4196one anchor point of a Bezier curve, adding a new segment to a
4197line or shape. For WebGL mode bezierVertex() can be used in 2D
4198as well as 3D mode. 2D mode expects 6 parameters, while 3D mode
4199expects 9 parameters (including z coordinates).</p>
4200<p>The first time bezierVertex() is used within a <a href="#/p5/beginShape">beginShape()</a>
4201call, it must be prefaced with a call to <a href="#/p5/vertex">vertex()</a> to set the first anchor
4202point. This function must be used between <a href="#/p5/beginShape">beginShape()</a> and <a href="#/p5/endShape">endShape()</a>
4203and only when there is no MODE or POINTS parameter specified to
4204<a href="#/p5/beginShape">beginShape()</a>.</p>
4205"##]
4206///<h2>Examples</h2>
4207///
4208
4209#[doc=r###"```rust
4210noFill();
4211beginShape();
4212vertex(30, 20);
4213bezierVertex(80, 0, 80, 75, 30, 75);
4214endShape();
4215```"###]
4216#[doc=r###"```rust
4217beginShape();
4218vertex(30, 20);
4219bezierVertex(80, 0, 80, 75, 30, 75);
4220bezierVertex(50, 80, 60, 25, 30, 20);
4221endShape();
4222```"###]
4223#[doc=r###"```rust
4224function setup() {
4225  createCanvas(100, 100, WEBGL);
4226  setAttributes('antialias', true);
4227}
4228function draw() {
4229  orbitControl();
4230  background(50);
4231  strokeWeight(4);
4232  stroke(255);
4233  point(-25, 30);
4234  point(25, 30);
4235  point(25, -30);
4236  point(-25, -30);
4237
4238  strokeWeight(1);
4239  noFill();
4240
4241  beginShape();
4242  vertex(-25, 30);
4243  bezierVertex(25, 30, 25, -30, -25, -30);
4244  endShape();
4245
4246  beginShape();
4247  vertex(-25, 30, 20);
4248  bezierVertex(25, 30, 20, 25, -30, 20, -25, -30, 20);
4249  endShape();
4250}
4251```"###]
4252/// <h2>Overloads</h2>
4253///
4254#[doc = r##"<code>x2</code> x-coordinate for the first control point
4255
4256"##]
4257///
4258///
4259#[doc = r##"<code>y2</code> y-coordinate for the first control point
4260
4261"##]
4262///
4263///
4264#[doc = r##"<code>x3</code> x-coordinate for the second control point
4265
4266"##]
4267///
4268///
4269#[doc = r##"<code>y3</code> y-coordinate for the second control point
4270
4271"##]
4272///
4273///
4274#[doc = r##"<code>x4</code> x-coordinate for the anchor point
4275
4276"##]
4277///
4278///
4279#[doc = r##"<code>y4</code> y-coordinate for the anchor point
4280
4281"##]
4282///
4283///
4284/// ---
4285///
4286///
4287#[doc = r##"<code>x2</code> x-coordinate for the first control point
4288
4289"##]
4290///
4291///
4292#[doc = r##"<code>y2</code> y-coordinate for the first control point
4293
4294"##]
4295///
4296///
4297#[doc = r##"<code>z2</code> z-coordinate for the first control point (for WebGL mode)
4298
4299"##]
4300///
4301///
4302#[doc = r##"<code>x3</code> x-coordinate for the second control point
4303
4304"##]
4305///
4306///
4307#[doc = r##"<code>y3</code> y-coordinate for the second control point
4308
4309"##]
4310///
4311///
4312#[doc = r##"<code>z3</code> z-coordinate for the second control point (for WebGL mode)
4313
4314"##]
4315///
4316///
4317#[doc = r##"<code>x4</code> x-coordinate for the anchor point
4318
4319"##]
4320///
4321///
4322#[doc = r##"<code>y4</code> y-coordinate for the anchor point
4323
4324"##]
4325///
4326///
4327#[doc = r##"<code>z4</code> z-coordinate for the anchor point (for WebGL mode)
4328
4329"##]
4330///
4331///
4332/// ---
4333///
4334
4335pub static bezierVertex: BezierVertexInternalType = BezierVertexInternalType;
4336#[doc(hidden)]
4337pub struct BezierVertexInternalType;
4338
4339
4340#[wasm_bindgen]
4341extern {
4342    #[wasm_bindgen(js_name = "bezierVertex")]
4343    fn bezierVertex2775367343(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
4344}
4345
4346#[doc(hidden)]
4347impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for BezierVertexInternalType {
4348    type Output = ();
4349    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4350        bezierVertex2775367343.call(args)
4351    }
4352}
4353
4354#[doc(hidden)]
4355impl FnMut<(f64,f64,f64,f64,f64,f64,)> for BezierVertexInternalType {
4356    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4357        bezierVertex2775367343.call(args)
4358    }
4359}
4360
4361#[doc(hidden)]
4362impl Fn<(f64,f64,f64,f64,f64,f64,)> for BezierVertexInternalType {
4363    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4364        bezierVertex2775367343.call(args)
4365    }
4366}
4367
4368#[wasm_bindgen]
4369extern {
4370    #[wasm_bindgen(js_name = "bezierVertex")]
4371    fn bezierVertex575448272(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
4372}
4373
4374#[doc(hidden)]
4375impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierVertexInternalType {
4376    type Output = ();
4377    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4378        bezierVertex575448272.call(args)
4379    }
4380}
4381
4382#[doc(hidden)]
4383impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierVertexInternalType {
4384    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4385        bezierVertex575448272.call(args)
4386    }
4387}
4388
4389#[doc(hidden)]
4390impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierVertexInternalType {
4391    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4392        bezierVertex575448272.call(args)
4393    }
4394}
4395#[doc=r##"<p>Specifies vertex coordinates for curves. This function may only
4396be used between <a href="#/p5/beginShape">beginShape()</a> and <a href="#/p5/endShape">endShape()</a> and only when there
4397is no MODE parameter specified to <a href="#/p5/beginShape">beginShape()</a>.
4398For WebGL mode curveVertex() can be used in 2D as well as 3D mode.
43992D mode expects 2 parameters, while 3D mode expects 3 parameters.</p>
4400<p>The first and last points in a series of curveVertex() lines will be used to
4401guide the beginning and end of a the curve. A minimum of four
4402points is required to draw a tiny curve between the second and
4403third points. Adding a fifth point with curveVertex() will draw
4404the curve between the second, third, and fourth points. The
4405curveVertex() function is an implementation of Catmull-Rom
4406splines.</p>
4407"##]
4408///<h2>Examples</h2>
4409///
4410
4411#[doc=r###"```rust
4412strokeWeight(5);
4413point(84, 91);
4414point(68, 19);
4415point(21, 17);
4416point(32, 91);
4417strokeWeight(1);
4418
4419noFill();
4420beginShape();
4421curveVertex(84, 91);
4422curveVertex(84, 91);
4423curveVertex(68, 19);
4424curveVertex(21, 17);
4425curveVertex(32, 91);
4426curveVertex(32, 91);
4427endShape();
4428```"###]
4429/// <h2>Overloads</h2>
4430///
4431#[doc = r##"<code>x</code> x-coordinate of the vertex
4432
4433"##]
4434///
4435///
4436#[doc = r##"<code>y</code> y-coordinate of the vertex
4437
4438"##]
4439///
4440///
4441/// ---
4442///
4443///
4444#[doc = r##"<code>x</code> x-coordinate of the vertex
4445
4446"##]
4447///
4448///
4449#[doc = r##"<code>y</code> y-coordinate of the vertex
4450
4451"##]
4452///
4453///
4454#[doc = r##"<code>z?</code> z-coordinate of the vertex (for WebGL mode)
4455
4456"##]
4457///
4458///
4459/// ---
4460///
4461
4462pub static curveVertex: CurveVertexInternalType = CurveVertexInternalType;
4463#[doc(hidden)]
4464pub struct CurveVertexInternalType;
4465
4466
4467#[wasm_bindgen]
4468extern {
4469    #[wasm_bindgen(js_name = "curveVertex")]
4470    fn curveVertex246087092(_ : f64, _ : f64, ) ;
4471}
4472
4473#[doc(hidden)]
4474impl FnOnce<(f64,f64,)> for CurveVertexInternalType {
4475    type Output = ();
4476    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
4477        curveVertex246087092.call(args)
4478    }
4479}
4480
4481#[doc(hidden)]
4482impl FnMut<(f64,f64,)> for CurveVertexInternalType {
4483    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
4484        curveVertex246087092.call(args)
4485    }
4486}
4487
4488#[doc(hidden)]
4489impl Fn<(f64,f64,)> for CurveVertexInternalType {
4490    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
4491        curveVertex246087092.call(args)
4492    }
4493}
4494
4495#[wasm_bindgen]
4496extern {
4497    #[wasm_bindgen(js_name = "curveVertex")]
4498    fn curveVertex964829(_ : f64, _ : f64, _ : f64, ) ;
4499}
4500
4501#[doc(hidden)]
4502impl FnOnce<(f64,f64,f64,)> for CurveVertexInternalType {
4503    type Output = ();
4504    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
4505        curveVertex964829.call(args)
4506    }
4507}
4508
4509#[doc(hidden)]
4510impl FnMut<(f64,f64,f64,)> for CurveVertexInternalType {
4511    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
4512        curveVertex964829.call(args)
4513    }
4514}
4515
4516#[doc(hidden)]
4517impl Fn<(f64,f64,f64,)> for CurveVertexInternalType {
4518    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
4519        curveVertex964829.call(args)
4520    }
4521}
4522#[doc=r##"<p>Use the <a href="#/p5/beginContour">beginContour()</a> and <a href="#/p5/endContour">endContour()</a> functions to create negative
4523shapes within shapes such as the center of the letter 'O'. <a href="#/p5/beginContour">beginContour()</a>
4524begins recording vertices for the shape and <a href="#/p5/endContour">endContour()</a> stops recording.
4525The vertices that define a negative shape must "wind" in the opposite
4526direction from the exterior shape. First draw vertices for the exterior
4527clockwise order, then for internal shapes, draw vertices
4528shape in counter-clockwise.</p>
4529<p>These functions can only be used within a <a href="#/p5/beginShape">beginShape()</a>/<a href="#/p5/endShape">endShape()</a> pair and
4530transformations such as <a href="#/p5/translate">translate()</a>, <a href="#/p5/rotate">rotate()</a>, and <a href="#/p5/scale">scale()</a> do not work
4531within a <a href="#/p5/beginContour">beginContour()</a>/<a href="#/p5/endContour">endContour()</a> pair. It is also not possible to use
4532other shapes, such as <a href="#/p5/ellipse">ellipse()</a> or <a href="#/p5/rect">rect()</a> within.</p>
4533"##]
4534///<h2>Examples</h2>
4535///
4536
4537#[doc=r###"```rust
4538translate(50, 50);
4539stroke(255, 0, 0);
4540beginShape();
4541// Exterior part of shape, clockwise winding
4542vertex(-40, -40);
4543vertex(40, -40);
4544vertex(40, 40);
4545vertex(-40, 40);
4546// Interior part of shape, counter-clockwise winding
4547beginContour();
4548vertex(-20, -20);
4549vertex(-20, 20);
4550vertex(20, 20);
4551vertex(20, -20);
4552endContour();
4553endShape(CLOSE);
4554```"###]
4555
4556pub static endContour: EndContourInternalType = EndContourInternalType;
4557#[doc(hidden)]
4558pub struct EndContourInternalType;
4559
4560
4561#[wasm_bindgen]
4562extern {
4563    #[wasm_bindgen(js_name = "endContour")]
4564    fn endContour4039447446() ;
4565}
4566
4567#[doc(hidden)]
4568impl FnOnce<()> for EndContourInternalType {
4569    type Output = ();
4570    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
4571        endContour4039447446.call(args)
4572    }
4573}
4574
4575#[doc(hidden)]
4576impl FnMut<()> for EndContourInternalType {
4577    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
4578        endContour4039447446.call(args)
4579    }
4580}
4581
4582#[doc(hidden)]
4583impl Fn<()> for EndContourInternalType {
4584    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
4585        endContour4039447446.call(args)
4586    }
4587}
4588#[doc=r##"<p>The <a href="#/p5/endShape">endShape()</a> function is the companion to <a href="#/p5/beginShape">beginShape()</a> and may only be
4589called after <a href="#/p5/beginShape">beginShape()</a>. When <a href="#/p5/endshape">endShape()</a> is called, all of image data
4590defined since the previous call to <a href="#/p5/beginShape">beginShape()</a> is written into the image
4591buffer. The constant CLOSE as the value for the MODE parameter to close
4592the shape (to connect the beginning and the end).</p>
4593"##]
4594///<h2>Examples</h2>
4595///
4596
4597#[doc=r###"```rust
4598noFill();
4599
4600beginShape();
4601vertex(20, 20);
4602vertex(45, 20);
4603vertex(45, 80);
4604endShape(CLOSE);
4605
4606beginShape();
4607vertex(50, 20);
4608vertex(75, 20);
4609vertex(75, 80);
4610endShape();
4611```"###]
4612/// <h2>Parameters</h2>
4613///
4614#[doc = r##"<code>mode?</code> use CLOSE to close the shape
4615
4616"##]
4617///
4618
4619pub static endShape: EndShapeInternalType = EndShapeInternalType;
4620#[doc(hidden)]
4621pub struct EndShapeInternalType;
4622
4623
4624#[wasm_bindgen]
4625extern {
4626    #[wasm_bindgen(js_name = "endShape")]
4627    fn endShape1665854659(_ : END_MODE, ) ;
4628}
4629
4630#[doc(hidden)]
4631impl FnOnce<(END_MODE,)> for EndShapeInternalType {
4632    type Output = ();
4633    extern "rust-call" fn call_once(self, args: (END_MODE,)) -> Self::Output {
4634        endShape1665854659.call(args)
4635    }
4636}
4637
4638#[doc(hidden)]
4639impl FnMut<(END_MODE,)> for EndShapeInternalType {
4640    extern "rust-call" fn call_mut(&mut self, args: (END_MODE,)) -> Self::Output {
4641        endShape1665854659.call(args)
4642    }
4643}
4644
4645#[doc(hidden)]
4646impl Fn<(END_MODE,)> for EndShapeInternalType {
4647    extern "rust-call" fn call(&self, args: (END_MODE,)) -> Self::Output {
4648        endShape1665854659.call(args)
4649    }
4650}
4651
4652#[wasm_bindgen]
4653extern {
4654    #[wasm_bindgen(js_name = "endShape")]
4655    fn endShape2595577121() ;
4656}
4657
4658#[doc(hidden)]
4659impl FnOnce<()> for EndShapeInternalType {
4660    type Output = ();
4661    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
4662        endShape2595577121.call(args)
4663    }
4664}
4665
4666#[doc(hidden)]
4667impl FnMut<()> for EndShapeInternalType {
4668    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
4669        endShape2595577121.call(args)
4670    }
4671}
4672
4673#[doc(hidden)]
4674impl Fn<()> for EndShapeInternalType {
4675    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
4676        endShape2595577121.call(args)
4677    }
4678}
4679#[doc=r##"<p>Specifies vertex coordinates for quadratic Bezier curves. Each call to
4680quadraticVertex() defines the position of one control points and one
4681anchor point of a Bezier curve, adding a new segment to a line or shape.
4682The first time quadraticVertex() is used within a <a href="#/p5/beginShape">beginShape()</a> call, it
4683must be prefaced with a call to <a href="#/p5/vertex">vertex()</a> to set the first anchor point.
4684For WebGL mode quadraticVertex() can be used in 2D as well as 3D mode.
46852D mode expects 4 parameters, while 3D mode expects 6 parameters
4686(including z coordinates).</p>
4687<p>This function must be used between <a href="#/p5/beginShape">beginShape()</a> and <a href="#/p5/endShape">endShape()</a>
4688and only when there is no MODE or POINTS parameter specified to
4689<a href="#/p5/beginShape">beginShape()</a>.</p>
4690"##]
4691///<h2>Examples</h2>
4692///
4693
4694#[doc=r###"```rust
4695strokeWeight(5);
4696point(20, 20);
4697point(80, 20);
4698point(50, 50);
4699
4700noFill();
4701strokeWeight(1);
4702beginShape();
4703vertex(20, 20);
4704quadraticVertex(80, 20, 50, 50);
4705endShape();
4706```"###]
4707#[doc=r###"```rust
4708strokeWeight(5);
4709point(20, 20);
4710point(80, 20);
4711point(50, 50);
4712
4713point(20, 80);
4714point(80, 80);
4715point(80, 60);
4716
4717noFill();
4718strokeWeight(1);
4719beginShape();
4720vertex(20, 20);
4721quadraticVertex(80, 20, 50, 50);
4722quadraticVertex(20, 80, 80, 80);
4723vertex(80, 60);
4724endShape();
4725```"###]
4726/// <h2>Overloads</h2>
4727///
4728#[doc = r##"<code>cx</code> x-coordinate for the control point
4729
4730"##]
4731///
4732///
4733#[doc = r##"<code>cy</code> y-coordinate for the control point
4734
4735"##]
4736///
4737///
4738#[doc = r##"<code>x3</code> x-coordinate for the anchor point
4739
4740"##]
4741///
4742///
4743#[doc = r##"<code>y3</code> y-coordinate for the anchor point
4744
4745"##]
4746///
4747///
4748/// ---
4749///
4750///
4751#[doc = r##"<code>cx</code> x-coordinate for the control point
4752
4753"##]
4754///
4755///
4756#[doc = r##"<code>cy</code> y-coordinate for the control point
4757
4758"##]
4759///
4760///
4761#[doc = r##"<code>cz</code> z-coordinate for the control point (for WebGL mode)
4762
4763"##]
4764///
4765///
4766#[doc = r##"<code>x3</code> x-coordinate for the anchor point
4767
4768"##]
4769///
4770///
4771#[doc = r##"<code>y3</code> y-coordinate for the anchor point
4772
4773"##]
4774///
4775///
4776#[doc = r##"<code>z3</code> z-coordinate for the anchor point (for WebGL mode)
4777
4778"##]
4779///
4780///
4781/// ---
4782///
4783
4784pub static quadraticVertex: QuadraticVertexInternalType = QuadraticVertexInternalType;
4785#[doc(hidden)]
4786pub struct QuadraticVertexInternalType;
4787
4788
4789#[wasm_bindgen]
4790extern {
4791    #[wasm_bindgen(js_name = "quadraticVertex")]
4792    fn quadraticVertex1738647905(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
4793}
4794
4795#[doc(hidden)]
4796impl FnOnce<(f64,f64,f64,f64,)> for QuadraticVertexInternalType {
4797    type Output = ();
4798    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
4799        quadraticVertex1738647905.call(args)
4800    }
4801}
4802
4803#[doc(hidden)]
4804impl FnMut<(f64,f64,f64,f64,)> for QuadraticVertexInternalType {
4805    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
4806        quadraticVertex1738647905.call(args)
4807    }
4808}
4809
4810#[doc(hidden)]
4811impl Fn<(f64,f64,f64,f64,)> for QuadraticVertexInternalType {
4812    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
4813        quadraticVertex1738647905.call(args)
4814    }
4815}
4816
4817#[wasm_bindgen]
4818extern {
4819    #[wasm_bindgen(js_name = "quadraticVertex")]
4820    fn quadraticVertex3188658213(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
4821}
4822
4823#[doc(hidden)]
4824impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for QuadraticVertexInternalType {
4825    type Output = ();
4826    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4827        quadraticVertex3188658213.call(args)
4828    }
4829}
4830
4831#[doc(hidden)]
4832impl FnMut<(f64,f64,f64,f64,f64,f64,)> for QuadraticVertexInternalType {
4833    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4834        quadraticVertex3188658213.call(args)
4835    }
4836}
4837
4838#[doc(hidden)]
4839impl Fn<(f64,f64,f64,f64,f64,f64,)> for QuadraticVertexInternalType {
4840    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
4841        quadraticVertex3188658213.call(args)
4842    }
4843}
4844#[doc=r##"<p>All shapes are constructed by connecting a series of vertices. <a href="#/p5/vertex">vertex()</a>
4845is used to specify the vertex coordinates for points, lines, triangles,
4846quads, and polygons. It is used exclusively within the <a href="#/p5/beginShape">beginShape()</a> and
4847<a href="#/p5/endShape">endShape()</a> functions.</p>
4848"##]
4849///<h2>Examples</h2>
4850///
4851
4852#[doc=r###"```rust
4853strokeWeight(3);
4854beginShape(POINTS);
4855vertex(30, 20);
4856vertex(85, 20);
4857vertex(85, 75);
4858vertex(30, 75);
4859endShape();
4860```"###]
4861#[doc=r###"```rust
4862createCanvas(100, 100, WEBGL);
4863background(240, 240, 240);
4864fill(237, 34, 93);
4865noStroke();
4866beginShape();
4867vertex(0, 35);
4868vertex(35, 0);
4869vertex(0, -35);
4870vertex(-35, 0);
4871endShape();
4872```"###]
4873#[doc=r###"```rust
4874createCanvas(100, 100, WEBGL);
4875background(240, 240, 240);
4876fill(237, 34, 93);
4877noStroke();
4878beginShape();
4879vertex(-10, 10);
4880vertex(0, 35);
4881vertex(10, 10);
4882vertex(35, 0);
4883vertex(10, -8);
4884vertex(0, -35);
4885vertex(-10, -8);
4886vertex(-35, 0);
4887endShape();
4888```"###]
4889#[doc=r###"```rust
4890strokeWeight(3);
4891stroke(237, 34, 93);
4892beginShape(LINES);
4893vertex(10, 35);
4894vertex(90, 35);
4895vertex(10, 65);
4896vertex(90, 65);
4897vertex(35, 10);
4898vertex(35, 90);
4899vertex(65, 10);
4900vertex(65, 90);
4901endShape();
4902```"###]
4903#[doc=r###"```rust
4904// Click to change the number of sides.
4905// In WebGL mode, custom shapes will only
4906// display hollow fill sections when
4907// all calls to vertex() use the same z-value.
4908
4909let sides = 3;
4910let angle, px, py;
4911
4912function setup() {
4913  createCanvas(100, 100, WEBGL);
4914  setAttributes('antialias', true);
4915  fill(237, 34, 93);
4916  strokeWeight(3);
4917}
4918
4919function draw() {
4920  background(200);
4921  rotateX(frameCount * 0.01);
4922  rotateZ(frameCount * 0.01);
4923  ngon(sides, 0, 0, 80);
4924}
4925
4926function mouseClicked() {
4927  if (sides > 6) {
4928    sides = 3;
4929  } else {
4930    sides++;
4931  }
4932}
4933
4934function ngon(n, x, y, d) {
4935  beginShape(TESS);
4936  for (let i = 0; i < n + 1; i++) {
4937    angle = TWO_PI / n * i;
4938    px = x + sin(angle) * d / 2;
4939    py = y - cos(angle) * d / 2;
4940    vertex(px, py, 0);
4941  }
4942  for (let i = 0; i < n + 1; i++) {
4943    angle = TWO_PI / n * i;
4944    px = x + sin(angle) * d / 4;
4945    py = y - cos(angle) * d / 4;
4946    vertex(px, py, 0);
4947  }
4948  endShape();
4949}
4950```"###]
4951/// <h2>Overloads</h2>
4952///
4953#[doc = r##"<code>x</code> x-coordinate of the vertex
4954
4955"##]
4956///
4957///
4958#[doc = r##"<code>y</code> y-coordinate of the vertex
4959
4960"##]
4961///
4962///
4963/// ---
4964///
4965///
4966#[doc = r##"<code>x</code> x-coordinate of the vertex
4967
4968"##]
4969///
4970///
4971#[doc = r##"<code>y</code> y-coordinate of the vertex
4972
4973"##]
4974///
4975///
4976#[doc = r##"<code>z</code> z-coordinate of the vertex
4977
4978"##]
4979///
4980///
4981#[doc = r##"<code>u?</code> the vertex's texture u-coordinate
4982
4983"##]
4984///
4985///
4986#[doc = r##"<code>v?</code> the vertex's texture v-coordinate
4987
4988"##]
4989///
4990///
4991/// ---
4992///
4993
4994pub static vertex: VertexInternalType = VertexInternalType;
4995#[doc(hidden)]
4996pub struct VertexInternalType;
4997
4998
4999#[wasm_bindgen]
5000extern {
5001    #[wasm_bindgen(js_name = "vertex")]
5002    fn vertex3459756243(_ : f64, _ : f64, ) ;
5003}
5004
5005#[doc(hidden)]
5006impl FnOnce<(f64,f64,)> for VertexInternalType {
5007    type Output = ();
5008    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
5009        vertex3459756243.call(args)
5010    }
5011}
5012
5013#[doc(hidden)]
5014impl FnMut<(f64,f64,)> for VertexInternalType {
5015    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
5016        vertex3459756243.call(args)
5017    }
5018}
5019
5020#[doc(hidden)]
5021impl Fn<(f64,f64,)> for VertexInternalType {
5022    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
5023        vertex3459756243.call(args)
5024    }
5025}
5026
5027#[wasm_bindgen]
5028extern {
5029    #[wasm_bindgen(js_name = "vertex")]
5030    fn vertex876617044(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
5031}
5032
5033#[doc(hidden)]
5034impl FnOnce<(f64,f64,f64,f64,f64,)> for VertexInternalType {
5035    type Output = ();
5036    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
5037        vertex876617044.call(args)
5038    }
5039}
5040
5041#[doc(hidden)]
5042impl FnMut<(f64,f64,f64,f64,f64,)> for VertexInternalType {
5043    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
5044        vertex876617044.call(args)
5045    }
5046}
5047
5048#[doc(hidden)]
5049impl Fn<(f64,f64,f64,f64,f64,)> for VertexInternalType {
5050    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
5051        vertex876617044.call(args)
5052    }
5053}
5054
5055#[wasm_bindgen]
5056extern {
5057    #[wasm_bindgen(js_name = "vertex")]
5058    fn vertex3675753857(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
5059}
5060
5061#[doc(hidden)]
5062impl FnOnce<(f64,f64,f64,f64,)> for VertexInternalType {
5063    type Output = ();
5064    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
5065        vertex3675753857.call(args)
5066    }
5067}
5068
5069#[doc(hidden)]
5070impl FnMut<(f64,f64,f64,f64,)> for VertexInternalType {
5071    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
5072        vertex3675753857.call(args)
5073    }
5074}
5075
5076#[doc(hidden)]
5077impl Fn<(f64,f64,f64,f64,)> for VertexInternalType {
5078    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
5079        vertex3675753857.call(args)
5080    }
5081}
5082
5083#[wasm_bindgen]
5084extern {
5085    #[wasm_bindgen(js_name = "vertex")]
5086    fn vertex3361236501(_ : f64, _ : f64, _ : f64, ) ;
5087}
5088
5089#[doc(hidden)]
5090impl FnOnce<(f64,f64,f64,)> for VertexInternalType {
5091    type Output = ();
5092    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
5093        vertex3361236501.call(args)
5094    }
5095}
5096
5097#[doc(hidden)]
5098impl FnMut<(f64,f64,f64,)> for VertexInternalType {
5099    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
5100        vertex3361236501.call(args)
5101    }
5102}
5103
5104#[doc(hidden)]
5105impl Fn<(f64,f64,f64,)> for VertexInternalType {
5106    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
5107        vertex3361236501.call(args)
5108    }
5109}
5110#[doc=r##"<p>The <a href="#/p5/print">print()</a> function writes to the console area of
5111your browser. This function is often helpful for looking at the data a program
5112is producing. This function creates a new line of text for each call to
5113the function. Individual elements can be separated with quotes ("") and joined
5114with the addition operator (+).</p>
5115<p>Note that calling print() without any arguments invokes the window.print()
5116function which opens the browser's print dialog. To print a blank line
5117to console you can write print('\n').</p>
5118"##]
5119///<h2>Examples</h2>
5120///
5121
5122#[doc=r###"```rust
5123let x = 10;
5124print('The value of x is ' + x);
5125// prints "The value of x is 10"
5126```"###]
5127/// <h2>Parameters</h2>
5128///
5129#[doc = r##"<code>contents</code> any combination of Number, String, Object, Boolean,
5130                      Array to print
5131
5132"##]
5133///
5134
5135pub static print: PrintInternalType = PrintInternalType;
5136#[doc(hidden)]
5137pub struct PrintInternalType;
5138
5139
5140#[wasm_bindgen]
5141extern {
5142    #[wasm_bindgen(js_name = "print")]
5143    fn print1524776357(_ : JsValue, ) ;
5144}
5145
5146#[doc(hidden)]
5147impl FnOnce<(JsValue,)> for PrintInternalType {
5148    type Output = ();
5149    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
5150        print1524776357.call(args)
5151    }
5152}
5153
5154#[doc(hidden)]
5155impl FnMut<(JsValue,)> for PrintInternalType {
5156    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
5157        print1524776357.call(args)
5158    }
5159}
5160
5161#[doc(hidden)]
5162impl Fn<(JsValue,)> for PrintInternalType {
5163    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
5164        print1524776357.call(args)
5165    }
5166}
5167#[doc=r##"<p>Sets the cursor to a predefined symbol or an image, or makes it visible
5168if already hidden. If you are trying to set an image as the cursor, the
5169recommended size is 16x16 or 32x32 pixels. The values for parameters x and y
5170must be less than the dimensions of the image.</p>
5171"##]
5172///<h2>Examples</h2>
5173///
5174
5175#[doc=r###"```rust
5176// Move the mouse across the quadrants
5177// to see the cursor change
5178function draw() {
5179  line(width / 2, 0, width / 2, height);
5180  line(0, height / 2, width, height / 2);
5181  if (mouseX < 50 && mouseY < 50) {
5182    cursor(CROSS);
5183  } else if (mouseX > 50 && mouseY < 50) {
5184    cursor('progress');
5185  } else if (mouseX > 50 && mouseY > 50) {
5186    cursor('https://avatars0.githubusercontent.com/u/1617169?s=16');
5187  } else {
5188    cursor('grab');
5189  }
5190}
5191```"###]
5192/// <h2>Parameters</h2>
5193///
5194#[doc = r##"<code>type</code> Built-In: either ARROW, CROSS, HAND, MOVE, TEXT and WAIT
5195                              Native CSS properties: 'grab', 'progress', 'cell' etc.
5196                              External: path for cursor's images
5197                              (Allowed File extensions: .cur, .gif, .jpg, .jpeg, .png)
5198                              For more information on Native CSS cursors and url visit:
5199                              https://developer.mozilla.org/en-US/docs/Web/CSS/cursor
5200
5201"##]
5202///
5203///
5204#[doc = r##"<code>x?</code> the horizontal active spot of the cursor (must be less than 32)
5205
5206"##]
5207///
5208///
5209#[doc = r##"<code>y?</code> the vertical active spot of the cursor (must be less than 32)
5210
5211"##]
5212///
5213
5214pub static cursor: CursorInternalType = CursorInternalType;
5215#[doc(hidden)]
5216pub struct CursorInternalType;
5217
5218
5219#[wasm_bindgen]
5220extern {
5221    #[wasm_bindgen(js_name = "cursor")]
5222    fn cursor2480658222(_ : & str, _ : f64, _ : f64, ) ;
5223}
5224
5225#[doc(hidden)]
5226impl FnOnce<(&'_ str,f64,f64,)> for CursorInternalType {
5227    type Output = ();
5228    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,)) -> Self::Output {
5229        cursor2480658222.call(args)
5230    }
5231}
5232
5233#[doc(hidden)]
5234impl FnMut<(&'_ str,f64,f64,)> for CursorInternalType {
5235    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,)) -> Self::Output {
5236        cursor2480658222.call(args)
5237    }
5238}
5239
5240#[doc(hidden)]
5241impl Fn<(&'_ str,f64,f64,)> for CursorInternalType {
5242    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,)) -> Self::Output {
5243        cursor2480658222.call(args)
5244    }
5245}
5246
5247#[wasm_bindgen]
5248extern {
5249    #[wasm_bindgen(js_name = "cursor")]
5250    fn cursor305065760(_ : & str, _ : f64, ) ;
5251}
5252
5253#[doc(hidden)]
5254impl FnOnce<(&'_ str,f64,)> for CursorInternalType {
5255    type Output = ();
5256    extern "rust-call" fn call_once(self, args: (&'_ str,f64,)) -> Self::Output {
5257        cursor305065760.call(args)
5258    }
5259}
5260
5261#[doc(hidden)]
5262impl FnMut<(&'_ str,f64,)> for CursorInternalType {
5263    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,)) -> Self::Output {
5264        cursor305065760.call(args)
5265    }
5266}
5267
5268#[doc(hidden)]
5269impl Fn<(&'_ str,f64,)> for CursorInternalType {
5270    extern "rust-call" fn call(&self, args: (&'_ str,f64,)) -> Self::Output {
5271        cursor305065760.call(args)
5272    }
5273}
5274
5275#[wasm_bindgen]
5276extern {
5277    #[wasm_bindgen(js_name = "cursor")]
5278    fn cursor3437256831(_ : & str, ) ;
5279}
5280
5281#[doc(hidden)]
5282impl FnOnce<(&'_ str,)> for CursorInternalType {
5283    type Output = ();
5284    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
5285        cursor3437256831.call(args)
5286    }
5287}
5288
5289#[doc(hidden)]
5290impl FnMut<(&'_ str,)> for CursorInternalType {
5291    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
5292        cursor3437256831.call(args)
5293    }
5294}
5295
5296#[doc(hidden)]
5297impl Fn<(&'_ str,)> for CursorInternalType {
5298    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
5299        cursor3437256831.call(args)
5300    }
5301}
5302
5303#[wasm_bindgen]
5304extern {
5305    #[wasm_bindgen(js_name = "cursor")]
5306    fn cursor3785854181(_ : CURSOR_TYPE, _ : f64, _ : f64, ) ;
5307}
5308
5309#[doc(hidden)]
5310impl FnOnce<(CURSOR_TYPE,f64,f64,)> for CursorInternalType {
5311    type Output = ();
5312    extern "rust-call" fn call_once(self, args: (CURSOR_TYPE,f64,f64,)) -> Self::Output {
5313        cursor3785854181.call(args)
5314    }
5315}
5316
5317#[doc(hidden)]
5318impl FnMut<(CURSOR_TYPE,f64,f64,)> for CursorInternalType {
5319    extern "rust-call" fn call_mut(&mut self, args: (CURSOR_TYPE,f64,f64,)) -> Self::Output {
5320        cursor3785854181.call(args)
5321    }
5322}
5323
5324#[doc(hidden)]
5325impl Fn<(CURSOR_TYPE,f64,f64,)> for CursorInternalType {
5326    extern "rust-call" fn call(&self, args: (CURSOR_TYPE,f64,f64,)) -> Self::Output {
5327        cursor3785854181.call(args)
5328    }
5329}
5330
5331#[wasm_bindgen]
5332extern {
5333    #[wasm_bindgen(js_name = "cursor")]
5334    fn cursor1525358950(_ : CURSOR_TYPE, _ : f64, ) ;
5335}
5336
5337#[doc(hidden)]
5338impl FnOnce<(CURSOR_TYPE,f64,)> for CursorInternalType {
5339    type Output = ();
5340    extern "rust-call" fn call_once(self, args: (CURSOR_TYPE,f64,)) -> Self::Output {
5341        cursor1525358950.call(args)
5342    }
5343}
5344
5345#[doc(hidden)]
5346impl FnMut<(CURSOR_TYPE,f64,)> for CursorInternalType {
5347    extern "rust-call" fn call_mut(&mut self, args: (CURSOR_TYPE,f64,)) -> Self::Output {
5348        cursor1525358950.call(args)
5349    }
5350}
5351
5352#[doc(hidden)]
5353impl Fn<(CURSOR_TYPE,f64,)> for CursorInternalType {
5354    extern "rust-call" fn call(&self, args: (CURSOR_TYPE,f64,)) -> Self::Output {
5355        cursor1525358950.call(args)
5356    }
5357}
5358
5359#[wasm_bindgen]
5360extern {
5361    #[wasm_bindgen(js_name = "cursor")]
5362    fn cursor1023755129(_ : CURSOR_TYPE, ) ;
5363}
5364
5365#[doc(hidden)]
5366impl FnOnce<(CURSOR_TYPE,)> for CursorInternalType {
5367    type Output = ();
5368    extern "rust-call" fn call_once(self, args: (CURSOR_TYPE,)) -> Self::Output {
5369        cursor1023755129.call(args)
5370    }
5371}
5372
5373#[doc(hidden)]
5374impl FnMut<(CURSOR_TYPE,)> for CursorInternalType {
5375    extern "rust-call" fn call_mut(&mut self, args: (CURSOR_TYPE,)) -> Self::Output {
5376        cursor1023755129.call(args)
5377    }
5378}
5379
5380#[doc(hidden)]
5381impl Fn<(CURSOR_TYPE,)> for CursorInternalType {
5382    extern "rust-call" fn call(&self, args: (CURSOR_TYPE,)) -> Self::Output {
5383        cursor1023755129.call(args)
5384    }
5385}
5386#[doc=r##"<p>Specifies the number of frames to be displayed every second. For example,
5387the function call frameRate(30) will attempt to refresh 30 times a second.
5388If the processor is not fast enough to maintain the specified rate, the
5389frame rate will not be achieved. Setting the frame rate within 
5390<a href="#/p5/setup">setup()</a> is recommended. The default frame rate is
5391based on the frame rate of the display (here also called "refresh rate"), 
5392which is set to 60 frames per second on most computers. A frame rate of 24
5393frames per second (usual for movies) or above will be enough for smooth 
5394animations. This is the same as setFrameRate(val).</p>
5395<p>Calling <a href="#/p5/frameRate">frameRate()</a> with no arguments returns
5396the current framerate. The draw function must run at least once before it will
5397return a value. This is the same as <a href="#/p5/getFrameRate">getFrameRate()</a>.</p>
5398<p>Calling <a href="#/p5/frameRate">frameRate()</a> with arguments that are not
5399of the type numbers or are non positive also returns current framerate.</p>
5400"##]
5401///<h2>Examples</h2>
5402///
5403
5404#[doc=r###"```rust
5405let rectX = 0;
5406let fr = 30; //starting FPS
5407let clr;
5408
5409function setup() {
5410  background(200);
5411  frameRate(fr); // Attempt to refresh at starting FPS
5412  clr = color(255, 0, 0);
5413}
5414
5415function draw() {
5416  background(200);
5417  rectX = rectX += 1; // Move Rectangle
5418
5419  if (rectX >= width) {
5420   // If you go off screen.
5421    if (fr === 30) {
5422      clr = color(0, 0, 255);
5423      fr = 10;
5424      frameRate(fr); // make frameRate 10 FPS
5425    } else {
5426      clr = color(255, 0, 0);
5427      fr = 30;
5428      frameRate(fr); // make frameRate 30 FPS
5429    }
5430    rectX = 0;
5431  }
5432  fill(clr);
5433  rect(rectX, 40, 20, 20);
5434}
5435```"###]
5436/// <h2>Overloads</h2>
5437///
5438#[doc = r##"<code>fps</code> number of frames to be displayed every second
5439
5440"##]
5441///
5442///
5443/// ---
5444///
5445///
5446/// ---
5447///
5448
5449pub static frameRate: FrameRateInternalType = FrameRateInternalType;
5450#[doc(hidden)]
5451pub struct FrameRateInternalType;
5452
5453
5454#[wasm_bindgen]
5455extern {
5456    #[wasm_bindgen(js_name = "frameRate")]
5457    fn frameRate3290841073(_ : f64, ) ;
5458}
5459
5460#[doc(hidden)]
5461impl FnOnce<(f64,)> for FrameRateInternalType {
5462    type Output = ();
5463    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
5464        frameRate3290841073.call(args)
5465    }
5466}
5467
5468#[doc(hidden)]
5469impl FnMut<(f64,)> for FrameRateInternalType {
5470    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
5471        frameRate3290841073.call(args)
5472    }
5473}
5474
5475#[doc(hidden)]
5476impl Fn<(f64,)> for FrameRateInternalType {
5477    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
5478        frameRate3290841073.call(args)
5479    }
5480}
5481
5482#[wasm_bindgen]
5483extern {
5484    #[wasm_bindgen(js_name = "frameRate")]
5485    fn frameRate2396126771() -> f64;
5486}
5487
5488#[doc(hidden)]
5489impl FnOnce<()> for FrameRateInternalType {
5490    type Output = f64;
5491    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5492        frameRate2396126771.call(args)
5493    }
5494}
5495
5496#[doc(hidden)]
5497impl FnMut<()> for FrameRateInternalType {
5498    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5499        frameRate2396126771.call(args)
5500    }
5501}
5502
5503#[doc(hidden)]
5504impl Fn<()> for FrameRateInternalType {
5505    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5506        frameRate2396126771.call(args)
5507    }
5508}
5509#[doc=r##"<p>Hides the cursor from view.</p>
5510"##]
5511///<h2>Examples</h2>
5512///
5513
5514#[doc=r###"```rust
5515function setup() {
5516  noCursor();
5517}
5518
5519function draw() {
5520  background(200);
5521  ellipse(mouseX, mouseY, 10, 10);
5522}
5523```"###]
5524
5525pub static noCursor: NoCursorInternalType = NoCursorInternalType;
5526#[doc(hidden)]
5527pub struct NoCursorInternalType;
5528
5529
5530#[wasm_bindgen]
5531extern {
5532    #[wasm_bindgen(js_name = "noCursor")]
5533    fn noCursor1879471527() ;
5534}
5535
5536#[doc(hidden)]
5537impl FnOnce<()> for NoCursorInternalType {
5538    type Output = ();
5539    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5540        noCursor1879471527.call(args)
5541    }
5542}
5543
5544#[doc(hidden)]
5545impl FnMut<()> for NoCursorInternalType {
5546    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5547        noCursor1879471527.call(args)
5548    }
5549}
5550
5551#[doc(hidden)]
5552impl Fn<()> for NoCursorInternalType {
5553    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5554        noCursor1879471527.call(args)
5555    }
5556}
5557#[doc=r##"<p>The <a href="#/p5/windowResized">windowResized()</a> function is called once
5558every time the browser window is resized. This is a good place to resize the
5559canvas or do any other adjustments to accommodate the new window size.</p>
5560"##]
5561///<h2>Examples</h2>
5562///
5563
5564#[doc=r###"```rust
5565function setup() {
5566  createCanvas(windowWidth, windowHeight);
5567}
5568
5569function draw() {
5570  background(0, 100, 200);
5571}
5572
5573function windowResized() {
5574  resizeCanvas(windowWidth, windowHeight);
5575}
5576```"###]
5577
5578pub static windowResized: WindowResizedInternalType = WindowResizedInternalType;
5579#[doc(hidden)]
5580pub struct WindowResizedInternalType;
5581
5582
5583#[wasm_bindgen]
5584extern {
5585    #[wasm_bindgen(js_name = "windowResized")]
5586    fn windowResized186037077() ;
5587}
5588
5589#[doc(hidden)]
5590impl FnOnce<()> for WindowResizedInternalType {
5591    type Output = ();
5592    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5593        windowResized186037077.call(args)
5594    }
5595}
5596
5597#[doc(hidden)]
5598impl FnMut<()> for WindowResizedInternalType {
5599    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5600        windowResized186037077.call(args)
5601    }
5602}
5603
5604#[doc(hidden)]
5605impl Fn<()> for WindowResizedInternalType {
5606    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5607        windowResized186037077.call(args)
5608    }
5609}
5610#[doc=r##"<p>If argument is given, sets the sketch to fullscreen or not based on the
5611value of the argument. If no argument is given, returns the current
5612fullscreen state. Note that due to browser restrictions this can only
5613be called on user input, for example, on mouse press like the example
5614below.</p>
5615"##]
5616///<h2>Examples</h2>
5617///
5618
5619#[doc=r###"```rust
5620// Clicking in the box toggles fullscreen on and off.
5621function setup() {
5622  background(200);
5623}
5624function mousePressed() {
5625  if (mouseX > 0 && mouseX < 100 && mouseY > 0 && mouseY < 100) {
5626    let fs = fullscreen();
5627    fullscreen(!fs);
5628  }
5629}
5630```"###]
5631/// <h2>Parameters</h2>
5632///
5633#[doc = r##"<code>val?</code> whether the sketch should be in fullscreen mode
5634or not
5635
5636"##]
5637///
5638
5639pub static fullscreen: FullscreenInternalType = FullscreenInternalType;
5640#[doc(hidden)]
5641pub struct FullscreenInternalType;
5642
5643
5644#[wasm_bindgen]
5645extern {
5646    #[wasm_bindgen(js_name = "fullscreen")]
5647    fn fullscreen2375952396(_ : bool, ) -> bool;
5648}
5649
5650#[doc(hidden)]
5651impl FnOnce<(bool,)> for FullscreenInternalType {
5652    type Output = bool;
5653    extern "rust-call" fn call_once(self, args: (bool,)) -> Self::Output {
5654        fullscreen2375952396.call(args)
5655    }
5656}
5657
5658#[doc(hidden)]
5659impl FnMut<(bool,)> for FullscreenInternalType {
5660    extern "rust-call" fn call_mut(&mut self, args: (bool,)) -> Self::Output {
5661        fullscreen2375952396.call(args)
5662    }
5663}
5664
5665#[doc(hidden)]
5666impl Fn<(bool,)> for FullscreenInternalType {
5667    extern "rust-call" fn call(&self, args: (bool,)) -> Self::Output {
5668        fullscreen2375952396.call(args)
5669    }
5670}
5671
5672#[wasm_bindgen]
5673extern {
5674    #[wasm_bindgen(js_name = "fullscreen")]
5675    fn fullscreen1366928332() -> bool;
5676}
5677
5678#[doc(hidden)]
5679impl FnOnce<()> for FullscreenInternalType {
5680    type Output = bool;
5681    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5682        fullscreen1366928332.call(args)
5683    }
5684}
5685
5686#[doc(hidden)]
5687impl FnMut<()> for FullscreenInternalType {
5688    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5689        fullscreen1366928332.call(args)
5690    }
5691}
5692
5693#[doc(hidden)]
5694impl Fn<()> for FullscreenInternalType {
5695    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5696        fullscreen1366928332.call(args)
5697    }
5698}
5699#[doc=r##"<p>Sets the pixel scaling for high pixel density displays. By default
5700pixel density is set to match display density, call pixelDensity(1)
5701to turn this off. Calling <a href="#/p5/pixelDensity">pixelDensity()</a> with no arguments returns
5702the current pixel density of the sketch.</p>
5703"##]
5704///<h2>Examples</h2>
5705///
5706
5707#[doc=r###"```rust
5708function setup() {
5709  pixelDensity(1);
5710  createCanvas(100, 100);
5711  background(200);
5712  ellipse(width / 2, height / 2, 50, 50);
5713}
5714```"###]
5715#[doc=r###"```rust
5716function setup() {
5717  pixelDensity(3.0);
5718  createCanvas(100, 100);
5719  background(200);
5720  ellipse(width / 2, height / 2, 50, 50);
5721}
5722```"###]
5723/// <h2>Overloads</h2>
5724///
5725#[doc = r##"<code>val</code> whether or how much the sketch should scale
5726
5727"##]
5728///
5729///
5730/// ---
5731///
5732///
5733/// ---
5734///
5735
5736pub static pixelDensity: PixelDensityInternalType = PixelDensityInternalType;
5737#[doc(hidden)]
5738pub struct PixelDensityInternalType;
5739
5740
5741#[wasm_bindgen]
5742extern {
5743    #[wasm_bindgen(js_name = "pixelDensity")]
5744    fn pixelDensity3282118024(_ : f64, ) ;
5745}
5746
5747#[doc(hidden)]
5748impl FnOnce<(f64,)> for PixelDensityInternalType {
5749    type Output = ();
5750    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
5751        pixelDensity3282118024.call(args)
5752    }
5753}
5754
5755#[doc(hidden)]
5756impl FnMut<(f64,)> for PixelDensityInternalType {
5757    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
5758        pixelDensity3282118024.call(args)
5759    }
5760}
5761
5762#[doc(hidden)]
5763impl Fn<(f64,)> for PixelDensityInternalType {
5764    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
5765        pixelDensity3282118024.call(args)
5766    }
5767}
5768
5769#[wasm_bindgen]
5770extern {
5771    #[wasm_bindgen(js_name = "pixelDensity")]
5772    fn pixelDensity3310621824() -> f64;
5773}
5774
5775#[doc(hidden)]
5776impl FnOnce<()> for PixelDensityInternalType {
5777    type Output = f64;
5778    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5779        pixelDensity3310621824.call(args)
5780    }
5781}
5782
5783#[doc(hidden)]
5784impl FnMut<()> for PixelDensityInternalType {
5785    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5786        pixelDensity3310621824.call(args)
5787    }
5788}
5789
5790#[doc(hidden)]
5791impl Fn<()> for PixelDensityInternalType {
5792    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5793        pixelDensity3310621824.call(args)
5794    }
5795}
5796#[doc=r##"<p>Returns the pixel density of the current display the sketch is running on.</p>
5797"##]
5798///<h2>Examples</h2>
5799///
5800
5801#[doc=r###"```rust
5802function setup() {
5803  let density = displayDensity();
5804  pixelDensity(density);
5805  createCanvas(100, 100);
5806  background(200);
5807  ellipse(width / 2, height / 2, 50, 50);
5808}
5809```"###]
5810
5811pub static displayDensity: DisplayDensityInternalType = DisplayDensityInternalType;
5812#[doc(hidden)]
5813pub struct DisplayDensityInternalType;
5814
5815
5816#[wasm_bindgen]
5817extern {
5818    #[wasm_bindgen(js_name = "displayDensity")]
5819    fn displayDensity4222169589() -> f64;
5820}
5821
5822#[doc(hidden)]
5823impl FnOnce<()> for DisplayDensityInternalType {
5824    type Output = f64;
5825    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5826        displayDensity4222169589.call(args)
5827    }
5828}
5829
5830#[doc(hidden)]
5831impl FnMut<()> for DisplayDensityInternalType {
5832    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5833        displayDensity4222169589.call(args)
5834    }
5835}
5836
5837#[doc(hidden)]
5838impl Fn<()> for DisplayDensityInternalType {
5839    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5840        displayDensity4222169589.call(args)
5841    }
5842}
5843#[doc=r##"<p>Gets the current URL.</p>
5844"##]
5845///<h2>Examples</h2>
5846///
5847
5848#[doc=r###"```rust
5849let url;
5850let x = 100;
5851
5852function setup() {
5853  fill(0);
5854  noStroke();
5855  url = getURL();
5856}
5857
5858function draw() {
5859  background(200);
5860  text(url, x, height / 2);
5861  x--;
5862}
5863```"###]
5864
5865pub static getURL: GetUrlInternalType = GetUrlInternalType;
5866#[doc(hidden)]
5867pub struct GetUrlInternalType;
5868
5869
5870#[wasm_bindgen]
5871extern {
5872    #[wasm_bindgen(js_name = "getURL")]
5873    fn getURL1989040082() -> String;
5874}
5875
5876#[doc(hidden)]
5877impl FnOnce<()> for GetUrlInternalType {
5878    type Output = String;
5879    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5880        getURL1989040082.call(args)
5881    }
5882}
5883
5884#[doc(hidden)]
5885impl FnMut<()> for GetUrlInternalType {
5886    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5887        getURL1989040082.call(args)
5888    }
5889}
5890
5891#[doc(hidden)]
5892impl Fn<()> for GetUrlInternalType {
5893    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5894        getURL1989040082.call(args)
5895    }
5896}
5897#[doc=r##"<p>Gets the current URL path as an array.</p>
5898"##]
5899///<h2>Examples</h2>
5900///
5901
5902#[doc=r###"```rust
5903function setup() {
5904  let urlPath = getURLPath();
5905  for (let i = 0; i < urlPath.length; i++) {
5906    text(urlPath[i], 10, i * 20 + 20);
5907  }
5908}
5909```"###]
5910
5911pub static getURLPath: GetUrlPathInternalType = GetUrlPathInternalType;
5912#[doc(hidden)]
5913pub struct GetUrlPathInternalType;
5914
5915
5916#[wasm_bindgen]
5917extern {
5918    #[wasm_bindgen(js_name = "getURLPath")]
5919    fn getURLPath2409735778() ;
5920}
5921
5922#[doc(hidden)]
5923impl FnOnce<()> for GetUrlPathInternalType {
5924    type Output = ();
5925    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5926        getURLPath2409735778.call(args)
5927    }
5928}
5929
5930#[doc(hidden)]
5931impl FnMut<()> for GetUrlPathInternalType {
5932    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5933        getURLPath2409735778.call(args)
5934    }
5935}
5936
5937#[doc(hidden)]
5938impl Fn<()> for GetUrlPathInternalType {
5939    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5940        getURLPath2409735778.call(args)
5941    }
5942}
5943#[doc=r##"<p>Gets the current URL params as an Object.</p>
5944"##]
5945///<h2>Examples</h2>
5946///
5947
5948#[doc=r###"```rust
5949// Example: http://p5js.org?year=2014&month=May&day=15
5950
5951function setup() {
5952  let params = getURLParams();
5953  text(params.day, 10, 20);
5954  text(params.month, 10, 40);
5955  text(params.year, 10, 60);
5956}
5957```"###]
5958
5959pub static getURLParams: GetUrlParamsInternalType = GetUrlParamsInternalType;
5960#[doc(hidden)]
5961pub struct GetUrlParamsInternalType;
5962
5963
5964#[wasm_bindgen]
5965extern {
5966    #[wasm_bindgen(js_name = "getURLParams")]
5967    fn getURLParams765962837() -> js_sys::Object;
5968}
5969
5970#[doc(hidden)]
5971impl FnOnce<()> for GetUrlParamsInternalType {
5972    type Output = js_sys::Object;
5973    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
5974        getURLParams765962837.call(args)
5975    }
5976}
5977
5978#[doc(hidden)]
5979impl FnMut<()> for GetUrlParamsInternalType {
5980    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
5981        getURLParams765962837.call(args)
5982    }
5983}
5984
5985#[doc(hidden)]
5986impl Fn<()> for GetUrlParamsInternalType {
5987    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
5988        getURLParams765962837.call(args)
5989    }
5990}
5991#[doc=r##"<p>Searches the page for the first element that matches the given CSS selector string (can be an
5992ID, class, tag name or a combination) and returns it as a <a href="#/p5.Element">p5.Element</a>.
5993The DOM node itself can be accessed with .elt.
5994Returns null if none found. You can also specify a container to search within.</p>
5995"##]
5996///<h2>Examples</h2>
5997///
5998
5999#[doc=r###"```rust
6000function setup() {
6001  createCanvas(50, 50);
6002  background(30);
6003  // move canvas down and right
6004  select('canvas').position(10, 30);
6005}
6006```"###]
6007#[doc=r###"```rust
6008// select using ID
6009let a = select('#container');
6010let b = select('#beep', '#container');
6011let c;
6012if (a) {
6013  // select using class
6014  c = select('.boop', a);
6015}
6016// select using CSS selector string
6017let d = select('#container #bleep');
6018let e = select('#container p');
6019[a, b, c, d, e]; // unused
6020```"###]
6021/// <h2>Parameters</h2>
6022///
6023#[doc = r##"<code>selectors</code> CSS selector string of element to search for
6024
6025"##]
6026///
6027///
6028#[doc = r##"<code>container?</code> CSS selector string, p5.Element, or
6029                                            HTML element to search within
6030
6031"##]
6032///
6033
6034pub static select: SelectInternalType = SelectInternalType;
6035#[doc(hidden)]
6036pub struct SelectInternalType;
6037
6038
6039#[wasm_bindgen]
6040extern {
6041    #[wasm_bindgen(js_name = "select")]
6042    fn select1299716869(_ : & str, _ : & str, ) ->  Element;
6043}
6044
6045#[doc(hidden)]
6046impl FnOnce<(&'_ str,&'_ str,)> for SelectInternalType {
6047    type Output =  Element;
6048    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
6049        select1299716869.call(args)
6050    }
6051}
6052
6053#[doc(hidden)]
6054impl FnMut<(&'_ str,&'_ str,)> for SelectInternalType {
6055    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
6056        select1299716869.call(args)
6057    }
6058}
6059
6060#[doc(hidden)]
6061impl Fn<(&'_ str,&'_ str,)> for SelectInternalType {
6062    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
6063        select1299716869.call(args)
6064    }
6065}
6066
6067#[wasm_bindgen]
6068extern {
6069    #[wasm_bindgen(js_name = "select")]
6070    fn select1227328385(_ : & str, _ : & Element, ) ->  Element;
6071}
6072
6073#[doc(hidden)]
6074impl FnOnce<(&'_ str,&'_ Element,)> for SelectInternalType {
6075    type Output =  Element;
6076    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Element,)) -> Self::Output {
6077        select1227328385.call(args)
6078    }
6079}
6080
6081#[doc(hidden)]
6082impl FnMut<(&'_ str,&'_ Element,)> for SelectInternalType {
6083    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Element,)) -> Self::Output {
6084        select1227328385.call(args)
6085    }
6086}
6087
6088#[doc(hidden)]
6089impl Fn<(&'_ str,&'_ Element,)> for SelectInternalType {
6090    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Element,)) -> Self::Output {
6091        select1227328385.call(args)
6092    }
6093}
6094
6095#[wasm_bindgen]
6096extern {
6097    #[wasm_bindgen(js_name = "select")]
6098    fn select3121156613(_ : & str, _ : HTMLElement, ) ->  Element;
6099}
6100
6101#[doc(hidden)]
6102impl FnOnce<(&'_ str,HTMLElement,)> for SelectInternalType {
6103    type Output =  Element;
6104    extern "rust-call" fn call_once(self, args: (&'_ str,HTMLElement,)) -> Self::Output {
6105        select3121156613.call(args)
6106    }
6107}
6108
6109#[doc(hidden)]
6110impl FnMut<(&'_ str,HTMLElement,)> for SelectInternalType {
6111    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,HTMLElement,)) -> Self::Output {
6112        select3121156613.call(args)
6113    }
6114}
6115
6116#[doc(hidden)]
6117impl Fn<(&'_ str,HTMLElement,)> for SelectInternalType {
6118    extern "rust-call" fn call(&self, args: (&'_ str,HTMLElement,)) -> Self::Output {
6119        select3121156613.call(args)
6120    }
6121}
6122
6123#[wasm_bindgen]
6124extern {
6125    #[wasm_bindgen(js_name = "select")]
6126    fn select3102929777(_ : & str, ) ->  Element;
6127}
6128
6129#[doc(hidden)]
6130impl FnOnce<(&'_ str,)> for SelectInternalType {
6131    type Output =  Element;
6132    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
6133        select3102929777.call(args)
6134    }
6135}
6136
6137#[doc(hidden)]
6138impl FnMut<(&'_ str,)> for SelectInternalType {
6139    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
6140        select3102929777.call(args)
6141    }
6142}
6143
6144#[doc(hidden)]
6145impl Fn<(&'_ str,)> for SelectInternalType {
6146    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
6147        select3102929777.call(args)
6148    }
6149}
6150#[doc=r##"<p>Searches the page for elements that match the given CSS selector string (can be an ID a class,
6151tag name or a combination) and returns them as <a href="#/p5.Element">p5.Element</a>s in
6152an array.
6153The DOM node itself can be accessed with .elt.
6154Returns an empty array if none found.
6155You can also specify a container to search within.</p>
6156"##]
6157///<h2>Examples</h2>
6158///
6159
6160#[doc=r###"```rust
6161function setup() {
6162  createButton('btn');
6163  createButton('2nd btn');
6164  createButton('3rd btn');
6165  let buttons = selectAll('button');
6166
6167  for (let i = 0; i < buttons.length; i++) {
6168    buttons[i].size(100, 100);
6169  }
6170}
6171```"###]
6172#[doc=r###"```rust
6173// these are all valid calls to selectAll()
6174let a = selectAll('.beep');
6175a = selectAll('div');
6176a = selectAll('button', '#container');
6177
6178let b = createDiv();
6179b.id('container');
6180let c = select('#container');
6181a = selectAll('p', c);
6182a = selectAll('#container p');
6183
6184let d = document.getElementById('container');
6185a = selectAll('.boop', d);
6186a = selectAll('#container .boop');
6187console.log(a);
6188```"###]
6189/// <h2>Parameters</h2>
6190///
6191#[doc = r##"<code>selectors</code> CSS selector string of elements to search for
6192
6193"##]
6194///
6195///
6196#[doc = r##"<code>container?</code> CSS selector string, p5.Element
6197                                            , or HTML element to search within
6198
6199"##]
6200///
6201
6202pub static selectAll: SelectAllInternalType = SelectAllInternalType;
6203#[doc(hidden)]
6204pub struct SelectAllInternalType;
6205
6206
6207#[wasm_bindgen]
6208extern {
6209    #[wasm_bindgen(js_name = "selectAll")]
6210    fn selectAll3091447704(_ : & str, _ : & str, ) ;
6211}
6212
6213#[doc(hidden)]
6214impl FnOnce<(&'_ str,&'_ str,)> for SelectAllInternalType {
6215    type Output = ();
6216    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
6217        selectAll3091447704.call(args)
6218    }
6219}
6220
6221#[doc(hidden)]
6222impl FnMut<(&'_ str,&'_ str,)> for SelectAllInternalType {
6223    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
6224        selectAll3091447704.call(args)
6225    }
6226}
6227
6228#[doc(hidden)]
6229impl Fn<(&'_ str,&'_ str,)> for SelectAllInternalType {
6230    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
6231        selectAll3091447704.call(args)
6232    }
6233}
6234
6235#[wasm_bindgen]
6236extern {
6237    #[wasm_bindgen(js_name = "selectAll")]
6238    fn selectAll4223266408(_ : & str, _ : & Element, ) ;
6239}
6240
6241#[doc(hidden)]
6242impl FnOnce<(&'_ str,&'_ Element,)> for SelectAllInternalType {
6243    type Output = ();
6244    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Element,)) -> Self::Output {
6245        selectAll4223266408.call(args)
6246    }
6247}
6248
6249#[doc(hidden)]
6250impl FnMut<(&'_ str,&'_ Element,)> for SelectAllInternalType {
6251    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Element,)) -> Self::Output {
6252        selectAll4223266408.call(args)
6253    }
6254}
6255
6256#[doc(hidden)]
6257impl Fn<(&'_ str,&'_ Element,)> for SelectAllInternalType {
6258    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Element,)) -> Self::Output {
6259        selectAll4223266408.call(args)
6260    }
6261}
6262
6263#[wasm_bindgen]
6264extern {
6265    #[wasm_bindgen(js_name = "selectAll")]
6266    fn selectAll3133233034(_ : & str, _ : HTMLElement, ) ;
6267}
6268
6269#[doc(hidden)]
6270impl FnOnce<(&'_ str,HTMLElement,)> for SelectAllInternalType {
6271    type Output = ();
6272    extern "rust-call" fn call_once(self, args: (&'_ str,HTMLElement,)) -> Self::Output {
6273        selectAll3133233034.call(args)
6274    }
6275}
6276
6277#[doc(hidden)]
6278impl FnMut<(&'_ str,HTMLElement,)> for SelectAllInternalType {
6279    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,HTMLElement,)) -> Self::Output {
6280        selectAll3133233034.call(args)
6281    }
6282}
6283
6284#[doc(hidden)]
6285impl Fn<(&'_ str,HTMLElement,)> for SelectAllInternalType {
6286    extern "rust-call" fn call(&self, args: (&'_ str,HTMLElement,)) -> Self::Output {
6287        selectAll3133233034.call(args)
6288    }
6289}
6290
6291#[wasm_bindgen]
6292extern {
6293    #[wasm_bindgen(js_name = "selectAll")]
6294    fn selectAll3956998421(_ : & str, ) ;
6295}
6296
6297#[doc(hidden)]
6298impl FnOnce<(&'_ str,)> for SelectAllInternalType {
6299    type Output = ();
6300    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
6301        selectAll3956998421.call(args)
6302    }
6303}
6304
6305#[doc(hidden)]
6306impl FnMut<(&'_ str,)> for SelectAllInternalType {
6307    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
6308        selectAll3956998421.call(args)
6309    }
6310}
6311
6312#[doc(hidden)]
6313impl Fn<(&'_ str,)> for SelectAllInternalType {
6314    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
6315        selectAll3956998421.call(args)
6316    }
6317}
6318#[doc=r##"<p>Removes all elements created by p5, except any canvas / graphics
6319elements created by <a href="#/p5/createCanvas">createCanvas</a> or <a href="#/p5/createGraphics">createGraphics</a>.
6320Event handlers are removed, and element is removed from the DOM.</p>
6321"##]
6322///<h2>Examples</h2>
6323///
6324
6325#[doc=r###"```rust
6326function setup() {
6327  createCanvas(100, 100);
6328  createDiv('this is some text');
6329  createP('this is a paragraph');
6330}
6331function mousePressed() {
6332  removeElements(); // this will remove the div and p, not canvas
6333}
6334```"###]
6335
6336pub static removeElements: RemoveElementsInternalType = RemoveElementsInternalType;
6337#[doc(hidden)]
6338pub struct RemoveElementsInternalType;
6339
6340
6341#[wasm_bindgen]
6342extern {
6343    #[wasm_bindgen(js_name = "removeElements")]
6344    fn removeElements94905408() ;
6345}
6346
6347#[doc(hidden)]
6348impl FnOnce<()> for RemoveElementsInternalType {
6349    type Output = ();
6350    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
6351        removeElements94905408.call(args)
6352    }
6353}
6354
6355#[doc(hidden)]
6356impl FnMut<()> for RemoveElementsInternalType {
6357    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
6358        removeElements94905408.call(args)
6359    }
6360}
6361
6362#[doc(hidden)]
6363impl Fn<()> for RemoveElementsInternalType {
6364    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
6365        removeElements94905408.call(args)
6366    }
6367}
6368#[doc=r##"<p>The .<a href="#/p5.Element/changed">changed()</a> function is called when the value of an
6369element changes.
6370This can be used to attach an element specific event listener.</p>
6371"##]
6372///<h2>Examples</h2>
6373///
6374
6375#[doc=r###"```rust
6376let sel;
6377
6378function setup() {
6379  textAlign(CENTER);
6380  background(200);
6381  sel = createSelect();
6382  sel.position(10, 10);
6383  sel.option('pear');
6384  sel.option('kiwi');
6385  sel.option('grape');
6386  sel.changed(mySelectEvent);
6387}
6388
6389function mySelectEvent() {
6390  let item = sel.value();
6391  background(200);
6392  text("it's a " + item + '!', 50, 50);
6393}
6394```"###]
6395#[doc=r###"```rust
6396let checkbox;
6397let cnv;
6398
6399function setup() {
6400  checkbox = createCheckbox(' fill');
6401  checkbox.changed(changeFill);
6402  cnv = createCanvas(100, 100);
6403  cnv.position(0, 30);
6404  noFill();
6405}
6406
6407function draw() {
6408  background(200);
6409  ellipse(50, 50, 50, 50);
6410}
6411
6412function changeFill() {
6413  if (checkbox.checked()) {
6414    fill(0);
6415  } else {
6416    noFill();
6417  }
6418}
6419```"###]
6420/// <h2>Parameters</h2>
6421///
6422#[doc = r##"<code>fxn</code> function to be fired when the value of
6423                               an element changes.
6424                               if false is passed instead, the previously
6425                               firing function will no longer fire.
6426
6427"##]
6428///
6429
6430pub static changed: ChangedInternalType = ChangedInternalType;
6431#[doc(hidden)]
6432pub struct ChangedInternalType;
6433
6434
6435#[wasm_bindgen]
6436extern {
6437    #[wasm_bindgen(js_name = "changed")]
6438    fn changed424200743(_ : js_sys::Function, ) ;
6439}
6440
6441#[doc(hidden)]
6442impl FnOnce<(js_sys::Function,)> for ChangedInternalType {
6443    type Output = ();
6444    extern "rust-call" fn call_once(self, args: (js_sys::Function,)) -> Self::Output {
6445        changed424200743.call(args)
6446    }
6447}
6448
6449#[doc(hidden)]
6450impl FnMut<(js_sys::Function,)> for ChangedInternalType {
6451    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Function,)) -> Self::Output {
6452        changed424200743.call(args)
6453    }
6454}
6455
6456#[doc(hidden)]
6457impl Fn<(js_sys::Function,)> for ChangedInternalType {
6458    extern "rust-call" fn call(&self, args: (js_sys::Function,)) -> Self::Output {
6459        changed424200743.call(args)
6460    }
6461}
6462
6463#[wasm_bindgen]
6464extern {
6465    #[wasm_bindgen(js_name = "changed")]
6466    fn changed1817070758(_ : bool, ) ;
6467}
6468
6469#[doc(hidden)]
6470impl FnOnce<(bool,)> for ChangedInternalType {
6471    type Output = ();
6472    extern "rust-call" fn call_once(self, args: (bool,)) -> Self::Output {
6473        changed1817070758.call(args)
6474    }
6475}
6476
6477#[doc(hidden)]
6478impl FnMut<(bool,)> for ChangedInternalType {
6479    extern "rust-call" fn call_mut(&mut self, args: (bool,)) -> Self::Output {
6480        changed1817070758.call(args)
6481    }
6482}
6483
6484#[doc(hidden)]
6485impl Fn<(bool,)> for ChangedInternalType {
6486    extern "rust-call" fn call(&self, args: (bool,)) -> Self::Output {
6487        changed1817070758.call(args)
6488    }
6489}
6490#[doc=r##"<p>The .<a href="#/p5.Element/input">input()</a> function is called when any user input is
6491detected with an element. The input event is often used
6492to detect keystrokes in a input element, or changes on a
6493slider element. This can be used to attach an element specific
6494event listener.</p>
6495"##]
6496///<h2>Examples</h2>
6497///
6498
6499#[doc=r###"```rust
6500// Open your console to see the output
6501function setup() {
6502  let inp = createInput('');
6503  inp.input(myInputEvent);
6504}
6505
6506function myInputEvent() {
6507  console.log('you are typing: ', this.value());
6508}
6509```"###]
6510/// <h2>Parameters</h2>
6511///
6512#[doc = r##"<code>fxn</code> function to be fired when any user input is
6513                               detected within the element.
6514                               if false is passed instead, the previously
6515                               firing function will no longer fire.
6516
6517"##]
6518///
6519
6520pub static input: InputInternalType = InputInternalType;
6521#[doc(hidden)]
6522pub struct InputInternalType;
6523
6524
6525#[wasm_bindgen]
6526extern {
6527    #[wasm_bindgen(js_name = "input")]
6528    fn input198261589(_ : js_sys::Function, ) ;
6529}
6530
6531#[doc(hidden)]
6532impl FnOnce<(js_sys::Function,)> for InputInternalType {
6533    type Output = ();
6534    extern "rust-call" fn call_once(self, args: (js_sys::Function,)) -> Self::Output {
6535        input198261589.call(args)
6536    }
6537}
6538
6539#[doc(hidden)]
6540impl FnMut<(js_sys::Function,)> for InputInternalType {
6541    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Function,)) -> Self::Output {
6542        input198261589.call(args)
6543    }
6544}
6545
6546#[doc(hidden)]
6547impl Fn<(js_sys::Function,)> for InputInternalType {
6548    extern "rust-call" fn call(&self, args: (js_sys::Function,)) -> Self::Output {
6549        input198261589.call(args)
6550    }
6551}
6552
6553#[wasm_bindgen]
6554extern {
6555    #[wasm_bindgen(js_name = "input")]
6556    fn input2448326341(_ : bool, ) ;
6557}
6558
6559#[doc(hidden)]
6560impl FnOnce<(bool,)> for InputInternalType {
6561    type Output = ();
6562    extern "rust-call" fn call_once(self, args: (bool,)) -> Self::Output {
6563        input2448326341.call(args)
6564    }
6565}
6566
6567#[doc(hidden)]
6568impl FnMut<(bool,)> for InputInternalType {
6569    extern "rust-call" fn call_mut(&mut self, args: (bool,)) -> Self::Output {
6570        input2448326341.call(args)
6571    }
6572}
6573
6574#[doc(hidden)]
6575impl Fn<(bool,)> for InputInternalType {
6576    extern "rust-call" fn call(&self, args: (bool,)) -> Self::Output {
6577        input2448326341.call(args)
6578    }
6579}
6580#[doc=r##"<p>Creates a <div></div> element in the DOM with given inner HTML.</p>
6581"##]
6582///<h2>Examples</h2>
6583///
6584
6585#[doc=r###"```rust
6586createDiv('this is some text');
6587```"###]
6588/// <h2>Parameters</h2>
6589///
6590#[doc = r##"<code>html?</code> inner HTML for element created
6591
6592"##]
6593///
6594
6595pub static createDiv: CreateDivInternalType = CreateDivInternalType;
6596#[doc(hidden)]
6597pub struct CreateDivInternalType;
6598
6599
6600#[wasm_bindgen]
6601extern {
6602    #[wasm_bindgen(js_name = "createDiv")]
6603    fn createDiv2263274510(_ : & str, ) ->  Element;
6604}
6605
6606#[doc(hidden)]
6607impl FnOnce<(&'_ str,)> for CreateDivInternalType {
6608    type Output =  Element;
6609    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
6610        createDiv2263274510.call(args)
6611    }
6612}
6613
6614#[doc(hidden)]
6615impl FnMut<(&'_ str,)> for CreateDivInternalType {
6616    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
6617        createDiv2263274510.call(args)
6618    }
6619}
6620
6621#[doc(hidden)]
6622impl Fn<(&'_ str,)> for CreateDivInternalType {
6623    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
6624        createDiv2263274510.call(args)
6625    }
6626}
6627
6628#[wasm_bindgen]
6629extern {
6630    #[wasm_bindgen(js_name = "createDiv")]
6631    fn createDiv3804873802() ->  Element;
6632}
6633
6634#[doc(hidden)]
6635impl FnOnce<()> for CreateDivInternalType {
6636    type Output =  Element;
6637    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
6638        createDiv3804873802.call(args)
6639    }
6640}
6641
6642#[doc(hidden)]
6643impl FnMut<()> for CreateDivInternalType {
6644    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
6645        createDiv3804873802.call(args)
6646    }
6647}
6648
6649#[doc(hidden)]
6650impl Fn<()> for CreateDivInternalType {
6651    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
6652        createDiv3804873802.call(args)
6653    }
6654}
6655#[doc=r##"<p>Creates a <p></p> element in the DOM with given inner HTML. Used
6656for paragraph length text.</p>
6657"##]
6658///<h2>Examples</h2>
6659///
6660
6661#[doc=r###"```rust
6662createP('this is some text');
6663```"###]
6664/// <h2>Parameters</h2>
6665///
6666#[doc = r##"<code>html?</code> inner HTML for element created
6667
6668"##]
6669///
6670
6671pub static createP: CreatePInternalType = CreatePInternalType;
6672#[doc(hidden)]
6673pub struct CreatePInternalType;
6674
6675
6676#[wasm_bindgen]
6677extern {
6678    #[wasm_bindgen(js_name = "createP")]
6679    fn createP865021291(_ : & str, ) ->  Element;
6680}
6681
6682#[doc(hidden)]
6683impl FnOnce<(&'_ str,)> for CreatePInternalType {
6684    type Output =  Element;
6685    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
6686        createP865021291.call(args)
6687    }
6688}
6689
6690#[doc(hidden)]
6691impl FnMut<(&'_ str,)> for CreatePInternalType {
6692    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
6693        createP865021291.call(args)
6694    }
6695}
6696
6697#[doc(hidden)]
6698impl Fn<(&'_ str,)> for CreatePInternalType {
6699    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
6700        createP865021291.call(args)
6701    }
6702}
6703
6704#[wasm_bindgen]
6705extern {
6706    #[wasm_bindgen(js_name = "createP")]
6707    fn createP440791393() ->  Element;
6708}
6709
6710#[doc(hidden)]
6711impl FnOnce<()> for CreatePInternalType {
6712    type Output =  Element;
6713    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
6714        createP440791393.call(args)
6715    }
6716}
6717
6718#[doc(hidden)]
6719impl FnMut<()> for CreatePInternalType {
6720    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
6721        createP440791393.call(args)
6722    }
6723}
6724
6725#[doc(hidden)]
6726impl Fn<()> for CreatePInternalType {
6727    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
6728        createP440791393.call(args)
6729    }
6730}
6731#[doc=r##"<p>Creates a <span></span> element in the DOM with given inner HTML.</p>
6732"##]
6733///<h2>Examples</h2>
6734///
6735
6736#[doc=r###"```rust
6737createSpan('this is some text');
6738```"###]
6739/// <h2>Parameters</h2>
6740///
6741#[doc = r##"<code>html?</code> inner HTML for element created
6742
6743"##]
6744///
6745
6746pub static createSpan: CreateSpanInternalType = CreateSpanInternalType;
6747#[doc(hidden)]
6748pub struct CreateSpanInternalType;
6749
6750
6751#[wasm_bindgen]
6752extern {
6753    #[wasm_bindgen(js_name = "createSpan")]
6754    fn createSpan3531062537(_ : & str, ) ->  Element;
6755}
6756
6757#[doc(hidden)]
6758impl FnOnce<(&'_ str,)> for CreateSpanInternalType {
6759    type Output =  Element;
6760    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
6761        createSpan3531062537.call(args)
6762    }
6763}
6764
6765#[doc(hidden)]
6766impl FnMut<(&'_ str,)> for CreateSpanInternalType {
6767    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
6768        createSpan3531062537.call(args)
6769    }
6770}
6771
6772#[doc(hidden)]
6773impl Fn<(&'_ str,)> for CreateSpanInternalType {
6774    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
6775        createSpan3531062537.call(args)
6776    }
6777}
6778
6779#[wasm_bindgen]
6780extern {
6781    #[wasm_bindgen(js_name = "createSpan")]
6782    fn createSpan1628100264() ->  Element;
6783}
6784
6785#[doc(hidden)]
6786impl FnOnce<()> for CreateSpanInternalType {
6787    type Output =  Element;
6788    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
6789        createSpan1628100264.call(args)
6790    }
6791}
6792
6793#[doc(hidden)]
6794impl FnMut<()> for CreateSpanInternalType {
6795    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
6796        createSpan1628100264.call(args)
6797    }
6798}
6799
6800#[doc(hidden)]
6801impl Fn<()> for CreateSpanInternalType {
6802    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
6803        createSpan1628100264.call(args)
6804    }
6805}
6806#[doc=r##"<p>Creates an <img> element in the DOM with given src and
6807alternate text.</p>
6808"##]
6809///<h2>Examples</h2>
6810///
6811
6812#[doc=r###"```rust
6813createImg(
6814  'https://p5js.org/assets/img/asterisk-01.png',
6815  'the p5 magenta asterisk'
6816);
6817```"###]
6818/// <h2>Overloads</h2>
6819///
6820#[doc = r##"<code>src</code> src path or url for image
6821
6822"##]
6823///
6824///
6825#[doc = r##"<code>alt</code> alternate text to be used if image does not load. You can use also an empty string ("") if that an image is not intended to be viewed.
6826
6827"##]
6828///
6829///
6830/// ---
6831///
6832///
6833#[doc = r##"<code>src</code> src path or url for image
6834
6835"##]
6836///
6837///
6838#[doc = r##"<code>alt</code> alternate text to be used if image does not load. You can use also an empty string ("") if that an image is not intended to be viewed.
6839
6840"##]
6841///
6842///
6843#[doc = r##"<code>crossOrigin</code> crossOrigin property of the img element; use either 'anonymous' or 'use-credentials' to retrieve the image with cross-origin access (for later use with canvas. if an empty string("") is passed, CORS is not used
6844
6845"##]
6846///
6847///
6848#[doc = r##"<code>successCallback?</code> callback to be called once image data is loaded with the p5.Element as argument
6849
6850"##]
6851///
6852///
6853/// ---
6854///
6855
6856pub static createImg: CreateImgInternalType = CreateImgInternalType;
6857#[doc(hidden)]
6858pub struct CreateImgInternalType;
6859
6860
6861#[wasm_bindgen]
6862extern {
6863    #[wasm_bindgen(js_name = "createImg")]
6864    fn createImg2928187295(_ : & str, _ : & str, ) ->  Element;
6865}
6866
6867#[doc(hidden)]
6868impl FnOnce<(&'_ str,&'_ str,)> for CreateImgInternalType {
6869    type Output =  Element;
6870    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
6871        createImg2928187295.call(args)
6872    }
6873}
6874
6875#[doc(hidden)]
6876impl FnMut<(&'_ str,&'_ str,)> for CreateImgInternalType {
6877    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
6878        createImg2928187295.call(args)
6879    }
6880}
6881
6882#[doc(hidden)]
6883impl Fn<(&'_ str,&'_ str,)> for CreateImgInternalType {
6884    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
6885        createImg2928187295.call(args)
6886    }
6887}
6888
6889#[wasm_bindgen]
6890extern {
6891    #[wasm_bindgen(js_name = "createImg")]
6892    fn createImg873154382(_ : & str, _ : & str, _ : & str, _ : js_sys::Function, ) ->  Element;
6893}
6894
6895#[doc(hidden)]
6896impl FnOnce<(&'_ str,&'_ str,&'_ str,js_sys::Function,)> for CreateImgInternalType {
6897    type Output =  Element;
6898    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
6899        createImg873154382.call(args)
6900    }
6901}
6902
6903#[doc(hidden)]
6904impl FnMut<(&'_ str,&'_ str,&'_ str,js_sys::Function,)> for CreateImgInternalType {
6905    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
6906        createImg873154382.call(args)
6907    }
6908}
6909
6910#[doc(hidden)]
6911impl Fn<(&'_ str,&'_ str,&'_ str,js_sys::Function,)> for CreateImgInternalType {
6912    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
6913        createImg873154382.call(args)
6914    }
6915}
6916
6917#[wasm_bindgen]
6918extern {
6919    #[wasm_bindgen(js_name = "createImg")]
6920    fn createImg3719171023(_ : & str, _ : & str, _ : & str, ) ->  Element;
6921}
6922
6923#[doc(hidden)]
6924impl FnOnce<(&'_ str,&'_ str,&'_ str,)> for CreateImgInternalType {
6925    type Output =  Element;
6926    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
6927        createImg3719171023.call(args)
6928    }
6929}
6930
6931#[doc(hidden)]
6932impl FnMut<(&'_ str,&'_ str,&'_ str,)> for CreateImgInternalType {
6933    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
6934        createImg3719171023.call(args)
6935    }
6936}
6937
6938#[doc(hidden)]
6939impl Fn<(&'_ str,&'_ str,&'_ str,)> for CreateImgInternalType {
6940    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
6941        createImg3719171023.call(args)
6942    }
6943}
6944#[doc=r##"<p>Creates an <a></a> element in the DOM for including a hyperlink.</p>
6945"##]
6946///<h2>Examples</h2>
6947///
6948
6949#[doc=r###"```rust
6950createA('http://p5js.org/', 'this is a link');
6951```"###]
6952/// <h2>Parameters</h2>
6953///
6954#[doc = r##"<code>href</code> url of page to link to
6955
6956"##]
6957///
6958///
6959#[doc = r##"<code>html</code> inner html of link element to display
6960
6961"##]
6962///
6963///
6964#[doc = r##"<code>target?</code> target where new link should open,
6965                            could be _blank, _self, _parent, _top.
6966
6967"##]
6968///
6969
6970pub static createA: CreateAInternalType = CreateAInternalType;
6971#[doc(hidden)]
6972pub struct CreateAInternalType;
6973
6974
6975#[wasm_bindgen]
6976extern {
6977    #[wasm_bindgen(js_name = "createA")]
6978    fn createA3632435748(_ : & str, _ : & str, _ : & str, ) ->  Element;
6979}
6980
6981#[doc(hidden)]
6982impl FnOnce<(&'_ str,&'_ str,&'_ str,)> for CreateAInternalType {
6983    type Output =  Element;
6984    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
6985        createA3632435748.call(args)
6986    }
6987}
6988
6989#[doc(hidden)]
6990impl FnMut<(&'_ str,&'_ str,&'_ str,)> for CreateAInternalType {
6991    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
6992        createA3632435748.call(args)
6993    }
6994}
6995
6996#[doc(hidden)]
6997impl Fn<(&'_ str,&'_ str,&'_ str,)> for CreateAInternalType {
6998    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
6999        createA3632435748.call(args)
7000    }
7001}
7002
7003#[wasm_bindgen]
7004extern {
7005    #[wasm_bindgen(js_name = "createA")]
7006    fn createA2403112289(_ : & str, _ : & str, ) ->  Element;
7007}
7008
7009#[doc(hidden)]
7010impl FnOnce<(&'_ str,&'_ str,)> for CreateAInternalType {
7011    type Output =  Element;
7012    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
7013        createA2403112289.call(args)
7014    }
7015}
7016
7017#[doc(hidden)]
7018impl FnMut<(&'_ str,&'_ str,)> for CreateAInternalType {
7019    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
7020        createA2403112289.call(args)
7021    }
7022}
7023
7024#[doc(hidden)]
7025impl Fn<(&'_ str,&'_ str,)> for CreateAInternalType {
7026    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
7027        createA2403112289.call(args)
7028    }
7029}
7030#[doc=r##"<p>Creates a slider input element in the DOM.
7031Use .size() to set the display length of the slider.</p>
7032"##]
7033///<h2>Examples</h2>
7034///
7035
7036#[doc=r###"```rust
7037let slider;
7038function setup() {
7039  slider = createSlider(0, 255, 100);
7040  slider.position(10, 10);
7041  slider.style('width', '80px');
7042}
7043
7044function draw() {
7045  let val = slider.value();
7046  background(val);
7047}
7048```"###]
7049#[doc=r###"```rust
7050let slider;
7051function setup() {
7052  colorMode(HSB);
7053  slider = createSlider(0, 360, 60, 40);
7054  slider.position(10, 10);
7055  slider.style('width', '80px');
7056}
7057
7058function draw() {
7059  let val = slider.value();
7060  background(val, 100, 100, 1);
7061}
7062```"###]
7063/// <h2>Parameters</h2>
7064///
7065#[doc = r##"<code>min</code> minimum value of the slider
7066
7067"##]
7068///
7069///
7070#[doc = r##"<code>max</code> maximum value of the slider
7071
7072"##]
7073///
7074///
7075#[doc = r##"<code>value?</code> default value of the slider
7076
7077"##]
7078///
7079///
7080#[doc = r##"<code>step?</code> step size for each tick of the slider (if step is set to 0, the slider will move continuously from the minimum to the maximum value)
7081
7082"##]
7083///
7084
7085pub static createSlider: CreateSliderInternalType = CreateSliderInternalType;
7086#[doc(hidden)]
7087pub struct CreateSliderInternalType;
7088
7089
7090#[wasm_bindgen]
7091extern {
7092    #[wasm_bindgen(js_name = "createSlider")]
7093    fn createSlider2597645979(_ : f64, _ : f64, _ : f64, _ : f64, ) ->  Element;
7094}
7095
7096#[doc(hidden)]
7097impl FnOnce<(f64,f64,f64,f64,)> for CreateSliderInternalType {
7098    type Output =  Element;
7099    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
7100        createSlider2597645979.call(args)
7101    }
7102}
7103
7104#[doc(hidden)]
7105impl FnMut<(f64,f64,f64,f64,)> for CreateSliderInternalType {
7106    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
7107        createSlider2597645979.call(args)
7108    }
7109}
7110
7111#[doc(hidden)]
7112impl Fn<(f64,f64,f64,f64,)> for CreateSliderInternalType {
7113    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
7114        createSlider2597645979.call(args)
7115    }
7116}
7117
7118#[wasm_bindgen]
7119extern {
7120    #[wasm_bindgen(js_name = "createSlider")]
7121    fn createSlider104756977(_ : f64, _ : f64, _ : f64, ) ->  Element;
7122}
7123
7124#[doc(hidden)]
7125impl FnOnce<(f64,f64,f64,)> for CreateSliderInternalType {
7126    type Output =  Element;
7127    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
7128        createSlider104756977.call(args)
7129    }
7130}
7131
7132#[doc(hidden)]
7133impl FnMut<(f64,f64,f64,)> for CreateSliderInternalType {
7134    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
7135        createSlider104756977.call(args)
7136    }
7137}
7138
7139#[doc(hidden)]
7140impl Fn<(f64,f64,f64,)> for CreateSliderInternalType {
7141    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
7142        createSlider104756977.call(args)
7143    }
7144}
7145
7146#[wasm_bindgen]
7147extern {
7148    #[wasm_bindgen(js_name = "createSlider")]
7149    fn createSlider337851529(_ : f64, _ : f64, ) ->  Element;
7150}
7151
7152#[doc(hidden)]
7153impl FnOnce<(f64,f64,)> for CreateSliderInternalType {
7154    type Output =  Element;
7155    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
7156        createSlider337851529.call(args)
7157    }
7158}
7159
7160#[doc(hidden)]
7161impl FnMut<(f64,f64,)> for CreateSliderInternalType {
7162    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
7163        createSlider337851529.call(args)
7164    }
7165}
7166
7167#[doc(hidden)]
7168impl Fn<(f64,f64,)> for CreateSliderInternalType {
7169    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
7170        createSlider337851529.call(args)
7171    }
7172}
7173#[doc=r##"<p>Creates a button element in the DOM.
7174Use .size() to set the display size of the button.
7175Use .mousePressed() to specify behavior on press.</p>
7176"##]
7177///<h2>Examples</h2>
7178///
7179
7180#[doc=r###"```rust
7181let button;
7182function setup() {
7183  createCanvas(100, 100);
7184  background(0);
7185  button = createButton('click me');
7186  button.position(19, 19);
7187  button.mousePressed(changeBG);
7188}
7189
7190function changeBG() {
7191  let val = random(255);
7192  background(val);
7193}
7194```"###]
7195/// <h2>Parameters</h2>
7196///
7197#[doc = r##"<code>label</code> label displayed on the button
7198
7199"##]
7200///
7201///
7202#[doc = r##"<code>value?</code> value of the button
7203
7204"##]
7205///
7206
7207pub static createButton: CreateButtonInternalType = CreateButtonInternalType;
7208#[doc(hidden)]
7209pub struct CreateButtonInternalType;
7210
7211
7212#[wasm_bindgen]
7213extern {
7214    #[wasm_bindgen(js_name = "createButton")]
7215    fn createButton962234210(_ : & str, _ : & str, ) ->  Element;
7216}
7217
7218#[doc(hidden)]
7219impl FnOnce<(&'_ str,&'_ str,)> for CreateButtonInternalType {
7220    type Output =  Element;
7221    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
7222        createButton962234210.call(args)
7223    }
7224}
7225
7226#[doc(hidden)]
7227impl FnMut<(&'_ str,&'_ str,)> for CreateButtonInternalType {
7228    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
7229        createButton962234210.call(args)
7230    }
7231}
7232
7233#[doc(hidden)]
7234impl Fn<(&'_ str,&'_ str,)> for CreateButtonInternalType {
7235    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
7236        createButton962234210.call(args)
7237    }
7238}
7239
7240#[wasm_bindgen]
7241extern {
7242    #[wasm_bindgen(js_name = "createButton")]
7243    fn createButton2120256578(_ : & str, ) ->  Element;
7244}
7245
7246#[doc(hidden)]
7247impl FnOnce<(&'_ str,)> for CreateButtonInternalType {
7248    type Output =  Element;
7249    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
7250        createButton2120256578.call(args)
7251    }
7252}
7253
7254#[doc(hidden)]
7255impl FnMut<(&'_ str,)> for CreateButtonInternalType {
7256    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
7257        createButton2120256578.call(args)
7258    }
7259}
7260
7261#[doc(hidden)]
7262impl Fn<(&'_ str,)> for CreateButtonInternalType {
7263    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
7264        createButton2120256578.call(args)
7265    }
7266}
7267#[doc=r##"<p>Creates a checkbox input element in the DOM.
7268Calling .checked() on a checkbox returns if it is checked or not</p>
7269"##]
7270///<h2>Examples</h2>
7271///
7272
7273#[doc=r###"```rust
7274let checkbox;
7275
7276function setup() {
7277  checkbox = createCheckbox('label', false);
7278  checkbox.changed(myCheckedEvent);
7279}
7280
7281function myCheckedEvent() {
7282  if (this.checked()) {
7283    console.log('Checking!');
7284  } else {
7285    console.log('Unchecking!');
7286  }
7287}
7288```"###]
7289/// <h2>Parameters</h2>
7290///
7291#[doc = r##"<code>label?</code> label displayed after checkbox
7292
7293"##]
7294///
7295///
7296#[doc = r##"<code>value?</code> value of the checkbox; checked is true, unchecked is false
7297
7298"##]
7299///
7300
7301pub static createCheckbox: CreateCheckboxInternalType = CreateCheckboxInternalType;
7302#[doc(hidden)]
7303pub struct CreateCheckboxInternalType;
7304
7305
7306#[wasm_bindgen]
7307extern {
7308    #[wasm_bindgen(js_name = "createCheckbox")]
7309    fn createCheckbox2612799455(_ : & str, _ : bool, ) ->  Element;
7310}
7311
7312#[doc(hidden)]
7313impl FnOnce<(&'_ str,bool,)> for CreateCheckboxInternalType {
7314    type Output =  Element;
7315    extern "rust-call" fn call_once(self, args: (&'_ str,bool,)) -> Self::Output {
7316        createCheckbox2612799455.call(args)
7317    }
7318}
7319
7320#[doc(hidden)]
7321impl FnMut<(&'_ str,bool,)> for CreateCheckboxInternalType {
7322    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,)) -> Self::Output {
7323        createCheckbox2612799455.call(args)
7324    }
7325}
7326
7327#[doc(hidden)]
7328impl Fn<(&'_ str,bool,)> for CreateCheckboxInternalType {
7329    extern "rust-call" fn call(&self, args: (&'_ str,bool,)) -> Self::Output {
7330        createCheckbox2612799455.call(args)
7331    }
7332}
7333
7334#[wasm_bindgen]
7335extern {
7336    #[wasm_bindgen(js_name = "createCheckbox")]
7337    fn createCheckbox2724572597(_ : & str, ) ->  Element;
7338}
7339
7340#[doc(hidden)]
7341impl FnOnce<(&'_ str,)> for CreateCheckboxInternalType {
7342    type Output =  Element;
7343    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
7344        createCheckbox2724572597.call(args)
7345    }
7346}
7347
7348#[doc(hidden)]
7349impl FnMut<(&'_ str,)> for CreateCheckboxInternalType {
7350    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
7351        createCheckbox2724572597.call(args)
7352    }
7353}
7354
7355#[doc(hidden)]
7356impl Fn<(&'_ str,)> for CreateCheckboxInternalType {
7357    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
7358        createCheckbox2724572597.call(args)
7359    }
7360}
7361
7362#[wasm_bindgen]
7363extern {
7364    #[wasm_bindgen(js_name = "createCheckbox")]
7365    fn createCheckbox2693872504() ->  Element;
7366}
7367
7368#[doc(hidden)]
7369impl FnOnce<()> for CreateCheckboxInternalType {
7370    type Output =  Element;
7371    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
7372        createCheckbox2693872504.call(args)
7373    }
7374}
7375
7376#[doc(hidden)]
7377impl FnMut<()> for CreateCheckboxInternalType {
7378    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
7379        createCheckbox2693872504.call(args)
7380    }
7381}
7382
7383#[doc(hidden)]
7384impl Fn<()> for CreateCheckboxInternalType {
7385    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
7386        createCheckbox2693872504.call(args)
7387    }
7388}
7389#[doc=r##"<p>Creates a dropdown menu select element in the DOM.
7390It also helps to assign select-box methods to <a href="#/p5.Element">p5.Element</a> when selecting existing select box.</p>
7391<ul>
7392<li><code>.option(name, [value])</code> can be used to set options for the select after it is created.</li>
7393<li><code>.value()</code> will return the currently selected option.</li>
7394<li><code>.selected()</code> will return current dropdown element which is an instance of <a href="#/p5.Element">p5.Element</a></li>
7395<li><code>.selected(value)</code> can be used to make given option selected by default when the page first loads.</li>
7396<li><code>.disable()</code> marks whole of dropdown element as disabled.</li>
7397<li><code>.disable(value)</code> marks given option as disabled</li>
7398</ul>
7399"##]
7400///<h2>Examples</h2>
7401///
7402
7403#[doc=r###"```rust
7404let sel;
7405
7406function setup() {
7407  textAlign(CENTER);
7408  background(200);
7409  sel = createSelect();
7410  sel.position(10, 10);
7411  sel.option('pear');
7412  sel.option('kiwi');
7413  sel.option('grape');
7414  sel.selected('kiwi');
7415  sel.changed(mySelectEvent);
7416}
7417
7418function mySelectEvent() {
7419  let item = sel.value();
7420  background(200);
7421  text('It is a ' + item + '!', 50, 50);
7422}
7423```"###]
7424#[doc=r###"```rust
7425let sel;
7426
7427function setup() {
7428  textAlign(CENTER);
7429  background(200);
7430  sel = createSelect();
7431  sel.position(10, 10);
7432  sel.option('oil');
7433  sel.option('milk');
7434  sel.option('bread');
7435  sel.disable('milk');
7436}
7437```"###]
7438/// <h2>Overloads</h2>
7439///
7440#[doc = r##"<code>multiple?</code> true if dropdown should support multiple selections
7441
7442"##]
7443///
7444///
7445/// ---
7446///
7447///
7448#[doc = r##"<code>existing</code> DOM select element
7449
7450"##]
7451///
7452///
7453/// ---
7454///
7455
7456pub static createSelect: CreateSelectInternalType = CreateSelectInternalType;
7457#[doc(hidden)]
7458pub struct CreateSelectInternalType;
7459
7460
7461#[wasm_bindgen]
7462extern {
7463    #[wasm_bindgen(js_name = "createSelect")]
7464    fn createSelect3213040229(_ : bool, ) ->  Element;
7465}
7466
7467#[doc(hidden)]
7468impl FnOnce<(bool,)> for CreateSelectInternalType {
7469    type Output =  Element;
7470    extern "rust-call" fn call_once(self, args: (bool,)) -> Self::Output {
7471        createSelect3213040229.call(args)
7472    }
7473}
7474
7475#[doc(hidden)]
7476impl FnMut<(bool,)> for CreateSelectInternalType {
7477    extern "rust-call" fn call_mut(&mut self, args: (bool,)) -> Self::Output {
7478        createSelect3213040229.call(args)
7479    }
7480}
7481
7482#[doc(hidden)]
7483impl Fn<(bool,)> for CreateSelectInternalType {
7484    extern "rust-call" fn call(&self, args: (bool,)) -> Self::Output {
7485        createSelect3213040229.call(args)
7486    }
7487}
7488
7489#[wasm_bindgen]
7490extern {
7491    #[wasm_bindgen(js_name = "createSelect")]
7492    fn createSelect3069567093() ->  Element;
7493}
7494
7495#[doc(hidden)]
7496impl FnOnce<()> for CreateSelectInternalType {
7497    type Output =  Element;
7498    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
7499        createSelect3069567093.call(args)
7500    }
7501}
7502
7503#[doc(hidden)]
7504impl FnMut<()> for CreateSelectInternalType {
7505    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
7506        createSelect3069567093.call(args)
7507    }
7508}
7509
7510#[doc(hidden)]
7511impl Fn<()> for CreateSelectInternalType {
7512    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
7513        createSelect3069567093.call(args)
7514    }
7515}
7516
7517#[wasm_bindgen]
7518extern {
7519    #[wasm_bindgen(js_name = "createSelect")]
7520    fn createSelect3941036233(_ : JsValue, ) ->  Element;
7521}
7522
7523#[doc(hidden)]
7524impl FnOnce<(JsValue,)> for CreateSelectInternalType {
7525    type Output =  Element;
7526    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
7527        createSelect3941036233.call(args)
7528    }
7529}
7530
7531#[doc(hidden)]
7532impl FnMut<(JsValue,)> for CreateSelectInternalType {
7533    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
7534        createSelect3941036233.call(args)
7535    }
7536}
7537
7538#[doc(hidden)]
7539impl Fn<(JsValue,)> for CreateSelectInternalType {
7540    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
7541        createSelect3941036233.call(args)
7542    }
7543}
7544#[doc=r##"<p>Creates a radio button element in the DOM.It also helps existing radio buttons
7545assign methods of <a href="#/p5.Element/">p5.Element</a>.</p>
7546<ul>
7547<li><code>.option(value, [label])</code> can be used to create a new option for the
7548element. If an option with a value already exists, it will be returned.
7549Optionally, a label can be provided as second argument for the option.</li>
7550<li><code>.remove(value)</code> can be used to remove an option for the element.</li>
7551<li><code>.value()</code> method will return the currently selected value.</li>
7552<li><code>.selected()</code> method will return the currently selected input element.</li>
7553<li><code>.selected(value)</code> method will select the option and return it.</li>
7554<li><code>.disable(Boolean)</code> method will enable/disable the whole radio button element.</li>
7555</ul>
7556"##]
7557///<h2>Examples</h2>
7558///
7559
7560#[doc=r###"```rust
7561let radio;
7562
7563function setup() {
7564  radio = createRadio();
7565  radio.option('black');
7566  radio.option('white');
7567  radio.option('gray');
7568  radio.style('width', '60px');
7569  textAlign(CENTER);
7570  fill(255, 0, 0);
7571}
7572
7573function draw() {
7574  let val = radio.value();
7575  background(val);
7576  text(val, width / 2, height / 2);
7577}
7578```"###]
7579#[doc=r###"```rust
7580let radio;
7581
7582function setup() {
7583  radio = createRadio();
7584  radio.option('apple', 1);
7585  radio.option('bread', 2);
7586  radio.option('juice', 3);
7587  radio.style('width', '60px');
7588  textAlign(CENTER);
7589}
7590
7591function draw() {
7592  background(200);
7593  let val = radio.value();
7594  if (val) {
7595    text('item cost is $' + val, width / 2, height / 2);
7596  }
7597}
7598```"###]
7599/// <h2>Overloads</h2>
7600///
7601#[doc = r##"<code>containerElement</code> An container HTML Element either a div
7602or span inside which all existing radio inputs will be considered as options.
7603
7604"##]
7605///
7606///
7607#[doc = r##"<code>name?</code> A name parameter for each Input Element.
7608
7609"##]
7610///
7611///
7612/// ---
7613///
7614///
7615#[doc = r##"<code>name</code> A name parameter for each Input Element.
7616
7617"##]
7618///
7619///
7620/// ---
7621///
7622///
7623/// ---
7624///
7625
7626pub static createRadio: CreateRadioInternalType = CreateRadioInternalType;
7627#[doc(hidden)]
7628pub struct CreateRadioInternalType;
7629
7630
7631#[wasm_bindgen]
7632extern {
7633    #[wasm_bindgen(js_name = "createRadio")]
7634    fn createRadio2589313030(_ : JsValue, _ : & str, ) ->  Element;
7635}
7636
7637#[doc(hidden)]
7638impl FnOnce<(JsValue,&'_ str,)> for CreateRadioInternalType {
7639    type Output =  Element;
7640    extern "rust-call" fn call_once(self, args: (JsValue,&'_ str,)) -> Self::Output {
7641        createRadio2589313030.call(args)
7642    }
7643}
7644
7645#[doc(hidden)]
7646impl FnMut<(JsValue,&'_ str,)> for CreateRadioInternalType {
7647    extern "rust-call" fn call_mut(&mut self, args: (JsValue,&'_ str,)) -> Self::Output {
7648        createRadio2589313030.call(args)
7649    }
7650}
7651
7652#[doc(hidden)]
7653impl Fn<(JsValue,&'_ str,)> for CreateRadioInternalType {
7654    extern "rust-call" fn call(&self, args: (JsValue,&'_ str,)) -> Self::Output {
7655        createRadio2589313030.call(args)
7656    }
7657}
7658
7659#[wasm_bindgen]
7660extern {
7661    #[wasm_bindgen(js_name = "createRadio")]
7662    fn createRadio181511804(_ : JsValue, ) ->  Element;
7663}
7664
7665#[doc(hidden)]
7666impl FnOnce<(JsValue,)> for CreateRadioInternalType {
7667    type Output =  Element;
7668    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
7669        createRadio181511804.call(args)
7670    }
7671}
7672
7673#[doc(hidden)]
7674impl FnMut<(JsValue,)> for CreateRadioInternalType {
7675    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
7676        createRadio181511804.call(args)
7677    }
7678}
7679
7680#[doc(hidden)]
7681impl Fn<(JsValue,)> for CreateRadioInternalType {
7682    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
7683        createRadio181511804.call(args)
7684    }
7685}
7686
7687#[wasm_bindgen]
7688extern {
7689    #[wasm_bindgen(js_name = "createRadio")]
7690    fn createRadio523430953(_ : & str, ) ->  Element;
7691}
7692
7693#[doc(hidden)]
7694impl FnOnce<(&'_ str,)> for CreateRadioInternalType {
7695    type Output =  Element;
7696    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
7697        createRadio523430953.call(args)
7698    }
7699}
7700
7701#[doc(hidden)]
7702impl FnMut<(&'_ str,)> for CreateRadioInternalType {
7703    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
7704        createRadio523430953.call(args)
7705    }
7706}
7707
7708#[doc(hidden)]
7709impl Fn<(&'_ str,)> for CreateRadioInternalType {
7710    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
7711        createRadio523430953.call(args)
7712    }
7713}
7714
7715#[wasm_bindgen]
7716extern {
7717    #[wasm_bindgen(js_name = "createRadio")]
7718    fn createRadio3801259081() ->  Element;
7719}
7720
7721#[doc(hidden)]
7722impl FnOnce<()> for CreateRadioInternalType {
7723    type Output =  Element;
7724    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
7725        createRadio3801259081.call(args)
7726    }
7727}
7728
7729#[doc(hidden)]
7730impl FnMut<()> for CreateRadioInternalType {
7731    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
7732        createRadio3801259081.call(args)
7733    }
7734}
7735
7736#[doc(hidden)]
7737impl Fn<()> for CreateRadioInternalType {
7738    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
7739        createRadio3801259081.call(args)
7740    }
7741}
7742#[doc=r##"<p>Creates a colorPicker element in the DOM for color input.
7743The .value() method will return a hex string (#rrggbb) of the color.
7744The .color() method will return a p5.Color object with the current chosen color.</p>
7745"##]
7746///<h2>Examples</h2>
7747///
7748
7749#[doc=r###"```rust
7750let colorPicker;
7751function setup() {
7752  createCanvas(100, 100);
7753  colorPicker = createColorPicker('#ed225d');
7754  colorPicker.position(0, height + 5);
7755}
7756
7757function draw() {
7758  background(colorPicker.color());
7759}
7760```"###]
7761#[doc=r###"```rust
7762let inp1, inp2;
7763function setup() {
7764  createCanvas(100, 100);
7765  background('grey');
7766  inp1 = createColorPicker('#ff0000');
7767  inp1.position(0, height + 5);
7768  inp1.input(setShade1);
7769  inp2 = createColorPicker(color('yellow'));
7770  inp2.position(0, height + 30);
7771  inp2.input(setShade2);
7772  setMidShade();
7773}
7774
7775function setMidShade() {
7776  // Finding a shade between the two
7777  let commonShade = lerpColor(inp1.color(), inp2.color(), 0.5);
7778  fill(commonShade);
7779  rect(20, 20, 60, 60);
7780}
7781
7782function setShade1() {
7783  setMidShade();
7784  console.log('You are choosing shade 1 to be : ', this.value());
7785}
7786function setShade2() {
7787  setMidShade();
7788  console.log('You are choosing shade 2 to be : ', this.value());
7789}
7790```"###]
7791/// <h2>Parameters</h2>
7792///
7793#[doc = r##"<code>value?</code> default color of element
7794
7795"##]
7796///
7797
7798pub static createColorPicker: CreateColorPickerInternalType = CreateColorPickerInternalType;
7799#[doc(hidden)]
7800pub struct CreateColorPickerInternalType;
7801
7802
7803#[wasm_bindgen]
7804extern {
7805    #[wasm_bindgen(js_name = "createColorPicker")]
7806    fn createColorPicker3994785039(_ : & str, ) ->  Element;
7807}
7808
7809#[doc(hidden)]
7810impl FnOnce<(&'_ str,)> for CreateColorPickerInternalType {
7811    type Output =  Element;
7812    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
7813        createColorPicker3994785039.call(args)
7814    }
7815}
7816
7817#[doc(hidden)]
7818impl FnMut<(&'_ str,)> for CreateColorPickerInternalType {
7819    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
7820        createColorPicker3994785039.call(args)
7821    }
7822}
7823
7824#[doc(hidden)]
7825impl Fn<(&'_ str,)> for CreateColorPickerInternalType {
7826    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
7827        createColorPicker3994785039.call(args)
7828    }
7829}
7830
7831#[wasm_bindgen]
7832extern {
7833    #[wasm_bindgen(js_name = "createColorPicker")]
7834    fn createColorPicker2008390283(_ : & Color, ) ->  Element;
7835}
7836
7837#[doc(hidden)]
7838impl FnOnce<(&'_ Color,)> for CreateColorPickerInternalType {
7839    type Output =  Element;
7840    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
7841        createColorPicker2008390283.call(args)
7842    }
7843}
7844
7845#[doc(hidden)]
7846impl FnMut<(&'_ Color,)> for CreateColorPickerInternalType {
7847    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
7848        createColorPicker2008390283.call(args)
7849    }
7850}
7851
7852#[doc(hidden)]
7853impl Fn<(&'_ Color,)> for CreateColorPickerInternalType {
7854    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
7855        createColorPicker2008390283.call(args)
7856    }
7857}
7858
7859#[wasm_bindgen]
7860extern {
7861    #[wasm_bindgen(js_name = "createColorPicker")]
7862    fn createColorPicker2765651385() ->  Element;
7863}
7864
7865#[doc(hidden)]
7866impl FnOnce<()> for CreateColorPickerInternalType {
7867    type Output =  Element;
7868    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
7869        createColorPicker2765651385.call(args)
7870    }
7871}
7872
7873#[doc(hidden)]
7874impl FnMut<()> for CreateColorPickerInternalType {
7875    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
7876        createColorPicker2765651385.call(args)
7877    }
7878}
7879
7880#[doc(hidden)]
7881impl Fn<()> for CreateColorPickerInternalType {
7882    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
7883        createColorPicker2765651385.call(args)
7884    }
7885}
7886#[doc=r##"<p>Creates an input element in the DOM for text input.
7887Use .<a href="#/p5.Element/size">size()</a> to set the display length of the box.</p>
7888"##]
7889///<h2>Examples</h2>
7890///
7891
7892#[doc=r###"```rust
7893function setup() {
7894  let inp = createInput('');
7895  inp.input(myInputEvent);
7896}
7897
7898function myInputEvent() {
7899  console.log('you are typing: ', this.value());
7900}
7901```"###]
7902/// <h2>Overloads</h2>
7903///
7904#[doc = r##"<code>value</code> default value of the input box
7905
7906"##]
7907///
7908///
7909#[doc = r##"<code>type?</code> type of text, ie text, password etc. Defaults to text.
7910  Needs a value to be specified first.
7911
7912"##]
7913///
7914///
7915/// ---
7916///
7917///
7918#[doc = r##"<code>value?</code> default value of the input box
7919
7920"##]
7921///
7922///
7923/// ---
7924///
7925
7926pub static createInput: CreateInputInternalType = CreateInputInternalType;
7927#[doc(hidden)]
7928pub struct CreateInputInternalType;
7929
7930
7931#[wasm_bindgen]
7932extern {
7933    #[wasm_bindgen(js_name = "createInput")]
7934    fn createInput1863055049(_ : & str, _ : & str, ) ->  Element;
7935}
7936
7937#[doc(hidden)]
7938impl FnOnce<(&'_ str,&'_ str,)> for CreateInputInternalType {
7939    type Output =  Element;
7940    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
7941        createInput1863055049.call(args)
7942    }
7943}
7944
7945#[doc(hidden)]
7946impl FnMut<(&'_ str,&'_ str,)> for CreateInputInternalType {
7947    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
7948        createInput1863055049.call(args)
7949    }
7950}
7951
7952#[doc(hidden)]
7953impl Fn<(&'_ str,&'_ str,)> for CreateInputInternalType {
7954    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
7955        createInput1863055049.call(args)
7956    }
7957}
7958
7959#[wasm_bindgen]
7960extern {
7961    #[wasm_bindgen(js_name = "createInput")]
7962    fn createInput3457380236(_ : & str, ) ->  Element;
7963}
7964
7965#[doc(hidden)]
7966impl FnOnce<(&'_ str,)> for CreateInputInternalType {
7967    type Output =  Element;
7968    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
7969        createInput3457380236.call(args)
7970    }
7971}
7972
7973#[doc(hidden)]
7974impl FnMut<(&'_ str,)> for CreateInputInternalType {
7975    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
7976        createInput3457380236.call(args)
7977    }
7978}
7979
7980#[doc(hidden)]
7981impl Fn<(&'_ str,)> for CreateInputInternalType {
7982    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
7983        createInput3457380236.call(args)
7984    }
7985}
7986
7987#[wasm_bindgen]
7988extern {
7989    #[wasm_bindgen(js_name = "createInput")]
7990    fn createInput1975963094() ->  Element;
7991}
7992
7993#[doc(hidden)]
7994impl FnOnce<()> for CreateInputInternalType {
7995    type Output =  Element;
7996    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
7997        createInput1975963094.call(args)
7998    }
7999}
8000
8001#[doc(hidden)]
8002impl FnMut<()> for CreateInputInternalType {
8003    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
8004        createInput1975963094.call(args)
8005    }
8006}
8007
8008#[doc(hidden)]
8009impl Fn<()> for CreateInputInternalType {
8010    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
8011        createInput1975963094.call(args)
8012    }
8013}
8014#[doc=r##"<p>Creates an input element in the DOM of type 'file'.
8015This allows users to select local files for use in a sketch.</p>
8016"##]
8017///<h2>Examples</h2>
8018///
8019
8020#[doc=r###"```rust
8021let input;
8022let img;
8023
8024function setup() {
8025  input = createFileInput(handleFile);
8026  input.position(0, 0);
8027}
8028
8029function draw() {
8030  background(255);
8031  if (img) {
8032    image(img, 0, 0, width, height);
8033  }
8034}
8035
8036function handleFile(file) {
8037  print(file);
8038  if (file.type === 'image') {
8039    img = createImg(file.data, '');
8040    img.hide();
8041  } else {
8042    img = null;
8043  }
8044}
8045```"###]
8046/// <h2>Parameters</h2>
8047///
8048#[doc = r##"<code>callback</code> callback function for when a file is loaded
8049
8050"##]
8051///
8052///
8053#[doc = r##"<code>multiple?</code> optional, to allow multiple files to be selected
8054
8055"##]
8056///
8057
8058pub static createFileInput: CreateFileInputInternalType = CreateFileInputInternalType;
8059#[doc(hidden)]
8060pub struct CreateFileInputInternalType;
8061
8062
8063#[wasm_bindgen]
8064extern {
8065    #[wasm_bindgen(js_name = "createFileInput")]
8066    fn createFileInput3973033111(_ : js_sys::Function, _ : bool, ) ->  Element;
8067}
8068
8069#[doc(hidden)]
8070impl FnOnce<(js_sys::Function,bool,)> for CreateFileInputInternalType {
8071    type Output =  Element;
8072    extern "rust-call" fn call_once(self, args: (js_sys::Function,bool,)) -> Self::Output {
8073        createFileInput3973033111.call(args)
8074    }
8075}
8076
8077#[doc(hidden)]
8078impl FnMut<(js_sys::Function,bool,)> for CreateFileInputInternalType {
8079    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Function,bool,)) -> Self::Output {
8080        createFileInput3973033111.call(args)
8081    }
8082}
8083
8084#[doc(hidden)]
8085impl Fn<(js_sys::Function,bool,)> for CreateFileInputInternalType {
8086    extern "rust-call" fn call(&self, args: (js_sys::Function,bool,)) -> Self::Output {
8087        createFileInput3973033111.call(args)
8088    }
8089}
8090
8091#[wasm_bindgen]
8092extern {
8093    #[wasm_bindgen(js_name = "createFileInput")]
8094    fn createFileInput3459209525(_ : js_sys::Function, ) ->  Element;
8095}
8096
8097#[doc(hidden)]
8098impl FnOnce<(js_sys::Function,)> for CreateFileInputInternalType {
8099    type Output =  Element;
8100    extern "rust-call" fn call_once(self, args: (js_sys::Function,)) -> Self::Output {
8101        createFileInput3459209525.call(args)
8102    }
8103}
8104
8105#[doc(hidden)]
8106impl FnMut<(js_sys::Function,)> for CreateFileInputInternalType {
8107    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Function,)) -> Self::Output {
8108        createFileInput3459209525.call(args)
8109    }
8110}
8111
8112#[doc(hidden)]
8113impl Fn<(js_sys::Function,)> for CreateFileInputInternalType {
8114    extern "rust-call" fn call(&self, args: (js_sys::Function,)) -> Self::Output {
8115        createFileInput3459209525.call(args)
8116    }
8117}
8118#[doc=r##"<p>Creates an HTML5 video element in the DOM for simple playback
8119of audio/video. Shown by default, can be hidden with .<a href="#/p5.Element/hide">hide()</a>
8120and drawn into canvas using <a href="#/p5/image">image()</a>. The first parameter
8121can be either a single string path to a video file, or an array of string
8122paths to different formats of the same video. This is useful for ensuring
8123that your video can play across different browsers, as each supports
8124different formats. See <a href='https://developer.mozilla.org/en-US/docs/Web/HTML/Supported_media_formats'>this
8125page</a> for further information about supported formats.</p>
8126"##]
8127///<h2>Examples</h2>
8128///
8129
8130#[doc=r###"```rust
8131let vid;
8132function setup() {
8133  noCanvas();
8134
8135  vid = createVideo(
8136    ['assets/small.mp4', 'assets/small.ogv', 'assets/small.webm'],
8137    vidLoad
8138  );
8139
8140  vid.size(100, 100);
8141}
8142
8143// This function is called when the video loads
8144function vidLoad() {
8145  vid.loop();
8146  vid.volume(0);
8147}
8148```"###]
8149/// <h2>Parameters</h2>
8150///
8151#[doc = r##"<code>src</code> path to a video file, or array of paths for
8152                            supporting different browsers
8153
8154"##]
8155///
8156///
8157#[doc = r##"<code>callback?</code> callback function to be called upon
8158                            'canplaythrough' event fire, that is, when the
8159                            browser can play the media, and estimates that
8160                            enough data has been loaded to play the media
8161                            up to its end without having to stop for
8162                            further buffering of content
8163
8164"##]
8165///
8166
8167pub static createVideo: CreateVideoInternalType = CreateVideoInternalType;
8168#[doc(hidden)]
8169pub struct CreateVideoInternalType;
8170
8171
8172#[wasm_bindgen]
8173extern {
8174    #[wasm_bindgen(js_name = "createVideo")]
8175    fn createVideo3258337539(_ : & str, _ : js_sys::Function, ) ->  MediaElement;
8176}
8177
8178#[doc(hidden)]
8179impl FnOnce<(&'_ str,js_sys::Function,)> for CreateVideoInternalType {
8180    type Output =  MediaElement;
8181    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8182        createVideo3258337539.call(args)
8183    }
8184}
8185
8186#[doc(hidden)]
8187impl FnMut<(&'_ str,js_sys::Function,)> for CreateVideoInternalType {
8188    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8189        createVideo3258337539.call(args)
8190    }
8191}
8192
8193#[doc(hidden)]
8194impl Fn<(&'_ str,js_sys::Function,)> for CreateVideoInternalType {
8195    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8196        createVideo3258337539.call(args)
8197    }
8198}
8199
8200#[wasm_bindgen]
8201extern {
8202    #[wasm_bindgen(js_name = "createVideo")]
8203    fn createVideo3915665156(_ : & str, ) ->  MediaElement;
8204}
8205
8206#[doc(hidden)]
8207impl FnOnce<(&'_ str,)> for CreateVideoInternalType {
8208    type Output =  MediaElement;
8209    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
8210        createVideo3915665156.call(args)
8211    }
8212}
8213
8214#[doc(hidden)]
8215impl FnMut<(&'_ str,)> for CreateVideoInternalType {
8216    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
8217        createVideo3915665156.call(args)
8218    }
8219}
8220
8221#[doc(hidden)]
8222impl Fn<(&'_ str,)> for CreateVideoInternalType {
8223    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
8224        createVideo3915665156.call(args)
8225    }
8226}
8227
8228#[wasm_bindgen]
8229extern {
8230    #[wasm_bindgen(js_name = "createVideo")]
8231    fn createVideo1261313333(_ : js_sys::Array, _ : js_sys::Function, ) ->  MediaElement;
8232}
8233
8234#[doc(hidden)]
8235impl FnOnce<(js_sys::Array,js_sys::Function,)> for CreateVideoInternalType {
8236    type Output =  MediaElement;
8237    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
8238        createVideo1261313333.call(args)
8239    }
8240}
8241
8242#[doc(hidden)]
8243impl FnMut<(js_sys::Array,js_sys::Function,)> for CreateVideoInternalType {
8244    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
8245        createVideo1261313333.call(args)
8246    }
8247}
8248
8249#[doc(hidden)]
8250impl Fn<(js_sys::Array,js_sys::Function,)> for CreateVideoInternalType {
8251    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
8252        createVideo1261313333.call(args)
8253    }
8254}
8255
8256#[wasm_bindgen]
8257extern {
8258    #[wasm_bindgen(js_name = "createVideo")]
8259    fn createVideo3417948512(_ : js_sys::Array, ) ->  MediaElement;
8260}
8261
8262#[doc(hidden)]
8263impl FnOnce<(js_sys::Array,)> for CreateVideoInternalType {
8264    type Output =  MediaElement;
8265    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
8266        createVideo3417948512.call(args)
8267    }
8268}
8269
8270#[doc(hidden)]
8271impl FnMut<(js_sys::Array,)> for CreateVideoInternalType {
8272    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
8273        createVideo3417948512.call(args)
8274    }
8275}
8276
8277#[doc(hidden)]
8278impl Fn<(js_sys::Array,)> for CreateVideoInternalType {
8279    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
8280        createVideo3417948512.call(args)
8281    }
8282}
8283#[doc=r##"<p>Creates a hidden HTML5 <audio> element in the DOM for simple audio
8284playback. The first parameter can be either a single string path to a
8285audio file, or an array of string paths to different formats of the same
8286audio. This is useful for ensuring that your audio can play across
8287different browsers, as each supports different formats.
8288See <a href='https://developer.mozilla.org/en-US/docs/Web/HTML/Supported_media_formats'>this
8289page for further information about supported formats</a>.</p>
8290"##]
8291///<h2>Examples</h2>
8292///
8293
8294#[doc=r###"```rust
8295let ele;
8296function setup() {
8297  ele = createAudio('assets/beat.mp3');
8298
8299  // here we set the element to autoplay
8300  // The element will play as soon
8301  // as it is able to do so.
8302  ele.autoplay(true);
8303}
8304```"###]
8305/// <h2>Parameters</h2>
8306///
8307#[doc = r##"<code>src?</code> path to an audio file, or array of paths
8308                            for supporting different browsers
8309
8310"##]
8311///
8312///
8313#[doc = r##"<code>callback?</code> callback function to be called upon
8314                            'canplaythrough' event fire, that is, when the
8315                            browser can play the media, and estimates that
8316                            enough data has been loaded to play the media
8317                            up to its end without having to stop for
8318                            further buffering of content
8319
8320"##]
8321///
8322
8323pub static createAudio: CreateAudioInternalType = CreateAudioInternalType;
8324#[doc(hidden)]
8325pub struct CreateAudioInternalType;
8326
8327
8328#[wasm_bindgen]
8329extern {
8330    #[wasm_bindgen(js_name = "createAudio")]
8331    fn createAudio3940120517(_ : & str, _ : js_sys::Function, ) ->  MediaElement;
8332}
8333
8334#[doc(hidden)]
8335impl FnOnce<(&'_ str,js_sys::Function,)> for CreateAudioInternalType {
8336    type Output =  MediaElement;
8337    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8338        createAudio3940120517.call(args)
8339    }
8340}
8341
8342#[doc(hidden)]
8343impl FnMut<(&'_ str,js_sys::Function,)> for CreateAudioInternalType {
8344    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8345        createAudio3940120517.call(args)
8346    }
8347}
8348
8349#[doc(hidden)]
8350impl Fn<(&'_ str,js_sys::Function,)> for CreateAudioInternalType {
8351    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8352        createAudio3940120517.call(args)
8353    }
8354}
8355
8356#[wasm_bindgen]
8357extern {
8358    #[wasm_bindgen(js_name = "createAudio")]
8359    fn createAudio2143749912(_ : & str, ) ->  MediaElement;
8360}
8361
8362#[doc(hidden)]
8363impl FnOnce<(&'_ str,)> for CreateAudioInternalType {
8364    type Output =  MediaElement;
8365    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
8366        createAudio2143749912.call(args)
8367    }
8368}
8369
8370#[doc(hidden)]
8371impl FnMut<(&'_ str,)> for CreateAudioInternalType {
8372    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
8373        createAudio2143749912.call(args)
8374    }
8375}
8376
8377#[doc(hidden)]
8378impl Fn<(&'_ str,)> for CreateAudioInternalType {
8379    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
8380        createAudio2143749912.call(args)
8381    }
8382}
8383
8384#[wasm_bindgen]
8385extern {
8386    #[wasm_bindgen(js_name = "createAudio")]
8387    fn createAudio1648180165(_ : js_sys::Array, _ : js_sys::Function, ) ->  MediaElement;
8388}
8389
8390#[doc(hidden)]
8391impl FnOnce<(js_sys::Array,js_sys::Function,)> for CreateAudioInternalType {
8392    type Output =  MediaElement;
8393    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
8394        createAudio1648180165.call(args)
8395    }
8396}
8397
8398#[doc(hidden)]
8399impl FnMut<(js_sys::Array,js_sys::Function,)> for CreateAudioInternalType {
8400    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
8401        createAudio1648180165.call(args)
8402    }
8403}
8404
8405#[doc(hidden)]
8406impl Fn<(js_sys::Array,js_sys::Function,)> for CreateAudioInternalType {
8407    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
8408        createAudio1648180165.call(args)
8409    }
8410}
8411
8412#[wasm_bindgen]
8413extern {
8414    #[wasm_bindgen(js_name = "createAudio")]
8415    fn createAudio1560702386(_ : js_sys::Array, ) ->  MediaElement;
8416}
8417
8418#[doc(hidden)]
8419impl FnOnce<(js_sys::Array,)> for CreateAudioInternalType {
8420    type Output =  MediaElement;
8421    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
8422        createAudio1560702386.call(args)
8423    }
8424}
8425
8426#[doc(hidden)]
8427impl FnMut<(js_sys::Array,)> for CreateAudioInternalType {
8428    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
8429        createAudio1560702386.call(args)
8430    }
8431}
8432
8433#[doc(hidden)]
8434impl Fn<(js_sys::Array,)> for CreateAudioInternalType {
8435    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
8436        createAudio1560702386.call(args)
8437    }
8438}
8439
8440#[wasm_bindgen]
8441extern {
8442    #[wasm_bindgen(js_name = "createAudio")]
8443    fn createAudio3479173020() ->  MediaElement;
8444}
8445
8446#[doc(hidden)]
8447impl FnOnce<()> for CreateAudioInternalType {
8448    type Output =  MediaElement;
8449    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
8450        createAudio3479173020.call(args)
8451    }
8452}
8453
8454#[doc(hidden)]
8455impl FnMut<()> for CreateAudioInternalType {
8456    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
8457        createAudio3479173020.call(args)
8458    }
8459}
8460
8461#[doc(hidden)]
8462impl Fn<()> for CreateAudioInternalType {
8463    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
8464        createAudio3479173020.call(args)
8465    }
8466}
8467#[doc=r##"<p>Creates a new HTML5 video element that contains the audio/video feed
8468from a webcam. The element is separate from the canvas and is displayed by
8469default. The element can be hidden using .<a href="#/p5.Element/hide">hide()</a>.
8470The feed can be drawn onto the canvas using <a href="#/p5/image">image()</a>.
8471The loadedmetadata property can be used to detect when the element has fully
8472loaded (see second example).</p>
8473<p>More specific properties of the feed can be passing in a Constraints object.
8474See the <a href='http://w3c.github.io/mediacapture-main/getusermedia.html#media-track-constraints'>
8475W3C spec</a> for possible properties. Note that not all of these are supported
8476by all browsers.</p>
8477<p><em>Security note</em>: A new browser security specification requires that
8478getUserMedia, which is behind <a href="#/p5/createCapture">createCapture()</a>,
8479only works when you're running the code locally, or on HTTPS. Learn more
8480<a href='http://stackoverflow.com/questions/34197653/getusermedia-in-chrome-47-without-using-https'>here</a>
8481and <a href='https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia'>here</a>.</p>
8482"##]
8483///<h2>Examples</h2>
8484///
8485
8486#[doc=r###"```rust
8487let capture;
8488
8489function setup() {
8490  createCanvas(480, 480);
8491  capture = createCapture(VIDEO);
8492  capture.hide();
8493}
8494
8495function draw() {
8496  image(capture, 0, 0, width, width * capture.height / capture.width);
8497  filter(INVERT);
8498}
8499```"###]
8500#[doc=r###"```rust
8501function setup() {
8502  createCanvas(480, 120);
8503  let constraints = {
8504    video: {
8505      mandatory: {
8506        minWidth: 1280,
8507        minHeight: 720
8508      },
8509      optional: [{ maxFrameRate: 10 }]
8510    },
8511    audio: true
8512  };
8513  createCapture(constraints, function(stream) {
8514    console.log(stream);
8515  });
8516}
8517```"###]
8518#[doc=r###"```rust
8519let capture;
8520
8521function setup() {
8522  createCanvas(640, 480);
8523  capture = createCapture(VIDEO);
8524}
8525function draw() {
8526  background(0);
8527  if (capture.loadedmetadata) {
8528    let c = capture.get(0, 0, 100, 100);
8529    image(c, 0, 0);
8530  }
8531}
8532```"###]
8533/// <h2>Parameters</h2>
8534///
8535#[doc = r##"<code>type</code> type of capture, either VIDEO or
8536                                  AUDIO if none specified, default both,
8537                                  or a Constraints object
8538
8539"##]
8540///
8541///
8542#[doc = r##"<code>callback?</code> function to be called once
8543                                  stream has loaded
8544
8545"##]
8546///
8547
8548pub static createCapture: CreateCaptureInternalType = CreateCaptureInternalType;
8549#[doc(hidden)]
8550pub struct CreateCaptureInternalType;
8551
8552
8553#[wasm_bindgen]
8554extern {
8555    #[wasm_bindgen(js_name = "createCapture")]
8556    fn createCapture2119011069(_ : & str, _ : js_sys::Function, ) ->  Element;
8557}
8558
8559#[doc(hidden)]
8560impl FnOnce<(&'_ str,js_sys::Function,)> for CreateCaptureInternalType {
8561    type Output =  Element;
8562    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8563        createCapture2119011069.call(args)
8564    }
8565}
8566
8567#[doc(hidden)]
8568impl FnMut<(&'_ str,js_sys::Function,)> for CreateCaptureInternalType {
8569    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8570        createCapture2119011069.call(args)
8571    }
8572}
8573
8574#[doc(hidden)]
8575impl Fn<(&'_ str,js_sys::Function,)> for CreateCaptureInternalType {
8576    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
8577        createCapture2119011069.call(args)
8578    }
8579}
8580
8581#[wasm_bindgen]
8582extern {
8583    #[wasm_bindgen(js_name = "createCapture")]
8584    fn createCapture4055711946(_ : & str, ) ->  Element;
8585}
8586
8587#[doc(hidden)]
8588impl FnOnce<(&'_ str,)> for CreateCaptureInternalType {
8589    type Output =  Element;
8590    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
8591        createCapture4055711946.call(args)
8592    }
8593}
8594
8595#[doc(hidden)]
8596impl FnMut<(&'_ str,)> for CreateCaptureInternalType {
8597    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
8598        createCapture4055711946.call(args)
8599    }
8600}
8601
8602#[doc(hidden)]
8603impl Fn<(&'_ str,)> for CreateCaptureInternalType {
8604    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
8605        createCapture4055711946.call(args)
8606    }
8607}
8608
8609#[wasm_bindgen]
8610extern {
8611    #[wasm_bindgen(js_name = "createCapture")]
8612    fn createCapture311323856(_ : TYPE, _ : js_sys::Function, ) ->  Element;
8613}
8614
8615#[doc(hidden)]
8616impl FnOnce<(TYPE,js_sys::Function,)> for CreateCaptureInternalType {
8617    type Output =  Element;
8618    extern "rust-call" fn call_once(self, args: (TYPE,js_sys::Function,)) -> Self::Output {
8619        createCapture311323856.call(args)
8620    }
8621}
8622
8623#[doc(hidden)]
8624impl FnMut<(TYPE,js_sys::Function,)> for CreateCaptureInternalType {
8625    extern "rust-call" fn call_mut(&mut self, args: (TYPE,js_sys::Function,)) -> Self::Output {
8626        createCapture311323856.call(args)
8627    }
8628}
8629
8630#[doc(hidden)]
8631impl Fn<(TYPE,js_sys::Function,)> for CreateCaptureInternalType {
8632    extern "rust-call" fn call(&self, args: (TYPE,js_sys::Function,)) -> Self::Output {
8633        createCapture311323856.call(args)
8634    }
8635}
8636
8637#[wasm_bindgen]
8638extern {
8639    #[wasm_bindgen(js_name = "createCapture")]
8640    fn createCapture3526860611(_ : TYPE, ) ->  Element;
8641}
8642
8643#[doc(hidden)]
8644impl FnOnce<(TYPE,)> for CreateCaptureInternalType {
8645    type Output =  Element;
8646    extern "rust-call" fn call_once(self, args: (TYPE,)) -> Self::Output {
8647        createCapture3526860611.call(args)
8648    }
8649}
8650
8651#[doc(hidden)]
8652impl FnMut<(TYPE,)> for CreateCaptureInternalType {
8653    extern "rust-call" fn call_mut(&mut self, args: (TYPE,)) -> Self::Output {
8654        createCapture3526860611.call(args)
8655    }
8656}
8657
8658#[doc(hidden)]
8659impl Fn<(TYPE,)> for CreateCaptureInternalType {
8660    extern "rust-call" fn call(&self, args: (TYPE,)) -> Self::Output {
8661        createCapture3526860611.call(args)
8662    }
8663}
8664
8665#[wasm_bindgen]
8666extern {
8667    #[wasm_bindgen(js_name = "createCapture")]
8668    fn createCapture2612472108(_ : JsValue, _ : js_sys::Function, ) ->  Element;
8669}
8670
8671#[doc(hidden)]
8672impl FnOnce<(JsValue,js_sys::Function,)> for CreateCaptureInternalType {
8673    type Output =  Element;
8674    extern "rust-call" fn call_once(self, args: (JsValue,js_sys::Function,)) -> Self::Output {
8675        createCapture2612472108.call(args)
8676    }
8677}
8678
8679#[doc(hidden)]
8680impl FnMut<(JsValue,js_sys::Function,)> for CreateCaptureInternalType {
8681    extern "rust-call" fn call_mut(&mut self, args: (JsValue,js_sys::Function,)) -> Self::Output {
8682        createCapture2612472108.call(args)
8683    }
8684}
8685
8686#[doc(hidden)]
8687impl Fn<(JsValue,js_sys::Function,)> for CreateCaptureInternalType {
8688    extern "rust-call" fn call(&self, args: (JsValue,js_sys::Function,)) -> Self::Output {
8689        createCapture2612472108.call(args)
8690    }
8691}
8692
8693#[wasm_bindgen]
8694extern {
8695    #[wasm_bindgen(js_name = "createCapture")]
8696    fn createCapture4126799723(_ : JsValue, ) ->  Element;
8697}
8698
8699#[doc(hidden)]
8700impl FnOnce<(JsValue,)> for CreateCaptureInternalType {
8701    type Output =  Element;
8702    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
8703        createCapture4126799723.call(args)
8704    }
8705}
8706
8707#[doc(hidden)]
8708impl FnMut<(JsValue,)> for CreateCaptureInternalType {
8709    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
8710        createCapture4126799723.call(args)
8711    }
8712}
8713
8714#[doc(hidden)]
8715impl Fn<(JsValue,)> for CreateCaptureInternalType {
8716    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
8717        createCapture4126799723.call(args)
8718    }
8719}
8720#[doc=r##"<p>Creates element with given tag in the DOM with given content.</p>
8721"##]
8722///<h2>Examples</h2>
8723///
8724
8725#[doc=r###"```rust
8726createElement('h2', 'im an h2 p5.element!');
8727```"###]
8728/// <h2>Parameters</h2>
8729///
8730#[doc = r##"<code>tag</code> tag for the new element
8731
8732"##]
8733///
8734///
8735#[doc = r##"<code>content?</code> html content to be inserted into the element
8736
8737"##]
8738///
8739
8740pub static createElement: CreateElementInternalType = CreateElementInternalType;
8741#[doc(hidden)]
8742pub struct CreateElementInternalType;
8743
8744
8745#[wasm_bindgen]
8746extern {
8747    #[wasm_bindgen(js_name = "createElement")]
8748    fn createElement3674936875(_ : & str, _ : & str, ) ->  Element;
8749}
8750
8751#[doc(hidden)]
8752impl FnOnce<(&'_ str,&'_ str,)> for CreateElementInternalType {
8753    type Output =  Element;
8754    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
8755        createElement3674936875.call(args)
8756    }
8757}
8758
8759#[doc(hidden)]
8760impl FnMut<(&'_ str,&'_ str,)> for CreateElementInternalType {
8761    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
8762        createElement3674936875.call(args)
8763    }
8764}
8765
8766#[doc(hidden)]
8767impl Fn<(&'_ str,&'_ str,)> for CreateElementInternalType {
8768    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
8769        createElement3674936875.call(args)
8770    }
8771}
8772
8773#[wasm_bindgen]
8774extern {
8775    #[wasm_bindgen(js_name = "createElement")]
8776    fn createElement3257758854(_ : & str, ) ->  Element;
8777}
8778
8779#[doc(hidden)]
8780impl FnOnce<(&'_ str,)> for CreateElementInternalType {
8781    type Output =  Element;
8782    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
8783        createElement3257758854.call(args)
8784    }
8785}
8786
8787#[doc(hidden)]
8788impl FnMut<(&'_ str,)> for CreateElementInternalType {
8789    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
8790        createElement3257758854.call(args)
8791    }
8792}
8793
8794#[doc(hidden)]
8795impl Fn<(&'_ str,)> for CreateElementInternalType {
8796    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
8797        createElement3257758854.call(args)
8798    }
8799}
8800#[doc=r##"<p>Calculates the absolute value (magnitude) of a number. Maps to Math.abs().
8801The absolute value of a number is always positive.</p>
8802"##]
8803///<h2>Examples</h2>
8804///
8805
8806#[doc=r###"```rust
8807function setup() {
8808  let x = -3;
8809  let y = abs(x);
8810
8811  print(x); // -3
8812  print(y); // 3
8813}
8814```"###]
8815/// <h2>Parameters</h2>
8816///
8817#[doc = r##"<code>n</code> number to compute
8818
8819"##]
8820///
8821
8822pub static abs: AbsInternalType = AbsInternalType;
8823#[doc(hidden)]
8824pub struct AbsInternalType;
8825
8826
8827#[wasm_bindgen]
8828extern {
8829    #[wasm_bindgen(js_name = "abs")]
8830    fn abs3186398319(_ : f64, ) -> f64;
8831}
8832
8833#[doc(hidden)]
8834impl FnOnce<(f64,)> for AbsInternalType {
8835    type Output = f64;
8836    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
8837        abs3186398319.call(args)
8838    }
8839}
8840
8841#[doc(hidden)]
8842impl FnMut<(f64,)> for AbsInternalType {
8843    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
8844        abs3186398319.call(args)
8845    }
8846}
8847
8848#[doc(hidden)]
8849impl Fn<(f64,)> for AbsInternalType {
8850    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
8851        abs3186398319.call(args)
8852    }
8853}
8854#[doc=r##"<p>Calculates the closest int value that is greater than or equal to the
8855value of the parameter. Maps to Math.ceil(). For example, ceil(9.03)
8856returns the value 10.</p>
8857"##]
8858///<h2>Examples</h2>
8859///
8860
8861#[doc=r###"```rust
8862function draw() {
8863  background(200);
8864  // map, mouseX between 0 and 5.
8865  let ax = map(mouseX, 0, 100, 0, 5);
8866  let ay = 66;
8867
8868  //Get the ceiling of the mapped number.
8869  let bx = ceil(map(mouseX, 0, 100, 0, 5));
8870  let by = 33;
8871
8872  // Multiply the mapped numbers by 20 to more easily
8873  // see the changes.
8874  stroke(0);
8875  fill(0);
8876  line(0, ay, ax * 20, ay);
8877  line(0, by, bx * 20, by);
8878
8879  // Reformat the float returned by map and draw it.
8880  noStroke();
8881  text(nfc(ax, 2), ax, ay - 5);
8882  text(nfc(bx, 1), bx, by - 5);
8883}
8884```"###]
8885/// <h2>Parameters</h2>
8886///
8887#[doc = r##"<code>n</code> number to round up
8888
8889"##]
8890///
8891
8892pub static ceil: CeilInternalType = CeilInternalType;
8893#[doc(hidden)]
8894pub struct CeilInternalType;
8895
8896
8897#[wasm_bindgen]
8898extern {
8899    #[wasm_bindgen(js_name = "ceil")]
8900    fn ceil4000704477(_ : f64, ) -> f64;
8901}
8902
8903#[doc(hidden)]
8904impl FnOnce<(f64,)> for CeilInternalType {
8905    type Output = f64;
8906    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
8907        ceil4000704477.call(args)
8908    }
8909}
8910
8911#[doc(hidden)]
8912impl FnMut<(f64,)> for CeilInternalType {
8913    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
8914        ceil4000704477.call(args)
8915    }
8916}
8917
8918#[doc(hidden)]
8919impl Fn<(f64,)> for CeilInternalType {
8920    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
8921        ceil4000704477.call(args)
8922    }
8923}
8924#[doc=r##"<p>Constrains a value between a minimum and maximum value.</p>
8925"##]
8926///<h2>Examples</h2>
8927///
8928
8929#[doc=r###"```rust
8930function draw() {
8931  background(200);
8932
8933  let leftWall = 25;
8934  let rightWall = 75;
8935
8936  // xm is just the mouseX, while
8937  // xc is the mouseX, but constrained
8938  // between the leftWall and rightWall!
8939  let xm = mouseX;
8940  let xc = constrain(mouseX, leftWall, rightWall);
8941
8942  // Draw the walls.
8943  stroke(150);
8944  line(leftWall, 0, leftWall, height);
8945  line(rightWall, 0, rightWall, height);
8946
8947  // Draw xm and xc as circles.
8948  noStroke();
8949  fill(150);
8950  ellipse(xm, 33, 9, 9); // Not Constrained
8951  fill(0);
8952  ellipse(xc, 66, 9, 9); // Constrained
8953}
8954```"###]
8955/// <h2>Parameters</h2>
8956///
8957#[doc = r##"<code>n</code> number to constrain
8958
8959"##]
8960///
8961///
8962#[doc = r##"<code>low</code> minimum limit
8963
8964"##]
8965///
8966///
8967#[doc = r##"<code>high</code> maximum limit
8968
8969"##]
8970///
8971
8972pub static constrain: ConstrainInternalType = ConstrainInternalType;
8973#[doc(hidden)]
8974pub struct ConstrainInternalType;
8975
8976
8977#[wasm_bindgen]
8978extern {
8979    #[wasm_bindgen(js_name = "constrain")]
8980    fn constrain1775638030(_ : f64, _ : f64, _ : f64, ) -> f64;
8981}
8982
8983#[doc(hidden)]
8984impl FnOnce<(f64,f64,f64,)> for ConstrainInternalType {
8985    type Output = f64;
8986    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
8987        constrain1775638030.call(args)
8988    }
8989}
8990
8991#[doc(hidden)]
8992impl FnMut<(f64,f64,f64,)> for ConstrainInternalType {
8993    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
8994        constrain1775638030.call(args)
8995    }
8996}
8997
8998#[doc(hidden)]
8999impl Fn<(f64,f64,f64,)> for ConstrainInternalType {
9000    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
9001        constrain1775638030.call(args)
9002    }
9003}
9004#[doc=r##"<p>Calculates the distance between two points, in either two or three dimensions.</p>
9005"##]
9006///<h2>Examples</h2>
9007///
9008
9009#[doc=r###"```rust
9010// Move your mouse inside the canvas to see the
9011// change in distance between two points!
9012function draw() {
9013  background(200);
9014  fill(0);
9015
9016  let x1 = 10;
9017  let y1 = 90;
9018  let x2 = mouseX;
9019  let y2 = mouseY;
9020
9021  line(x1, y1, x2, y2);
9022  ellipse(x1, y1, 7, 7);
9023  ellipse(x2, y2, 7, 7);
9024
9025  // d is the length of the line
9026  // the distance from point 1 to point 2.
9027  let d = int(dist(x1, y1, x2, y2));
9028
9029  // Let's write d along the line we are drawing!
9030  push();
9031  translate((x1 + x2) / 2, (y1 + y2) / 2);
9032  rotate(atan2(y2 - y1, x2 - x1));
9033  text(nfc(d, 1), 0, -5);
9034  pop();
9035  // Fancy!
9036}
9037```"###]
9038/// <h2>Overloads</h2>
9039///
9040#[doc = r##"<code>x1</code> x-coordinate of the first point
9041
9042"##]
9043///
9044///
9045#[doc = r##"<code>y1</code> y-coordinate of the first point
9046
9047"##]
9048///
9049///
9050#[doc = r##"<code>x2</code> x-coordinate of the second point
9051
9052"##]
9053///
9054///
9055#[doc = r##"<code>y2</code> y-coordinate of the second point
9056
9057"##]
9058///
9059///
9060/// ---
9061///
9062///
9063#[doc = r##"<code>x1</code> x-coordinate of the first point
9064
9065"##]
9066///
9067///
9068#[doc = r##"<code>y1</code> y-coordinate of the first point
9069
9070"##]
9071///
9072///
9073#[doc = r##"<code>z1</code> z-coordinate of the first point
9074
9075"##]
9076///
9077///
9078#[doc = r##"<code>x2</code> x-coordinate of the second point
9079
9080"##]
9081///
9082///
9083#[doc = r##"<code>y2</code> y-coordinate of the second point
9084
9085"##]
9086///
9087///
9088#[doc = r##"<code>z2</code> z-coordinate of the second point
9089
9090"##]
9091///
9092///
9093/// ---
9094///
9095
9096pub static dist: DistInternalType = DistInternalType;
9097#[doc(hidden)]
9098pub struct DistInternalType;
9099
9100
9101#[wasm_bindgen]
9102extern {
9103    #[wasm_bindgen(js_name = "dist")]
9104    fn dist1040089283(_ : f64, _ : f64, _ : f64, _ : f64, ) -> f64;
9105}
9106
9107#[doc(hidden)]
9108impl FnOnce<(f64,f64,f64,f64,)> for DistInternalType {
9109    type Output = f64;
9110    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
9111        dist1040089283.call(args)
9112    }
9113}
9114
9115#[doc(hidden)]
9116impl FnMut<(f64,f64,f64,f64,)> for DistInternalType {
9117    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
9118        dist1040089283.call(args)
9119    }
9120}
9121
9122#[doc(hidden)]
9123impl Fn<(f64,f64,f64,f64,)> for DistInternalType {
9124    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
9125        dist1040089283.call(args)
9126    }
9127}
9128
9129#[wasm_bindgen]
9130extern {
9131    #[wasm_bindgen(js_name = "dist")]
9132    fn dist2680465360(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) -> f64;
9133}
9134
9135#[doc(hidden)]
9136impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for DistInternalType {
9137    type Output = f64;
9138    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
9139        dist2680465360.call(args)
9140    }
9141}
9142
9143#[doc(hidden)]
9144impl FnMut<(f64,f64,f64,f64,f64,f64,)> for DistInternalType {
9145    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
9146        dist2680465360.call(args)
9147    }
9148}
9149
9150#[doc(hidden)]
9151impl Fn<(f64,f64,f64,f64,f64,f64,)> for DistInternalType {
9152    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
9153        dist2680465360.call(args)
9154    }
9155}
9156#[doc=r##"<p>Returns Euler's number e (2.71828...) raised to the power of the n
9157parameter. Maps to Math.exp().</p>
9158"##]
9159///<h2>Examples</h2>
9160///
9161
9162#[doc=r###"```rust
9163function draw() {
9164  background(200);
9165
9166  // Compute the exp() function with a value between 0 and 2
9167  let xValue = map(mouseX, 0, width, 0, 2);
9168  let yValue = exp(xValue);
9169
9170  let y = map(yValue, 0, 8, height, 0);
9171
9172  let legend = 'exp (' + nfc(xValue, 3) + ')\n= ' + nf(yValue, 1, 4);
9173  stroke(150);
9174  line(mouseX, y, mouseX, height);
9175  fill(0);
9176  text(legend, 5, 15);
9177  noStroke();
9178  ellipse(mouseX, y, 7, 7);
9179
9180  // Draw the exp(x) curve,
9181  // over the domain of x from 0 to 2
9182  noFill();
9183  stroke(0);
9184  beginShape();
9185  for (let x = 0; x < width; x++) {
9186    xValue = map(x, 0, width, 0, 2);
9187    yValue = exp(xValue);
9188    y = map(yValue, 0, 8, height, 0);
9189    vertex(x, y);
9190  }
9191
9192  endShape();
9193  line(0, 0, 0, height);
9194  line(0, height - 1, width, height - 1);
9195}
9196```"###]
9197/// <h2>Parameters</h2>
9198///
9199#[doc = r##"<code>n</code> exponent to raise
9200
9201"##]
9202///
9203
9204pub static exp: ExpInternalType = ExpInternalType;
9205#[doc(hidden)]
9206pub struct ExpInternalType;
9207
9208
9209#[wasm_bindgen]
9210extern {
9211    #[wasm_bindgen(js_name = "exp")]
9212    fn exp2892082365(_ : f64, ) -> f64;
9213}
9214
9215#[doc(hidden)]
9216impl FnOnce<(f64,)> for ExpInternalType {
9217    type Output = f64;
9218    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
9219        exp2892082365.call(args)
9220    }
9221}
9222
9223#[doc(hidden)]
9224impl FnMut<(f64,)> for ExpInternalType {
9225    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
9226        exp2892082365.call(args)
9227    }
9228}
9229
9230#[doc(hidden)]
9231impl Fn<(f64,)> for ExpInternalType {
9232    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
9233        exp2892082365.call(args)
9234    }
9235}
9236#[doc=r##"<p>Calculates the closest int value that is less than or equal to the
9237value of the parameter. Maps to Math.floor().</p>
9238"##]
9239///<h2>Examples</h2>
9240///
9241
9242#[doc=r###"```rust
9243function draw() {
9244  background(200);
9245  //map, mouseX between 0 and 5.
9246  let ax = map(mouseX, 0, 100, 0, 5);
9247  let ay = 66;
9248
9249  //Get the floor of the mapped number.
9250  let bx = floor(map(mouseX, 0, 100, 0, 5));
9251  let by = 33;
9252
9253  // Multiply the mapped numbers by 20 to more easily
9254  // see the changes.
9255  stroke(0);
9256  fill(0);
9257  line(0, ay, ax * 20, ay);
9258  line(0, by, bx * 20, by);
9259
9260  // Reformat the float returned by map and draw it.
9261  noStroke();
9262  text(nfc(ax, 2), ax, ay - 5);
9263  text(nfc(bx, 1), bx, by - 5);
9264}
9265```"###]
9266/// <h2>Parameters</h2>
9267///
9268#[doc = r##"<code>n</code> number to round down
9269
9270"##]
9271///
9272
9273pub static floor: FloorInternalType = FloorInternalType;
9274#[doc(hidden)]
9275pub struct FloorInternalType;
9276
9277
9278#[wasm_bindgen]
9279extern {
9280    #[wasm_bindgen(js_name = "floor")]
9281    fn floor651910123(_ : f64, ) -> f64;
9282}
9283
9284#[doc(hidden)]
9285impl FnOnce<(f64,)> for FloorInternalType {
9286    type Output = f64;
9287    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
9288        floor651910123.call(args)
9289    }
9290}
9291
9292#[doc(hidden)]
9293impl FnMut<(f64,)> for FloorInternalType {
9294    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
9295        floor651910123.call(args)
9296    }
9297}
9298
9299#[doc(hidden)]
9300impl Fn<(f64,)> for FloorInternalType {
9301    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
9302        floor651910123.call(args)
9303    }
9304}
9305#[doc=r##"<p>Calculates a number between two numbers at a specific increment. The amt
9306parameter is the amount to interpolate between the two values where 0.0
9307equal to the first point, 0.1 is very near the first point, 0.5 is
9308half-way in between, and 1.0 is equal to the second point. If the
9309value of amt is more than 1.0 or less than 0.0, the number will be
9310calculated accordingly in the ratio of the two given numbers. The lerp
9311function is convenient for creating motion along a straight
9312path and for drawing dotted lines.</p>
9313"##]
9314///<h2>Examples</h2>
9315///
9316
9317#[doc=r###"```rust
9318function setup() {
9319  background(200);
9320  let a = 20;
9321  let b = 80;
9322  let c = lerp(a, b, 0.2);
9323  let d = lerp(a, b, 0.5);
9324  let e = lerp(a, b, 0.8);
9325
9326  let y = 50;
9327
9328  strokeWeight(5);
9329  stroke(0); // Draw the original points in black
9330  point(a, y);
9331  point(b, y);
9332
9333  stroke(100); // Draw the lerp points in gray
9334  point(c, y);
9335  point(d, y);
9336  point(e, y);
9337}
9338```"###]
9339/// <h2>Parameters</h2>
9340///
9341#[doc = r##"<code>start</code> first value
9342
9343"##]
9344///
9345///
9346#[doc = r##"<code>stop</code> second value
9347
9348"##]
9349///
9350///
9351#[doc = r##"<code>amt</code> number
9352
9353"##]
9354///
9355
9356pub static lerp: LerpInternalType = LerpInternalType;
9357#[doc(hidden)]
9358pub struct LerpInternalType;
9359
9360
9361#[wasm_bindgen]
9362extern {
9363    #[wasm_bindgen(js_name = "lerp")]
9364    fn lerp3326947376(_ : f64, _ : f64, _ : f64, ) -> f64;
9365}
9366
9367#[doc(hidden)]
9368impl FnOnce<(f64,f64,f64,)> for LerpInternalType {
9369    type Output = f64;
9370    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
9371        lerp3326947376.call(args)
9372    }
9373}
9374
9375#[doc(hidden)]
9376impl FnMut<(f64,f64,f64,)> for LerpInternalType {
9377    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
9378        lerp3326947376.call(args)
9379    }
9380}
9381
9382#[doc(hidden)]
9383impl Fn<(f64,f64,f64,)> for LerpInternalType {
9384    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
9385        lerp3326947376.call(args)
9386    }
9387}
9388#[doc=r##"<p>Calculates the natural logarithm (the base-e logarithm) of a number. This
9389function expects the n parameter to be a value greater than 0.0. Maps to
9390Math.log().</p>
9391"##]
9392///<h2>Examples</h2>
9393///
9394
9395#[doc=r###"```rust
9396function draw() {
9397  background(200);
9398  let maxX = 2.8;
9399  let maxY = 1.5;
9400
9401  // Compute the natural log of a value between 0 and maxX
9402  let xValue = map(mouseX, 0, width, 0, maxX);
9403  let yValue, y;
9404  if (xValue > 0) {
9405   // Cannot take the log of a negative number.
9406    yValue = log(xValue);
9407    y = map(yValue, -maxY, maxY, height, 0);
9408
9409    // Display the calculation occurring.
9410    let legend = 'log(' + nf(xValue, 1, 2) + ')\n= ' + nf(yValue, 1, 3);
9411    stroke(150);
9412    line(mouseX, y, mouseX, height);
9413    fill(0);
9414    text(legend, 5, 15);
9415    noStroke();
9416    ellipse(mouseX, y, 7, 7);
9417  }
9418
9419  // Draw the log(x) curve,
9420  // over the domain of x from 0 to maxX
9421  noFill();
9422  stroke(0);
9423  beginShape();
9424  for (let x = 0; x < width; x++) {
9425    xValue = map(x, 0, width, 0, maxX);
9426    yValue = log(xValue);
9427    y = map(yValue, -maxY, maxY, height, 0);
9428    vertex(x, y);
9429  }
9430  endShape();
9431  line(0, 0, 0, height);
9432  line(0, height / 2, width, height / 2);
9433}
9434```"###]
9435/// <h2>Parameters</h2>
9436///
9437#[doc = r##"<code>n</code> number greater than 0
9438
9439"##]
9440///
9441
9442pub static log: LogInternalType = LogInternalType;
9443#[doc(hidden)]
9444pub struct LogInternalType;
9445
9446
9447#[wasm_bindgen]
9448extern {
9449    #[wasm_bindgen(js_name = "log")]
9450    fn log1058788909(_ : f64, ) -> f64;
9451}
9452
9453#[doc(hidden)]
9454impl FnOnce<(f64,)> for LogInternalType {
9455    type Output = f64;
9456    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
9457        log1058788909.call(args)
9458    }
9459}
9460
9461#[doc(hidden)]
9462impl FnMut<(f64,)> for LogInternalType {
9463    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
9464        log1058788909.call(args)
9465    }
9466}
9467
9468#[doc(hidden)]
9469impl Fn<(f64,)> for LogInternalType {
9470    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
9471        log1058788909.call(args)
9472    }
9473}
9474#[doc=r##"<p>Calculates the magnitude (or length) of a vector. A vector is a direction
9475in space commonly used in computer graphics and linear algebra. Because it
9476has no "start" position, the magnitude of a vector can be thought of as
9477the distance from the coordinate 0,0 to its x,y value. Therefore, <a href="#/p5/mag">mag()</a> is
9478a shortcut for writing dist(0, 0, x, y).</p>
9479"##]
9480///<h2>Examples</h2>
9481///
9482
9483#[doc=r###"```rust
9484function setup() {
9485  let x1 = 20;
9486  let x2 = 80;
9487  let y1 = 30;
9488  let y2 = 70;
9489
9490  line(0, 0, x1, y1);
9491  print(mag(x1, y1)); // Prints "36.05551275463989"
9492  line(0, 0, x2, y1);
9493  print(mag(x2, y1)); // Prints "85.44003745317531"
9494  line(0, 0, x1, y2);
9495  print(mag(x1, y2)); // Prints "72.80109889280519"
9496  line(0, 0, x2, y2);
9497  print(mag(x2, y2)); // Prints "106.3014581273465"
9498}
9499```"###]
9500/// <h2>Parameters</h2>
9501///
9502#[doc = r##"<code>a</code> first value
9503
9504"##]
9505///
9506///
9507#[doc = r##"<code>b</code> second value
9508
9509"##]
9510///
9511
9512pub static mag: MagInternalType = MagInternalType;
9513#[doc(hidden)]
9514pub struct MagInternalType;
9515
9516
9517#[wasm_bindgen]
9518extern {
9519    #[wasm_bindgen(js_name = "mag")]
9520    fn mag951808025(_ : f64, _ : f64, ) -> f64;
9521}
9522
9523#[doc(hidden)]
9524impl FnOnce<(f64,f64,)> for MagInternalType {
9525    type Output = f64;
9526    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
9527        mag951808025.call(args)
9528    }
9529}
9530
9531#[doc(hidden)]
9532impl FnMut<(f64,f64,)> for MagInternalType {
9533    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
9534        mag951808025.call(args)
9535    }
9536}
9537
9538#[doc(hidden)]
9539impl Fn<(f64,f64,)> for MagInternalType {
9540    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
9541        mag951808025.call(args)
9542    }
9543}
9544#[doc=r##"<p>Re-maps a number from one range to another.</p>
9545<p>In the first example above, the number 25 is converted from a value in the
9546range of 0 to 100 into a value that ranges from the left edge of the
9547window (0) to the right edge (width).</p>
9548"##]
9549///<h2>Examples</h2>
9550///
9551
9552#[doc=r###"```rust
9553let value = 25;
9554let m = map(value, 0, 100, 0, width);
9555ellipse(m, 50, 10, 10);
9556```"###]
9557#[doc=r###"```rust
9558function setup() {
9559  noStroke();
9560}
9561
9562function draw() {
9563  background(204);
9564  let x1 = map(mouseX, 0, width, 25, 75);
9565  ellipse(x1, 25, 25, 25);
9566  //This ellipse is constrained to the 0-100 range
9567  //after setting withinBounds to true
9568  let x2 = map(mouseX, 0, width, 0, 100, true);
9569  ellipse(x2, 75, 25, 25);
9570}
9571```"###]
9572/// <h2>Parameters</h2>
9573///
9574#[doc = r##"<code>value</code> the incoming value to be converted
9575
9576"##]
9577///
9578///
9579#[doc = r##"<code>start1</code> lower bound of the value's current range
9580
9581"##]
9582///
9583///
9584#[doc = r##"<code>stop1</code> upper bound of the value's current range
9585
9586"##]
9587///
9588///
9589#[doc = r##"<code>start2</code> lower bound of the value's target range
9590
9591"##]
9592///
9593///
9594#[doc = r##"<code>stop2</code> upper bound of the value's target range
9595
9596"##]
9597///
9598///
9599#[doc = r##"<code>withinBounds?</code> constrain the value to the newly mapped range
9600
9601"##]
9602///
9603
9604pub static map: MapInternalType = MapInternalType;
9605#[doc(hidden)]
9606pub struct MapInternalType;
9607
9608
9609#[wasm_bindgen]
9610extern {
9611    #[wasm_bindgen(js_name = "map")]
9612    fn map1100426167(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : bool, ) -> f64;
9613}
9614
9615#[doc(hidden)]
9616impl FnOnce<(f64,f64,f64,f64,f64,bool,)> for MapInternalType {
9617    type Output = f64;
9618    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,bool,)) -> Self::Output {
9619        map1100426167.call(args)
9620    }
9621}
9622
9623#[doc(hidden)]
9624impl FnMut<(f64,f64,f64,f64,f64,bool,)> for MapInternalType {
9625    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,bool,)) -> Self::Output {
9626        map1100426167.call(args)
9627    }
9628}
9629
9630#[doc(hidden)]
9631impl Fn<(f64,f64,f64,f64,f64,bool,)> for MapInternalType {
9632    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,bool,)) -> Self::Output {
9633        map1100426167.call(args)
9634    }
9635}
9636
9637#[wasm_bindgen]
9638extern {
9639    #[wasm_bindgen(js_name = "map")]
9640    fn map161229957(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) -> f64;
9641}
9642
9643#[doc(hidden)]
9644impl FnOnce<(f64,f64,f64,f64,f64,)> for MapInternalType {
9645    type Output = f64;
9646    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
9647        map161229957.call(args)
9648    }
9649}
9650
9651#[doc(hidden)]
9652impl FnMut<(f64,f64,f64,f64,f64,)> for MapInternalType {
9653    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
9654        map161229957.call(args)
9655    }
9656}
9657
9658#[doc(hidden)]
9659impl Fn<(f64,f64,f64,f64,f64,)> for MapInternalType {
9660    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
9661        map161229957.call(args)
9662    }
9663}
9664#[doc=r##"<p>Determines the largest value in a sequence of numbers, and then returns
9665that value. <a href="#/p5/max">max()</a> accepts any number of Number parameters, or an Array
9666of any length.</p>
9667"##]
9668///<h2>Examples</h2>
9669///
9670
9671#[doc=r###"```rust
9672function setup() {
9673  // Change the elements in the array and run the sketch
9674  // to show how max() works!
9675  let numArray = [2, 1, 5, 4, 8, 9];
9676  fill(0);
9677  noStroke();
9678  text('Array Elements', 0, 10);
9679  // Draw all numbers in the array
9680  let spacing = 15;
9681  let elemsY = 25;
9682  for (let i = 0; i < numArray.length; i++) {
9683    text(numArray[i], i * spacing, elemsY);
9684  }
9685  let maxX = 33;
9686  let maxY = 80;
9687  // Draw the Maximum value in the array.
9688  textSize(32);
9689  text(max(numArray), maxX, maxY);
9690}
9691```"###]
9692/// <h2>Overloads</h2>
9693///
9694#[doc = r##"<code>n0</code> Number to compare
9695
9696"##]
9697///
9698///
9699#[doc = r##"<code>n1</code> Number to compare
9700
9701"##]
9702///
9703///
9704/// ---
9705///
9706///
9707#[doc = r##"<code>nums</code> Numbers to compare
9708
9709"##]
9710///
9711///
9712/// ---
9713///
9714
9715pub static max: MaxInternalType = MaxInternalType;
9716#[doc(hidden)]
9717pub struct MaxInternalType;
9718
9719
9720#[wasm_bindgen]
9721extern {
9722    #[wasm_bindgen(js_name = "max")]
9723    fn max2305263620(_ : f64, _ : f64, ) -> f64;
9724}
9725
9726#[doc(hidden)]
9727impl FnOnce<(f64,f64,)> for MaxInternalType {
9728    type Output = f64;
9729    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
9730        max2305263620.call(args)
9731    }
9732}
9733
9734#[doc(hidden)]
9735impl FnMut<(f64,f64,)> for MaxInternalType {
9736    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
9737        max2305263620.call(args)
9738    }
9739}
9740
9741#[doc(hidden)]
9742impl Fn<(f64,f64,)> for MaxInternalType {
9743    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
9744        max2305263620.call(args)
9745    }
9746}
9747
9748#[wasm_bindgen]
9749extern {
9750    #[wasm_bindgen(js_name = "max")]
9751    fn max3336627698(_ : & [f64], ) -> f64;
9752}
9753
9754#[doc(hidden)]
9755impl FnOnce<(&'_ [f64],)> for MaxInternalType {
9756    type Output = f64;
9757    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
9758        max3336627698.call(args)
9759    }
9760}
9761
9762#[doc(hidden)]
9763impl FnMut<(&'_ [f64],)> for MaxInternalType {
9764    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
9765        max3336627698.call(args)
9766    }
9767}
9768
9769#[doc(hidden)]
9770impl Fn<(&'_ [f64],)> for MaxInternalType {
9771    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
9772        max3336627698.call(args)
9773    }
9774}
9775#[doc=r##"<p>Determines the smallest value in a sequence of numbers, and then returns
9776that value. <a href="#/p5/min">min()</a> accepts any number of Number parameters, or an Array
9777of any length.</p>
9778"##]
9779///<h2>Examples</h2>
9780///
9781
9782#[doc=r###"```rust
9783function setup() {
9784  // Change the elements in the array and run the sketch
9785  // to show how min() works!
9786  let numArray = [2, 1, 5, 4, 8, 9];
9787  fill(0);
9788  noStroke();
9789  text('Array Elements', 0, 10);
9790  // Draw all numbers in the array
9791  let spacing = 15;
9792  let elemsY = 25;
9793  for (let i = 0; i < numArray.length; i++) {
9794    text(numArray[i], i * spacing, elemsY);
9795  }
9796  let maxX = 33;
9797  let maxY = 80;
9798  // Draw the Minimum value in the array.
9799  textSize(32);
9800  text(min(numArray), maxX, maxY);
9801}
9802```"###]
9803/// <h2>Overloads</h2>
9804///
9805#[doc = r##"<code>n0</code> Number to compare
9806
9807"##]
9808///
9809///
9810#[doc = r##"<code>n1</code> Number to compare
9811
9812"##]
9813///
9814///
9815/// ---
9816///
9817///
9818#[doc = r##"<code>nums</code> Numbers to compare
9819
9820"##]
9821///
9822///
9823/// ---
9824///
9825
9826pub static min: MinInternalType = MinInternalType;
9827#[doc(hidden)]
9828pub struct MinInternalType;
9829
9830
9831#[wasm_bindgen]
9832extern {
9833    #[wasm_bindgen(js_name = "min")]
9834    fn min200311665(_ : f64, _ : f64, ) -> f64;
9835}
9836
9837#[doc(hidden)]
9838impl FnOnce<(f64,f64,)> for MinInternalType {
9839    type Output = f64;
9840    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
9841        min200311665.call(args)
9842    }
9843}
9844
9845#[doc(hidden)]
9846impl FnMut<(f64,f64,)> for MinInternalType {
9847    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
9848        min200311665.call(args)
9849    }
9850}
9851
9852#[doc(hidden)]
9853impl Fn<(f64,f64,)> for MinInternalType {
9854    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
9855        min200311665.call(args)
9856    }
9857}
9858
9859#[wasm_bindgen]
9860extern {
9861    #[wasm_bindgen(js_name = "min")]
9862    fn min3245198887(_ : & [f64], ) -> f64;
9863}
9864
9865#[doc(hidden)]
9866impl FnOnce<(&'_ [f64],)> for MinInternalType {
9867    type Output = f64;
9868    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
9869        min3245198887.call(args)
9870    }
9871}
9872
9873#[doc(hidden)]
9874impl FnMut<(&'_ [f64],)> for MinInternalType {
9875    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
9876        min3245198887.call(args)
9877    }
9878}
9879
9880#[doc(hidden)]
9881impl Fn<(&'_ [f64],)> for MinInternalType {
9882    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
9883        min3245198887.call(args)
9884    }
9885}
9886#[doc=r##"<p>Normalizes a number from another range into a value between 0 and 1.
9887Identical to map(value, low, high, 0, 1).
9888Numbers outside of the range are not clamped to 0 and 1, because
9889out-of-range values are often intentional and useful. (See the example above.)</p>
9890"##]
9891///<h2>Examples</h2>
9892///
9893
9894#[doc=r###"```rust
9895function draw() {
9896  background(200);
9897  let currentNum = mouseX;
9898  let lowerBound = 0;
9899  let upperBound = width; //100;
9900  let normalized = norm(currentNum, lowerBound, upperBound);
9901  let lineY = 70;
9902  stroke(3);
9903  line(0, lineY, width, lineY);
9904  //Draw an ellipse mapped to the non-normalized value.
9905  noStroke();
9906  fill(50);
9907  let s = 7; // ellipse size
9908  ellipse(currentNum, lineY, s, s);
9909
9910  // Draw the guide
9911  let guideY = lineY + 15;
9912  text('0', 0, guideY);
9913  textAlign(RIGHT);
9914  text('100', width, guideY);
9915
9916  // Draw the normalized value
9917  textAlign(LEFT);
9918  fill(0);
9919  textSize(32);
9920  let normalY = 40;
9921  let normalX = 20;
9922  text(normalized, normalX, normalY);
9923}
9924```"###]
9925/// <h2>Parameters</h2>
9926///
9927#[doc = r##"<code>value</code> incoming value to be normalized
9928
9929"##]
9930///
9931///
9932#[doc = r##"<code>start</code> lower bound of the value's current range
9933
9934"##]
9935///
9936///
9937#[doc = r##"<code>stop</code> upper bound of the value's current range
9938
9939"##]
9940///
9941
9942pub static norm: NormInternalType = NormInternalType;
9943#[doc(hidden)]
9944pub struct NormInternalType;
9945
9946
9947#[wasm_bindgen]
9948extern {
9949    #[wasm_bindgen(js_name = "norm")]
9950    fn norm2495095370(_ : f64, _ : f64, _ : f64, ) -> f64;
9951}
9952
9953#[doc(hidden)]
9954impl FnOnce<(f64,f64,f64,)> for NormInternalType {
9955    type Output = f64;
9956    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
9957        norm2495095370.call(args)
9958    }
9959}
9960
9961#[doc(hidden)]
9962impl FnMut<(f64,f64,f64,)> for NormInternalType {
9963    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
9964        norm2495095370.call(args)
9965    }
9966}
9967
9968#[doc(hidden)]
9969impl Fn<(f64,f64,f64,)> for NormInternalType {
9970    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
9971        norm2495095370.call(args)
9972    }
9973}
9974#[doc=r##"<p>Facilitates exponential expressions. The <a href="#/p5/pow">pow()</a> function is an efficient
9975way of multiplying numbers by themselves (or their reciprocals) in large
9976quantities. For example, pow(3, 5) is equivalent to the expression
99773 × 3 × 3 × 3 × 3 and pow(3, -5) is equivalent to 1 /
99783 × 3 × 3 × 3 × 3. Maps to
9979Math.pow().</p>
9980"##]
9981///<h2>Examples</h2>
9982///
9983
9984#[doc=r###"```rust
9985function setup() {
9986  //Exponentially increase the size of an ellipse.
9987  let eSize = 3; // Original Size
9988  let eLoc = 10; // Original Location
9989
9990  ellipse(eLoc, eLoc, eSize, eSize);
9991
9992  ellipse(eLoc * 2, eLoc * 2, pow(eSize, 2), pow(eSize, 2));
9993
9994  ellipse(eLoc * 4, eLoc * 4, pow(eSize, 3), pow(eSize, 3));
9995
9996  ellipse(eLoc * 8, eLoc * 8, pow(eSize, 4), pow(eSize, 4));
9997}
9998```"###]
9999/// <h2>Parameters</h2>
10000///
10001#[doc = r##"<code>n</code> base of the exponential expression
10002
10003"##]
10004///
10005///
10006#[doc = r##"<code>e</code> power by which to raise the base
10007
10008"##]
10009///
10010
10011pub static pow: PowInternalType = PowInternalType;
10012#[doc(hidden)]
10013pub struct PowInternalType;
10014
10015
10016#[wasm_bindgen]
10017extern {
10018    #[wasm_bindgen(js_name = "pow")]
10019    fn pow1198846471(_ : f64, _ : f64, ) -> f64;
10020}
10021
10022#[doc(hidden)]
10023impl FnOnce<(f64,f64,)> for PowInternalType {
10024    type Output = f64;
10025    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
10026        pow1198846471.call(args)
10027    }
10028}
10029
10030#[doc(hidden)]
10031impl FnMut<(f64,f64,)> for PowInternalType {
10032    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
10033        pow1198846471.call(args)
10034    }
10035}
10036
10037#[doc(hidden)]
10038impl Fn<(f64,f64,)> for PowInternalType {
10039    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
10040        pow1198846471.call(args)
10041    }
10042}
10043#[doc=r##"<p>Calculates the integer closest to the n parameter. For example,
10044round(133.8) returns the value 134. Maps to Math.round().</p>
10045"##]
10046///<h2>Examples</h2>
10047///
10048
10049#[doc=r###"```rust
10050let x = round(3.7);
10051text(x, width / 2, height / 2);
10052```"###]
10053#[doc=r###"```rust
10054let x = round(12.782383, 2);
10055text(x, width / 2, height / 2);
10056```"###]
10057#[doc=r###"```rust
10058function draw() {
10059  background(200);
10060  //map, mouseX between 0 and 5.
10061  let ax = map(mouseX, 0, 100, 0, 5);
10062  let ay = 66;
10063
10064  // Round the mapped number.
10065  let bx = round(map(mouseX, 0, 100, 0, 5));
10066  let by = 33;
10067
10068  // Multiply the mapped numbers by 20 to more easily
10069  // see the changes.
10070  stroke(0);
10071  fill(0);
10072  line(0, ay, ax * 20, ay);
10073  line(0, by, bx * 20, by);
10074
10075  // Reformat the float returned by map and draw it.
10076  noStroke();
10077  text(nfc(ax, 2), ax, ay - 5);
10078  text(nfc(bx, 1), bx, by - 5);
10079}
10080```"###]
10081/// <h2>Parameters</h2>
10082///
10083#[doc = r##"<code>n</code> number to round
10084
10085"##]
10086///
10087///
10088#[doc = r##"<code>decimals?</code> number of decimal places to round to, default is 0
10089
10090"##]
10091///
10092
10093pub static round: RoundInternalType = RoundInternalType;
10094#[doc(hidden)]
10095pub struct RoundInternalType;
10096
10097
10098#[wasm_bindgen]
10099extern {
10100    #[wasm_bindgen(js_name = "round")]
10101    fn round3189610668(_ : f64, _ : f64, ) -> f64;
10102}
10103
10104#[doc(hidden)]
10105impl FnOnce<(f64,f64,)> for RoundInternalType {
10106    type Output = f64;
10107    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
10108        round3189610668.call(args)
10109    }
10110}
10111
10112#[doc(hidden)]
10113impl FnMut<(f64,f64,)> for RoundInternalType {
10114    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
10115        round3189610668.call(args)
10116    }
10117}
10118
10119#[doc(hidden)]
10120impl Fn<(f64,f64,)> for RoundInternalType {
10121    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
10122        round3189610668.call(args)
10123    }
10124}
10125
10126#[wasm_bindgen]
10127extern {
10128    #[wasm_bindgen(js_name = "round")]
10129    fn round281006061(_ : f64, ) -> f64;
10130}
10131
10132#[doc(hidden)]
10133impl FnOnce<(f64,)> for RoundInternalType {
10134    type Output = f64;
10135    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
10136        round281006061.call(args)
10137    }
10138}
10139
10140#[doc(hidden)]
10141impl FnMut<(f64,)> for RoundInternalType {
10142    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
10143        round281006061.call(args)
10144    }
10145}
10146
10147#[doc(hidden)]
10148impl Fn<(f64,)> for RoundInternalType {
10149    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
10150        round281006061.call(args)
10151    }
10152}
10153#[doc=r##"<p>Squares a number (multiplies a number by itself). The result is always a
10154positive number, as multiplying two negative numbers always yields a
10155positive result. For example, -1 * -1 = 1.</p>
10156"##]
10157///<h2>Examples</h2>
10158///
10159
10160#[doc=r###"```rust
10161function draw() {
10162  background(200);
10163  let eSize = 7;
10164  let x1 = map(mouseX, 0, width, 0, 10);
10165  let y1 = 80;
10166  let x2 = sq(x1);
10167  let y2 = 20;
10168
10169  // Draw the non-squared.
10170  line(0, y1, width, y1);
10171  ellipse(x1, y1, eSize, eSize);
10172
10173  // Draw the squared.
10174  line(0, y2, width, y2);
10175  ellipse(x2, y2, eSize, eSize);
10176
10177  // Draw dividing line.
10178  stroke(100);
10179  line(0, height / 2, width, height / 2);
10180
10181  // Draw text.
10182  let spacing = 15;
10183  noStroke();
10184  fill(0);
10185  text('x = ' + x1, 0, y1 + spacing);
10186  text('sq(x) = ' + x2, 0, y2 + spacing);
10187}
10188```"###]
10189/// <h2>Parameters</h2>
10190///
10191#[doc = r##"<code>n</code> number to square
10192
10193"##]
10194///
10195
10196pub static sq: SqInternalType = SqInternalType;
10197#[doc(hidden)]
10198pub struct SqInternalType;
10199
10200
10201#[wasm_bindgen]
10202extern {
10203    #[wasm_bindgen(js_name = "sq")]
10204    fn sq897390548(_ : f64, ) -> f64;
10205}
10206
10207#[doc(hidden)]
10208impl FnOnce<(f64,)> for SqInternalType {
10209    type Output = f64;
10210    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
10211        sq897390548.call(args)
10212    }
10213}
10214
10215#[doc(hidden)]
10216impl FnMut<(f64,)> for SqInternalType {
10217    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
10218        sq897390548.call(args)
10219    }
10220}
10221
10222#[doc(hidden)]
10223impl Fn<(f64,)> for SqInternalType {
10224    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
10225        sq897390548.call(args)
10226    }
10227}
10228#[doc=r##"<p>Calculates the square root of a number. The square root of a number is
10229always positive, even though there may be a valid negative root. The
10230square root s of number a is such that s*s = a. It is the opposite of
10231squaring. Maps to Math.sqrt().</p>
10232"##]
10233///<h2>Examples</h2>
10234///
10235
10236#[doc=r###"```rust
10237function draw() {
10238  background(200);
10239  let eSize = 7;
10240  let x1 = mouseX;
10241  let y1 = 80;
10242  let x2 = sqrt(x1);
10243  let y2 = 20;
10244
10245  // Draw the non-squared.
10246  line(0, y1, width, y1);
10247  ellipse(x1, y1, eSize, eSize);
10248
10249  // Draw the squared.
10250  line(0, y2, width, y2);
10251  ellipse(x2, y2, eSize, eSize);
10252
10253  // Draw dividing line.
10254  stroke(100);
10255  line(0, height / 2, width, height / 2);
10256
10257  // Draw text.
10258  noStroke();
10259  fill(0);
10260  let spacing = 15;
10261  text('x = ' + x1, 0, y1 + spacing);
10262  text('sqrt(x) = ' + x2, 0, y2 + spacing);
10263}
10264```"###]
10265/// <h2>Parameters</h2>
10266///
10267#[doc = r##"<code>n</code> non-negative number to square root
10268
10269"##]
10270///
10271
10272pub static sqrt: SqrtInternalType = SqrtInternalType;
10273#[doc(hidden)]
10274pub struct SqrtInternalType;
10275
10276
10277#[wasm_bindgen]
10278extern {
10279    #[wasm_bindgen(js_name = "sqrt")]
10280    fn sqrt1890995945(_ : f64, ) -> f64;
10281}
10282
10283#[doc(hidden)]
10284impl FnOnce<(f64,)> for SqrtInternalType {
10285    type Output = f64;
10286    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
10287        sqrt1890995945.call(args)
10288    }
10289}
10290
10291#[doc(hidden)]
10292impl FnMut<(f64,)> for SqrtInternalType {
10293    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
10294        sqrt1890995945.call(args)
10295    }
10296}
10297
10298#[doc(hidden)]
10299impl Fn<(f64,)> for SqrtInternalType {
10300    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
10301        sqrt1890995945.call(args)
10302    }
10303}
10304#[doc=r##"<p>Calculates the fractional part of a number.</p>
10305"##]
10306///<h2>Examples</h2>
10307///
10308
10309#[doc=r###"```rust
10310function setup() {
10311  createCanvas(windowWidth, windowHeight);
10312  fill(0);
10313  text(7345.73472742, 0, 50);
10314  text(fract(7345.73472742), 0, 100);
10315  text(1.4215e-15, 150, 50);
10316  text(fract(1.4215e-15), 150, 100);
10317}
10318```"###]
10319/// <h2>Parameters</h2>
10320///
10321#[doc = r##"<code>num</code> Number whose fractional part needs to be found out
10322
10323"##]
10324///
10325
10326pub static fract: FractInternalType = FractInternalType;
10327#[doc(hidden)]
10328pub struct FractInternalType;
10329
10330
10331#[wasm_bindgen]
10332extern {
10333    #[wasm_bindgen(js_name = "fract")]
10334    fn fract4139176388(_ : f64, ) -> f64;
10335}
10336
10337#[doc(hidden)]
10338impl FnOnce<(f64,)> for FractInternalType {
10339    type Output = f64;
10340    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
10341        fract4139176388.call(args)
10342    }
10343}
10344
10345#[doc(hidden)]
10346impl FnMut<(f64,)> for FractInternalType {
10347    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
10348        fract4139176388.call(args)
10349    }
10350}
10351
10352#[doc(hidden)]
10353impl Fn<(f64,)> for FractInternalType {
10354    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
10355        fract4139176388.call(args)
10356    }
10357}
10358#[doc=r##"<p>The <a href="#/p5/background">background()</a> function sets the color used
10359for the background of the p5.js canvas. The default background is transparent.
10360This function is typically used within <a href="#/p5/draw">draw()</a> to clear
10361the display window at the beginning of each frame, but it can be used inside
10362<a href="#/p5/setup">setup()</a> to set the background on the first frame of
10363animation or if the background need only be set once.</p>
10364<p>The color is either specified in terms of the RGB, HSB, or HSL color depending
10365on the current <a href="#/p5/colorMode">colorMode</a>. (The default color space
10366is RGB, with each value in the range from 0 to 255). The alpha range by default
10367is also 0 to 255.<br><br></p>
10368<p>If a single string argument is provided, RGB, RGBA and Hex CSS color strings
10369and all named color strings are supported. In this case, an alpha number
10370value as a second argument is not supported, the RGBA form should be used.</p>
10371<p>A <a href="#/p5.Color">p5.Color</a> object can also be provided to set the background color.</p>
10372<p>A <a href="#/p5.Image">p5.Image</a> can also be provided to set the background image.</p>
10373"##]
10374///<h2>Examples</h2>
10375///
10376
10377#[doc=r###"```rust
10378// Grayscale integer value
10379background(51);
10380```"###]
10381#[doc=r###"```rust
10382// R, G & B integer values
10383background(255, 204, 0);
10384```"###]
10385#[doc=r###"```rust
10386// H, S & B integer values
10387colorMode(HSB);
10388background(255, 204, 100);
10389```"###]
10390#[doc=r###"```rust
10391// Named SVG/CSS color string
10392background('red');
10393```"###]
10394#[doc=r###"```rust
10395// three-digit hexadecimal RGB notation
10396background('#fae');
10397```"###]
10398#[doc=r###"```rust
10399// six-digit hexadecimal RGB notation
10400background('#222222');
10401```"###]
10402#[doc=r###"```rust
10403// integer RGB notation
10404background('rgb(0,255,0)');
10405```"###]
10406#[doc=r###"```rust
10407// integer RGBA notation
10408background('rgba(0,255,0, 0.25)');
10409```"###]
10410#[doc=r###"```rust
10411// percentage RGB notation
10412background('rgb(100%,0%,10%)');
10413```"###]
10414#[doc=r###"```rust
10415// percentage RGBA notation
10416background('rgba(100%,0%,100%,0.5)');
10417```"###]
10418#[doc=r###"```rust
10419// p5 Color object
10420background(color(0, 0, 255));
10421```"###]
10422/// <h2>Overloads</h2>
10423///
10424#[doc = r##"<code>color</code> any value created by the color() function
10425
10426"##]
10427///
10428///
10429/// ---
10430///
10431///
10432#[doc = r##"<code>colorstring</code> color string, possible formats include: integer
10433                        rgb() or rgba(), percentage rgb() or rgba(),
10434                        3-digit hex, 6-digit hex
10435
10436"##]
10437///
10438///
10439#[doc = r##"<code>a?</code> opacity of the background relative to current
10440                            color range (default is 0-255)
10441
10442"##]
10443///
10444///
10445/// ---
10446///
10447///
10448#[doc = r##"<code>gray</code> specifies a value between white and black
10449
10450"##]
10451///
10452///
10453#[doc = r##"<code>a?</code> opacity of the background relative to current
10454                            color range (default is 0-255)
10455
10456"##]
10457///
10458///
10459/// ---
10460///
10461///
10462#[doc = r##"<code>v1</code> red or hue value (depending on the current color
10463                       mode)
10464
10465"##]
10466///
10467///
10468#[doc = r##"<code>v2</code> green or saturation value (depending on the current
10469                       color mode)
10470
10471"##]
10472///
10473///
10474#[doc = r##"<code>v3</code> blue or brightness value (depending on the current
10475                       color mode)
10476
10477"##]
10478///
10479///
10480#[doc = r##"<code>a?</code> opacity of the background relative to current
10481                            color range (default is 0-255)
10482
10483"##]
10484///
10485///
10486/// ---
10487///
10488///
10489#[doc = r##"<code>values</code> an array containing the red, green, blue
10490                                and alpha components of the color
10491
10492"##]
10493///
10494///
10495/// ---
10496///
10497///
10498#[doc = r##"<code>image</code> image created with loadImage() or createImage(),
10499                            to set as background
10500                            (must be same size as the sketch window)
10501
10502"##]
10503///
10504///
10505#[doc = r##"<code>a?</code> opacity of the background relative to current
10506                            color range (default is 0-255)
10507
10508"##]
10509///
10510///
10511/// ---
10512///
10513
10514pub static background: BackgroundInternalType = BackgroundInternalType;
10515#[doc(hidden)]
10516pub struct BackgroundInternalType;
10517
10518
10519#[wasm_bindgen]
10520extern {
10521    #[wasm_bindgen(js_name = "background")]
10522    fn background604516976(_ : & Color, ) ;
10523}
10524
10525#[doc(hidden)]
10526impl FnOnce<(&'_ Color,)> for BackgroundInternalType {
10527    type Output = ();
10528    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
10529        background604516976.call(args)
10530    }
10531}
10532
10533#[doc(hidden)]
10534impl FnMut<(&'_ Color,)> for BackgroundInternalType {
10535    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
10536        background604516976.call(args)
10537    }
10538}
10539
10540#[doc(hidden)]
10541impl Fn<(&'_ Color,)> for BackgroundInternalType {
10542    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
10543        background604516976.call(args)
10544    }
10545}
10546
10547#[wasm_bindgen]
10548extern {
10549    #[wasm_bindgen(js_name = "background")]
10550    fn background857977075(_ : & str, _ : f64, ) ;
10551}
10552
10553#[doc(hidden)]
10554impl FnOnce<(&'_ str,f64,)> for BackgroundInternalType {
10555    type Output = ();
10556    extern "rust-call" fn call_once(self, args: (&'_ str,f64,)) -> Self::Output {
10557        background857977075.call(args)
10558    }
10559}
10560
10561#[doc(hidden)]
10562impl FnMut<(&'_ str,f64,)> for BackgroundInternalType {
10563    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,)) -> Self::Output {
10564        background857977075.call(args)
10565    }
10566}
10567
10568#[doc(hidden)]
10569impl Fn<(&'_ str,f64,)> for BackgroundInternalType {
10570    extern "rust-call" fn call(&self, args: (&'_ str,f64,)) -> Self::Output {
10571        background857977075.call(args)
10572    }
10573}
10574
10575#[wasm_bindgen]
10576extern {
10577    #[wasm_bindgen(js_name = "background")]
10578    fn background3756350514(_ : & str, ) ;
10579}
10580
10581#[doc(hidden)]
10582impl FnOnce<(&'_ str,)> for BackgroundInternalType {
10583    type Output = ();
10584    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
10585        background3756350514.call(args)
10586    }
10587}
10588
10589#[doc(hidden)]
10590impl FnMut<(&'_ str,)> for BackgroundInternalType {
10591    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
10592        background3756350514.call(args)
10593    }
10594}
10595
10596#[doc(hidden)]
10597impl Fn<(&'_ str,)> for BackgroundInternalType {
10598    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
10599        background3756350514.call(args)
10600    }
10601}
10602
10603#[wasm_bindgen]
10604extern {
10605    #[wasm_bindgen(js_name = "background")]
10606    fn background518937759(_ : f64, _ : f64, ) ;
10607}
10608
10609#[doc(hidden)]
10610impl FnOnce<(f64,f64,)> for BackgroundInternalType {
10611    type Output = ();
10612    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
10613        background518937759.call(args)
10614    }
10615}
10616
10617#[doc(hidden)]
10618impl FnMut<(f64,f64,)> for BackgroundInternalType {
10619    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
10620        background518937759.call(args)
10621    }
10622}
10623
10624#[doc(hidden)]
10625impl Fn<(f64,f64,)> for BackgroundInternalType {
10626    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
10627        background518937759.call(args)
10628    }
10629}
10630
10631#[wasm_bindgen]
10632extern {
10633    #[wasm_bindgen(js_name = "background")]
10634    fn background2334025316(_ : f64, ) ;
10635}
10636
10637#[doc(hidden)]
10638impl FnOnce<(f64,)> for BackgroundInternalType {
10639    type Output = ();
10640    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
10641        background2334025316.call(args)
10642    }
10643}
10644
10645#[doc(hidden)]
10646impl FnMut<(f64,)> for BackgroundInternalType {
10647    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
10648        background2334025316.call(args)
10649    }
10650}
10651
10652#[doc(hidden)]
10653impl Fn<(f64,)> for BackgroundInternalType {
10654    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
10655        background2334025316.call(args)
10656    }
10657}
10658
10659#[wasm_bindgen]
10660extern {
10661    #[wasm_bindgen(js_name = "background")]
10662    fn background4262922276(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
10663}
10664
10665#[doc(hidden)]
10666impl FnOnce<(f64,f64,f64,f64,)> for BackgroundInternalType {
10667    type Output = ();
10668    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
10669        background4262922276.call(args)
10670    }
10671}
10672
10673#[doc(hidden)]
10674impl FnMut<(f64,f64,f64,f64,)> for BackgroundInternalType {
10675    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
10676        background4262922276.call(args)
10677    }
10678}
10679
10680#[doc(hidden)]
10681impl Fn<(f64,f64,f64,f64,)> for BackgroundInternalType {
10682    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
10683        background4262922276.call(args)
10684    }
10685}
10686
10687#[wasm_bindgen]
10688extern {
10689    #[wasm_bindgen(js_name = "background")]
10690    fn background2301559220(_ : f64, _ : f64, _ : f64, ) ;
10691}
10692
10693#[doc(hidden)]
10694impl FnOnce<(f64,f64,f64,)> for BackgroundInternalType {
10695    type Output = ();
10696    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
10697        background2301559220.call(args)
10698    }
10699}
10700
10701#[doc(hidden)]
10702impl FnMut<(f64,f64,f64,)> for BackgroundInternalType {
10703    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
10704        background2301559220.call(args)
10705    }
10706}
10707
10708#[doc(hidden)]
10709impl Fn<(f64,f64,f64,)> for BackgroundInternalType {
10710    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
10711        background2301559220.call(args)
10712    }
10713}
10714
10715#[wasm_bindgen]
10716extern {
10717    #[wasm_bindgen(js_name = "background")]
10718    fn background448201987(_ : & [f64], ) ;
10719}
10720
10721#[doc(hidden)]
10722impl FnOnce<(&'_ [f64],)> for BackgroundInternalType {
10723    type Output = ();
10724    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
10725        background448201987.call(args)
10726    }
10727}
10728
10729#[doc(hidden)]
10730impl FnMut<(&'_ [f64],)> for BackgroundInternalType {
10731    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
10732        background448201987.call(args)
10733    }
10734}
10735
10736#[doc(hidden)]
10737impl Fn<(&'_ [f64],)> for BackgroundInternalType {
10738    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
10739        background448201987.call(args)
10740    }
10741}
10742
10743#[wasm_bindgen]
10744extern {
10745    #[wasm_bindgen(js_name = "background")]
10746    fn background180030014(_ : & Image, _ : f64, ) ;
10747}
10748
10749#[doc(hidden)]
10750impl FnOnce<(&'_ Image,f64,)> for BackgroundInternalType {
10751    type Output = ();
10752    extern "rust-call" fn call_once(self, args: (&'_ Image,f64,)) -> Self::Output {
10753        background180030014.call(args)
10754    }
10755}
10756
10757#[doc(hidden)]
10758impl FnMut<(&'_ Image,f64,)> for BackgroundInternalType {
10759    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,f64,)) -> Self::Output {
10760        background180030014.call(args)
10761    }
10762}
10763
10764#[doc(hidden)]
10765impl Fn<(&'_ Image,f64,)> for BackgroundInternalType {
10766    extern "rust-call" fn call(&self, args: (&'_ Image,f64,)) -> Self::Output {
10767        background180030014.call(args)
10768    }
10769}
10770
10771#[wasm_bindgen]
10772extern {
10773    #[wasm_bindgen(js_name = "background")]
10774    fn background2884809183(_ : & Image, ) ;
10775}
10776
10777#[doc(hidden)]
10778impl FnOnce<(&'_ Image,)> for BackgroundInternalType {
10779    type Output = ();
10780    extern "rust-call" fn call_once(self, args: (&'_ Image,)) -> Self::Output {
10781        background2884809183.call(args)
10782    }
10783}
10784
10785#[doc(hidden)]
10786impl FnMut<(&'_ Image,)> for BackgroundInternalType {
10787    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,)) -> Self::Output {
10788        background2884809183.call(args)
10789    }
10790}
10791
10792#[doc(hidden)]
10793impl Fn<(&'_ Image,)> for BackgroundInternalType {
10794    extern "rust-call" fn call(&self, args: (&'_ Image,)) -> Self::Output {
10795        background2884809183.call(args)
10796    }
10797}
10798#[doc=r##"<p>Clears the pixels within a buffer. This function only clears the canvas.
10799It will not clear objects created by createX() methods such as
10800<a href="#/p5/createVideo">createVideo()</a> or <a href="#/p5/createDiv">createDiv()</a>.
10801Unlike the main graphics context, pixels in additional graphics areas created
10802with <a href="#/p5/createGraphics">createGraphics()</a> can be entirely
10803or partially transparent. This function clears everything to make all of
10804the pixels 100% transparent.</p>
10805"##]
10806///<h2>Examples</h2>
10807///
10808
10809#[doc=r###"```rust
10810// Clear the screen on mouse press.
10811function draw() {
10812  ellipse(mouseX, mouseY, 20, 20);
10813}
10814function mousePressed() {
10815  clear();
10816  background(128);
10817}
10818```"###]
10819
10820pub static clear: ClearInternalType = ClearInternalType;
10821#[doc(hidden)]
10822pub struct ClearInternalType;
10823
10824
10825#[wasm_bindgen]
10826extern {
10827    #[wasm_bindgen(js_name = "clear")]
10828    fn clear3351313771() ;
10829}
10830
10831#[doc(hidden)]
10832impl FnOnce<()> for ClearInternalType {
10833    type Output = ();
10834    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
10835        clear3351313771.call(args)
10836    }
10837}
10838
10839#[doc(hidden)]
10840impl FnMut<()> for ClearInternalType {
10841    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
10842        clear3351313771.call(args)
10843    }
10844}
10845
10846#[doc(hidden)]
10847impl Fn<()> for ClearInternalType {
10848    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
10849        clear3351313771.call(args)
10850    }
10851}
10852#[doc=r##"<p><a href="#/p5/colorMode">colorMode()</a> changes the way p5.js interprets
10853color data. By default, the parameters for <a href="#/p5/fill">fill()</a>,
10854<a href="#/p5/stroke">stroke()</a>, <a href="#/p5/background">background()</a>,
10855and <a href="#/p5/color">color()</a> are defined by values between 0 and 255
10856using the RGB color model. This is equivalent to setting colorMode(RGB, 255).
10857Setting colorMode(HSB) lets you use the HSB system instead. By default, this
10858is colorMode(HSB, 360, 100, 100, 1). You can also use HSL.</p>
10859<p>Note: existing color objects remember the mode that they were created in,
10860so you can change modes as you like without affecting their appearance.</p>
10861"##]
10862///<h2>Examples</h2>
10863///
10864
10865#[doc=r###"```rust
10866noStroke();
10867colorMode(RGB, 100);
10868for (let i = 0; i < 100; i++) {
10869  for (let j = 0; j < 100; j++) {
10870    stroke(i, j, 0);
10871    point(i, j);
10872  }
10873}
10874```"###]
10875#[doc=r###"```rust
10876noStroke();
10877colorMode(HSB, 100);
10878for (let i = 0; i < 100; i++) {
10879  for (let j = 0; j < 100; j++) {
10880    stroke(i, j, 100);
10881    point(i, j);
10882  }
10883}
10884```"###]
10885#[doc=r###"```rust
10886colorMode(RGB, 255);
10887let c = color(127, 255, 0);
10888colorMode(RGB, 1);
10889let myColor = c._getRed();
10890text(myColor, 10, 10, 80, 80);
10891```"###]
10892#[doc=r###"```rust
10893noFill();
10894colorMode(RGB, 255, 255, 255, 1);
10895background(255);
10896strokeWeight(4);
10897stroke(255, 0, 10, 0.3);
10898ellipse(40, 40, 50, 50);
10899ellipse(50, 50, 40, 40);
10900```"###]
10901/// <h2>Overloads</h2>
10902///
10903#[doc = r##"<code>mode</code> either RGB, HSB or HSL, corresponding to
10904                         Red/Green/Blue and Hue/Saturation/Brightness
10905                         (or Lightness)
10906
10907"##]
10908///
10909///
10910#[doc = r##"<code>max?</code> range for all values
10911
10912"##]
10913///
10914///
10915/// ---
10916///
10917///
10918#[doc = r##"<code>mode</code> either RGB, HSB or HSL, corresponding to
10919                         Red/Green/Blue and Hue/Saturation/Brightness
10920                         (or Lightness)
10921
10922"##]
10923///
10924///
10925#[doc = r##"<code>max1</code> range for the red or hue depending on the
10926                             current color mode
10927
10928"##]
10929///
10930///
10931#[doc = r##"<code>max2</code> range for the green or saturation depending
10932                             on the current color mode
10933
10934"##]
10935///
10936///
10937#[doc = r##"<code>max3</code> range for the blue or brightness/lightness
10938                             depending on the current color mode
10939
10940"##]
10941///
10942///
10943#[doc = r##"<code>maxA?</code> range for the alpha
10944
10945"##]
10946///
10947///
10948/// ---
10949///
10950
10951pub static colorMode: ColorModeInternalType = ColorModeInternalType;
10952#[doc(hidden)]
10953pub struct ColorModeInternalType;
10954
10955
10956#[wasm_bindgen]
10957extern {
10958    #[wasm_bindgen(js_name = "colorMode")]
10959    fn colorMode2504777767(_ : COLOR_MODE, _ : f64, ) ;
10960}
10961
10962#[doc(hidden)]
10963impl FnOnce<(COLOR_MODE,f64,)> for ColorModeInternalType {
10964    type Output = ();
10965    extern "rust-call" fn call_once(self, args: (COLOR_MODE,f64,)) -> Self::Output {
10966        colorMode2504777767.call(args)
10967    }
10968}
10969
10970#[doc(hidden)]
10971impl FnMut<(COLOR_MODE,f64,)> for ColorModeInternalType {
10972    extern "rust-call" fn call_mut(&mut self, args: (COLOR_MODE,f64,)) -> Self::Output {
10973        colorMode2504777767.call(args)
10974    }
10975}
10976
10977#[doc(hidden)]
10978impl Fn<(COLOR_MODE,f64,)> for ColorModeInternalType {
10979    extern "rust-call" fn call(&self, args: (COLOR_MODE,f64,)) -> Self::Output {
10980        colorMode2504777767.call(args)
10981    }
10982}
10983
10984#[wasm_bindgen]
10985extern {
10986    #[wasm_bindgen(js_name = "colorMode")]
10987    fn colorMode2909271478(_ : COLOR_MODE, ) ;
10988}
10989
10990#[doc(hidden)]
10991impl FnOnce<(COLOR_MODE,)> for ColorModeInternalType {
10992    type Output = ();
10993    extern "rust-call" fn call_once(self, args: (COLOR_MODE,)) -> Self::Output {
10994        colorMode2909271478.call(args)
10995    }
10996}
10997
10998#[doc(hidden)]
10999impl FnMut<(COLOR_MODE,)> for ColorModeInternalType {
11000    extern "rust-call" fn call_mut(&mut self, args: (COLOR_MODE,)) -> Self::Output {
11001        colorMode2909271478.call(args)
11002    }
11003}
11004
11005#[doc(hidden)]
11006impl Fn<(COLOR_MODE,)> for ColorModeInternalType {
11007    extern "rust-call" fn call(&self, args: (COLOR_MODE,)) -> Self::Output {
11008        colorMode2909271478.call(args)
11009    }
11010}
11011
11012#[wasm_bindgen]
11013extern {
11014    #[wasm_bindgen(js_name = "colorMode")]
11015    fn colorMode2714767674(_ : Constant, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
11016}
11017
11018#[doc(hidden)]
11019impl FnOnce<(Constant,f64,f64,f64,f64,)> for ColorModeInternalType {
11020    type Output = ();
11021    extern "rust-call" fn call_once(self, args: (Constant,f64,f64,f64,f64,)) -> Self::Output {
11022        colorMode2714767674.call(args)
11023    }
11024}
11025
11026#[doc(hidden)]
11027impl FnMut<(Constant,f64,f64,f64,f64,)> for ColorModeInternalType {
11028    extern "rust-call" fn call_mut(&mut self, args: (Constant,f64,f64,f64,f64,)) -> Self::Output {
11029        colorMode2714767674.call(args)
11030    }
11031}
11032
11033#[doc(hidden)]
11034impl Fn<(Constant,f64,f64,f64,f64,)> for ColorModeInternalType {
11035    extern "rust-call" fn call(&self, args: (Constant,f64,f64,f64,f64,)) -> Self::Output {
11036        colorMode2714767674.call(args)
11037    }
11038}
11039
11040#[wasm_bindgen]
11041extern {
11042    #[wasm_bindgen(js_name = "colorMode")]
11043    fn colorMode3248433245(_ : Constant, _ : f64, _ : f64, _ : f64, ) ;
11044}
11045
11046#[doc(hidden)]
11047impl FnOnce<(Constant,f64,f64,f64,)> for ColorModeInternalType {
11048    type Output = ();
11049    extern "rust-call" fn call_once(self, args: (Constant,f64,f64,f64,)) -> Self::Output {
11050        colorMode3248433245.call(args)
11051    }
11052}
11053
11054#[doc(hidden)]
11055impl FnMut<(Constant,f64,f64,f64,)> for ColorModeInternalType {
11056    extern "rust-call" fn call_mut(&mut self, args: (Constant,f64,f64,f64,)) -> Self::Output {
11057        colorMode3248433245.call(args)
11058    }
11059}
11060
11061#[doc(hidden)]
11062impl Fn<(Constant,f64,f64,f64,)> for ColorModeInternalType {
11063    extern "rust-call" fn call(&self, args: (Constant,f64,f64,f64,)) -> Self::Output {
11064        colorMode3248433245.call(args)
11065    }
11066}
11067#[doc=r##"<p>Sets the color used to fill shapes. For example, if you run fill(204, 102, 0),
11068all shapes drawn after the fill command will be filled with the color orange.
11069This color is either specified in terms of the RGB or HSB color depending on
11070the current <a href="#/p5/colorMode">colorMode()</a>. (The default color space
11071is RGB, with each value in the range from 0 to 255). The alpha range by default
11072is also 0 to 255.</p>
11073<p>If a single string argument is provided, RGB, RGBA and Hex CSS color strings
11074and all named color strings are supported. In this case, an alpha number
11075value as a second argument is not supported, the RGBA form should be used.</p>
11076<p>A p5 <a href="#/p5.Color">Color</a> object can also be provided to set the fill color.</p>
11077"##]
11078///<h2>Examples</h2>
11079///
11080
11081#[doc=r###"```rust
11082// Grayscale integer value
11083fill(51);
11084rect(20, 20, 60, 60);
11085```"###]
11086#[doc=r###"```rust
11087// R, G & B integer values
11088fill(255, 204, 0);
11089rect(20, 20, 60, 60);
11090```"###]
11091#[doc=r###"```rust
11092// H, S & B integer values
11093colorMode(HSB);
11094fill(255, 204, 100);
11095rect(20, 20, 60, 60);
11096```"###]
11097#[doc=r###"```rust
11098// Named SVG/CSS color string
11099fill('red');
11100rect(20, 20, 60, 60);
11101```"###]
11102#[doc=r###"```rust
11103// three-digit hexadecimal RGB notation
11104fill('#fae');
11105rect(20, 20, 60, 60);
11106```"###]
11107#[doc=r###"```rust
11108// six-digit hexadecimal RGB notation
11109fill('#222222');
11110rect(20, 20, 60, 60);
11111```"###]
11112#[doc=r###"```rust
11113// integer RGB notation
11114fill('rgb(0,255,0)');
11115rect(20, 20, 60, 60);
11116```"###]
11117#[doc=r###"```rust
11118// integer RGBA notation
11119fill('rgba(0,255,0, 0.25)');
11120rect(20, 20, 60, 60);
11121```"###]
11122#[doc=r###"```rust
11123// percentage RGB notation
11124fill('rgb(100%,0%,10%)');
11125rect(20, 20, 60, 60);
11126```"###]
11127#[doc=r###"```rust
11128// percentage RGBA notation
11129fill('rgba(100%,0%,100%,0.5)');
11130rect(20, 20, 60, 60);
11131```"###]
11132#[doc=r###"```rust
11133// p5 Color object
11134fill(color(0, 0, 255));
11135rect(20, 20, 60, 60);
11136```"###]
11137/// <h2>Overloads</h2>
11138///
11139#[doc = r##"<code>v1</code> red or hue value relative to
11140                                the current color range
11141
11142"##]
11143///
11144///
11145#[doc = r##"<code>v2</code> green or saturation value
11146                                relative to the current color range
11147
11148"##]
11149///
11150///
11151#[doc = r##"<code>v3</code> blue or brightness value
11152                                relative to the current color range
11153
11154"##]
11155///
11156///
11157#[doc = r##"<code>alpha?</code> 
11158"##]
11159///
11160///
11161/// ---
11162///
11163///
11164#[doc = r##"<code>value</code> a color string
11165
11166"##]
11167///
11168///
11169/// ---
11170///
11171///
11172#[doc = r##"<code>gray</code> a gray value
11173
11174"##]
11175///
11176///
11177#[doc = r##"<code>alpha?</code> 
11178"##]
11179///
11180///
11181/// ---
11182///
11183///
11184#[doc = r##"<code>values</code> an array containing the red,green,blue &
11185                                and alpha components of the color
11186
11187"##]
11188///
11189///
11190/// ---
11191///
11192///
11193#[doc = r##"<code>color</code> the fill color
11194
11195"##]
11196///
11197///
11198/// ---
11199///
11200
11201pub static fill: FillInternalType = FillInternalType;
11202#[doc(hidden)]
11203pub struct FillInternalType;
11204
11205
11206#[wasm_bindgen]
11207extern {
11208    #[wasm_bindgen(js_name = "fill")]
11209    fn fill2633821798(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
11210}
11211
11212#[doc(hidden)]
11213impl FnOnce<(f64,f64,f64,f64,)> for FillInternalType {
11214    type Output = ();
11215    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
11216        fill2633821798.call(args)
11217    }
11218}
11219
11220#[doc(hidden)]
11221impl FnMut<(f64,f64,f64,f64,)> for FillInternalType {
11222    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
11223        fill2633821798.call(args)
11224    }
11225}
11226
11227#[doc(hidden)]
11228impl Fn<(f64,f64,f64,f64,)> for FillInternalType {
11229    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
11230        fill2633821798.call(args)
11231    }
11232}
11233
11234#[wasm_bindgen]
11235extern {
11236    #[wasm_bindgen(js_name = "fill")]
11237    fn fill2589185921(_ : f64, _ : f64, _ : f64, ) ;
11238}
11239
11240#[doc(hidden)]
11241impl FnOnce<(f64,f64,f64,)> for FillInternalType {
11242    type Output = ();
11243    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
11244        fill2589185921.call(args)
11245    }
11246}
11247
11248#[doc(hidden)]
11249impl FnMut<(f64,f64,f64,)> for FillInternalType {
11250    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
11251        fill2589185921.call(args)
11252    }
11253}
11254
11255#[doc(hidden)]
11256impl Fn<(f64,f64,f64,)> for FillInternalType {
11257    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
11258        fill2589185921.call(args)
11259    }
11260}
11261
11262#[wasm_bindgen]
11263extern {
11264    #[wasm_bindgen(js_name = "fill")]
11265    fn fill2157829344(_ : & str, ) ;
11266}
11267
11268#[doc(hidden)]
11269impl FnOnce<(&'_ str,)> for FillInternalType {
11270    type Output = ();
11271    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
11272        fill2157829344.call(args)
11273    }
11274}
11275
11276#[doc(hidden)]
11277impl FnMut<(&'_ str,)> for FillInternalType {
11278    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
11279        fill2157829344.call(args)
11280    }
11281}
11282
11283#[doc(hidden)]
11284impl Fn<(&'_ str,)> for FillInternalType {
11285    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
11286        fill2157829344.call(args)
11287    }
11288}
11289
11290#[wasm_bindgen]
11291extern {
11292    #[wasm_bindgen(js_name = "fill")]
11293    fn fill1828956475(_ : f64, _ : f64, ) ;
11294}
11295
11296#[doc(hidden)]
11297impl FnOnce<(f64,f64,)> for FillInternalType {
11298    type Output = ();
11299    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
11300        fill1828956475.call(args)
11301    }
11302}
11303
11304#[doc(hidden)]
11305impl FnMut<(f64,f64,)> for FillInternalType {
11306    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
11307        fill1828956475.call(args)
11308    }
11309}
11310
11311#[doc(hidden)]
11312impl Fn<(f64,f64,)> for FillInternalType {
11313    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
11314        fill1828956475.call(args)
11315    }
11316}
11317
11318#[wasm_bindgen]
11319extern {
11320    #[wasm_bindgen(js_name = "fill")]
11321    fn fill4049784345(_ : f64, ) ;
11322}
11323
11324#[doc(hidden)]
11325impl FnOnce<(f64,)> for FillInternalType {
11326    type Output = ();
11327    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
11328        fill4049784345.call(args)
11329    }
11330}
11331
11332#[doc(hidden)]
11333impl FnMut<(f64,)> for FillInternalType {
11334    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
11335        fill4049784345.call(args)
11336    }
11337}
11338
11339#[doc(hidden)]
11340impl Fn<(f64,)> for FillInternalType {
11341    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
11342        fill4049784345.call(args)
11343    }
11344}
11345
11346#[wasm_bindgen]
11347extern {
11348    #[wasm_bindgen(js_name = "fill")]
11349    fn fill3850228902(_ : & [f64], ) ;
11350}
11351
11352#[doc(hidden)]
11353impl FnOnce<(&'_ [f64],)> for FillInternalType {
11354    type Output = ();
11355    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
11356        fill3850228902.call(args)
11357    }
11358}
11359
11360#[doc(hidden)]
11361impl FnMut<(&'_ [f64],)> for FillInternalType {
11362    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
11363        fill3850228902.call(args)
11364    }
11365}
11366
11367#[doc(hidden)]
11368impl Fn<(&'_ [f64],)> for FillInternalType {
11369    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
11370        fill3850228902.call(args)
11371    }
11372}
11373
11374#[wasm_bindgen]
11375extern {
11376    #[wasm_bindgen(js_name = "fill")]
11377    fn fill1369881449(_ : & Color, ) ;
11378}
11379
11380#[doc(hidden)]
11381impl FnOnce<(&'_ Color,)> for FillInternalType {
11382    type Output = ();
11383    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
11384        fill1369881449.call(args)
11385    }
11386}
11387
11388#[doc(hidden)]
11389impl FnMut<(&'_ Color,)> for FillInternalType {
11390    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
11391        fill1369881449.call(args)
11392    }
11393}
11394
11395#[doc(hidden)]
11396impl Fn<(&'_ Color,)> for FillInternalType {
11397    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
11398        fill1369881449.call(args)
11399    }
11400}
11401#[doc=r##"<p>Disables filling geometry. If both <a href="#/p5/noStroke">noStroke()</a> and <a href="#/p5/noFill">noFill()</a> are called,
11402nothing will be drawn to the screen.</p>
11403"##]
11404///<h2>Examples</h2>
11405///
11406
11407#[doc=r###"```rust
11408rect(15, 10, 55, 55);
11409noFill();
11410rect(20, 20, 60, 60);
11411```"###]
11412#[doc=r###"```rust
11413function setup() {
11414  createCanvas(100, 100, WEBGL);
11415}
11416
11417function draw() {
11418  background(0);
11419  noFill();
11420  stroke(100, 100, 240);
11421  rotateX(frameCount * 0.01);
11422  rotateY(frameCount * 0.01);
11423  box(45, 45, 45);
11424}
11425```"###]
11426
11427pub static noFill: NoFillInternalType = NoFillInternalType;
11428#[doc(hidden)]
11429pub struct NoFillInternalType;
11430
11431
11432#[wasm_bindgen]
11433extern {
11434    #[wasm_bindgen(js_name = "noFill")]
11435    fn noFill518999741() ;
11436}
11437
11438#[doc(hidden)]
11439impl FnOnce<()> for NoFillInternalType {
11440    type Output = ();
11441    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
11442        noFill518999741.call(args)
11443    }
11444}
11445
11446#[doc(hidden)]
11447impl FnMut<()> for NoFillInternalType {
11448    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
11449        noFill518999741.call(args)
11450    }
11451}
11452
11453#[doc(hidden)]
11454impl Fn<()> for NoFillInternalType {
11455    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
11456        noFill518999741.call(args)
11457    }
11458}
11459#[doc=r##"<p>Disables drawing the stroke (outline). If both <a href="#/p5/noStroke">noStroke()</a> and <a href="#/p5/noFill">noFill()</a>
11460are called, nothing will be drawn to the screen.</p>
11461"##]
11462///<h2>Examples</h2>
11463///
11464
11465#[doc=r###"```rust
11466noStroke();
11467rect(20, 20, 60, 60);
11468```"###]
11469#[doc=r###"```rust
11470function setup() {
11471  createCanvas(100, 100, WEBGL);
11472}
11473
11474function draw() {
11475  background(0);
11476  noStroke();
11477  fill(240, 150, 150);
11478  rotateX(frameCount * 0.01);
11479  rotateY(frameCount * 0.01);
11480  box(45, 45, 45);
11481}
11482```"###]
11483
11484pub static noStroke: NoStrokeInternalType = NoStrokeInternalType;
11485#[doc(hidden)]
11486pub struct NoStrokeInternalType;
11487
11488
11489#[wasm_bindgen]
11490extern {
11491    #[wasm_bindgen(js_name = "noStroke")]
11492    fn noStroke1942383773() ;
11493}
11494
11495#[doc(hidden)]
11496impl FnOnce<()> for NoStrokeInternalType {
11497    type Output = ();
11498    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
11499        noStroke1942383773.call(args)
11500    }
11501}
11502
11503#[doc(hidden)]
11504impl FnMut<()> for NoStrokeInternalType {
11505    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
11506        noStroke1942383773.call(args)
11507    }
11508}
11509
11510#[doc(hidden)]
11511impl Fn<()> for NoStrokeInternalType {
11512    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
11513        noStroke1942383773.call(args)
11514    }
11515}
11516#[doc=r##"<p>Sets the color used to draw lines and borders around shapes. This color
11517is either specified in terms of the RGB or HSB color depending on the
11518current <a href="#/p5/colorMode">colorMode()</a> (the default color space
11519is RGB, with each value in the range from 0 to 255). The alpha range by
11520default is also 0 to 255.</p>
11521<p>If a single string argument is provided, RGB, RGBA and Hex CSS color
11522strings and all named color strings are supported. In this case, an alpha
11523number value as a second argument is not supported, the RGBA form should be
11524used.</p>
11525<p>A p5 <a href="#/p5.Color">Color</a> object can also be provided to set the stroke color.</p>
11526"##]
11527///<h2>Examples</h2>
11528///
11529
11530#[doc=r###"```rust
11531// Grayscale integer value
11532strokeWeight(4);
11533stroke(51);
11534rect(20, 20, 60, 60);
11535```"###]
11536#[doc=r###"```rust
11537// R, G & B integer values
11538stroke(255, 204, 0);
11539strokeWeight(4);
11540rect(20, 20, 60, 60);
11541```"###]
11542#[doc=r###"```rust
11543// H, S & B integer values
11544colorMode(HSB);
11545strokeWeight(4);
11546stroke(255, 204, 100);
11547rect(20, 20, 60, 60);
11548```"###]
11549#[doc=r###"```rust
11550// Named SVG/CSS color string
11551stroke('red');
11552strokeWeight(4);
11553rect(20, 20, 60, 60);
11554```"###]
11555#[doc=r###"```rust
11556// three-digit hexadecimal RGB notation
11557stroke('#fae');
11558strokeWeight(4);
11559rect(20, 20, 60, 60);
11560```"###]
11561#[doc=r###"```rust
11562// six-digit hexadecimal RGB notation
11563stroke('#222222');
11564strokeWeight(4);
11565rect(20, 20, 60, 60);
11566```"###]
11567#[doc=r###"```rust
11568// integer RGB notation
11569stroke('rgb(0,255,0)');
11570strokeWeight(4);
11571rect(20, 20, 60, 60);
11572```"###]
11573#[doc=r###"```rust
11574// integer RGBA notation
11575stroke('rgba(0,255,0,0.25)');
11576strokeWeight(4);
11577rect(20, 20, 60, 60);
11578```"###]
11579#[doc=r###"```rust
11580// percentage RGB notation
11581stroke('rgb(100%,0%,10%)');
11582strokeWeight(4);
11583rect(20, 20, 60, 60);
11584```"###]
11585#[doc=r###"```rust
11586// percentage RGBA notation
11587stroke('rgba(100%,0%,100%,0.5)');
11588strokeWeight(4);
11589rect(20, 20, 60, 60);
11590```"###]
11591#[doc=r###"```rust
11592// p5 Color object
11593stroke(color(0, 0, 255));
11594strokeWeight(4);
11595rect(20, 20, 60, 60);
11596```"###]
11597/// <h2>Overloads</h2>
11598///
11599#[doc = r##"<code>v1</code> red or hue value relative to
11600                                the current color range
11601
11602"##]
11603///
11604///
11605#[doc = r##"<code>v2</code> green or saturation value
11606                                relative to the current color range
11607
11608"##]
11609///
11610///
11611#[doc = r##"<code>v3</code> blue or brightness value
11612                                relative to the current color range
11613
11614"##]
11615///
11616///
11617#[doc = r##"<code>alpha?</code> 
11618"##]
11619///
11620///
11621/// ---
11622///
11623///
11624#[doc = r##"<code>value</code> a color string
11625
11626"##]
11627///
11628///
11629/// ---
11630///
11631///
11632#[doc = r##"<code>gray</code> a gray value
11633
11634"##]
11635///
11636///
11637#[doc = r##"<code>alpha?</code> 
11638"##]
11639///
11640///
11641/// ---
11642///
11643///
11644#[doc = r##"<code>values</code> an array containing the red,green,blue &
11645                                and alpha components of the color
11646
11647"##]
11648///
11649///
11650/// ---
11651///
11652///
11653#[doc = r##"<code>color</code> the stroke color
11654
11655"##]
11656///
11657///
11658/// ---
11659///
11660
11661pub static stroke: StrokeInternalType = StrokeInternalType;
11662#[doc(hidden)]
11663pub struct StrokeInternalType;
11664
11665
11666#[wasm_bindgen]
11667extern {
11668    #[wasm_bindgen(js_name = "stroke")]
11669    fn stroke412415895(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
11670}
11671
11672#[doc(hidden)]
11673impl FnOnce<(f64,f64,f64,f64,)> for StrokeInternalType {
11674    type Output = ();
11675    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
11676        stroke412415895.call(args)
11677    }
11678}
11679
11680#[doc(hidden)]
11681impl FnMut<(f64,f64,f64,f64,)> for StrokeInternalType {
11682    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
11683        stroke412415895.call(args)
11684    }
11685}
11686
11687#[doc(hidden)]
11688impl Fn<(f64,f64,f64,f64,)> for StrokeInternalType {
11689    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
11690        stroke412415895.call(args)
11691    }
11692}
11693
11694#[wasm_bindgen]
11695extern {
11696    #[wasm_bindgen(js_name = "stroke")]
11697    fn stroke3942276512(_ : f64, _ : f64, _ : f64, ) ;
11698}
11699
11700#[doc(hidden)]
11701impl FnOnce<(f64,f64,f64,)> for StrokeInternalType {
11702    type Output = ();
11703    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
11704        stroke3942276512.call(args)
11705    }
11706}
11707
11708#[doc(hidden)]
11709impl FnMut<(f64,f64,f64,)> for StrokeInternalType {
11710    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
11711        stroke3942276512.call(args)
11712    }
11713}
11714
11715#[doc(hidden)]
11716impl Fn<(f64,f64,f64,)> for StrokeInternalType {
11717    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
11718        stroke3942276512.call(args)
11719    }
11720}
11721
11722#[wasm_bindgen]
11723extern {
11724    #[wasm_bindgen(js_name = "stroke")]
11725    fn stroke2816049361(_ : & str, ) ;
11726}
11727
11728#[doc(hidden)]
11729impl FnOnce<(&'_ str,)> for StrokeInternalType {
11730    type Output = ();
11731    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
11732        stroke2816049361.call(args)
11733    }
11734}
11735
11736#[doc(hidden)]
11737impl FnMut<(&'_ str,)> for StrokeInternalType {
11738    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
11739        stroke2816049361.call(args)
11740    }
11741}
11742
11743#[doc(hidden)]
11744impl Fn<(&'_ str,)> for StrokeInternalType {
11745    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
11746        stroke2816049361.call(args)
11747    }
11748}
11749
11750#[wasm_bindgen]
11751extern {
11752    #[wasm_bindgen(js_name = "stroke")]
11753    fn stroke3319503251(_ : f64, _ : f64, ) ;
11754}
11755
11756#[doc(hidden)]
11757impl FnOnce<(f64,f64,)> for StrokeInternalType {
11758    type Output = ();
11759    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
11760        stroke3319503251.call(args)
11761    }
11762}
11763
11764#[doc(hidden)]
11765impl FnMut<(f64,f64,)> for StrokeInternalType {
11766    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
11767        stroke3319503251.call(args)
11768    }
11769}
11770
11771#[doc(hidden)]
11772impl Fn<(f64,f64,)> for StrokeInternalType {
11773    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
11774        stroke3319503251.call(args)
11775    }
11776}
11777
11778#[wasm_bindgen]
11779extern {
11780    #[wasm_bindgen(js_name = "stroke")]
11781    fn stroke2738412371(_ : f64, ) ;
11782}
11783
11784#[doc(hidden)]
11785impl FnOnce<(f64,)> for StrokeInternalType {
11786    type Output = ();
11787    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
11788        stroke2738412371.call(args)
11789    }
11790}
11791
11792#[doc(hidden)]
11793impl FnMut<(f64,)> for StrokeInternalType {
11794    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
11795        stroke2738412371.call(args)
11796    }
11797}
11798
11799#[doc(hidden)]
11800impl Fn<(f64,)> for StrokeInternalType {
11801    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
11802        stroke2738412371.call(args)
11803    }
11804}
11805
11806#[wasm_bindgen]
11807extern {
11808    #[wasm_bindgen(js_name = "stroke")]
11809    fn stroke3644955701(_ : & [f64], ) ;
11810}
11811
11812#[doc(hidden)]
11813impl FnOnce<(&'_ [f64],)> for StrokeInternalType {
11814    type Output = ();
11815    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
11816        stroke3644955701.call(args)
11817    }
11818}
11819
11820#[doc(hidden)]
11821impl FnMut<(&'_ [f64],)> for StrokeInternalType {
11822    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
11823        stroke3644955701.call(args)
11824    }
11825}
11826
11827#[doc(hidden)]
11828impl Fn<(&'_ [f64],)> for StrokeInternalType {
11829    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
11830        stroke3644955701.call(args)
11831    }
11832}
11833
11834#[wasm_bindgen]
11835extern {
11836    #[wasm_bindgen(js_name = "stroke")]
11837    fn stroke2900705715(_ : & Color, ) ;
11838}
11839
11840#[doc(hidden)]
11841impl FnOnce<(&'_ Color,)> for StrokeInternalType {
11842    type Output = ();
11843    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
11844        stroke2900705715.call(args)
11845    }
11846}
11847
11848#[doc(hidden)]
11849impl FnMut<(&'_ Color,)> for StrokeInternalType {
11850    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
11851        stroke2900705715.call(args)
11852    }
11853}
11854
11855#[doc(hidden)]
11856impl Fn<(&'_ Color,)> for StrokeInternalType {
11857    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
11858        stroke2900705715.call(args)
11859    }
11860}
11861#[doc=r##"<p>All drawing that follows <a href="#/p5/erase">erase()</a> will subtract from
11862the canvas.Erased areas will reveal the web page underneath the canvas.Erasing
11863can be canceled with <a href="#/p5/noErase">noErase()</a>.</p>
11864<p>Drawing done with <a href="#/p5/image">image()</a> and <a href="#/p5/background">
11865background()</a> in between <a href="#/p5/erase">erase()</a> and
11866<a href="#/p5/noErase">noErase()</a> will not erase the canvas but works as usual.</p>
11867"##]
11868///<h2>Examples</h2>
11869///
11870
11871#[doc=r###"```rust
11872background(100, 100, 250);
11873fill(250, 100, 100);
11874rect(20, 20, 60, 60);
11875erase();
11876ellipse(25, 30, 30);
11877noErase();
11878```"###]
11879#[doc=r###"```rust
11880background(150, 250, 150);
11881fill(100, 100, 250);
11882rect(20, 20, 60, 60);
11883strokeWeight(5);
11884erase(150, 255);
11885triangle(50, 10, 70, 50, 90, 10);
11886noErase();
11887```"###]
11888#[doc=r###"```rust
11889function setup() {
11890  smooth();
11891  createCanvas(100, 100, WEBGL);
11892  // Make a <p> element and put it behind the canvas
11893  let p = createP('I am a dom element');
11894  p.center();
11895  p.style('font-size', '20px');
11896  p.style('text-align', 'center');
11897  p.style('z-index', '-9999');
11898}
11899
11900function draw() {
11901  background(250, 250, 150);
11902  fill(15, 195, 185);
11903  noStroke();
11904  sphere(30);
11905  erase();
11906  rotateY(frameCount * 0.02);
11907  translate(0, 0, 40);
11908  torus(15, 5);
11909  noErase();
11910}
11911```"###]
11912/// <h2>Parameters</h2>
11913///
11914#[doc = r##"<code>strengthFill?</code> A number (0-255) for the strength of erasing for a shape's fill.
11915                                       This will default to 255 when no argument is given, which
11916                                       is full strength.
11917
11918"##]
11919///
11920///
11921#[doc = r##"<code>strengthStroke?</code> A number (0-255) for the strength of erasing for a shape's stroke.
11922                                       This will default to 255 when no argument is given, which
11923                                       is full strength.
11924
11925"##]
11926///
11927
11928pub static erase: EraseInternalType = EraseInternalType;
11929#[doc(hidden)]
11930pub struct EraseInternalType;
11931
11932
11933#[wasm_bindgen]
11934extern {
11935    #[wasm_bindgen(js_name = "erase")]
11936    fn erase1642211702(_ : f64, _ : f64, ) ;
11937}
11938
11939#[doc(hidden)]
11940impl FnOnce<(f64,f64,)> for EraseInternalType {
11941    type Output = ();
11942    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
11943        erase1642211702.call(args)
11944    }
11945}
11946
11947#[doc(hidden)]
11948impl FnMut<(f64,f64,)> for EraseInternalType {
11949    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
11950        erase1642211702.call(args)
11951    }
11952}
11953
11954#[doc(hidden)]
11955impl Fn<(f64,f64,)> for EraseInternalType {
11956    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
11957        erase1642211702.call(args)
11958    }
11959}
11960
11961#[wasm_bindgen]
11962extern {
11963    #[wasm_bindgen(js_name = "erase")]
11964    fn erase1247078387(_ : f64, ) ;
11965}
11966
11967#[doc(hidden)]
11968impl FnOnce<(f64,)> for EraseInternalType {
11969    type Output = ();
11970    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
11971        erase1247078387.call(args)
11972    }
11973}
11974
11975#[doc(hidden)]
11976impl FnMut<(f64,)> for EraseInternalType {
11977    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
11978        erase1247078387.call(args)
11979    }
11980}
11981
11982#[doc(hidden)]
11983impl Fn<(f64,)> for EraseInternalType {
11984    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
11985        erase1247078387.call(args)
11986    }
11987}
11988
11989#[wasm_bindgen]
11990extern {
11991    #[wasm_bindgen(js_name = "erase")]
11992    fn erase4182841939() ;
11993}
11994
11995#[doc(hidden)]
11996impl FnOnce<()> for EraseInternalType {
11997    type Output = ();
11998    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
11999        erase4182841939.call(args)
12000    }
12001}
12002
12003#[doc(hidden)]
12004impl FnMut<()> for EraseInternalType {
12005    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
12006        erase4182841939.call(args)
12007    }
12008}
12009
12010#[doc(hidden)]
12011impl Fn<()> for EraseInternalType {
12012    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
12013        erase4182841939.call(args)
12014    }
12015}
12016#[doc=r##"<p>Ends erasing that was started with <a href="#/p5/erase">erase()</a>.
12017The <a href="#/p5/fill">fill()</a>, <a href="#/p5/stroke">stroke()</a>, and
12018<a href="#/p5/blendMode">blendMode()</a> settings will return to what they were
12019prior to calling <a href="#/p5/erase">erase()</a>.</p>
12020"##]
12021///<h2>Examples</h2>
12022///
12023
12024#[doc=r###"```rust
12025background(235, 145, 15);
12026noStroke();
12027fill(30, 45, 220);
12028rect(30, 10, 10, 80);
12029erase();
12030ellipse(50, 50, 60);
12031noErase();
12032rect(70, 10, 10, 80);
12033```"###]
12034
12035pub static noErase: NoEraseInternalType = NoEraseInternalType;
12036#[doc(hidden)]
12037pub struct NoEraseInternalType;
12038
12039
12040#[wasm_bindgen]
12041extern {
12042    #[wasm_bindgen(js_name = "noErase")]
12043    fn noErase4054924934() ;
12044}
12045
12046#[doc(hidden)]
12047impl FnOnce<()> for NoEraseInternalType {
12048    type Output = ();
12049    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
12050        noErase4054924934.call(args)
12051    }
12052}
12053
12054#[doc(hidden)]
12055impl FnMut<()> for NoEraseInternalType {
12056    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
12057        noErase4054924934.call(args)
12058    }
12059}
12060
12061#[doc(hidden)]
12062impl Fn<()> for NoEraseInternalType {
12063    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
12064        noErase4054924934.call(args)
12065    }
12066}
12067#[doc=r##"<p>Creates a new <a href="#/p5.Vector">p5.Vector</a> (the datatype for storing vectors). This provides a
12068two or three dimensional vector, specifically a Euclidean (also known as
12069geometric) vector. A vector is an entity that has both magnitude and
12070direction.</p>
12071"##]
12072///<h2>Examples</h2>
12073///
12074
12075#[doc=r###"```rust
12076let v1;
12077function setup() {
12078  createCanvas(100, 100);
12079  stroke(255, 0, 255);
12080  v1 = createVector(width / 2, height / 2);
12081}
12082
12083function draw() {
12084  background(255);
12085  line(v1.x, v1.y, mouseX, mouseY);
12086}
12087```"###]
12088/// <h2>Parameters</h2>
12089///
12090#[doc = r##"<code>x?</code> x component of the vector
12091
12092"##]
12093///
12094///
12095#[doc = r##"<code>y?</code> y component of the vector
12096
12097"##]
12098///
12099///
12100#[doc = r##"<code>z?</code> z component of the vector
12101
12102"##]
12103///
12104
12105pub static createVector: CreateVectorInternalType = CreateVectorInternalType;
12106#[doc(hidden)]
12107pub struct CreateVectorInternalType;
12108
12109
12110#[wasm_bindgen]
12111extern {
12112    #[wasm_bindgen(js_name = "createVector")]
12113    fn createVector2342535230(_ : f64, _ : f64, _ : f64, ) ->  Vector;
12114}
12115
12116#[doc(hidden)]
12117impl FnOnce<(f64,f64,f64,)> for CreateVectorInternalType {
12118    type Output =  Vector;
12119    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
12120        createVector2342535230.call(args)
12121    }
12122}
12123
12124#[doc(hidden)]
12125impl FnMut<(f64,f64,f64,)> for CreateVectorInternalType {
12126    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
12127        createVector2342535230.call(args)
12128    }
12129}
12130
12131#[doc(hidden)]
12132impl Fn<(f64,f64,f64,)> for CreateVectorInternalType {
12133    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
12134        createVector2342535230.call(args)
12135    }
12136}
12137
12138#[wasm_bindgen]
12139extern {
12140    #[wasm_bindgen(js_name = "createVector")]
12141    fn createVector967321891(_ : f64, _ : f64, ) ->  Vector;
12142}
12143
12144#[doc(hidden)]
12145impl FnOnce<(f64,f64,)> for CreateVectorInternalType {
12146    type Output =  Vector;
12147    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
12148        createVector967321891.call(args)
12149    }
12150}
12151
12152#[doc(hidden)]
12153impl FnMut<(f64,f64,)> for CreateVectorInternalType {
12154    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
12155        createVector967321891.call(args)
12156    }
12157}
12158
12159#[doc(hidden)]
12160impl Fn<(f64,f64,)> for CreateVectorInternalType {
12161    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
12162        createVector967321891.call(args)
12163    }
12164}
12165
12166#[wasm_bindgen]
12167extern {
12168    #[wasm_bindgen(js_name = "createVector")]
12169    fn createVector3775874899(_ : f64, ) ->  Vector;
12170}
12171
12172#[doc(hidden)]
12173impl FnOnce<(f64,)> for CreateVectorInternalType {
12174    type Output =  Vector;
12175    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
12176        createVector3775874899.call(args)
12177    }
12178}
12179
12180#[doc(hidden)]
12181impl FnMut<(f64,)> for CreateVectorInternalType {
12182    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
12183        createVector3775874899.call(args)
12184    }
12185}
12186
12187#[doc(hidden)]
12188impl Fn<(f64,)> for CreateVectorInternalType {
12189    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
12190        createVector3775874899.call(args)
12191    }
12192}
12193
12194#[wasm_bindgen]
12195extern {
12196    #[wasm_bindgen(js_name = "createVector")]
12197    fn createVector3911826149() ->  Vector;
12198}
12199
12200#[doc(hidden)]
12201impl FnOnce<()> for CreateVectorInternalType {
12202    type Output =  Vector;
12203    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
12204        createVector3911826149.call(args)
12205    }
12206}
12207
12208#[doc(hidden)]
12209impl FnMut<()> for CreateVectorInternalType {
12210    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
12211        createVector3911826149.call(args)
12212    }
12213}
12214
12215#[doc(hidden)]
12216impl Fn<()> for CreateVectorInternalType {
12217    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
12218        createVector3911826149.call(args)
12219    }
12220}
12221#[doc=r##"<p>Loads an opentype font file (.otf, .ttf) from a file or a URL,
12222and returns a PFont Object. This method is asynchronous,
12223meaning it may not finish before the next line in your sketch
12224is executed.</p>
12225<p>The path to the font should be relative to the HTML file
12226that links in your sketch. Loading fonts from a URL or other
12227remote location may be blocked due to your browser's built-in
12228security.</p>
12229"##]
12230///<h2>Examples</h2>
12231///
12232
12233#[doc=r###"```rust
12234let myFont;
12235function preload() {
12236  myFont = loadFont('assets/inconsolata.otf');
12237}
12238
12239function setup() {
12240  fill('#ED225D');
12241  textFont(myFont);
12242  textSize(36);
12243  text('p5*js', 10, 50);
12244}
12245```"###]
12246#[doc=r###"```rust
12247function setup() {
12248  loadFont('assets/inconsolata.otf', drawText);
12249}
12250
12251function drawText(font) {
12252  fill('#ED225D');
12253  textFont(font, 36);
12254  text('p5*js', 10, 50);
12255}
12256```"###]
12257#[doc=r###"```rust
12258function preload() {
12259  loadFont('assets/inconsolata.otf');
12260}
12261
12262function setup() {
12263  let myDiv = createDiv('hello there');
12264  myDiv.style('font-family', 'Inconsolata');
12265}
12266```"###]
12267/// <h2>Parameters</h2>
12268///
12269#[doc = r##"<code>path</code> name of the file or url to load
12270
12271"##]
12272///
12273///
12274#[doc = r##"<code>callback?</code> function to be executed after
12275                                   loadFont() completes
12276
12277"##]
12278///
12279///
12280#[doc = r##"<code>onError?</code> function to be executed if
12281                                   an error occurs
12282
12283"##]
12284///
12285
12286pub static loadFont: LoadFontInternalType = LoadFontInternalType;
12287#[doc(hidden)]
12288pub struct LoadFontInternalType;
12289
12290
12291#[wasm_bindgen]
12292extern {
12293    #[wasm_bindgen(js_name = "loadFont")]
12294    fn loadFont934439878(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) ->  Font;
12295}
12296
12297#[doc(hidden)]
12298impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadFontInternalType {
12299    type Output =  Font;
12300    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
12301        loadFont934439878.call(args)
12302    }
12303}
12304
12305#[doc(hidden)]
12306impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadFontInternalType {
12307    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
12308        loadFont934439878.call(args)
12309    }
12310}
12311
12312#[doc(hidden)]
12313impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadFontInternalType {
12314    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
12315        loadFont934439878.call(args)
12316    }
12317}
12318
12319#[wasm_bindgen]
12320extern {
12321    #[wasm_bindgen(js_name = "loadFont")]
12322    fn loadFont2534061284(_ : & str, _ : js_sys::Function, ) ->  Font;
12323}
12324
12325#[doc(hidden)]
12326impl FnOnce<(&'_ str,js_sys::Function,)> for LoadFontInternalType {
12327    type Output =  Font;
12328    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
12329        loadFont2534061284.call(args)
12330    }
12331}
12332
12333#[doc(hidden)]
12334impl FnMut<(&'_ str,js_sys::Function,)> for LoadFontInternalType {
12335    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
12336        loadFont2534061284.call(args)
12337    }
12338}
12339
12340#[doc(hidden)]
12341impl Fn<(&'_ str,js_sys::Function,)> for LoadFontInternalType {
12342    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
12343        loadFont2534061284.call(args)
12344    }
12345}
12346
12347#[wasm_bindgen]
12348extern {
12349    #[wasm_bindgen(js_name = "loadFont")]
12350    fn loadFont3106314809(_ : & str, ) ->  Font;
12351}
12352
12353#[doc(hidden)]
12354impl FnOnce<(&'_ str,)> for LoadFontInternalType {
12355    type Output =  Font;
12356    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
12357        loadFont3106314809.call(args)
12358    }
12359}
12360
12361#[doc(hidden)]
12362impl FnMut<(&'_ str,)> for LoadFontInternalType {
12363    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
12364        loadFont3106314809.call(args)
12365    }
12366}
12367
12368#[doc(hidden)]
12369impl Fn<(&'_ str,)> for LoadFontInternalType {
12370    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
12371        loadFont3106314809.call(args)
12372    }
12373}
12374#[doc=r##"<p>Draws text to the screen. Displays the information specified in the first
12375parameter on the screen in the position specified by the additional
12376parameters. A default font will be used unless a font is set with the
12377<a href="#/p5/textFont">textFont()</a> function and a default size will be
12378used unless a font is set with <a href="#/p5/textSize">textSize()</a>. Change
12379the color of the text with the <a href="#/p5/fill">fill()</a> function. Change
12380the outline of the text with the <a href="#/p5/stroke">stroke()</a> and
12381<a href="#/p5/strokeWeight">strokeWeight()</a> functions.</p>
12382<p>The text displays in relation to the <a href="#/p5/textAlign">textAlign()</a>
12383function, which gives the option to draw to the left, right, and center of the
12384coordinates.</p>
12385<p>The x2 and y2 parameters define a rectangular area to display within and
12386may only be used with string data. When these parameters are specified,
12387they are interpreted based on the current <a href="#/p5/rectMode">rectMode()</a>
12388setting. Text that does not fit completely within the rectangle specified will
12389not be drawn to the screen. If x2 and y2 are not specified, the baseline
12390alignment is the default, which means that the text will be drawn upwards
12391from x and y.</p>
12392<p><b>WEBGL</b>: Only opentype/truetype fonts are supported. You must load a font
12393using the <a href="#/p5/loadFont">loadFont()</a> method (see the example above).
12394<a href="#/p5/stroke">stroke()</a> currently has no effect in webgl mode.</p>
12395"##]
12396///<h2>Examples</h2>
12397///
12398
12399#[doc=r###"```rust
12400textSize(32);
12401text('word', 10, 30);
12402fill(0, 102, 153);
12403text('word', 10, 60);
12404fill(0, 102, 153, 51);
12405text('word', 10, 90);
12406```"###]
12407#[doc=r###"```rust
12408let s = 'The quick brown fox jumped over the lazy dog.';
12409fill(50);
12410text(s, 10, 10, 70, 80); // Text wraps within text box
12411```"###]
12412#[doc=r###"```rust
12413let inconsolata;
12414function preload() {
12415  inconsolata = loadFont('assets/inconsolata.otf');
12416}
12417function setup() {
12418  createCanvas(100, 100, WEBGL);
12419  textFont(inconsolata);
12420  textSize(width / 3);
12421  textAlign(CENTER, CENTER);
12422}
12423function draw() {
12424  background(0);
12425  let time = millis();
12426  rotateX(time / 1000);
12427  rotateZ(time / 1234);
12428  text('p5.js', 0, 0);
12429}
12430```"###]
12431/// <h2>Parameters</h2>
12432///
12433#[doc = r##"<code>str</code> the alphanumeric
12434                                            symbols to be displayed
12435
12436"##]
12437///
12438///
12439#[doc = r##"<code>x</code> x-coordinate of text
12440
12441"##]
12442///
12443///
12444#[doc = r##"<code>y</code> y-coordinate of text
12445
12446"##]
12447///
12448///
12449#[doc = r##"<code>x2?</code> by default, the width of the text box,
12450                    see rectMode() for more info
12451
12452"##]
12453///
12454///
12455#[doc = r##"<code>y2?</code> by default, the height of the text box,
12456                    see rectMode() for more info
12457
12458"##]
12459///
12460
12461pub static text: TextInternalType = TextInternalType;
12462#[doc(hidden)]
12463pub struct TextInternalType;
12464
12465
12466#[wasm_bindgen]
12467extern {
12468    #[wasm_bindgen(js_name = "text")]
12469    fn text2536058404(_ : & str, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
12470}
12471
12472#[doc(hidden)]
12473impl FnOnce<(&'_ str,f64,f64,f64,f64,)> for TextInternalType {
12474    type Output = ();
12475    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,f64,)) -> Self::Output {
12476        text2536058404.call(args)
12477    }
12478}
12479
12480#[doc(hidden)]
12481impl FnMut<(&'_ str,f64,f64,f64,f64,)> for TextInternalType {
12482    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,f64,)) -> Self::Output {
12483        text2536058404.call(args)
12484    }
12485}
12486
12487#[doc(hidden)]
12488impl Fn<(&'_ str,f64,f64,f64,f64,)> for TextInternalType {
12489    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,f64,)) -> Self::Output {
12490        text2536058404.call(args)
12491    }
12492}
12493
12494#[wasm_bindgen]
12495extern {
12496    #[wasm_bindgen(js_name = "text")]
12497    fn text3519453930(_ : & str, _ : f64, _ : f64, _ : f64, ) ;
12498}
12499
12500#[doc(hidden)]
12501impl FnOnce<(&'_ str,f64,f64,f64,)> for TextInternalType {
12502    type Output = ();
12503    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
12504        text3519453930.call(args)
12505    }
12506}
12507
12508#[doc(hidden)]
12509impl FnMut<(&'_ str,f64,f64,f64,)> for TextInternalType {
12510    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
12511        text3519453930.call(args)
12512    }
12513}
12514
12515#[doc(hidden)]
12516impl Fn<(&'_ str,f64,f64,f64,)> for TextInternalType {
12517    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
12518        text3519453930.call(args)
12519    }
12520}
12521
12522#[wasm_bindgen]
12523extern {
12524    #[wasm_bindgen(js_name = "text")]
12525    fn text1652968455(_ : & str, _ : f64, _ : f64, ) ;
12526}
12527
12528#[doc(hidden)]
12529impl FnOnce<(&'_ str,f64,f64,)> for TextInternalType {
12530    type Output = ();
12531    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,)) -> Self::Output {
12532        text1652968455.call(args)
12533    }
12534}
12535
12536#[doc(hidden)]
12537impl FnMut<(&'_ str,f64,f64,)> for TextInternalType {
12538    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,)) -> Self::Output {
12539        text1652968455.call(args)
12540    }
12541}
12542
12543#[doc(hidden)]
12544impl Fn<(&'_ str,f64,f64,)> for TextInternalType {
12545    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,)) -> Self::Output {
12546        text1652968455.call(args)
12547    }
12548}
12549
12550#[wasm_bindgen]
12551extern {
12552    #[wasm_bindgen(js_name = "text")]
12553    fn text776613070(_ : JsValue, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
12554}
12555
12556#[doc(hidden)]
12557impl FnOnce<(JsValue,f64,f64,f64,f64,)> for TextInternalType {
12558    type Output = ();
12559    extern "rust-call" fn call_once(self, args: (JsValue,f64,f64,f64,f64,)) -> Self::Output {
12560        text776613070.call(args)
12561    }
12562}
12563
12564#[doc(hidden)]
12565impl FnMut<(JsValue,f64,f64,f64,f64,)> for TextInternalType {
12566    extern "rust-call" fn call_mut(&mut self, args: (JsValue,f64,f64,f64,f64,)) -> Self::Output {
12567        text776613070.call(args)
12568    }
12569}
12570
12571#[doc(hidden)]
12572impl Fn<(JsValue,f64,f64,f64,f64,)> for TextInternalType {
12573    extern "rust-call" fn call(&self, args: (JsValue,f64,f64,f64,f64,)) -> Self::Output {
12574        text776613070.call(args)
12575    }
12576}
12577
12578#[wasm_bindgen]
12579extern {
12580    #[wasm_bindgen(js_name = "text")]
12581    fn text3363848399(_ : JsValue, _ : f64, _ : f64, _ : f64, ) ;
12582}
12583
12584#[doc(hidden)]
12585impl FnOnce<(JsValue,f64,f64,f64,)> for TextInternalType {
12586    type Output = ();
12587    extern "rust-call" fn call_once(self, args: (JsValue,f64,f64,f64,)) -> Self::Output {
12588        text3363848399.call(args)
12589    }
12590}
12591
12592#[doc(hidden)]
12593impl FnMut<(JsValue,f64,f64,f64,)> for TextInternalType {
12594    extern "rust-call" fn call_mut(&mut self, args: (JsValue,f64,f64,f64,)) -> Self::Output {
12595        text3363848399.call(args)
12596    }
12597}
12598
12599#[doc(hidden)]
12600impl Fn<(JsValue,f64,f64,f64,)> for TextInternalType {
12601    extern "rust-call" fn call(&self, args: (JsValue,f64,f64,f64,)) -> Self::Output {
12602        text3363848399.call(args)
12603    }
12604}
12605
12606#[wasm_bindgen]
12607extern {
12608    #[wasm_bindgen(js_name = "text")]
12609    fn text1389627121(_ : JsValue, _ : f64, _ : f64, ) ;
12610}
12611
12612#[doc(hidden)]
12613impl FnOnce<(JsValue,f64,f64,)> for TextInternalType {
12614    type Output = ();
12615    extern "rust-call" fn call_once(self, args: (JsValue,f64,f64,)) -> Self::Output {
12616        text1389627121.call(args)
12617    }
12618}
12619
12620#[doc(hidden)]
12621impl FnMut<(JsValue,f64,f64,)> for TextInternalType {
12622    extern "rust-call" fn call_mut(&mut self, args: (JsValue,f64,f64,)) -> Self::Output {
12623        text1389627121.call(args)
12624    }
12625}
12626
12627#[doc(hidden)]
12628impl Fn<(JsValue,f64,f64,)> for TextInternalType {
12629    extern "rust-call" fn call(&self, args: (JsValue,f64,f64,)) -> Self::Output {
12630        text1389627121.call(args)
12631    }
12632}
12633
12634#[wasm_bindgen]
12635extern {
12636    #[wasm_bindgen(js_name = "text")]
12637    fn text2128011574(_ : js_sys::Array, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
12638}
12639
12640#[doc(hidden)]
12641impl FnOnce<(js_sys::Array,f64,f64,f64,f64,)> for TextInternalType {
12642    type Output = ();
12643    extern "rust-call" fn call_once(self, args: (js_sys::Array,f64,f64,f64,f64,)) -> Self::Output {
12644        text2128011574.call(args)
12645    }
12646}
12647
12648#[doc(hidden)]
12649impl FnMut<(js_sys::Array,f64,f64,f64,f64,)> for TextInternalType {
12650    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,f64,f64,f64,f64,)) -> Self::Output {
12651        text2128011574.call(args)
12652    }
12653}
12654
12655#[doc(hidden)]
12656impl Fn<(js_sys::Array,f64,f64,f64,f64,)> for TextInternalType {
12657    extern "rust-call" fn call(&self, args: (js_sys::Array,f64,f64,f64,f64,)) -> Self::Output {
12658        text2128011574.call(args)
12659    }
12660}
12661
12662#[wasm_bindgen]
12663extern {
12664    #[wasm_bindgen(js_name = "text")]
12665    fn text1154009213(_ : js_sys::Array, _ : f64, _ : f64, _ : f64, ) ;
12666}
12667
12668#[doc(hidden)]
12669impl FnOnce<(js_sys::Array,f64,f64,f64,)> for TextInternalType {
12670    type Output = ();
12671    extern "rust-call" fn call_once(self, args: (js_sys::Array,f64,f64,f64,)) -> Self::Output {
12672        text1154009213.call(args)
12673    }
12674}
12675
12676#[doc(hidden)]
12677impl FnMut<(js_sys::Array,f64,f64,f64,)> for TextInternalType {
12678    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,f64,f64,f64,)) -> Self::Output {
12679        text1154009213.call(args)
12680    }
12681}
12682
12683#[doc(hidden)]
12684impl Fn<(js_sys::Array,f64,f64,f64,)> for TextInternalType {
12685    extern "rust-call" fn call(&self, args: (js_sys::Array,f64,f64,f64,)) -> Self::Output {
12686        text1154009213.call(args)
12687    }
12688}
12689
12690#[wasm_bindgen]
12691extern {
12692    #[wasm_bindgen(js_name = "text")]
12693    fn text1870702204(_ : js_sys::Array, _ : f64, _ : f64, ) ;
12694}
12695
12696#[doc(hidden)]
12697impl FnOnce<(js_sys::Array,f64,f64,)> for TextInternalType {
12698    type Output = ();
12699    extern "rust-call" fn call_once(self, args: (js_sys::Array,f64,f64,)) -> Self::Output {
12700        text1870702204.call(args)
12701    }
12702}
12703
12704#[doc(hidden)]
12705impl FnMut<(js_sys::Array,f64,f64,)> for TextInternalType {
12706    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,f64,f64,)) -> Self::Output {
12707        text1870702204.call(args)
12708    }
12709}
12710
12711#[doc(hidden)]
12712impl Fn<(js_sys::Array,f64,f64,)> for TextInternalType {
12713    extern "rust-call" fn call(&self, args: (js_sys::Array,f64,f64,)) -> Self::Output {
12714        text1870702204.call(args)
12715    }
12716}
12717
12718#[wasm_bindgen]
12719extern {
12720    #[wasm_bindgen(js_name = "text")]
12721    fn text372610415(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
12722}
12723
12724#[doc(hidden)]
12725impl FnOnce<(f64,f64,f64,f64,f64,)> for TextInternalType {
12726    type Output = ();
12727    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
12728        text372610415.call(args)
12729    }
12730}
12731
12732#[doc(hidden)]
12733impl FnMut<(f64,f64,f64,f64,f64,)> for TextInternalType {
12734    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
12735        text372610415.call(args)
12736    }
12737}
12738
12739#[doc(hidden)]
12740impl Fn<(f64,f64,f64,f64,f64,)> for TextInternalType {
12741    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
12742        text372610415.call(args)
12743    }
12744}
12745
12746#[wasm_bindgen]
12747extern {
12748    #[wasm_bindgen(js_name = "text")]
12749    fn text3465596931(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
12750}
12751
12752#[doc(hidden)]
12753impl FnOnce<(f64,f64,f64,f64,)> for TextInternalType {
12754    type Output = ();
12755    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
12756        text3465596931.call(args)
12757    }
12758}
12759
12760#[doc(hidden)]
12761impl FnMut<(f64,f64,f64,f64,)> for TextInternalType {
12762    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
12763        text3465596931.call(args)
12764    }
12765}
12766
12767#[doc(hidden)]
12768impl Fn<(f64,f64,f64,f64,)> for TextInternalType {
12769    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
12770        text3465596931.call(args)
12771    }
12772}
12773
12774#[wasm_bindgen]
12775extern {
12776    #[wasm_bindgen(js_name = "text")]
12777    fn text1624821964(_ : f64, _ : f64, _ : f64, ) ;
12778}
12779
12780#[doc(hidden)]
12781impl FnOnce<(f64,f64,f64,)> for TextInternalType {
12782    type Output = ();
12783    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
12784        text1624821964.call(args)
12785    }
12786}
12787
12788#[doc(hidden)]
12789impl FnMut<(f64,f64,f64,)> for TextInternalType {
12790    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
12791        text1624821964.call(args)
12792    }
12793}
12794
12795#[doc(hidden)]
12796impl Fn<(f64,f64,f64,)> for TextInternalType {
12797    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
12798        text1624821964.call(args)
12799    }
12800}
12801
12802#[wasm_bindgen]
12803extern {
12804    #[wasm_bindgen(js_name = "text")]
12805    fn text45335175(_ : bool, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
12806}
12807
12808#[doc(hidden)]
12809impl FnOnce<(bool,f64,f64,f64,f64,)> for TextInternalType {
12810    type Output = ();
12811    extern "rust-call" fn call_once(self, args: (bool,f64,f64,f64,f64,)) -> Self::Output {
12812        text45335175.call(args)
12813    }
12814}
12815
12816#[doc(hidden)]
12817impl FnMut<(bool,f64,f64,f64,f64,)> for TextInternalType {
12818    extern "rust-call" fn call_mut(&mut self, args: (bool,f64,f64,f64,f64,)) -> Self::Output {
12819        text45335175.call(args)
12820    }
12821}
12822
12823#[doc(hidden)]
12824impl Fn<(bool,f64,f64,f64,f64,)> for TextInternalType {
12825    extern "rust-call" fn call(&self, args: (bool,f64,f64,f64,f64,)) -> Self::Output {
12826        text45335175.call(args)
12827    }
12828}
12829
12830#[wasm_bindgen]
12831extern {
12832    #[wasm_bindgen(js_name = "text")]
12833    fn text1095759909(_ : bool, _ : f64, _ : f64, _ : f64, ) ;
12834}
12835
12836#[doc(hidden)]
12837impl FnOnce<(bool,f64,f64,f64,)> for TextInternalType {
12838    type Output = ();
12839    extern "rust-call" fn call_once(self, args: (bool,f64,f64,f64,)) -> Self::Output {
12840        text1095759909.call(args)
12841    }
12842}
12843
12844#[doc(hidden)]
12845impl FnMut<(bool,f64,f64,f64,)> for TextInternalType {
12846    extern "rust-call" fn call_mut(&mut self, args: (bool,f64,f64,f64,)) -> Self::Output {
12847        text1095759909.call(args)
12848    }
12849}
12850
12851#[doc(hidden)]
12852impl Fn<(bool,f64,f64,f64,)> for TextInternalType {
12853    extern "rust-call" fn call(&self, args: (bool,f64,f64,f64,)) -> Self::Output {
12854        text1095759909.call(args)
12855    }
12856}
12857
12858#[wasm_bindgen]
12859extern {
12860    #[wasm_bindgen(js_name = "text")]
12861    fn text4118272228(_ : bool, _ : f64, _ : f64, ) ;
12862}
12863
12864#[doc(hidden)]
12865impl FnOnce<(bool,f64,f64,)> for TextInternalType {
12866    type Output = ();
12867    extern "rust-call" fn call_once(self, args: (bool,f64,f64,)) -> Self::Output {
12868        text4118272228.call(args)
12869    }
12870}
12871
12872#[doc(hidden)]
12873impl FnMut<(bool,f64,f64,)> for TextInternalType {
12874    extern "rust-call" fn call_mut(&mut self, args: (bool,f64,f64,)) -> Self::Output {
12875        text4118272228.call(args)
12876    }
12877}
12878
12879#[doc(hidden)]
12880impl Fn<(bool,f64,f64,)> for TextInternalType {
12881    extern "rust-call" fn call(&self, args: (bool,f64,f64,)) -> Self::Output {
12882        text4118272228.call(args)
12883    }
12884}
12885#[doc=r##"<p>Sets the current font that will be drawn with the <a href="#/p5/text">text()</a> function.</p>
12886<p><b>WEBGL</b>: Only fonts loaded via <a href="#/p5/loadFont">loadFont()</a> are supported.</p>
12887"##]
12888///<h2>Examples</h2>
12889///
12890
12891#[doc=r###"```rust
12892fill(0);
12893textSize(12);
12894textFont('Georgia');
12895text('Georgia', 12, 30);
12896textFont('Helvetica');
12897text('Helvetica', 12, 60);
12898```"###]
12899#[doc=r###"```rust
12900let fontRegular, fontItalic, fontBold;
12901function preload() {
12902  fontRegular = loadFont('assets/Regular.otf');
12903  fontItalic = loadFont('assets/Italic.ttf');
12904  fontBold = loadFont('assets/Bold.ttf');
12905}
12906function setup() {
12907  background(210);
12908  fill(0)
12909   .strokeWeight(0)
12910   .textSize(10);
12911  textFont(fontRegular);
12912  text('Font Style Normal', 10, 30);
12913  textFont(fontItalic);
12914  text('Font Style Italic', 10, 50);
12915  textFont(fontBold);
12916  text('Font Style Bold', 10, 70);
12917}
12918```"###]
12919/// <h2>Overloads</h2>
12920///
12921/// ---
12922///
12923///
12924#[doc = r##"<code>font</code> a font loaded via loadFont(),
12925or a String representing a web safe font
12926(a font that is generally available across all systems)
12927
12928"##]
12929///
12930///
12931#[doc = r##"<code>size?</code> the font size to use
12932
12933"##]
12934///
12935///
12936/// ---
12937///
12938
12939pub static textFont: TextFontInternalType = TextFontInternalType;
12940#[doc(hidden)]
12941pub struct TextFontInternalType;
12942
12943
12944#[wasm_bindgen]
12945extern {
12946    #[wasm_bindgen(js_name = "textFont")]
12947    fn textFont4236794767() -> js_sys::Object;
12948}
12949
12950#[doc(hidden)]
12951impl FnOnce<()> for TextFontInternalType {
12952    type Output = js_sys::Object;
12953    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
12954        textFont4236794767.call(args)
12955    }
12956}
12957
12958#[doc(hidden)]
12959impl FnMut<()> for TextFontInternalType {
12960    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
12961        textFont4236794767.call(args)
12962    }
12963}
12964
12965#[doc(hidden)]
12966impl Fn<()> for TextFontInternalType {
12967    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
12968        textFont4236794767.call(args)
12969    }
12970}
12971
12972#[wasm_bindgen]
12973extern {
12974    #[wasm_bindgen(js_name = "textFont")]
12975    fn textFont1809243248(_ : JsValue, _ : f64, ) ;
12976}
12977
12978#[doc(hidden)]
12979impl FnOnce<(JsValue,f64,)> for TextFontInternalType {
12980    type Output = ();
12981    extern "rust-call" fn call_once(self, args: (JsValue,f64,)) -> Self::Output {
12982        textFont1809243248.call(args)
12983    }
12984}
12985
12986#[doc(hidden)]
12987impl FnMut<(JsValue,f64,)> for TextFontInternalType {
12988    extern "rust-call" fn call_mut(&mut self, args: (JsValue,f64,)) -> Self::Output {
12989        textFont1809243248.call(args)
12990    }
12991}
12992
12993#[doc(hidden)]
12994impl Fn<(JsValue,f64,)> for TextFontInternalType {
12995    extern "rust-call" fn call(&self, args: (JsValue,f64,)) -> Self::Output {
12996        textFont1809243248.call(args)
12997    }
12998}
12999
13000#[wasm_bindgen]
13001extern {
13002    #[wasm_bindgen(js_name = "textFont")]
13003    fn textFont2655796619(_ : JsValue, ) ;
13004}
13005
13006#[doc(hidden)]
13007impl FnOnce<(JsValue,)> for TextFontInternalType {
13008    type Output = ();
13009    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
13010        textFont2655796619.call(args)
13011    }
13012}
13013
13014#[doc(hidden)]
13015impl FnMut<(JsValue,)> for TextFontInternalType {
13016    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
13017        textFont2655796619.call(args)
13018    }
13019}
13020
13021#[doc(hidden)]
13022impl Fn<(JsValue,)> for TextFontInternalType {
13023    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
13024        textFont2655796619.call(args)
13025    }
13026}
13027
13028#[wasm_bindgen]
13029extern {
13030    #[wasm_bindgen(js_name = "textFont")]
13031    fn textFont2067820070(_ : & str, _ : f64, ) ;
13032}
13033
13034#[doc(hidden)]
13035impl FnOnce<(&'_ str,f64,)> for TextFontInternalType {
13036    type Output = ();
13037    extern "rust-call" fn call_once(self, args: (&'_ str,f64,)) -> Self::Output {
13038        textFont2067820070.call(args)
13039    }
13040}
13041
13042#[doc(hidden)]
13043impl FnMut<(&'_ str,f64,)> for TextFontInternalType {
13044    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,)) -> Self::Output {
13045        textFont2067820070.call(args)
13046    }
13047}
13048
13049#[doc(hidden)]
13050impl Fn<(&'_ str,f64,)> for TextFontInternalType {
13051    extern "rust-call" fn call(&self, args: (&'_ str,f64,)) -> Self::Output {
13052        textFont2067820070.call(args)
13053    }
13054}
13055
13056#[wasm_bindgen]
13057extern {
13058    #[wasm_bindgen(js_name = "textFont")]
13059    fn textFont2145736847(_ : & str, ) ;
13060}
13061
13062#[doc(hidden)]
13063impl FnOnce<(&'_ str,)> for TextFontInternalType {
13064    type Output = ();
13065    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
13066        textFont2145736847.call(args)
13067    }
13068}
13069
13070#[doc(hidden)]
13071impl FnMut<(&'_ str,)> for TextFontInternalType {
13072    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
13073        textFont2145736847.call(args)
13074    }
13075}
13076
13077#[doc(hidden)]
13078impl Fn<(&'_ str,)> for TextFontInternalType {
13079    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
13080        textFont2145736847.call(args)
13081    }
13082}
13083#[doc=r##"<p>Sets the camera position for a 3D sketch. Parameters for this function define
13084the position for the camera, the center of the sketch (where the camera is
13085pointing), and an up direction (the orientation of the camera).</p>
13086<p>This function simulates the movements of the camera, allowing objects to be
13087viewed from various angles. Remember, it does not move the objects themselves
13088but the camera instead. For example when centerX value is positive, the camera
13089is rotating to the right side of the sketch, so the object would seem like
13090moving to the left.</p>
13091<p>See this <a href = "https://www.openprocessing.org/sketch/740258">example</a>
13092to view the position of your camera.</p>
13093<p>When called with no arguments, this function creates a default camera
13094equivalent to
13095camera(0, 0, (height/2.0) / tan(PI*30.0 / 180.0), 0, 0, 0, 0, 1, 0);</p>
13096"##]
13097///<h2>Examples</h2>
13098///
13099
13100#[doc=r###"```rust
13101function setup() {
13102  createCanvas(100, 100, WEBGL);
13103}
13104function draw() {
13105  background(204);
13106  //move the camera away from the plane by a sin wave
13107  camera(0, 0, 20 + sin(frameCount * 0.01) * 10, 0, 0, 0, 0, 1, 0);
13108  plane(10, 10);
13109}
13110```"###]
13111#[doc=r###"```rust
13112//move slider to see changes!
13113//sliders control the first 6 parameters of camera()
13114let sliderGroup = [];
13115let X;
13116let Y;
13117let Z;
13118let centerX;
13119let centerY;
13120let centerZ;
13121let h = 20;
13122
13123function setup() {
13124  createCanvas(100, 100, WEBGL);
13125  //create sliders
13126  for (var i = 0; i < 6; i++) {
13127    if (i === 2) {
13128      sliderGroup[i] = createSlider(10, 400, 200);
13129    } else {
13130      sliderGroup[i] = createSlider(-400, 400, 0);
13131    }
13132    h = map(i, 0, 6, 5, 85);
13133    sliderGroup[i].position(10, height + h);
13134    sliderGroup[i].style('width', '80px');
13135  }
13136}
13137
13138function draw() {
13139  background(60);
13140  // assigning sliders' value to each parameters
13141  X = sliderGroup[0].value();
13142  Y = sliderGroup[1].value();
13143  Z = sliderGroup[2].value();
13144  centerX = sliderGroup[3].value();
13145  centerY = sliderGroup[4].value();
13146  centerZ = sliderGroup[5].value();
13147  camera(X, Y, Z, centerX, centerY, centerZ, 0, 1, 0);
13148  stroke(255);
13149  fill(255, 102, 94);
13150  box(85);
13151}
13152```"###]
13153/// <h2>Parameters</h2>
13154///
13155#[doc = r##"<code>x?</code> camera position value on x axis
13156
13157"##]
13158///
13159///
13160#[doc = r##"<code>y?</code> camera position value on y axis
13161
13162"##]
13163///
13164///
13165#[doc = r##"<code>z?</code> camera position value on z axis
13166
13167"##]
13168///
13169///
13170#[doc = r##"<code>centerX?</code> x coordinate representing center of the sketch
13171
13172"##]
13173///
13174///
13175#[doc = r##"<code>centerY?</code> y coordinate representing center of the sketch
13176
13177"##]
13178///
13179///
13180#[doc = r##"<code>centerZ?</code> z coordinate representing center of the sketch
13181
13182"##]
13183///
13184///
13185#[doc = r##"<code>upX?</code> x component of direction 'up' from camera
13186
13187"##]
13188///
13189///
13190#[doc = r##"<code>upY?</code> y component of direction 'up' from camera
13191
13192"##]
13193///
13194///
13195#[doc = r##"<code>upZ?</code> z component of direction 'up' from camera
13196
13197"##]
13198///
13199
13200pub static camera: CameraInternalType = CameraInternalType;
13201#[doc(hidden)]
13202pub struct CameraInternalType;
13203
13204
13205#[wasm_bindgen]
13206extern {
13207    #[wasm_bindgen(js_name = "camera")]
13208    fn camera1831847495(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
13209}
13210
13211#[doc(hidden)]
13212impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13213    type Output = ();
13214    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13215        camera1831847495.call(args)
13216    }
13217}
13218
13219#[doc(hidden)]
13220impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13221    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13222        camera1831847495.call(args)
13223    }
13224}
13225
13226#[doc(hidden)]
13227impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13228    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13229        camera1831847495.call(args)
13230    }
13231}
13232
13233#[wasm_bindgen]
13234extern {
13235    #[wasm_bindgen(js_name = "camera")]
13236    fn camera4178496106(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
13237}
13238
13239#[doc(hidden)]
13240impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13241    type Output = ();
13242    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13243        camera4178496106.call(args)
13244    }
13245}
13246
13247#[doc(hidden)]
13248impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13249    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13250        camera4178496106.call(args)
13251    }
13252}
13253
13254#[doc(hidden)]
13255impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13256    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13257        camera4178496106.call(args)
13258    }
13259}
13260
13261#[wasm_bindgen]
13262extern {
13263    #[wasm_bindgen(js_name = "camera")]
13264    fn camera449281822(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
13265}
13266
13267#[doc(hidden)]
13268impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13269    type Output = ();
13270    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13271        camera449281822.call(args)
13272    }
13273}
13274
13275#[doc(hidden)]
13276impl FnMut<(f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13277    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13278        camera449281822.call(args)
13279    }
13280}
13281
13282#[doc(hidden)]
13283impl Fn<(f64,f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13284    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13285        camera449281822.call(args)
13286    }
13287}
13288
13289#[wasm_bindgen]
13290extern {
13291    #[wasm_bindgen(js_name = "camera")]
13292    fn camera406753441(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
13293}
13294
13295#[doc(hidden)]
13296impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13297    type Output = ();
13298    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13299        camera406753441.call(args)
13300    }
13301}
13302
13303#[doc(hidden)]
13304impl FnMut<(f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13305    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13306        camera406753441.call(args)
13307    }
13308}
13309
13310#[doc(hidden)]
13311impl Fn<(f64,f64,f64,f64,f64,f64,)> for CameraInternalType {
13312    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13313        camera406753441.call(args)
13314    }
13315}
13316
13317#[wasm_bindgen]
13318extern {
13319    #[wasm_bindgen(js_name = "camera")]
13320    fn camera3823198585(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
13321}
13322
13323#[doc(hidden)]
13324impl FnOnce<(f64,f64,f64,f64,f64,)> for CameraInternalType {
13325    type Output = ();
13326    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
13327        camera3823198585.call(args)
13328    }
13329}
13330
13331#[doc(hidden)]
13332impl FnMut<(f64,f64,f64,f64,f64,)> for CameraInternalType {
13333    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
13334        camera3823198585.call(args)
13335    }
13336}
13337
13338#[doc(hidden)]
13339impl Fn<(f64,f64,f64,f64,f64,)> for CameraInternalType {
13340    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
13341        camera3823198585.call(args)
13342    }
13343}
13344
13345#[wasm_bindgen]
13346extern {
13347    #[wasm_bindgen(js_name = "camera")]
13348    fn camera4261161617(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
13349}
13350
13351#[doc(hidden)]
13352impl FnOnce<(f64,f64,f64,f64,)> for CameraInternalType {
13353    type Output = ();
13354    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
13355        camera4261161617.call(args)
13356    }
13357}
13358
13359#[doc(hidden)]
13360impl FnMut<(f64,f64,f64,f64,)> for CameraInternalType {
13361    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
13362        camera4261161617.call(args)
13363    }
13364}
13365
13366#[doc(hidden)]
13367impl Fn<(f64,f64,f64,f64,)> for CameraInternalType {
13368    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
13369        camera4261161617.call(args)
13370    }
13371}
13372
13373#[wasm_bindgen]
13374extern {
13375    #[wasm_bindgen(js_name = "camera")]
13376    fn camera1748037226(_ : f64, _ : f64, _ : f64, ) ;
13377}
13378
13379#[doc(hidden)]
13380impl FnOnce<(f64,f64,f64,)> for CameraInternalType {
13381    type Output = ();
13382    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
13383        camera1748037226.call(args)
13384    }
13385}
13386
13387#[doc(hidden)]
13388impl FnMut<(f64,f64,f64,)> for CameraInternalType {
13389    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
13390        camera1748037226.call(args)
13391    }
13392}
13393
13394#[doc(hidden)]
13395impl Fn<(f64,f64,f64,)> for CameraInternalType {
13396    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
13397        camera1748037226.call(args)
13398    }
13399}
13400
13401#[wasm_bindgen]
13402extern {
13403    #[wasm_bindgen(js_name = "camera")]
13404    fn camera1015085667(_ : f64, _ : f64, ) ;
13405}
13406
13407#[doc(hidden)]
13408impl FnOnce<(f64,f64,)> for CameraInternalType {
13409    type Output = ();
13410    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
13411        camera1015085667.call(args)
13412    }
13413}
13414
13415#[doc(hidden)]
13416impl FnMut<(f64,f64,)> for CameraInternalType {
13417    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
13418        camera1015085667.call(args)
13419    }
13420}
13421
13422#[doc(hidden)]
13423impl Fn<(f64,f64,)> for CameraInternalType {
13424    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
13425        camera1015085667.call(args)
13426    }
13427}
13428
13429#[wasm_bindgen]
13430extern {
13431    #[wasm_bindgen(js_name = "camera")]
13432    fn camera2409931744(_ : f64, ) ;
13433}
13434
13435#[doc(hidden)]
13436impl FnOnce<(f64,)> for CameraInternalType {
13437    type Output = ();
13438    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
13439        camera2409931744.call(args)
13440    }
13441}
13442
13443#[doc(hidden)]
13444impl FnMut<(f64,)> for CameraInternalType {
13445    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
13446        camera2409931744.call(args)
13447    }
13448}
13449
13450#[doc(hidden)]
13451impl Fn<(f64,)> for CameraInternalType {
13452    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
13453        camera2409931744.call(args)
13454    }
13455}
13456
13457#[wasm_bindgen]
13458extern {
13459    #[wasm_bindgen(js_name = "camera")]
13460    fn camera263198682() ;
13461}
13462
13463#[doc(hidden)]
13464impl FnOnce<()> for CameraInternalType {
13465    type Output = ();
13466    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
13467        camera263198682.call(args)
13468    }
13469}
13470
13471#[doc(hidden)]
13472impl FnMut<()> for CameraInternalType {
13473    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
13474        camera263198682.call(args)
13475    }
13476}
13477
13478#[doc(hidden)]
13479impl Fn<()> for CameraInternalType {
13480    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
13481        camera263198682.call(args)
13482    }
13483}
13484#[doc=r##"<p>Sets a perspective projection for the camera in a 3D sketch. This projection
13485represents depth through foreshortening: objects that are close to the camera
13486appear their actual size while those that are further away from the camera
13487appear smaller. The parameters to this function define the viewing frustum
13488(the truncated pyramid within which objects are seen by the camera) through
13489vertical field of view, aspect ratio (usually width/height), and near and far
13490clipping planes.</p>
13491<p>When called with no arguments, the defaults
13492provided are equivalent to
13493perspective(PI/3.0, width/height, eyeZ/10.0, eyeZ<em>10.0), where eyeZ
13494is equal to ((height/2.0) / tan(PI</em>60.0/360.0));</p>
13495"##]
13496///<h2>Examples</h2>
13497///
13498
13499#[doc=r###"```rust
13500//drag the mouse to look around!
13501function setup() {
13502  createCanvas(100, 100, WEBGL);
13503  perspective(PI / 3.0, width / height, 0.1, 500);
13504}
13505function draw() {
13506  background(200);
13507  orbitControl();
13508  normalMaterial();
13509
13510  rotateX(-0.3);
13511  rotateY(-0.2);
13512  translate(0, 0, -50);
13513
13514  push();
13515  translate(-15, 0, sin(frameCount / 30) * 95);
13516  box(30);
13517  pop();
13518  push();
13519  translate(15, 0, sin(frameCount / 30 + PI) * 95);
13520  box(30);
13521  pop();
13522}
13523```"###]
13524/// <h2>Parameters</h2>
13525///
13526#[doc = r##"<code>fovy?</code> camera frustum vertical field of view,
13527                          from bottom to top of view, in angleMode units
13528
13529"##]
13530///
13531///
13532#[doc = r##"<code>aspect?</code> camera frustum aspect ratio
13533
13534"##]
13535///
13536///
13537#[doc = r##"<code>near?</code> frustum near plane length
13538
13539"##]
13540///
13541///
13542#[doc = r##"<code>far?</code> frustum far plane length
13543
13544"##]
13545///
13546
13547pub static perspective: PerspectiveInternalType = PerspectiveInternalType;
13548#[doc(hidden)]
13549pub struct PerspectiveInternalType;
13550
13551
13552#[wasm_bindgen]
13553extern {
13554    #[wasm_bindgen(js_name = "perspective")]
13555    fn perspective3728625815(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
13556}
13557
13558#[doc(hidden)]
13559impl FnOnce<(f64,f64,f64,f64,)> for PerspectiveInternalType {
13560    type Output = ();
13561    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
13562        perspective3728625815.call(args)
13563    }
13564}
13565
13566#[doc(hidden)]
13567impl FnMut<(f64,f64,f64,f64,)> for PerspectiveInternalType {
13568    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
13569        perspective3728625815.call(args)
13570    }
13571}
13572
13573#[doc(hidden)]
13574impl Fn<(f64,f64,f64,f64,)> for PerspectiveInternalType {
13575    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
13576        perspective3728625815.call(args)
13577    }
13578}
13579
13580#[wasm_bindgen]
13581extern {
13582    #[wasm_bindgen(js_name = "perspective")]
13583    fn perspective1796968339(_ : f64, _ : f64, _ : f64, ) ;
13584}
13585
13586#[doc(hidden)]
13587impl FnOnce<(f64,f64,f64,)> for PerspectiveInternalType {
13588    type Output = ();
13589    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
13590        perspective1796968339.call(args)
13591    }
13592}
13593
13594#[doc(hidden)]
13595impl FnMut<(f64,f64,f64,)> for PerspectiveInternalType {
13596    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
13597        perspective1796968339.call(args)
13598    }
13599}
13600
13601#[doc(hidden)]
13602impl Fn<(f64,f64,f64,)> for PerspectiveInternalType {
13603    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
13604        perspective1796968339.call(args)
13605    }
13606}
13607
13608#[wasm_bindgen]
13609extern {
13610    #[wasm_bindgen(js_name = "perspective")]
13611    fn perspective757771593(_ : f64, _ : f64, ) ;
13612}
13613
13614#[doc(hidden)]
13615impl FnOnce<(f64,f64,)> for PerspectiveInternalType {
13616    type Output = ();
13617    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
13618        perspective757771593.call(args)
13619    }
13620}
13621
13622#[doc(hidden)]
13623impl FnMut<(f64,f64,)> for PerspectiveInternalType {
13624    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
13625        perspective757771593.call(args)
13626    }
13627}
13628
13629#[doc(hidden)]
13630impl Fn<(f64,f64,)> for PerspectiveInternalType {
13631    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
13632        perspective757771593.call(args)
13633    }
13634}
13635
13636#[wasm_bindgen]
13637extern {
13638    #[wasm_bindgen(js_name = "perspective")]
13639    fn perspective879215782(_ : f64, ) ;
13640}
13641
13642#[doc(hidden)]
13643impl FnOnce<(f64,)> for PerspectiveInternalType {
13644    type Output = ();
13645    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
13646        perspective879215782.call(args)
13647    }
13648}
13649
13650#[doc(hidden)]
13651impl FnMut<(f64,)> for PerspectiveInternalType {
13652    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
13653        perspective879215782.call(args)
13654    }
13655}
13656
13657#[doc(hidden)]
13658impl Fn<(f64,)> for PerspectiveInternalType {
13659    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
13660        perspective879215782.call(args)
13661    }
13662}
13663
13664#[wasm_bindgen]
13665extern {
13666    #[wasm_bindgen(js_name = "perspective")]
13667    fn perspective2966358409() ;
13668}
13669
13670#[doc(hidden)]
13671impl FnOnce<()> for PerspectiveInternalType {
13672    type Output = ();
13673    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
13674        perspective2966358409.call(args)
13675    }
13676}
13677
13678#[doc(hidden)]
13679impl FnMut<()> for PerspectiveInternalType {
13680    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
13681        perspective2966358409.call(args)
13682    }
13683}
13684
13685#[doc(hidden)]
13686impl Fn<()> for PerspectiveInternalType {
13687    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
13688        perspective2966358409.call(args)
13689    }
13690}
13691#[doc=r##"<p>Sets an orthographic projection for the camera in a 3D sketch and defines a
13692box-shaped viewing frustum within which objects are seen. In this projection,
13693all objects with the same dimension appear the same size, regardless of
13694whether they are near or far from the camera. The parameters to this
13695function specify the viewing frustum where left and right are the minimum and
13696maximum x values, top and bottom are the minimum and maximum y values, and near
13697and far are the minimum and maximum z values. If no parameters are given, the
13698default is used: ortho(-width/2, width/2, -height/2, height/2).</p>
13699"##]
13700///<h2>Examples</h2>
13701///
13702
13703#[doc=r###"```rust
13704//drag the mouse to look around!
13705//there's no vanishing point
13706function setup() {
13707  createCanvas(100, 100, WEBGL);
13708  ortho(-width / 2, width / 2, height / 2, -height / 2, 0, 500);
13709}
13710function draw() {
13711  background(200);
13712  orbitControl();
13713  normalMaterial();
13714
13715  rotateX(0.2);
13716  rotateY(-0.2);
13717  push();
13718  translate(-15, 0, sin(frameCount / 30) * 65);
13719  box(30);
13720  pop();
13721  push();
13722  translate(15, 0, sin(frameCount / 30 + PI) * 65);
13723  box(30);
13724  pop();
13725}
13726```"###]
13727/// <h2>Parameters</h2>
13728///
13729#[doc = r##"<code>left?</code> camera frustum left plane
13730
13731"##]
13732///
13733///
13734#[doc = r##"<code>right?</code> camera frustum right plane
13735
13736"##]
13737///
13738///
13739#[doc = r##"<code>bottom?</code> camera frustum bottom plane
13740
13741"##]
13742///
13743///
13744#[doc = r##"<code>top?</code> camera frustum top plane
13745
13746"##]
13747///
13748///
13749#[doc = r##"<code>near?</code> camera frustum near plane
13750
13751"##]
13752///
13753///
13754#[doc = r##"<code>far?</code> camera frustum far plane
13755
13756"##]
13757///
13758
13759pub static ortho: OrthoInternalType = OrthoInternalType;
13760#[doc(hidden)]
13761pub struct OrthoInternalType;
13762
13763
13764#[wasm_bindgen]
13765extern {
13766    #[wasm_bindgen(js_name = "ortho")]
13767    fn ortho901040758(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
13768}
13769
13770#[doc(hidden)]
13771impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for OrthoInternalType {
13772    type Output = ();
13773    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13774        ortho901040758.call(args)
13775    }
13776}
13777
13778#[doc(hidden)]
13779impl FnMut<(f64,f64,f64,f64,f64,f64,)> for OrthoInternalType {
13780    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13781        ortho901040758.call(args)
13782    }
13783}
13784
13785#[doc(hidden)]
13786impl Fn<(f64,f64,f64,f64,f64,f64,)> for OrthoInternalType {
13787    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
13788        ortho901040758.call(args)
13789    }
13790}
13791
13792#[wasm_bindgen]
13793extern {
13794    #[wasm_bindgen(js_name = "ortho")]
13795    fn ortho2082655552(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
13796}
13797
13798#[doc(hidden)]
13799impl FnOnce<(f64,f64,f64,f64,f64,)> for OrthoInternalType {
13800    type Output = ();
13801    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
13802        ortho2082655552.call(args)
13803    }
13804}
13805
13806#[doc(hidden)]
13807impl FnMut<(f64,f64,f64,f64,f64,)> for OrthoInternalType {
13808    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
13809        ortho2082655552.call(args)
13810    }
13811}
13812
13813#[doc(hidden)]
13814impl Fn<(f64,f64,f64,f64,f64,)> for OrthoInternalType {
13815    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
13816        ortho2082655552.call(args)
13817    }
13818}
13819
13820#[wasm_bindgen]
13821extern {
13822    #[wasm_bindgen(js_name = "ortho")]
13823    fn ortho357273386(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
13824}
13825
13826#[doc(hidden)]
13827impl FnOnce<(f64,f64,f64,f64,)> for OrthoInternalType {
13828    type Output = ();
13829    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
13830        ortho357273386.call(args)
13831    }
13832}
13833
13834#[doc(hidden)]
13835impl FnMut<(f64,f64,f64,f64,)> for OrthoInternalType {
13836    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
13837        ortho357273386.call(args)
13838    }
13839}
13840
13841#[doc(hidden)]
13842impl Fn<(f64,f64,f64,f64,)> for OrthoInternalType {
13843    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
13844        ortho357273386.call(args)
13845    }
13846}
13847
13848#[wasm_bindgen]
13849extern {
13850    #[wasm_bindgen(js_name = "ortho")]
13851    fn ortho276651799(_ : f64, _ : f64, _ : f64, ) ;
13852}
13853
13854#[doc(hidden)]
13855impl FnOnce<(f64,f64,f64,)> for OrthoInternalType {
13856    type Output = ();
13857    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
13858        ortho276651799.call(args)
13859    }
13860}
13861
13862#[doc(hidden)]
13863impl FnMut<(f64,f64,f64,)> for OrthoInternalType {
13864    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
13865        ortho276651799.call(args)
13866    }
13867}
13868
13869#[doc(hidden)]
13870impl Fn<(f64,f64,f64,)> for OrthoInternalType {
13871    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
13872        ortho276651799.call(args)
13873    }
13874}
13875
13876#[wasm_bindgen]
13877extern {
13878    #[wasm_bindgen(js_name = "ortho")]
13879    fn ortho2225766558(_ : f64, _ : f64, ) ;
13880}
13881
13882#[doc(hidden)]
13883impl FnOnce<(f64,f64,)> for OrthoInternalType {
13884    type Output = ();
13885    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
13886        ortho2225766558.call(args)
13887    }
13888}
13889
13890#[doc(hidden)]
13891impl FnMut<(f64,f64,)> for OrthoInternalType {
13892    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
13893        ortho2225766558.call(args)
13894    }
13895}
13896
13897#[doc(hidden)]
13898impl Fn<(f64,f64,)> for OrthoInternalType {
13899    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
13900        ortho2225766558.call(args)
13901    }
13902}
13903
13904#[wasm_bindgen]
13905extern {
13906    #[wasm_bindgen(js_name = "ortho")]
13907    fn ortho3786966317(_ : f64, ) ;
13908}
13909
13910#[doc(hidden)]
13911impl FnOnce<(f64,)> for OrthoInternalType {
13912    type Output = ();
13913    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
13914        ortho3786966317.call(args)
13915    }
13916}
13917
13918#[doc(hidden)]
13919impl FnMut<(f64,)> for OrthoInternalType {
13920    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
13921        ortho3786966317.call(args)
13922    }
13923}
13924
13925#[doc(hidden)]
13926impl Fn<(f64,)> for OrthoInternalType {
13927    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
13928        ortho3786966317.call(args)
13929    }
13930}
13931
13932#[wasm_bindgen]
13933extern {
13934    #[wasm_bindgen(js_name = "ortho")]
13935    fn ortho1748996739() ;
13936}
13937
13938#[doc(hidden)]
13939impl FnOnce<()> for OrthoInternalType {
13940    type Output = ();
13941    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
13942        ortho1748996739.call(args)
13943    }
13944}
13945
13946#[doc(hidden)]
13947impl FnMut<()> for OrthoInternalType {
13948    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
13949        ortho1748996739.call(args)
13950    }
13951}
13952
13953#[doc(hidden)]
13954impl Fn<()> for OrthoInternalType {
13955    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
13956        ortho1748996739.call(args)
13957    }
13958}
13959#[doc=r##"<p>Sets a perspective matrix as defined by the parameters.</p>
13960<p>A frustum is a geometric form: a pyramid with its top
13961cut off. With the viewer's eye at the imaginary top of
13962the pyramid, the six planes of the frustum act as clipping
13963planes when rendering a 3D view. Thus, any form inside the
13964clipping planes is visible; anything outside
13965those planes is not visible.</p>
13966<p>Setting the frustum changes the perspective of the scene being rendered.
13967This can be achieved more simply in many cases by using
13968<a href="https://p5js.org/reference/#/p5/perspective">perspective()</a>.</p>
13969"##]
13970///<h2>Examples</h2>
13971///
13972
13973#[doc=r###"```rust
13974function setup() {
13975  createCanvas(100, 100, WEBGL);
13976  setAttributes('antialias', true);
13977  frustum(-0.1, 0.1, -0.1, 0.1, 0.1, 200);
13978}
13979function draw() {
13980  background(200);
13981  orbitControl();
13982  strokeWeight(10);
13983  stroke(0, 0, 255);
13984  noFill();
13985
13986  rotateY(-0.2);
13987  rotateX(-0.3);
13988  push();
13989  translate(-15, 0, sin(frameCount / 30) * 25);
13990  box(30);
13991  pop();
13992  push();
13993  translate(15, 0, sin(frameCount / 30 + PI) * 25);
13994  box(30);
13995  pop();
13996}
13997```"###]
13998/// <h2>Parameters</h2>
13999///
14000#[doc = r##"<code>left?</code> camera frustum left plane
14001
14002"##]
14003///
14004///
14005#[doc = r##"<code>right?</code> camera frustum right plane
14006
14007"##]
14008///
14009///
14010#[doc = r##"<code>bottom?</code> camera frustum bottom plane
14011
14012"##]
14013///
14014///
14015#[doc = r##"<code>top?</code> camera frustum top plane
14016
14017"##]
14018///
14019///
14020#[doc = r##"<code>near?</code> camera frustum near plane
14021
14022"##]
14023///
14024///
14025#[doc = r##"<code>far?</code> camera frustum far plane
14026
14027"##]
14028///
14029
14030pub static frustum: FrustumInternalType = FrustumInternalType;
14031#[doc(hidden)]
14032pub struct FrustumInternalType;
14033
14034
14035#[wasm_bindgen]
14036extern {
14037    #[wasm_bindgen(js_name = "frustum")]
14038    fn frustum3494307598(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
14039}
14040
14041#[doc(hidden)]
14042impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for FrustumInternalType {
14043    type Output = ();
14044    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
14045        frustum3494307598.call(args)
14046    }
14047}
14048
14049#[doc(hidden)]
14050impl FnMut<(f64,f64,f64,f64,f64,f64,)> for FrustumInternalType {
14051    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
14052        frustum3494307598.call(args)
14053    }
14054}
14055
14056#[doc(hidden)]
14057impl Fn<(f64,f64,f64,f64,f64,f64,)> for FrustumInternalType {
14058    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
14059        frustum3494307598.call(args)
14060    }
14061}
14062
14063#[wasm_bindgen]
14064extern {
14065    #[wasm_bindgen(js_name = "frustum")]
14066    fn frustum2476450996(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
14067}
14068
14069#[doc(hidden)]
14070impl FnOnce<(f64,f64,f64,f64,f64,)> for FrustumInternalType {
14071    type Output = ();
14072    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
14073        frustum2476450996.call(args)
14074    }
14075}
14076
14077#[doc(hidden)]
14078impl FnMut<(f64,f64,f64,f64,f64,)> for FrustumInternalType {
14079    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
14080        frustum2476450996.call(args)
14081    }
14082}
14083
14084#[doc(hidden)]
14085impl Fn<(f64,f64,f64,f64,f64,)> for FrustumInternalType {
14086    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
14087        frustum2476450996.call(args)
14088    }
14089}
14090
14091#[wasm_bindgen]
14092extern {
14093    #[wasm_bindgen(js_name = "frustum")]
14094    fn frustum3512245681(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
14095}
14096
14097#[doc(hidden)]
14098impl FnOnce<(f64,f64,f64,f64,)> for FrustumInternalType {
14099    type Output = ();
14100    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
14101        frustum3512245681.call(args)
14102    }
14103}
14104
14105#[doc(hidden)]
14106impl FnMut<(f64,f64,f64,f64,)> for FrustumInternalType {
14107    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
14108        frustum3512245681.call(args)
14109    }
14110}
14111
14112#[doc(hidden)]
14113impl Fn<(f64,f64,f64,f64,)> for FrustumInternalType {
14114    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
14115        frustum3512245681.call(args)
14116    }
14117}
14118
14119#[wasm_bindgen]
14120extern {
14121    #[wasm_bindgen(js_name = "frustum")]
14122    fn frustum2413833478(_ : f64, _ : f64, _ : f64, ) ;
14123}
14124
14125#[doc(hidden)]
14126impl FnOnce<(f64,f64,f64,)> for FrustumInternalType {
14127    type Output = ();
14128    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
14129        frustum2413833478.call(args)
14130    }
14131}
14132
14133#[doc(hidden)]
14134impl FnMut<(f64,f64,f64,)> for FrustumInternalType {
14135    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
14136        frustum2413833478.call(args)
14137    }
14138}
14139
14140#[doc(hidden)]
14141impl Fn<(f64,f64,f64,)> for FrustumInternalType {
14142    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
14143        frustum2413833478.call(args)
14144    }
14145}
14146
14147#[wasm_bindgen]
14148extern {
14149    #[wasm_bindgen(js_name = "frustum")]
14150    fn frustum1005227882(_ : f64, _ : f64, ) ;
14151}
14152
14153#[doc(hidden)]
14154impl FnOnce<(f64,f64,)> for FrustumInternalType {
14155    type Output = ();
14156    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
14157        frustum1005227882.call(args)
14158    }
14159}
14160
14161#[doc(hidden)]
14162impl FnMut<(f64,f64,)> for FrustumInternalType {
14163    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
14164        frustum1005227882.call(args)
14165    }
14166}
14167
14168#[doc(hidden)]
14169impl Fn<(f64,f64,)> for FrustumInternalType {
14170    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
14171        frustum1005227882.call(args)
14172    }
14173}
14174
14175#[wasm_bindgen]
14176extern {
14177    #[wasm_bindgen(js_name = "frustum")]
14178    fn frustum4072316017(_ : f64, ) ;
14179}
14180
14181#[doc(hidden)]
14182impl FnOnce<(f64,)> for FrustumInternalType {
14183    type Output = ();
14184    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
14185        frustum4072316017.call(args)
14186    }
14187}
14188
14189#[doc(hidden)]
14190impl FnMut<(f64,)> for FrustumInternalType {
14191    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
14192        frustum4072316017.call(args)
14193    }
14194}
14195
14196#[doc(hidden)]
14197impl Fn<(f64,)> for FrustumInternalType {
14198    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
14199        frustum4072316017.call(args)
14200    }
14201}
14202
14203#[wasm_bindgen]
14204extern {
14205    #[wasm_bindgen(js_name = "frustum")]
14206    fn frustum3607210306() ;
14207}
14208
14209#[doc(hidden)]
14210impl FnOnce<()> for FrustumInternalType {
14211    type Output = ();
14212    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
14213        frustum3607210306.call(args)
14214    }
14215}
14216
14217#[doc(hidden)]
14218impl FnMut<()> for FrustumInternalType {
14219    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
14220        frustum3607210306.call(args)
14221    }
14222}
14223
14224#[doc(hidden)]
14225impl Fn<()> for FrustumInternalType {
14226    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
14227        frustum3607210306.call(args)
14228    }
14229}
14230#[doc=r##"<p>Creates a new <a href="#/p5.Camera">p5.Camera</a> object and tells the
14231renderer to use that camera.
14232Returns the p5.Camera object.</p>
14233"##]
14234///<h2>Examples</h2>
14235///
14236
14237#[doc=r###"```rust
14238// Creates a camera object and animates it around a box.
14239let camera;
14240function setup() {
14241  createCanvas(100, 100, WEBGL);
14242  background(0);
14243  camera = createCamera();
14244  setCamera(camera);
14245}
14246
14247function draw() {
14248  camera.lookAt(0, 0, 0);
14249  camera.setPosition(sin(frameCount / 60) * 200, 0, 100);
14250  box(20);
14251}
14252```"###]
14253
14254pub static createCamera: CreateCameraInternalType = CreateCameraInternalType;
14255#[doc(hidden)]
14256pub struct CreateCameraInternalType;
14257
14258
14259#[wasm_bindgen]
14260extern {
14261    #[wasm_bindgen(js_name = "createCamera")]
14262    fn createCamera388263915() ->  Camera;
14263}
14264
14265#[doc(hidden)]
14266impl FnOnce<()> for CreateCameraInternalType {
14267    type Output =  Camera;
14268    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
14269        createCamera388263915.call(args)
14270    }
14271}
14272
14273#[doc(hidden)]
14274impl FnMut<()> for CreateCameraInternalType {
14275    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
14276        createCamera388263915.call(args)
14277    }
14278}
14279
14280#[doc(hidden)]
14281impl Fn<()> for CreateCameraInternalType {
14282    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
14283        createCamera388263915.call(args)
14284    }
14285}
14286#[doc=r##"<p>Sets rendererGL's current camera to a p5.Camera object.  Allows switching
14287between multiple cameras.</p>
14288"##]
14289///<h2>Examples</h2>
14290///
14291
14292#[doc=r###"```rust
14293let cam1, cam2;
14294let currentCamera;
14295
14296function setup() {
14297  createCanvas(100, 100, WEBGL);
14298  normalMaterial();
14299
14300  cam1 = createCamera();
14301  cam2 = createCamera();
14302  cam2.setPosition(30, 0, 50);
14303  cam2.lookAt(0, 0, 0);
14304  cam2.ortho();
14305
14306  // set variable for previously active camera:
14307  currentCamera = 1;
14308}
14309
14310function draw() {
14311  background(200);
14312
14313  // camera 1:
14314  cam1.lookAt(0, 0, 0);
14315  cam1.setPosition(sin(frameCount / 60) * 200, 0, 100);
14316
14317  // every 100 frames, switch between the two cameras
14318  if (frameCount % 100 === 0) {
14319    if (currentCamera === 1) {
14320      setCamera(cam1);
14321      currentCamera = 0;
14322    } else {
14323      setCamera(cam2);
14324      currentCamera = 1;
14325    }
14326  }
14327
14328  drawBoxes();
14329}
14330
14331function drawBoxes() {
14332  rotateX(frameCount * 0.01);
14333  translate(-100, 0, 0);
14334  box(20);
14335  translate(35, 0, 0);
14336  box(20);
14337  translate(35, 0, 0);
14338  box(20);
14339  translate(35, 0, 0);
14340  box(20);
14341  translate(35, 0, 0);
14342  box(20);
14343  translate(35, 0, 0);
14344  box(20);
14345  translate(35, 0, 0);
14346  box(20);
14347}
14348```"###]
14349/// <h2>Parameters</h2>
14350///
14351#[doc = r##"<code>cam</code> p5.Camera object
14352
14353"##]
14354///
14355
14356pub static setCamera: SetCameraInternalType = SetCameraInternalType;
14357#[doc(hidden)]
14358pub struct SetCameraInternalType;
14359
14360
14361#[wasm_bindgen]
14362extern {
14363    #[wasm_bindgen(js_name = "setCamera")]
14364    fn setCamera410628466(_ : & Camera, ) ;
14365}
14366
14367#[doc(hidden)]
14368impl FnOnce<(&'_ Camera,)> for SetCameraInternalType {
14369    type Output = ();
14370    extern "rust-call" fn call_once(self, args: (&'_ Camera,)) -> Self::Output {
14371        setCamera410628466.call(args)
14372    }
14373}
14374
14375#[doc(hidden)]
14376impl FnMut<(&'_ Camera,)> for SetCameraInternalType {
14377    extern "rust-call" fn call_mut(&mut self, args: (&'_ Camera,)) -> Self::Output {
14378        setCamera410628466.call(args)
14379    }
14380}
14381
14382#[doc(hidden)]
14383impl Fn<(&'_ Camera,)> for SetCameraInternalType {
14384    extern "rust-call" fn call(&self, args: (&'_ Camera,)) -> Self::Output {
14385        setCamera410628466.call(args)
14386    }
14387}
14388#[doc=r##"<p>Returns the Perlin noise value at specified coordinates. Perlin noise is
14389a random sequence generator producing a more naturally ordered, harmonic
14390succession of numbers compared to the standard <b>random()</b> function.
14391It was invented by Ken Perlin in the 1980s and been used since in
14392graphical applications to produce procedural textures, natural motion,
14393shapes, terrains etc.<br /><br /> The main difference to the
14394<b>random()</b> function is that Perlin noise is defined in an infinite
14395n-dimensional space where each pair of coordinates corresponds to a
14396fixed semi-random value (fixed only for the lifespan of the program; see
14397the <a href="#/p5/noiseSeed">noiseSeed()</a> function). p5.js can compute 1D, 2D and 3D noise,
14398depending on the number of coordinates given. The resulting value will
14399always be between 0.0 and 1.0. The noise value can be animated by moving
14400through the noise space as demonstrated in the example above. The 2nd
14401and 3rd dimension can also be interpreted as time.<br /><br />The actual
14402noise is structured similar to an audio signal, in respect to the
14403function's use of frequencies. Similar to the concept of harmonics in
14404physics, perlin noise is computed over several octaves which are added
14405together for the final result. <br /><br />Another way to adjust the
14406character of the resulting sequence is the scale of the input
14407coordinates. As the function works within an infinite space the value of
14408the coordinates doesn't matter as such, only the distance between
14409successive coordinates does (eg. when using <b>noise()</b> within a
14410loop). As a general rule the smaller the difference between coordinates,
14411the smoother the resulting noise sequence will be. Steps of 0.005-0.03
14412work best for most applications, but this will differ depending on use.</p>
14413"##]
14414///<h2>Examples</h2>
14415///
14416
14417#[doc=r###"```rust
14418let xoff = 0.0;
14419
14420function draw() {
14421  background(204);
14422  xoff = xoff + 0.01;
14423  let n = noise(xoff) * width;
14424  line(n, 0, n, height);
14425}
14426```"###]
14427#[doc=r###"```rustlet noiseScale=0.02;
14428
14429function draw() {
14430  background(0);
14431  for (let x=0; x < width; x++) {
14432    let noiseVal = noise((mouseX+x)*noiseScale, mouseY*noiseScale);
14433    stroke(noiseVal*255);
14434    line(x, mouseY+noiseVal*80, x, height);
14435  }
14436}
14437```"###]
14438/// <h2>Parameters</h2>
14439///
14440#[doc = r##"<code>x</code> x-coordinate in noise space
14441
14442"##]
14443///
14444///
14445#[doc = r##"<code>y?</code> y-coordinate in noise space
14446
14447"##]
14448///
14449///
14450#[doc = r##"<code>z?</code> z-coordinate in noise space
14451
14452"##]
14453///
14454
14455pub static noise: NoiseInternalType = NoiseInternalType;
14456#[doc(hidden)]
14457pub struct NoiseInternalType;
14458
14459
14460#[wasm_bindgen]
14461extern {
14462    #[wasm_bindgen(js_name = "noise")]
14463    fn noise1655247029(_ : f64, _ : f64, _ : f64, ) -> f64;
14464}
14465
14466#[doc(hidden)]
14467impl FnOnce<(f64,f64,f64,)> for NoiseInternalType {
14468    type Output = f64;
14469    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
14470        noise1655247029.call(args)
14471    }
14472}
14473
14474#[doc(hidden)]
14475impl FnMut<(f64,f64,f64,)> for NoiseInternalType {
14476    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
14477        noise1655247029.call(args)
14478    }
14479}
14480
14481#[doc(hidden)]
14482impl Fn<(f64,f64,f64,)> for NoiseInternalType {
14483    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
14484        noise1655247029.call(args)
14485    }
14486}
14487
14488#[wasm_bindgen]
14489extern {
14490    #[wasm_bindgen(js_name = "noise")]
14491    fn noise3615599331(_ : f64, _ : f64, ) -> f64;
14492}
14493
14494#[doc(hidden)]
14495impl FnOnce<(f64,f64,)> for NoiseInternalType {
14496    type Output = f64;
14497    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
14498        noise3615599331.call(args)
14499    }
14500}
14501
14502#[doc(hidden)]
14503impl FnMut<(f64,f64,)> for NoiseInternalType {
14504    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
14505        noise3615599331.call(args)
14506    }
14507}
14508
14509#[doc(hidden)]
14510impl Fn<(f64,f64,)> for NoiseInternalType {
14511    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
14512        noise3615599331.call(args)
14513    }
14514}
14515
14516#[wasm_bindgen]
14517extern {
14518    #[wasm_bindgen(js_name = "noise")]
14519    fn noise1881910504(_ : f64, ) -> f64;
14520}
14521
14522#[doc(hidden)]
14523impl FnOnce<(f64,)> for NoiseInternalType {
14524    type Output = f64;
14525    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
14526        noise1881910504.call(args)
14527    }
14528}
14529
14530#[doc(hidden)]
14531impl FnMut<(f64,)> for NoiseInternalType {
14532    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
14533        noise1881910504.call(args)
14534    }
14535}
14536
14537#[doc(hidden)]
14538impl Fn<(f64,)> for NoiseInternalType {
14539    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
14540        noise1881910504.call(args)
14541    }
14542}
14543#[doc=r##"<p>Adjusts the character and level of detail produced by the Perlin noise
14544 function. Similar to harmonics in physics, noise is computed over
14545 several octaves. Lower octaves contribute more to the output signal and
14546 as such define the overall intensity of the noise, whereas higher octaves
14547 create finer grained details in the noise sequence.
14548By default, noise is computed over 4 octaves with each octave contributing
14549 exactly half than its predecessor, starting at 50% strength for the 1st
14550 octave. This falloff amount can be changed by adding an additional function
14551 parameter. Eg. a falloff factor of 0.75 means each octave will now have
14552 75% impact (25% less) of the previous lower octave. Any value between
14553 0.0 and 1.0 is valid, however note that values greater than 0.5 might
14554 result in greater than 1.0 values returned by <b>noise()</b>.
14555By changing these parameters, the signal created by the <b>noise()</b>
14556 function can be adapted to fit very specific needs and characteristics.</p>
14557"##]
14558///<h2>Examples</h2>
14559///
14560
14561#[doc=r###"```rust
14562 let noiseVal;
14563 let noiseScale = 0.02;
14564function setup() {
14565   createCanvas(100, 100);
14566 }
14567function draw() {
14568   background(0);
14569   for (let y = 0; y < height; y++) {
14570     for (let x = 0; x < width / 2; x++) {
14571       noiseDetail(2, 0.2);
14572       noiseVal = noise((mouseX + x) * noiseScale, (mouseY + y) * noiseScale);
14573       stroke(noiseVal * 255);
14574       point(x, y);
14575       noiseDetail(8, 0.65);
14576       noiseVal = noise(
14577         (mouseX + x + width / 2) * noiseScale,
14578         (mouseY + y) * noiseScale
14579       );
14580       stroke(noiseVal * 255);
14581       point(x + width / 2, y);
14582     }
14583   }
14584 }
14585 ```"###]
14586/// <h2>Parameters</h2>
14587///
14588#[doc = r##"<code>lod</code> number of octaves to be used by the noise
14589
14590"##]
14591///
14592///
14593#[doc = r##"<code>falloff</code> falloff factor for each octave
14594
14595"##]
14596///
14597
14598pub static noiseDetail: NoiseDetailInternalType = NoiseDetailInternalType;
14599#[doc(hidden)]
14600pub struct NoiseDetailInternalType;
14601
14602
14603#[wasm_bindgen]
14604extern {
14605    #[wasm_bindgen(js_name = "noiseDetail")]
14606    fn noiseDetail216806624(_ : f64, _ : f64, ) ;
14607}
14608
14609#[doc(hidden)]
14610impl FnOnce<(f64,f64,)> for NoiseDetailInternalType {
14611    type Output = ();
14612    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
14613        noiseDetail216806624.call(args)
14614    }
14615}
14616
14617#[doc(hidden)]
14618impl FnMut<(f64,f64,)> for NoiseDetailInternalType {
14619    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
14620        noiseDetail216806624.call(args)
14621    }
14622}
14623
14624#[doc(hidden)]
14625impl Fn<(f64,f64,)> for NoiseDetailInternalType {
14626    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
14627        noiseDetail216806624.call(args)
14628    }
14629}
14630#[doc=r##"<p>Sets the seed value for <b>noise()</b>. By default, <b>noise()</b>
14631produces different results each time the program is run. Set the
14632<b>value</b> parameter to a constant to return the same pseudo-random
14633numbers each time the software is run.</p>
14634"##]
14635///<h2>Examples</h2>
14636///
14637
14638#[doc=r###"```rustlet xoff = 0.0;
14639
14640function setup() {
14641  noiseSeed(99);
14642  stroke(0, 10);
14643}
14644
14645function draw() {
14646  xoff = xoff + .01;
14647  let n = noise(xoff) * width;
14648  line(n, 0, n, height);
14649}
14650```"###]
14651/// <h2>Parameters</h2>
14652///
14653#[doc = r##"<code>seed</code> the seed value
14654
14655"##]
14656///
14657
14658pub static noiseSeed: NoiseSeedInternalType = NoiseSeedInternalType;
14659#[doc(hidden)]
14660pub struct NoiseSeedInternalType;
14661
14662
14663#[wasm_bindgen]
14664extern {
14665    #[wasm_bindgen(js_name = "noiseSeed")]
14666    fn noiseSeed3132825471(_ : f64, ) ;
14667}
14668
14669#[doc(hidden)]
14670impl FnOnce<(f64,)> for NoiseSeedInternalType {
14671    type Output = ();
14672    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
14673        noiseSeed3132825471.call(args)
14674    }
14675}
14676
14677#[doc(hidden)]
14678impl FnMut<(f64,)> for NoiseSeedInternalType {
14679    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
14680        noiseSeed3132825471.call(args)
14681    }
14682}
14683
14684#[doc(hidden)]
14685impl Fn<(f64,)> for NoiseSeedInternalType {
14686    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
14687        noiseSeed3132825471.call(args)
14688    }
14689}
14690#[doc=r##"<p>The touchStarted() function is called once after every time a touch is
14691registered. If no <a href="#/p5/touchStarted">touchStarted()</a> function is defined, the <a href="#/p5/mousePressed">mousePressed()</a>
14692function will be called instead if it is defined.<br><br>
14693Browsers may have different default behaviors attached to various touch
14694events. To prevent any default behavior for this event, add "return false"
14695to the end of the method.</p>
14696"##]
14697///<h2>Examples</h2>
14698///
14699
14700#[doc=r###"```rust
14701// Touch within the image to change
14702// the value of the rectangle
14703
14704let value = 0;
14705function draw() {
14706  fill(value);
14707  rect(25, 25, 50, 50);
14708}
14709function touchStarted() {
14710  if (value === 0) {
14711    value = 255;
14712  } else {
14713    value = 0;
14714  }
14715}
14716```"###]
14717#[doc=r###"```rust
14718function touchStarted() {
14719  ellipse(mouseX, mouseY, 5, 5);
14720  // prevent default
14721  return false;
14722}
14723```"###]
14724#[doc=r###"```rust
14725// returns a TouchEvent object
14726// as a callback argument
14727function touchStarted(event) {
14728  console.log(event);
14729}
14730```"###]
14731/// <h2>Parameters</h2>
14732///
14733#[doc = r##"<code>event?</code> optional TouchEvent callback argument.
14734
14735"##]
14736///
14737
14738pub static touchStarted: TouchStartedInternalType = TouchStartedInternalType;
14739#[doc(hidden)]
14740pub struct TouchStartedInternalType;
14741
14742
14743#[wasm_bindgen]
14744extern {
14745    #[wasm_bindgen(js_name = "touchStarted")]
14746    fn touchStarted267435383(_ : JsValue, ) ;
14747}
14748
14749#[doc(hidden)]
14750impl FnOnce<(JsValue,)> for TouchStartedInternalType {
14751    type Output = ();
14752    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
14753        touchStarted267435383.call(args)
14754    }
14755}
14756
14757#[doc(hidden)]
14758impl FnMut<(JsValue,)> for TouchStartedInternalType {
14759    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
14760        touchStarted267435383.call(args)
14761    }
14762}
14763
14764#[doc(hidden)]
14765impl Fn<(JsValue,)> for TouchStartedInternalType {
14766    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
14767        touchStarted267435383.call(args)
14768    }
14769}
14770
14771#[wasm_bindgen]
14772extern {
14773    #[wasm_bindgen(js_name = "touchStarted")]
14774    fn touchStarted3314450930() ;
14775}
14776
14777#[doc(hidden)]
14778impl FnOnce<()> for TouchStartedInternalType {
14779    type Output = ();
14780    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
14781        touchStarted3314450930.call(args)
14782    }
14783}
14784
14785#[doc(hidden)]
14786impl FnMut<()> for TouchStartedInternalType {
14787    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
14788        touchStarted3314450930.call(args)
14789    }
14790}
14791
14792#[doc(hidden)]
14793impl Fn<()> for TouchStartedInternalType {
14794    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
14795        touchStarted3314450930.call(args)
14796    }
14797}
14798#[doc=r##"<p>The <a href="#/p5/touchMoved">touchMoved()</a> function is called every time a touch move is registered.
14799If no <a href="#/p5/touchMoved">touchMoved()</a> function is defined, the <a href="#/p5/mouseDragged">mouseDragged()</a> function will
14800be called instead if it is defined.<br><br>
14801Browsers may have different default behaviors attached to various touch
14802events. To prevent any default behavior for this event, add "return false"
14803to the end of the method.</p>
14804"##]
14805///<h2>Examples</h2>
14806///
14807
14808#[doc=r###"```rust
14809// Move your finger across the page
14810// to change its value
14811
14812let value = 0;
14813function draw() {
14814  fill(value);
14815  rect(25, 25, 50, 50);
14816}
14817function touchMoved() {
14818  value = value + 5;
14819  if (value > 255) {
14820    value = 0;
14821  }
14822}
14823```"###]
14824#[doc=r###"```rust
14825function touchMoved() {
14826  ellipse(mouseX, mouseY, 5, 5);
14827  // prevent default
14828  return false;
14829}
14830```"###]
14831#[doc=r###"```rust
14832// returns a TouchEvent object
14833// as a callback argument
14834function touchMoved(event) {
14835  console.log(event);
14836}
14837```"###]
14838/// <h2>Parameters</h2>
14839///
14840#[doc = r##"<code>event?</code> optional TouchEvent callback argument.
14841
14842"##]
14843///
14844
14845pub static touchMoved: TouchMovedInternalType = TouchMovedInternalType;
14846#[doc(hidden)]
14847pub struct TouchMovedInternalType;
14848
14849
14850#[wasm_bindgen]
14851extern {
14852    #[wasm_bindgen(js_name = "touchMoved")]
14853    fn touchMoved1051752438(_ : JsValue, ) ;
14854}
14855
14856#[doc(hidden)]
14857impl FnOnce<(JsValue,)> for TouchMovedInternalType {
14858    type Output = ();
14859    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
14860        touchMoved1051752438.call(args)
14861    }
14862}
14863
14864#[doc(hidden)]
14865impl FnMut<(JsValue,)> for TouchMovedInternalType {
14866    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
14867        touchMoved1051752438.call(args)
14868    }
14869}
14870
14871#[doc(hidden)]
14872impl Fn<(JsValue,)> for TouchMovedInternalType {
14873    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
14874        touchMoved1051752438.call(args)
14875    }
14876}
14877
14878#[wasm_bindgen]
14879extern {
14880    #[wasm_bindgen(js_name = "touchMoved")]
14881    fn touchMoved888449764() ;
14882}
14883
14884#[doc(hidden)]
14885impl FnOnce<()> for TouchMovedInternalType {
14886    type Output = ();
14887    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
14888        touchMoved888449764.call(args)
14889    }
14890}
14891
14892#[doc(hidden)]
14893impl FnMut<()> for TouchMovedInternalType {
14894    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
14895        touchMoved888449764.call(args)
14896    }
14897}
14898
14899#[doc(hidden)]
14900impl Fn<()> for TouchMovedInternalType {
14901    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
14902        touchMoved888449764.call(args)
14903    }
14904}
14905#[doc=r##"<p>The <a href="#/p5/touchEnded">touchEnded()</a> function is called every time a touch ends. If no
14906<a href="#/p5/touchEnded">touchEnded()</a> function is defined, the <a href="#/p5/mouseReleased">mouseReleased()</a> function will be
14907called instead if it is defined.<br><br>
14908Browsers may have different default behaviors attached to various touch
14909events. To prevent any default behavior for this event, add "return false"
14910to the end of the method.</p>
14911"##]
14912///<h2>Examples</h2>
14913///
14914
14915#[doc=r###"```rust
14916// Release touch within the image to
14917// change the value of the rectangle
14918
14919let value = 0;
14920function draw() {
14921  fill(value);
14922  rect(25, 25, 50, 50);
14923}
14924function touchEnded() {
14925  if (value === 0) {
14926    value = 255;
14927  } else {
14928    value = 0;
14929  }
14930}
14931```"###]
14932#[doc=r###"```rust
14933function touchEnded() {
14934  ellipse(mouseX, mouseY, 5, 5);
14935  // prevent default
14936  return false;
14937}
14938```"###]
14939#[doc=r###"```rust
14940// returns a TouchEvent object
14941// as a callback argument
14942function touchEnded(event) {
14943  console.log(event);
14944}
14945```"###]
14946/// <h2>Parameters</h2>
14947///
14948#[doc = r##"<code>event?</code> optional TouchEvent callback argument.
14949
14950"##]
14951///
14952
14953pub static touchEnded: TouchEndedInternalType = TouchEndedInternalType;
14954#[doc(hidden)]
14955pub struct TouchEndedInternalType;
14956
14957
14958#[wasm_bindgen]
14959extern {
14960    #[wasm_bindgen(js_name = "touchEnded")]
14961    fn touchEnded2964030481(_ : JsValue, ) ;
14962}
14963
14964#[doc(hidden)]
14965impl FnOnce<(JsValue,)> for TouchEndedInternalType {
14966    type Output = ();
14967    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
14968        touchEnded2964030481.call(args)
14969    }
14970}
14971
14972#[doc(hidden)]
14973impl FnMut<(JsValue,)> for TouchEndedInternalType {
14974    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
14975        touchEnded2964030481.call(args)
14976    }
14977}
14978
14979#[doc(hidden)]
14980impl Fn<(JsValue,)> for TouchEndedInternalType {
14981    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
14982        touchEnded2964030481.call(args)
14983    }
14984}
14985
14986#[wasm_bindgen]
14987extern {
14988    #[wasm_bindgen(js_name = "touchEnded")]
14989    fn touchEnded692003763() ;
14990}
14991
14992#[doc(hidden)]
14993impl FnOnce<()> for TouchEndedInternalType {
14994    type Output = ();
14995    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
14996        touchEnded692003763.call(args)
14997    }
14998}
14999
15000#[doc(hidden)]
15001impl FnMut<()> for TouchEndedInternalType {
15002    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
15003        touchEnded692003763.call(args)
15004    }
15005}
15006
15007#[doc(hidden)]
15008impl Fn<()> for TouchEndedInternalType {
15009    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
15010        touchEnded692003763.call(args)
15011    }
15012}
15013#[doc=r##"<p>Loads an image from a path and creates a <a href="#/p5.Image">p5.Image</a> from it.</p>
15014<p>The image may not be immediately available for rendering.
15015If you want to ensure that the image is ready before doing
15016anything with it, place the <a href="#/p5/loadImage">loadImage()</a> call in <a href="#/p5/preload">preload()</a>.
15017You may also supply a callback function to handle the image when it's ready.</p>
15018<p>The path to the image should be relative to the HTML file
15019that links in your sketch. Loading an image from a URL or other
15020remote location may be blocked due to your browser's built-in
15021security.</p>
15022<p>You can also pass in a string of a base64 encoded image as an alternative to the file path.
15023Remember to add "data:image/png;base64," in front of the string.</p>
15024"##]
15025///<h2>Examples</h2>
15026///
15027
15028#[doc=r###"```rust
15029let img;
15030function preload() {
15031  img = loadImage('assets/laDefense.jpg');
15032}
15033function setup() {
15034  image(img, 0, 0);
15035}
15036```"###]
15037#[doc=r###"```rust
15038function setup() {
15039  // here we use a callback to display the image after loading
15040  loadImage('assets/laDefense.jpg', img => {
15041    image(img, 0, 0);
15042  });
15043}
15044```"###]
15045/// <h2>Parameters</h2>
15046///
15047#[doc = r##"<code>path</code> Path of the image to be loaded
15048
15049"##]
15050///
15051///
15052#[doc = r##"<code>successCallback?</code> Function to be called once
15053                               the image is loaded. Will be passed the
15054                               p5.Image.
15055
15056"##]
15057///
15058///
15059#[doc = r##"<code>failureCallback?</code> called with event error if
15060                               the image fails to load.
15061
15062"##]
15063///
15064
15065pub static loadImage: LoadImageInternalType = LoadImageInternalType;
15066#[doc(hidden)]
15067pub struct LoadImageInternalType;
15068
15069
15070#[wasm_bindgen]
15071extern {
15072    #[wasm_bindgen(js_name = "loadImage")]
15073    fn loadImage3717016410(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) ->  Image;
15074}
15075
15076#[doc(hidden)]
15077impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadImageInternalType {
15078    type Output =  Image;
15079    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
15080        loadImage3717016410.call(args)
15081    }
15082}
15083
15084#[doc(hidden)]
15085impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadImageInternalType {
15086    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
15087        loadImage3717016410.call(args)
15088    }
15089}
15090
15091#[doc(hidden)]
15092impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadImageInternalType {
15093    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
15094        loadImage3717016410.call(args)
15095    }
15096}
15097
15098#[wasm_bindgen]
15099extern {
15100    #[wasm_bindgen(js_name = "loadImage")]
15101    fn loadImage3830241055(_ : & str, _ : js_sys::Function, ) ->  Image;
15102}
15103
15104#[doc(hidden)]
15105impl FnOnce<(&'_ str,js_sys::Function,)> for LoadImageInternalType {
15106    type Output =  Image;
15107    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
15108        loadImage3830241055.call(args)
15109    }
15110}
15111
15112#[doc(hidden)]
15113impl FnMut<(&'_ str,js_sys::Function,)> for LoadImageInternalType {
15114    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
15115        loadImage3830241055.call(args)
15116    }
15117}
15118
15119#[doc(hidden)]
15120impl Fn<(&'_ str,js_sys::Function,)> for LoadImageInternalType {
15121    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
15122        loadImage3830241055.call(args)
15123    }
15124}
15125
15126#[wasm_bindgen]
15127extern {
15128    #[wasm_bindgen(js_name = "loadImage")]
15129    fn loadImage624139017(_ : & str, ) ->  Image;
15130}
15131
15132#[doc(hidden)]
15133impl FnOnce<(&'_ str,)> for LoadImageInternalType {
15134    type Output =  Image;
15135    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
15136        loadImage624139017.call(args)
15137    }
15138}
15139
15140#[doc(hidden)]
15141impl FnMut<(&'_ str,)> for LoadImageInternalType {
15142    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
15143        loadImage624139017.call(args)
15144    }
15145}
15146
15147#[doc(hidden)]
15148impl Fn<(&'_ str,)> for LoadImageInternalType {
15149    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
15150        loadImage624139017.call(args)
15151    }
15152}
15153#[doc=r##"<p>Draw an image to the p5.js canvas.</p>
15154<p>This function can be used with different numbers of parameters. The
15155simplest use requires only three parameters: img, x, and y—where (x, y) is
15156the position of the image. Two more parameters can optionally be added to
15157specify the width and height of the image.</p>
15158<p>This function can also be used with all eight Number parameters. To
15159differentiate between all these parameters, p5.js uses the language of
15160"destination rectangle" (which corresponds to "dx", "dy", etc.) and "source
15161image" (which corresponds to "sx", "sy", etc.) below. Specifying the
15162"source image" dimensions can be useful when you want to display a
15163subsection of the source image instead of the whole thing. Here's a diagram
15164to explain further:
15165<img src="assets/drawImage.png"></img></p>
15166"##]
15167///<h2>Examples</h2>
15168///
15169
15170#[doc=r###"```rust
15171let img;
15172function preload() {
15173  img = loadImage('assets/laDefense.jpg');
15174}
15175function setup() {
15176  // Top-left corner of the img is at (0, 0)
15177  // Width and height are the img's original width and height
15178  image(img, 0, 0);
15179}
15180```"###]
15181#[doc=r###"```rust
15182let img;
15183function preload() {
15184  img = loadImage('assets/laDefense.jpg');
15185}
15186function setup() {
15187  background(50);
15188  // Top-left corner of the img is at (10, 10)
15189  // Width and height are 50 x 50
15190  image(img, 10, 10, 50, 50);
15191}
15192```"###]
15193#[doc=r###"```rust
15194function setup() {
15195  // Here, we use a callback to display the image after loading
15196  loadImage('assets/laDefense.jpg', img => {
15197    image(img, 0, 0);
15198  });
15199}
15200```"###]
15201#[doc=r###"```rust
15202let img;
15203function preload() {
15204  img = loadImage('assets/gradient.png');
15205}
15206function setup() {
15207  // 1. Background image
15208  // Top-left corner of the img is at (0, 0)
15209  // Width and height are the img's original width and height, 100 x 100
15210  image(img, 0, 0);
15211  // 2. Top right image
15212  // Top-left corner of destination rectangle is at (50, 0)
15213  // Destination rectangle width and height are 40 x 20
15214  // The next parameters are relative to the source image:
15215  // - Starting at position (50, 50) on the source image, capture a 50 x 50
15216  // subsection
15217  // - Draw this subsection to fill the dimensions of the destination rectangle
15218  image(img, 50, 0, 40, 20, 50, 50, 50, 50);
15219}
15220```"###]
15221/// <h2>Overloads</h2>
15222///
15223#[doc = r##"<code>img</code> the image to display
15224
15225"##]
15226///
15227///
15228#[doc = r##"<code>x</code> the x-coordinate of the top-left corner of the image
15229
15230"##]
15231///
15232///
15233#[doc = r##"<code>y</code> the y-coordinate of the top-left corner of the image
15234
15235"##]
15236///
15237///
15238#[doc = r##"<code>width?</code> the width to draw the image
15239
15240"##]
15241///
15242///
15243#[doc = r##"<code>height?</code> the height to draw the image
15244
15245"##]
15246///
15247///
15248/// ---
15249///
15250///
15251#[doc = r##"<code>img</code> the image to display
15252
15253"##]
15254///
15255///
15256#[doc = r##"<code>dx</code> the x-coordinate of the destination
15257                          rectangle in which to draw the source image
15258
15259"##]
15260///
15261///
15262#[doc = r##"<code>dy</code> the y-coordinate of the destination
15263                          rectangle in which to draw the source image
15264
15265"##]
15266///
15267///
15268#[doc = r##"<code>dWidth</code> the width of the destination rectangle
15269
15270"##]
15271///
15272///
15273#[doc = r##"<code>dHeight</code> the height of the destination rectangle
15274
15275"##]
15276///
15277///
15278#[doc = r##"<code>sx</code> the x-coordinate of the subsection of the source
15279image to draw into the destination rectangle
15280
15281"##]
15282///
15283///
15284#[doc = r##"<code>sy</code> the y-coordinate of the subsection of the source
15285image to draw into the destination rectangle
15286
15287"##]
15288///
15289///
15290#[doc = r##"<code>sWidth?</code> the width of the subsection of the
15291                          source image to draw into the destination
15292                          rectangle
15293
15294"##]
15295///
15296///
15297#[doc = r##"<code>sHeight?</code> the height of the subsection of the
15298                           source image to draw into the destination rectangle
15299
15300"##]
15301///
15302///
15303/// ---
15304///
15305
15306pub static image: ImageInternalType = ImageInternalType;
15307#[doc(hidden)]
15308pub struct ImageInternalType;
15309
15310
15311#[wasm_bindgen]
15312extern {
15313    #[wasm_bindgen(js_name = "image")]
15314    fn image2508069368(_ : & Image, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
15315}
15316
15317#[doc(hidden)]
15318impl FnOnce<(&'_ Image,f64,f64,f64,f64,)> for ImageInternalType {
15319    type Output = ();
15320    extern "rust-call" fn call_once(self, args: (&'_ Image,f64,f64,f64,f64,)) -> Self::Output {
15321        image2508069368.call(args)
15322    }
15323}
15324
15325#[doc(hidden)]
15326impl FnMut<(&'_ Image,f64,f64,f64,f64,)> for ImageInternalType {
15327    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,f64,f64,f64,f64,)) -> Self::Output {
15328        image2508069368.call(args)
15329    }
15330}
15331
15332#[doc(hidden)]
15333impl Fn<(&'_ Image,f64,f64,f64,f64,)> for ImageInternalType {
15334    extern "rust-call" fn call(&self, args: (&'_ Image,f64,f64,f64,f64,)) -> Self::Output {
15335        image2508069368.call(args)
15336    }
15337}
15338
15339#[wasm_bindgen]
15340extern {
15341    #[wasm_bindgen(js_name = "image")]
15342    fn image1124913249(_ : & Image, _ : f64, _ : f64, _ : f64, ) ;
15343}
15344
15345#[doc(hidden)]
15346impl FnOnce<(&'_ Image,f64,f64,f64,)> for ImageInternalType {
15347    type Output = ();
15348    extern "rust-call" fn call_once(self, args: (&'_ Image,f64,f64,f64,)) -> Self::Output {
15349        image1124913249.call(args)
15350    }
15351}
15352
15353#[doc(hidden)]
15354impl FnMut<(&'_ Image,f64,f64,f64,)> for ImageInternalType {
15355    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,f64,f64,f64,)) -> Self::Output {
15356        image1124913249.call(args)
15357    }
15358}
15359
15360#[doc(hidden)]
15361impl Fn<(&'_ Image,f64,f64,f64,)> for ImageInternalType {
15362    extern "rust-call" fn call(&self, args: (&'_ Image,f64,f64,f64,)) -> Self::Output {
15363        image1124913249.call(args)
15364    }
15365}
15366
15367#[wasm_bindgen]
15368extern {
15369    #[wasm_bindgen(js_name = "image")]
15370    fn image3656151773(_ : & Image, _ : f64, _ : f64, ) ;
15371}
15372
15373#[doc(hidden)]
15374impl FnOnce<(&'_ Image,f64,f64,)> for ImageInternalType {
15375    type Output = ();
15376    extern "rust-call" fn call_once(self, args: (&'_ Image,f64,f64,)) -> Self::Output {
15377        image3656151773.call(args)
15378    }
15379}
15380
15381#[doc(hidden)]
15382impl FnMut<(&'_ Image,f64,f64,)> for ImageInternalType {
15383    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,f64,f64,)) -> Self::Output {
15384        image3656151773.call(args)
15385    }
15386}
15387
15388#[doc(hidden)]
15389impl Fn<(&'_ Image,f64,f64,)> for ImageInternalType {
15390    extern "rust-call" fn call(&self, args: (&'_ Image,f64,f64,)) -> Self::Output {
15391        image3656151773.call(args)
15392    }
15393}
15394
15395#[wasm_bindgen]
15396extern {
15397    #[wasm_bindgen(js_name = "image")]
15398    fn image1499672323(_ : & Element, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
15399}
15400
15401#[doc(hidden)]
15402impl FnOnce<(&'_ Element,f64,f64,f64,f64,)> for ImageInternalType {
15403    type Output = ();
15404    extern "rust-call" fn call_once(self, args: (&'_ Element,f64,f64,f64,f64,)) -> Self::Output {
15405        image1499672323.call(args)
15406    }
15407}
15408
15409#[doc(hidden)]
15410impl FnMut<(&'_ Element,f64,f64,f64,f64,)> for ImageInternalType {
15411    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,f64,f64,f64,f64,)) -> Self::Output {
15412        image1499672323.call(args)
15413    }
15414}
15415
15416#[doc(hidden)]
15417impl Fn<(&'_ Element,f64,f64,f64,f64,)> for ImageInternalType {
15418    extern "rust-call" fn call(&self, args: (&'_ Element,f64,f64,f64,f64,)) -> Self::Output {
15419        image1499672323.call(args)
15420    }
15421}
15422
15423#[wasm_bindgen]
15424extern {
15425    #[wasm_bindgen(js_name = "image")]
15426    fn image507733629(_ : & Element, _ : f64, _ : f64, _ : f64, ) ;
15427}
15428
15429#[doc(hidden)]
15430impl FnOnce<(&'_ Element,f64,f64,f64,)> for ImageInternalType {
15431    type Output = ();
15432    extern "rust-call" fn call_once(self, args: (&'_ Element,f64,f64,f64,)) -> Self::Output {
15433        image507733629.call(args)
15434    }
15435}
15436
15437#[doc(hidden)]
15438impl FnMut<(&'_ Element,f64,f64,f64,)> for ImageInternalType {
15439    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,f64,f64,f64,)) -> Self::Output {
15440        image507733629.call(args)
15441    }
15442}
15443
15444#[doc(hidden)]
15445impl Fn<(&'_ Element,f64,f64,f64,)> for ImageInternalType {
15446    extern "rust-call" fn call(&self, args: (&'_ Element,f64,f64,f64,)) -> Self::Output {
15447        image507733629.call(args)
15448    }
15449}
15450
15451#[wasm_bindgen]
15452extern {
15453    #[wasm_bindgen(js_name = "image")]
15454    fn image3038732966(_ : & Element, _ : f64, _ : f64, ) ;
15455}
15456
15457#[doc(hidden)]
15458impl FnOnce<(&'_ Element,f64,f64,)> for ImageInternalType {
15459    type Output = ();
15460    extern "rust-call" fn call_once(self, args: (&'_ Element,f64,f64,)) -> Self::Output {
15461        image3038732966.call(args)
15462    }
15463}
15464
15465#[doc(hidden)]
15466impl FnMut<(&'_ Element,f64,f64,)> for ImageInternalType {
15467    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,f64,f64,)) -> Self::Output {
15468        image3038732966.call(args)
15469    }
15470}
15471
15472#[doc(hidden)]
15473impl Fn<(&'_ Element,f64,f64,)> for ImageInternalType {
15474    extern "rust-call" fn call(&self, args: (&'_ Element,f64,f64,)) -> Self::Output {
15475        image3038732966.call(args)
15476    }
15477}
15478
15479#[wasm_bindgen]
15480extern {
15481    #[wasm_bindgen(js_name = "image")]
15482    fn image3398954449(_ : & Image, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
15483}
15484
15485#[doc(hidden)]
15486impl FnOnce<(&'_ Image,f64,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15487    type Output = ();
15488    extern "rust-call" fn call_once(self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15489        image3398954449.call(args)
15490    }
15491}
15492
15493#[doc(hidden)]
15494impl FnMut<(&'_ Image,f64,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15495    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15496        image3398954449.call(args)
15497    }
15498}
15499
15500#[doc(hidden)]
15501impl Fn<(&'_ Image,f64,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15502    extern "rust-call" fn call(&self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15503        image3398954449.call(args)
15504    }
15505}
15506
15507#[wasm_bindgen]
15508extern {
15509    #[wasm_bindgen(js_name = "image")]
15510    fn image3252890054(_ : & Image, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
15511}
15512
15513#[doc(hidden)]
15514impl FnOnce<(&'_ Image,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15515    type Output = ();
15516    extern "rust-call" fn call_once(self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15517        image3252890054.call(args)
15518    }
15519}
15520
15521#[doc(hidden)]
15522impl FnMut<(&'_ Image,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15523    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15524        image3252890054.call(args)
15525    }
15526}
15527
15528#[doc(hidden)]
15529impl Fn<(&'_ Image,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15530    extern "rust-call" fn call(&self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15531        image3252890054.call(args)
15532    }
15533}
15534
15535#[wasm_bindgen]
15536extern {
15537    #[wasm_bindgen(js_name = "image")]
15538    fn image1748463541(_ : & Image, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
15539}
15540
15541#[doc(hidden)]
15542impl FnOnce<(&'_ Image,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15543    type Output = ();
15544    extern "rust-call" fn call_once(self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15545        image1748463541.call(args)
15546    }
15547}
15548
15549#[doc(hidden)]
15550impl FnMut<(&'_ Image,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15551    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15552        image1748463541.call(args)
15553    }
15554}
15555
15556#[doc(hidden)]
15557impl Fn<(&'_ Image,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15558    extern "rust-call" fn call(&self, args: (&'_ Image,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15559        image1748463541.call(args)
15560    }
15561}
15562
15563#[wasm_bindgen]
15564extern {
15565    #[wasm_bindgen(js_name = "image")]
15566    fn image1032710974(_ : & Element, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
15567}
15568
15569#[doc(hidden)]
15570impl FnOnce<(&'_ Element,f64,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15571    type Output = ();
15572    extern "rust-call" fn call_once(self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15573        image1032710974.call(args)
15574    }
15575}
15576
15577#[doc(hidden)]
15578impl FnMut<(&'_ Element,f64,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15579    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15580        image1032710974.call(args)
15581    }
15582}
15583
15584#[doc(hidden)]
15585impl Fn<(&'_ Element,f64,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15586    extern "rust-call" fn call(&self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15587        image1032710974.call(args)
15588    }
15589}
15590
15591#[wasm_bindgen]
15592extern {
15593    #[wasm_bindgen(js_name = "image")]
15594    fn image2724020135(_ : & Element, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
15595}
15596
15597#[doc(hidden)]
15598impl FnOnce<(&'_ Element,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15599    type Output = ();
15600    extern "rust-call" fn call_once(self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15601        image2724020135.call(args)
15602    }
15603}
15604
15605#[doc(hidden)]
15606impl FnMut<(&'_ Element,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15607    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15608        image2724020135.call(args)
15609    }
15610}
15611
15612#[doc(hidden)]
15613impl Fn<(&'_ Element,f64,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15614    extern "rust-call" fn call(&self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15615        image2724020135.call(args)
15616    }
15617}
15618
15619#[wasm_bindgen]
15620extern {
15621    #[wasm_bindgen(js_name = "image")]
15622    fn image369804082(_ : & Element, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
15623}
15624
15625#[doc(hidden)]
15626impl FnOnce<(&'_ Element,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15627    type Output = ();
15628    extern "rust-call" fn call_once(self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15629        image369804082.call(args)
15630    }
15631}
15632
15633#[doc(hidden)]
15634impl FnMut<(&'_ Element,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15635    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15636        image369804082.call(args)
15637    }
15638}
15639
15640#[doc(hidden)]
15641impl Fn<(&'_ Element,f64,f64,f64,f64,f64,f64,)> for ImageInternalType {
15642    extern "rust-call" fn call(&self, args: (&'_ Element,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
15643        image369804082.call(args)
15644    }
15645}
15646#[doc=r##"<p>Sets the fill value for displaying images. Images can be tinted to
15647specified colors or made transparent by including an alpha value.</p>
15648<p>To apply transparency to an image without affecting its color, use
15649white as the tint color and specify an alpha value. For instance,
15650tint(255, 128) will make an image 50% transparent (assuming the default
15651alpha range of 0-255, which can be changed with <a href="#/p5/colorMode">colorMode()</a>).</p>
15652<p>The value for the gray parameter must be less than or equal to the current
15653maximum value as specified by <a href="#/p5/colorMode">colorMode()</a>. The default maximum value is
15654255.</p>
15655"##]
15656///<h2>Examples</h2>
15657///
15658
15659#[doc=r###"```rust
15660let img;
15661function preload() {
15662  img = loadImage('assets/laDefense.jpg');
15663}
15664function setup() {
15665  image(img, 0, 0);
15666  tint(0, 153, 204); // Tint blue
15667  image(img, 50, 0);
15668}
15669```"###]
15670#[doc=r###"```rust
15671let img;
15672function preload() {
15673  img = loadImage('assets/laDefense.jpg');
15674}
15675function setup() {
15676  image(img, 0, 0);
15677  tint(0, 153, 204, 126); // Tint blue and set transparency
15678  image(img, 50, 0);
15679}
15680```"###]
15681#[doc=r###"```rust
15682let img;
15683function preload() {
15684  img = loadImage('assets/laDefense.jpg');
15685}
15686function setup() {
15687  image(img, 0, 0);
15688  tint(255, 126); // Apply transparency without changing color
15689  image(img, 50, 0);
15690}
15691```"###]
15692/// <h2>Overloads</h2>
15693///
15694#[doc = r##"<code>v1</code> red or hue value relative to
15695                                the current color range
15696
15697"##]
15698///
15699///
15700#[doc = r##"<code>v2</code> green or saturation value
15701                                relative to the current color range
15702
15703"##]
15704///
15705///
15706#[doc = r##"<code>v3</code> blue or brightness value
15707                                relative to the current color range
15708
15709"##]
15710///
15711///
15712#[doc = r##"<code>alpha?</code> 
15713"##]
15714///
15715///
15716/// ---
15717///
15718///
15719#[doc = r##"<code>value</code> a color string
15720
15721"##]
15722///
15723///
15724/// ---
15725///
15726///
15727#[doc = r##"<code>gray</code> a gray value
15728
15729"##]
15730///
15731///
15732#[doc = r##"<code>alpha?</code> 
15733"##]
15734///
15735///
15736/// ---
15737///
15738///
15739#[doc = r##"<code>values</code> an array containing the red,green,blue &
15740                                and alpha components of the color
15741
15742"##]
15743///
15744///
15745/// ---
15746///
15747///
15748#[doc = r##"<code>color</code> the tint color
15749
15750"##]
15751///
15752///
15753/// ---
15754///
15755
15756pub static tint: TintInternalType = TintInternalType;
15757#[doc(hidden)]
15758pub struct TintInternalType;
15759
15760
15761#[wasm_bindgen]
15762extern {
15763    #[wasm_bindgen(js_name = "tint")]
15764    fn tint1823704709(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
15765}
15766
15767#[doc(hidden)]
15768impl FnOnce<(f64,f64,f64,f64,)> for TintInternalType {
15769    type Output = ();
15770    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
15771        tint1823704709.call(args)
15772    }
15773}
15774
15775#[doc(hidden)]
15776impl FnMut<(f64,f64,f64,f64,)> for TintInternalType {
15777    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
15778        tint1823704709.call(args)
15779    }
15780}
15781
15782#[doc(hidden)]
15783impl Fn<(f64,f64,f64,f64,)> for TintInternalType {
15784    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
15785        tint1823704709.call(args)
15786    }
15787}
15788
15789#[wasm_bindgen]
15790extern {
15791    #[wasm_bindgen(js_name = "tint")]
15792    fn tint4125068485(_ : f64, _ : f64, _ : f64, ) ;
15793}
15794
15795#[doc(hidden)]
15796impl FnOnce<(f64,f64,f64,)> for TintInternalType {
15797    type Output = ();
15798    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
15799        tint4125068485.call(args)
15800    }
15801}
15802
15803#[doc(hidden)]
15804impl FnMut<(f64,f64,f64,)> for TintInternalType {
15805    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
15806        tint4125068485.call(args)
15807    }
15808}
15809
15810#[doc(hidden)]
15811impl Fn<(f64,f64,f64,)> for TintInternalType {
15812    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
15813        tint4125068485.call(args)
15814    }
15815}
15816
15817#[wasm_bindgen]
15818extern {
15819    #[wasm_bindgen(js_name = "tint")]
15820    fn tint1456239000(_ : & str, ) ;
15821}
15822
15823#[doc(hidden)]
15824impl FnOnce<(&'_ str,)> for TintInternalType {
15825    type Output = ();
15826    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
15827        tint1456239000.call(args)
15828    }
15829}
15830
15831#[doc(hidden)]
15832impl FnMut<(&'_ str,)> for TintInternalType {
15833    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
15834        tint1456239000.call(args)
15835    }
15836}
15837
15838#[doc(hidden)]
15839impl Fn<(&'_ str,)> for TintInternalType {
15840    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
15841        tint1456239000.call(args)
15842    }
15843}
15844
15845#[wasm_bindgen]
15846extern {
15847    #[wasm_bindgen(js_name = "tint")]
15848    fn tint1625560424(_ : f64, _ : f64, ) ;
15849}
15850
15851#[doc(hidden)]
15852impl FnOnce<(f64,f64,)> for TintInternalType {
15853    type Output = ();
15854    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
15855        tint1625560424.call(args)
15856    }
15857}
15858
15859#[doc(hidden)]
15860impl FnMut<(f64,f64,)> for TintInternalType {
15861    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
15862        tint1625560424.call(args)
15863    }
15864}
15865
15866#[doc(hidden)]
15867impl Fn<(f64,f64,)> for TintInternalType {
15868    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
15869        tint1625560424.call(args)
15870    }
15871}
15872
15873#[wasm_bindgen]
15874extern {
15875    #[wasm_bindgen(js_name = "tint")]
15876    fn tint431495345(_ : f64, ) ;
15877}
15878
15879#[doc(hidden)]
15880impl FnOnce<(f64,)> for TintInternalType {
15881    type Output = ();
15882    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
15883        tint431495345.call(args)
15884    }
15885}
15886
15887#[doc(hidden)]
15888impl FnMut<(f64,)> for TintInternalType {
15889    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
15890        tint431495345.call(args)
15891    }
15892}
15893
15894#[doc(hidden)]
15895impl Fn<(f64,)> for TintInternalType {
15896    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
15897        tint431495345.call(args)
15898    }
15899}
15900
15901#[wasm_bindgen]
15902extern {
15903    #[wasm_bindgen(js_name = "tint")]
15904    fn tint2083838113(_ : & [f64], ) ;
15905}
15906
15907#[doc(hidden)]
15908impl FnOnce<(&'_ [f64],)> for TintInternalType {
15909    type Output = ();
15910    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
15911        tint2083838113.call(args)
15912    }
15913}
15914
15915#[doc(hidden)]
15916impl FnMut<(&'_ [f64],)> for TintInternalType {
15917    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
15918        tint2083838113.call(args)
15919    }
15920}
15921
15922#[doc(hidden)]
15923impl Fn<(&'_ [f64],)> for TintInternalType {
15924    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
15925        tint2083838113.call(args)
15926    }
15927}
15928
15929#[wasm_bindgen]
15930extern {
15931    #[wasm_bindgen(js_name = "tint")]
15932    fn tint1853969400(_ : & Color, ) ;
15933}
15934
15935#[doc(hidden)]
15936impl FnOnce<(&'_ Color,)> for TintInternalType {
15937    type Output = ();
15938    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
15939        tint1853969400.call(args)
15940    }
15941}
15942
15943#[doc(hidden)]
15944impl FnMut<(&'_ Color,)> for TintInternalType {
15945    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
15946        tint1853969400.call(args)
15947    }
15948}
15949
15950#[doc(hidden)]
15951impl Fn<(&'_ Color,)> for TintInternalType {
15952    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
15953        tint1853969400.call(args)
15954    }
15955}
15956#[doc=r##"<p>Removes the current fill value for displaying images and reverts to
15957displaying images with their original hues.</p>
15958"##]
15959///<h2>Examples</h2>
15960///
15961
15962#[doc=r###"```rust
15963let img;
15964function preload() {
15965  img = loadImage('assets/bricks.jpg');
15966}
15967function setup() {
15968  tint(0, 153, 204); // Tint blue
15969  image(img, 0, 0);
15970  noTint(); // Disable tint
15971  image(img, 50, 0);
15972}
15973```"###]
15974
15975pub static noTint: NoTintInternalType = NoTintInternalType;
15976#[doc(hidden)]
15977pub struct NoTintInternalType;
15978
15979
15980#[wasm_bindgen]
15981extern {
15982    #[wasm_bindgen(js_name = "noTint")]
15983    fn noTint1190616066() ;
15984}
15985
15986#[doc(hidden)]
15987impl FnOnce<()> for NoTintInternalType {
15988    type Output = ();
15989    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
15990        noTint1190616066.call(args)
15991    }
15992}
15993
15994#[doc(hidden)]
15995impl FnMut<()> for NoTintInternalType {
15996    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
15997        noTint1190616066.call(args)
15998    }
15999}
16000
16001#[doc(hidden)]
16002impl Fn<()> for NoTintInternalType {
16003    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
16004        noTint1190616066.call(args)
16005    }
16006}
16007#[doc=r##"<p>Set image mode. Modifies the location from which images are drawn by
16008changing the way in which parameters given to <a href="#/p5/image">image()</a> are interpreted.
16009The default mode is imageMode(CORNER), which interprets the second and
16010third parameters of <a href="#/p5/image">image()</a> as the upper-left corner of the image. If
16011two additional parameters are specified, they are used to set the image's
16012width and height.</p>
16013<p>imageMode(CORNERS) interprets the second and third parameters of <a href="#/p5/image">image()</a>
16014as the location of one corner, and the fourth and fifth parameters as the
16015opposite corner.</p>
16016<p>imageMode(CENTER) interprets the second and third parameters of <a href="#/p5/image">image()</a>
16017as the image's center point. If two additional parameters are specified,
16018they are used to set the image's width and height.</p>
16019"##]
16020///<h2>Examples</h2>
16021///
16022
16023#[doc=r###"```rust
16024let img;
16025function preload() {
16026  img = loadImage('assets/bricks.jpg');
16027}
16028function setup() {
16029  imageMode(CORNER);
16030  image(img, 10, 10, 50, 50);
16031}
16032```"###]
16033#[doc=r###"```rust
16034let img;
16035function preload() {
16036  img = loadImage('assets/bricks.jpg');
16037}
16038function setup() {
16039  imageMode(CORNERS);
16040  image(img, 10, 10, 90, 40);
16041}
16042```"###]
16043#[doc=r###"```rust
16044let img;
16045function preload() {
16046  img = loadImage('assets/bricks.jpg');
16047}
16048function setup() {
16049  imageMode(CENTER);
16050  image(img, 50, 50, 80, 80);
16051}
16052```"###]
16053/// <h2>Parameters</h2>
16054///
16055#[doc = r##"<code>mode</code> either CORNER, CORNERS, or CENTER
16056
16057"##]
16058///
16059
16060pub static imageMode: ImageModeInternalType = ImageModeInternalType;
16061#[doc(hidden)]
16062pub struct ImageModeInternalType;
16063
16064
16065#[wasm_bindgen]
16066extern {
16067    #[wasm_bindgen(js_name = "imageMode")]
16068    fn imageMode436145913(_ : IMAGE_MODE, ) ;
16069}
16070
16071#[doc(hidden)]
16072impl FnOnce<(IMAGE_MODE,)> for ImageModeInternalType {
16073    type Output = ();
16074    extern "rust-call" fn call_once(self, args: (IMAGE_MODE,)) -> Self::Output {
16075        imageMode436145913.call(args)
16076    }
16077}
16078
16079#[doc(hidden)]
16080impl FnMut<(IMAGE_MODE,)> for ImageModeInternalType {
16081    extern "rust-call" fn call_mut(&mut self, args: (IMAGE_MODE,)) -> Self::Output {
16082        imageMode436145913.call(args)
16083    }
16084}
16085
16086#[doc(hidden)]
16087impl Fn<(IMAGE_MODE,)> for ImageModeInternalType {
16088    extern "rust-call" fn call(&self, args: (IMAGE_MODE,)) -> Self::Output {
16089        imageMode436145913.call(args)
16090    }
16091}
16092#[doc=r##"<p>Creates a screen-reader accessible description for the canvas.
16093The first parameter should be a string with a description of the canvas.
16094The second parameter is optional. If specified, it determines how the
16095description is displayed.</p>
16096<p><code class="language-javascript">describe(text, LABEL)</code> displays
16097the description to all users as a <a
16098href="https://en.wikipedia.org/wiki/Museum_label" target="_blank">
16099tombstone or exhibit label/caption</a> in a
16100<code class="language-javascript"><div class="p5Label"></div></code>
16101adjacent to the canvas. You can style it as you wish in your CSS.</p>
16102<p><code class="language-javascript">describe(text, FALLBACK)</code> makes the
16103description accessible to screen-reader users only, in
16104<a href="https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Hit_regions_and_accessibility" target="_blank">
16105a sub DOM inside the canvas element</a>. If a second parameter is not
16106specified, by default, the description will only be available to
16107screen-reader users.</p>
16108"##]
16109///<h2>Examples</h2>
16110///
16111
16112#[doc=r###"```rust
16113describe('pink square with red heart in the bottom right corner', LABEL);
16114background('pink');
16115fill('red');
16116noStroke();
16117ellipse(67, 67, 20, 20);
16118ellipse(83, 67, 20, 20);
16119triangle(91, 73, 75, 95, 59, 73);
16120```"###]
16121#[doc=r###"```rust
16122let x = 0;
16123function draw() {
16124  if (x > 100) {
16125    x = 0;
16126  }
16127  background(220);
16128  fill(0, 255, 0);
16129  ellipse(x, 50, 40, 40);
16130  x = x + 0.1;
16131  describe('green circle at x pos ' + round(x) + ' moving to the right');
16132}
16133```"###]
16134/// <h2>Parameters</h2>
16135///
16136#[doc = r##"<code>text</code> description of the canvas
16137
16138"##]
16139///
16140///
16141#[doc = r##"<code>display?</code> either LABEL or FALLBACK (Optional)
16142
16143"##]
16144///
16145
16146pub static describe: DescribeInternalType = DescribeInternalType;
16147#[doc(hidden)]
16148pub struct DescribeInternalType;
16149
16150
16151#[wasm_bindgen]
16152extern {
16153    #[wasm_bindgen(js_name = "describe")]
16154    fn describe3975752781(_ : & str, _ : DESCRIBE_DISPLAY, ) ;
16155}
16156
16157#[doc(hidden)]
16158impl FnOnce<(&'_ str,DESCRIBE_DISPLAY,)> for DescribeInternalType {
16159    type Output = ();
16160    extern "rust-call" fn call_once(self, args: (&'_ str,DESCRIBE_DISPLAY,)) -> Self::Output {
16161        describe3975752781.call(args)
16162    }
16163}
16164
16165#[doc(hidden)]
16166impl FnMut<(&'_ str,DESCRIBE_DISPLAY,)> for DescribeInternalType {
16167    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,DESCRIBE_DISPLAY,)) -> Self::Output {
16168        describe3975752781.call(args)
16169    }
16170}
16171
16172#[doc(hidden)]
16173impl Fn<(&'_ str,DESCRIBE_DISPLAY,)> for DescribeInternalType {
16174    extern "rust-call" fn call(&self, args: (&'_ str,DESCRIBE_DISPLAY,)) -> Self::Output {
16175        describe3975752781.call(args)
16176    }
16177}
16178
16179#[wasm_bindgen]
16180extern {
16181    #[wasm_bindgen(js_name = "describe")]
16182    fn describe570787641(_ : & str, ) ;
16183}
16184
16185#[doc(hidden)]
16186impl FnOnce<(&'_ str,)> for DescribeInternalType {
16187    type Output = ();
16188    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
16189        describe570787641.call(args)
16190    }
16191}
16192
16193#[doc(hidden)]
16194impl FnMut<(&'_ str,)> for DescribeInternalType {
16195    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
16196        describe570787641.call(args)
16197    }
16198}
16199
16200#[doc(hidden)]
16201impl Fn<(&'_ str,)> for DescribeInternalType {
16202    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
16203        describe570787641.call(args)
16204    }
16205}
16206#[doc=r##"<p>This function creates a screen-reader accessible
16207description for elements —shapes or groups of shapes that create
16208meaning together— in the canvas. The first paramater should
16209be the name of the element. The second parameter should be a string
16210with a description of the element. The third parameter is optional.
16211If specified, it determines how the element description is displayed.</p>
16212<p><code class="language-javascript">describeElement(name, text, LABEL)</code>
16213displays the element description to all users as a
16214<a href="https://en.wikipedia.org/wiki/Museum_label" target="_blank">
16215tombstone or exhibit label/caption</a> in a
16216<code class="language-javascript"><div class="p5Label"></div></code>
16217adjacent to the canvas. You can style it as you wish in your CSS.</p>
16218<p><code class="language-javascript">describeElement(name, text, FALLBACK)</code>
16219makes the element description accessible to screen-reader users
16220only, in <a href="https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Hit_regions_and_accessibility" target="_blank">
16221a sub DOM inside the canvas element</a>. If a second parameter is not
16222specified, by default, the element description will only be available
16223to screen-reader users.</p>
16224"##]
16225///<h2>Examples</h2>
16226///
16227
16228#[doc=r###"```rust
16229describe('Heart and yellow circle over pink background', LABEL);
16230noStroke();
16231background('pink');
16232describeElement('Circle', 'Yellow circle in the top left corner', LABEL);
16233fill('yellow');
16234ellipse(25, 25, 40, 40);
16235describeElement('Heart', 'red heart in the bottom right corner', LABEL);
16236fill('red');
16237ellipse(66.6, 66.6, 20, 20);
16238ellipse(83.2, 66.6, 20, 20);
16239triangle(91.2, 72.6, 75, 95, 58.6, 72.6);
16240```"###]
16241/// <h2>Parameters</h2>
16242///
16243#[doc = r##"<code>name</code> name of the element
16244
16245"##]
16246///
16247///
16248#[doc = r##"<code>text</code> description of the element
16249
16250"##]
16251///
16252///
16253#[doc = r##"<code>display?</code> either LABEL or FALLBACK (Optional)
16254
16255"##]
16256///
16257
16258pub static describeElement: DescribeElementInternalType = DescribeElementInternalType;
16259#[doc(hidden)]
16260pub struct DescribeElementInternalType;
16261
16262
16263#[wasm_bindgen]
16264extern {
16265    #[wasm_bindgen(js_name = "describeElement")]
16266    fn describeElement2255475313(_ : & str, _ : & str, _ : DESCRIBE_DISPLAY, ) ;
16267}
16268
16269#[doc(hidden)]
16270impl FnOnce<(&'_ str,&'_ str,DESCRIBE_DISPLAY,)> for DescribeElementInternalType {
16271    type Output = ();
16272    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,DESCRIBE_DISPLAY,)) -> Self::Output {
16273        describeElement2255475313.call(args)
16274    }
16275}
16276
16277#[doc(hidden)]
16278impl FnMut<(&'_ str,&'_ str,DESCRIBE_DISPLAY,)> for DescribeElementInternalType {
16279    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,DESCRIBE_DISPLAY,)) -> Self::Output {
16280        describeElement2255475313.call(args)
16281    }
16282}
16283
16284#[doc(hidden)]
16285impl Fn<(&'_ str,&'_ str,DESCRIBE_DISPLAY,)> for DescribeElementInternalType {
16286    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,DESCRIBE_DISPLAY,)) -> Self::Output {
16287        describeElement2255475313.call(args)
16288    }
16289}
16290
16291#[wasm_bindgen]
16292extern {
16293    #[wasm_bindgen(js_name = "describeElement")]
16294    fn describeElement4188445144(_ : & str, _ : & str, ) ;
16295}
16296
16297#[doc(hidden)]
16298impl FnOnce<(&'_ str,&'_ str,)> for DescribeElementInternalType {
16299    type Output = ();
16300    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
16301        describeElement4188445144.call(args)
16302    }
16303}
16304
16305#[doc(hidden)]
16306impl FnMut<(&'_ str,&'_ str,)> for DescribeElementInternalType {
16307    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
16308        describeElement4188445144.call(args)
16309    }
16310}
16311
16312#[doc(hidden)]
16313impl Fn<(&'_ str,&'_ str,)> for DescribeElementInternalType {
16314    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
16315        describeElement4188445144.call(args)
16316    }
16317}
16318#[doc=r##"<p>The <a href="#/p5/mouseMoved">mouseMoved()</a> function is called every time the mouse moves and a mouse
16319button is not pressed.<br><br>
16320Browsers may have different default
16321behaviors attached to various mouse events. To prevent any default
16322behavior for this event, add "return false" to the end of the method.</p>
16323"##]
16324///<h2>Examples</h2>
16325///
16326
16327#[doc=r###"```rust
16328// Move the mouse across the page
16329// to change its value
16330
16331let value = 0;
16332function draw() {
16333  fill(value);
16334  rect(25, 25, 50, 50);
16335}
16336function mouseMoved() {
16337  value = value + 5;
16338  if (value > 255) {
16339    value = 0;
16340  }
16341}
16342```"###]
16343#[doc=r###"```rust
16344function mouseMoved() {
16345  ellipse(mouseX, mouseY, 5, 5);
16346  // prevent default
16347  return false;
16348}
16349```"###]
16350#[doc=r###"```rust
16351// returns a MouseEvent object
16352// as a callback argument
16353function mouseMoved(event) {
16354  console.log(event);
16355}
16356```"###]
16357/// <h2>Parameters</h2>
16358///
16359#[doc = r##"<code>event?</code> optional MouseEvent callback argument.
16360
16361"##]
16362///
16363
16364pub static mouseMoved: MouseMovedInternalType = MouseMovedInternalType;
16365#[doc(hidden)]
16366pub struct MouseMovedInternalType;
16367
16368
16369#[wasm_bindgen]
16370extern {
16371    #[wasm_bindgen(js_name = "mouseMoved")]
16372    fn mouseMoved34348963(_ : JsValue, ) ;
16373}
16374
16375#[doc(hidden)]
16376impl FnOnce<(JsValue,)> for MouseMovedInternalType {
16377    type Output = ();
16378    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
16379        mouseMoved34348963.call(args)
16380    }
16381}
16382
16383#[doc(hidden)]
16384impl FnMut<(JsValue,)> for MouseMovedInternalType {
16385    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
16386        mouseMoved34348963.call(args)
16387    }
16388}
16389
16390#[doc(hidden)]
16391impl Fn<(JsValue,)> for MouseMovedInternalType {
16392    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
16393        mouseMoved34348963.call(args)
16394    }
16395}
16396
16397#[wasm_bindgen]
16398extern {
16399    #[wasm_bindgen(js_name = "mouseMoved")]
16400    fn mouseMoved3189491486() ;
16401}
16402
16403#[doc(hidden)]
16404impl FnOnce<()> for MouseMovedInternalType {
16405    type Output = ();
16406    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
16407        mouseMoved3189491486.call(args)
16408    }
16409}
16410
16411#[doc(hidden)]
16412impl FnMut<()> for MouseMovedInternalType {
16413    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
16414        mouseMoved3189491486.call(args)
16415    }
16416}
16417
16418#[doc(hidden)]
16419impl Fn<()> for MouseMovedInternalType {
16420    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
16421        mouseMoved3189491486.call(args)
16422    }
16423}
16424#[doc=r##"<p>The <a href="#/p5/mouseDragged">mouseDragged()</a> function is called once every time the mouse moves and
16425a mouse button is pressed. If no <a href="#/p5/mouseDragged">mouseDragged()</a> function is defined, the
16426<a href="#/p5/touchMoved">touchMoved()</a> function will be called instead if it is defined.<br><br>
16427Browsers may have different default
16428behaviors attached to various mouse events. To prevent any default
16429behavior for this event, add "return false" to the end of the method.</p>
16430"##]
16431///<h2>Examples</h2>
16432///
16433
16434#[doc=r###"```rust
16435// Drag the mouse across the page
16436// to change its value
16437
16438let value = 0;
16439function draw() {
16440  fill(value);
16441  rect(25, 25, 50, 50);
16442}
16443function mouseDragged() {
16444  value = value + 5;
16445  if (value > 255) {
16446    value = 0;
16447  }
16448}
16449```"###]
16450#[doc=r###"```rust
16451function mouseDragged() {
16452  ellipse(mouseX, mouseY, 5, 5);
16453  // prevent default
16454  return false;
16455}
16456```"###]
16457#[doc=r###"```rust
16458// returns a MouseEvent object
16459// as a callback argument
16460function mouseDragged(event) {
16461  console.log(event);
16462}
16463```"###]
16464/// <h2>Parameters</h2>
16465///
16466#[doc = r##"<code>event?</code> optional MouseEvent callback argument.
16467
16468"##]
16469///
16470
16471pub static mouseDragged: MouseDraggedInternalType = MouseDraggedInternalType;
16472#[doc(hidden)]
16473pub struct MouseDraggedInternalType;
16474
16475
16476#[wasm_bindgen]
16477extern {
16478    #[wasm_bindgen(js_name = "mouseDragged")]
16479    fn mouseDragged2398434870(_ : JsValue, ) ;
16480}
16481
16482#[doc(hidden)]
16483impl FnOnce<(JsValue,)> for MouseDraggedInternalType {
16484    type Output = ();
16485    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
16486        mouseDragged2398434870.call(args)
16487    }
16488}
16489
16490#[doc(hidden)]
16491impl FnMut<(JsValue,)> for MouseDraggedInternalType {
16492    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
16493        mouseDragged2398434870.call(args)
16494    }
16495}
16496
16497#[doc(hidden)]
16498impl Fn<(JsValue,)> for MouseDraggedInternalType {
16499    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
16500        mouseDragged2398434870.call(args)
16501    }
16502}
16503
16504#[wasm_bindgen]
16505extern {
16506    #[wasm_bindgen(js_name = "mouseDragged")]
16507    fn mouseDragged851766547() ;
16508}
16509
16510#[doc(hidden)]
16511impl FnOnce<()> for MouseDraggedInternalType {
16512    type Output = ();
16513    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
16514        mouseDragged851766547.call(args)
16515    }
16516}
16517
16518#[doc(hidden)]
16519impl FnMut<()> for MouseDraggedInternalType {
16520    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
16521        mouseDragged851766547.call(args)
16522    }
16523}
16524
16525#[doc(hidden)]
16526impl Fn<()> for MouseDraggedInternalType {
16527    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
16528        mouseDragged851766547.call(args)
16529    }
16530}
16531#[doc=r##"<p>The <a href="#/p5/mousePressed">mousePressed()</a> function is called once after every time a mouse button
16532is pressed. The mouseButton variable (see the related reference entry)
16533can be used to determine which button has been pressed. If no
16534<a href="#/p5/mousePressed">mousePressed()</a> function is defined, the <a href="#/p5/touchStarted">touchStarted()</a> function will be
16535called instead if it is defined.<br><br>
16536Browsers may have different default
16537behaviors attached to various mouse events. To prevent any default
16538behavior for this event, add "return false" to the end of the method.</p>
16539"##]
16540///<h2>Examples</h2>
16541///
16542
16543#[doc=r###"```rust
16544// Click within the image to change
16545// the value of the rectangle
16546
16547let value = 0;
16548function draw() {
16549  fill(value);
16550  rect(25, 25, 50, 50);
16551}
16552function mousePressed() {
16553  if (value === 0) {
16554    value = 255;
16555  } else {
16556    value = 0;
16557  }
16558}
16559```"###]
16560#[doc=r###"```rust
16561function mousePressed() {
16562  ellipse(mouseX, mouseY, 5, 5);
16563  // prevent default
16564  return false;
16565}
16566```"###]
16567#[doc=r###"```rust
16568// returns a MouseEvent object
16569// as a callback argument
16570function mousePressed(event) {
16571  console.log(event);
16572}
16573```"###]
16574/// <h2>Parameters</h2>
16575///
16576#[doc = r##"<code>event?</code> optional MouseEvent callback argument.
16577
16578"##]
16579///
16580
16581pub static mousePressed: MousePressedInternalType = MousePressedInternalType;
16582#[doc(hidden)]
16583pub struct MousePressedInternalType;
16584
16585
16586#[wasm_bindgen]
16587extern {
16588    #[wasm_bindgen(js_name = "mousePressed")]
16589    fn mousePressed2975566909(_ : JsValue, ) ;
16590}
16591
16592#[doc(hidden)]
16593impl FnOnce<(JsValue,)> for MousePressedInternalType {
16594    type Output = ();
16595    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
16596        mousePressed2975566909.call(args)
16597    }
16598}
16599
16600#[doc(hidden)]
16601impl FnMut<(JsValue,)> for MousePressedInternalType {
16602    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
16603        mousePressed2975566909.call(args)
16604    }
16605}
16606
16607#[doc(hidden)]
16608impl Fn<(JsValue,)> for MousePressedInternalType {
16609    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
16610        mousePressed2975566909.call(args)
16611    }
16612}
16613
16614#[wasm_bindgen]
16615extern {
16616    #[wasm_bindgen(js_name = "mousePressed")]
16617    fn mousePressed1725263012() ;
16618}
16619
16620#[doc(hidden)]
16621impl FnOnce<()> for MousePressedInternalType {
16622    type Output = ();
16623    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
16624        mousePressed1725263012.call(args)
16625    }
16626}
16627
16628#[doc(hidden)]
16629impl FnMut<()> for MousePressedInternalType {
16630    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
16631        mousePressed1725263012.call(args)
16632    }
16633}
16634
16635#[doc(hidden)]
16636impl Fn<()> for MousePressedInternalType {
16637    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
16638        mousePressed1725263012.call(args)
16639    }
16640}
16641#[doc=r##"<p>The <a href="#/p5/mouseReleased">mouseReleased()</a> function is called every time a mouse button is
16642released. If no <a href="#/p5/mouseReleased">mouseReleased()</a> function is defined, the <a href="#/p5/touchEnded">touchEnded()</a>
16643function will be called instead if it is defined.<br><br>
16644Browsers may have different default
16645behaviors attached to various mouse events. To prevent any default
16646behavior for this event, add "return false" to the end of the method.</p>
16647"##]
16648///<h2>Examples</h2>
16649///
16650
16651#[doc=r###"```rust
16652// Click within the image to change
16653// the value of the rectangle
16654// after the mouse has been clicked
16655
16656let value = 0;
16657function draw() {
16658  fill(value);
16659  rect(25, 25, 50, 50);
16660}
16661function mouseReleased() {
16662  if (value === 0) {
16663    value = 255;
16664  } else {
16665    value = 0;
16666  }
16667}
16668```"###]
16669#[doc=r###"```rust
16670function mouseReleased() {
16671  ellipse(mouseX, mouseY, 5, 5);
16672  // prevent default
16673  return false;
16674}
16675```"###]
16676#[doc=r###"```rust
16677// returns a MouseEvent object
16678// as a callback argument
16679function mouseReleased(event) {
16680  console.log(event);
16681}
16682```"###]
16683/// <h2>Parameters</h2>
16684///
16685#[doc = r##"<code>event?</code> optional MouseEvent callback argument.
16686
16687"##]
16688///
16689
16690pub static mouseReleased: MouseReleasedInternalType = MouseReleasedInternalType;
16691#[doc(hidden)]
16692pub struct MouseReleasedInternalType;
16693
16694
16695#[wasm_bindgen]
16696extern {
16697    #[wasm_bindgen(js_name = "mouseReleased")]
16698    fn mouseReleased1391447297(_ : JsValue, ) ;
16699}
16700
16701#[doc(hidden)]
16702impl FnOnce<(JsValue,)> for MouseReleasedInternalType {
16703    type Output = ();
16704    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
16705        mouseReleased1391447297.call(args)
16706    }
16707}
16708
16709#[doc(hidden)]
16710impl FnMut<(JsValue,)> for MouseReleasedInternalType {
16711    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
16712        mouseReleased1391447297.call(args)
16713    }
16714}
16715
16716#[doc(hidden)]
16717impl Fn<(JsValue,)> for MouseReleasedInternalType {
16718    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
16719        mouseReleased1391447297.call(args)
16720    }
16721}
16722
16723#[wasm_bindgen]
16724extern {
16725    #[wasm_bindgen(js_name = "mouseReleased")]
16726    fn mouseReleased2020738629() ;
16727}
16728
16729#[doc(hidden)]
16730impl FnOnce<()> for MouseReleasedInternalType {
16731    type Output = ();
16732    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
16733        mouseReleased2020738629.call(args)
16734    }
16735}
16736
16737#[doc(hidden)]
16738impl FnMut<()> for MouseReleasedInternalType {
16739    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
16740        mouseReleased2020738629.call(args)
16741    }
16742}
16743
16744#[doc(hidden)]
16745impl Fn<()> for MouseReleasedInternalType {
16746    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
16747        mouseReleased2020738629.call(args)
16748    }
16749}
16750#[doc=r##"<p>The <a href="#/p5/mouseClicked">mouseClicked()</a> function is called once after a mouse button has been
16751pressed and then released.<br><br>
16752Browsers handle clicks differently, so this function is only guaranteed to be
16753run when the left mouse button is clicked. To handle other mouse buttons
16754being pressed or released, see <a href="#/p5/mousePressed">mousePressed()</a> or <a href="#/p5/mouseReleased">mouseReleased()</a>.<br><br>
16755Browsers may have different default
16756behaviors attached to various mouse events. To prevent any default
16757behavior for this event, add "return false" to the end of the method.</p>
16758"##]
16759///<h2>Examples</h2>
16760///
16761
16762#[doc=r###"```rust
16763// Click within the image to change
16764// the value of the rectangle
16765// after the mouse has been clicked
16766
16767let value = 0;
16768function draw() {
16769  fill(value);
16770  rect(25, 25, 50, 50);
16771}
16772
16773function mouseClicked() {
16774  if (value === 0) {
16775    value = 255;
16776  } else {
16777    value = 0;
16778  }
16779}
16780```"###]
16781#[doc=r###"```rust
16782function mouseClicked() {
16783  ellipse(mouseX, mouseY, 5, 5);
16784  // prevent default
16785  return false;
16786}
16787```"###]
16788#[doc=r###"```rust
16789// returns a MouseEvent object
16790// as a callback argument
16791function mouseClicked(event) {
16792  console.log(event);
16793}
16794```"###]
16795/// <h2>Parameters</h2>
16796///
16797#[doc = r##"<code>event?</code> optional MouseEvent callback argument.
16798
16799"##]
16800///
16801
16802pub static mouseClicked: MouseClickedInternalType = MouseClickedInternalType;
16803#[doc(hidden)]
16804pub struct MouseClickedInternalType;
16805
16806
16807#[wasm_bindgen]
16808extern {
16809    #[wasm_bindgen(js_name = "mouseClicked")]
16810    fn mouseClicked1219075265(_ : JsValue, ) ;
16811}
16812
16813#[doc(hidden)]
16814impl FnOnce<(JsValue,)> for MouseClickedInternalType {
16815    type Output = ();
16816    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
16817        mouseClicked1219075265.call(args)
16818    }
16819}
16820
16821#[doc(hidden)]
16822impl FnMut<(JsValue,)> for MouseClickedInternalType {
16823    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
16824        mouseClicked1219075265.call(args)
16825    }
16826}
16827
16828#[doc(hidden)]
16829impl Fn<(JsValue,)> for MouseClickedInternalType {
16830    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
16831        mouseClicked1219075265.call(args)
16832    }
16833}
16834
16835#[wasm_bindgen]
16836extern {
16837    #[wasm_bindgen(js_name = "mouseClicked")]
16838    fn mouseClicked4009921882() ;
16839}
16840
16841#[doc(hidden)]
16842impl FnOnce<()> for MouseClickedInternalType {
16843    type Output = ();
16844    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
16845        mouseClicked4009921882.call(args)
16846    }
16847}
16848
16849#[doc(hidden)]
16850impl FnMut<()> for MouseClickedInternalType {
16851    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
16852        mouseClicked4009921882.call(args)
16853    }
16854}
16855
16856#[doc(hidden)]
16857impl Fn<()> for MouseClickedInternalType {
16858    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
16859        mouseClicked4009921882.call(args)
16860    }
16861}
16862#[doc=r##"<p>The <a href="#/p5/doubleClicked">doubleClicked()</a> function is executed every time a event
16863listener has detected a dblclick event which is a part of the
16864DOM L3 specification. The doubleClicked event is fired when a
16865pointing device button (usually a mouse's primary button)
16866is clicked twice on a single element. For more info on the
16867dblclick event refer to mozilla's documentation here:
16868<a href="https://developer.mozilla.org/en-US/docs/Web/Events/dblclick">https://developer.mozilla.org/en-US/docs/Web/Events/dblclick</a></p>
16869"##]
16870///<h2>Examples</h2>
16871///
16872
16873#[doc=r###"```rust
16874// Click within the image to change
16875// the value of the rectangle
16876// after the mouse has been double clicked
16877
16878let value = 0;
16879function draw() {
16880  fill(value);
16881  rect(25, 25, 50, 50);
16882}
16883
16884function doubleClicked() {
16885  if (value === 0) {
16886    value = 255;
16887  } else {
16888    value = 0;
16889  }
16890}
16891```"###]
16892#[doc=r###"```rust
16893function doubleClicked() {
16894  ellipse(mouseX, mouseY, 5, 5);
16895  // prevent default
16896  return false;
16897}
16898```"###]
16899#[doc=r###"```rust
16900// returns a MouseEvent object
16901// as a callback argument
16902function doubleClicked(event) {
16903  console.log(event);
16904}
16905```"###]
16906/// <h2>Parameters</h2>
16907///
16908#[doc = r##"<code>event?</code> optional MouseEvent callback argument.
16909
16910"##]
16911///
16912
16913pub static doubleClicked: DoubleClickedInternalType = DoubleClickedInternalType;
16914#[doc(hidden)]
16915pub struct DoubleClickedInternalType;
16916
16917
16918#[wasm_bindgen]
16919extern {
16920    #[wasm_bindgen(js_name = "doubleClicked")]
16921    fn doubleClicked3928396484(_ : JsValue, ) ;
16922}
16923
16924#[doc(hidden)]
16925impl FnOnce<(JsValue,)> for DoubleClickedInternalType {
16926    type Output = ();
16927    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
16928        doubleClicked3928396484.call(args)
16929    }
16930}
16931
16932#[doc(hidden)]
16933impl FnMut<(JsValue,)> for DoubleClickedInternalType {
16934    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
16935        doubleClicked3928396484.call(args)
16936    }
16937}
16938
16939#[doc(hidden)]
16940impl Fn<(JsValue,)> for DoubleClickedInternalType {
16941    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
16942        doubleClicked3928396484.call(args)
16943    }
16944}
16945
16946#[wasm_bindgen]
16947extern {
16948    #[wasm_bindgen(js_name = "doubleClicked")]
16949    fn doubleClicked3119985116() ;
16950}
16951
16952#[doc(hidden)]
16953impl FnOnce<()> for DoubleClickedInternalType {
16954    type Output = ();
16955    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
16956        doubleClicked3119985116.call(args)
16957    }
16958}
16959
16960#[doc(hidden)]
16961impl FnMut<()> for DoubleClickedInternalType {
16962    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
16963        doubleClicked3119985116.call(args)
16964    }
16965}
16966
16967#[doc(hidden)]
16968impl Fn<()> for DoubleClickedInternalType {
16969    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
16970        doubleClicked3119985116.call(args)
16971    }
16972}
16973#[doc=r##"<p>The function <a href="#/p5/mouseWheel">mouseWheel()</a> is executed every time a vertical mouse wheel
16974event is detected either triggered by an actual mouse wheel or by a
16975touchpad.<br><br>
16976The event.delta property returns the amount the mouse wheel
16977have scrolled. The values can be positive or negative depending on the
16978scroll direction (on OS X with "natural" scrolling enabled, the signs
16979are inverted).<br><br>
16980Browsers may have different default behaviors attached to various
16981mouse events. To prevent any default behavior for this event, add
16982"return false" to the end of the method.<br><br>
16983Due to the current support of the "wheel" event on Safari, the function
16984may only work as expected if "return false" is included while using Safari.</p>
16985"##]
16986///<h2>Examples</h2>
16987///
16988
16989#[doc=r###"```rust
16990let pos = 25;
16991
16992function draw() {
16993  background(237, 34, 93);
16994  fill(0);
16995  rect(25, pos, 50, 50);
16996}
16997
16998function mouseWheel(event) {
16999  print(event.delta);
17000  //move the square according to the vertical scroll amount
17001  pos += event.delta;
17002  //uncomment to block page scrolling
17003  //return false;
17004}
17005```"###]
17006/// <h2>Parameters</h2>
17007///
17008#[doc = r##"<code>event?</code> optional WheelEvent callback argument.
17009
17010"##]
17011///
17012
17013pub static mouseWheel: MouseWheelInternalType = MouseWheelInternalType;
17014#[doc(hidden)]
17015pub struct MouseWheelInternalType;
17016
17017
17018#[wasm_bindgen]
17019extern {
17020    #[wasm_bindgen(js_name = "mouseWheel")]
17021    fn mouseWheel1795414948(_ : JsValue, ) ;
17022}
17023
17024#[doc(hidden)]
17025impl FnOnce<(JsValue,)> for MouseWheelInternalType {
17026    type Output = ();
17027    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
17028        mouseWheel1795414948.call(args)
17029    }
17030}
17031
17032#[doc(hidden)]
17033impl FnMut<(JsValue,)> for MouseWheelInternalType {
17034    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
17035        mouseWheel1795414948.call(args)
17036    }
17037}
17038
17039#[doc(hidden)]
17040impl Fn<(JsValue,)> for MouseWheelInternalType {
17041    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
17042        mouseWheel1795414948.call(args)
17043    }
17044}
17045
17046#[wasm_bindgen]
17047extern {
17048    #[wasm_bindgen(js_name = "mouseWheel")]
17049    fn mouseWheel480703797() ;
17050}
17051
17052#[doc(hidden)]
17053impl FnOnce<()> for MouseWheelInternalType {
17054    type Output = ();
17055    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
17056        mouseWheel480703797.call(args)
17057    }
17058}
17059
17060#[doc(hidden)]
17061impl FnMut<()> for MouseWheelInternalType {
17062    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
17063        mouseWheel480703797.call(args)
17064    }
17065}
17066
17067#[doc(hidden)]
17068impl Fn<()> for MouseWheelInternalType {
17069    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
17070        mouseWheel480703797.call(args)
17071    }
17072}
17073#[doc=r##"<p>The function <a href="#/p5/requestPointerLock">requestPointerLock()</a>
17074locks the pointer to its current position and makes it invisible.
17075Use <a href="#/p5/movedX">movedX</a> and <a href="#/p5/movedY">movedY</a> to get the difference the mouse was moved since
17076the last call of draw.
17077Note that not all browsers support this feature.
17078This enables you to create experiences that aren't limited by the mouse moving out of the screen
17079even if it is repeatedly moved into one direction.
17080For example, a first person perspective experience.</p>
17081"##]
17082///<h2>Examples</h2>
17083///
17084
17085#[doc=r###"```rust
17086let cam;
17087function setup() {
17088  createCanvas(100, 100, WEBGL);
17089  requestPointerLock();
17090  cam = createCamera();
17091}
17092
17093function draw() {
17094  background(255);
17095  cam.pan(-movedX * 0.001);
17096  cam.tilt(movedY * 0.001);
17097  sphere(25);
17098}
17099```"###]
17100
17101pub static requestPointerLock: RequestPointerLockInternalType = RequestPointerLockInternalType;
17102#[doc(hidden)]
17103pub struct RequestPointerLockInternalType;
17104
17105
17106#[wasm_bindgen]
17107extern {
17108    #[wasm_bindgen(js_name = "requestPointerLock")]
17109    fn requestPointerLock3697882030() ;
17110}
17111
17112#[doc(hidden)]
17113impl FnOnce<()> for RequestPointerLockInternalType {
17114    type Output = ();
17115    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
17116        requestPointerLock3697882030.call(args)
17117    }
17118}
17119
17120#[doc(hidden)]
17121impl FnMut<()> for RequestPointerLockInternalType {
17122    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
17123        requestPointerLock3697882030.call(args)
17124    }
17125}
17126
17127#[doc(hidden)]
17128impl Fn<()> for RequestPointerLockInternalType {
17129    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
17130        requestPointerLock3697882030.call(args)
17131    }
17132}
17133#[doc=r##"<p>The function <a href="#/p5/exitPointerLock">exitPointerLock()</a>
17134exits a previously triggered <a href="#/p5/requestPointerLock">pointer Lock</a>
17135for example to make ui elements usable etc</p>
17136"##]
17137///<h2>Examples</h2>
17138///
17139
17140#[doc=r###"```rust
17141//click the canvas to lock the pointer
17142//click again to exit (otherwise escape)
17143let locked = false;
17144function draw() {
17145  background(237, 34, 93);
17146}
17147function mouseClicked() {
17148  if (!locked) {
17149    locked = true;
17150    requestPointerLock();
17151  } else {
17152    exitPointerLock();
17153    locked = false;
17154  }
17155}
17156```"###]
17157
17158pub static exitPointerLock: ExitPointerLockInternalType = ExitPointerLockInternalType;
17159#[doc(hidden)]
17160pub struct ExitPointerLockInternalType;
17161
17162
17163#[wasm_bindgen]
17164extern {
17165    #[wasm_bindgen(js_name = "exitPointerLock")]
17166    fn exitPointerLock2483421414() ;
17167}
17168
17169#[doc(hidden)]
17170impl FnOnce<()> for ExitPointerLockInternalType {
17171    type Output = ();
17172    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
17173        exitPointerLock2483421414.call(args)
17174    }
17175}
17176
17177#[doc(hidden)]
17178impl FnMut<()> for ExitPointerLockInternalType {
17179    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
17180        exitPointerLock2483421414.call(args)
17181    }
17182}
17183
17184#[doc(hidden)]
17185impl Fn<()> for ExitPointerLockInternalType {
17186    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
17187        exitPointerLock2483421414.call(args)
17188    }
17189}
17190#[doc=r##"<p>Creates a new instance of p5.StringDict using the key-value pair
17191 or the object you provide.</p>
17192"##]
17193///<h2>Examples</h2>
17194///
17195
17196#[doc=r###"```rust
17197 function setup() {
17198   let myDictionary = createStringDict('p5', 'js');
17199   print(myDictionary.hasKey('p5')); // logs true to console
17200  let anotherDictionary = createStringDict({ happy: 'coding' });
17201   print(anotherDictionary.hasKey('happy')); // logs true to console
17202 }
17203 ```"###]
17204/// <h2>Overloads</h2>
17205///
17206#[doc = r##"<code>key</code> 
17207"##]
17208///
17209///
17210#[doc = r##"<code>value</code> 
17211"##]
17212///
17213///
17214/// ---
17215///
17216///
17217#[doc = r##"<code>object</code> object
17218
17219"##]
17220///
17221///
17222/// ---
17223///
17224
17225pub static createStringDict: CreateStringDictInternalType = CreateStringDictInternalType;
17226#[doc(hidden)]
17227pub struct CreateStringDictInternalType;
17228
17229
17230#[wasm_bindgen]
17231extern {
17232    #[wasm_bindgen(js_name = "createStringDict")]
17233    fn createStringDict3270337288(_ : & str, _ : & str, ) ->  StringDict;
17234}
17235
17236#[doc(hidden)]
17237impl FnOnce<(&'_ str,&'_ str,)> for CreateStringDictInternalType {
17238    type Output =  StringDict;
17239    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
17240        createStringDict3270337288.call(args)
17241    }
17242}
17243
17244#[doc(hidden)]
17245impl FnMut<(&'_ str,&'_ str,)> for CreateStringDictInternalType {
17246    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
17247        createStringDict3270337288.call(args)
17248    }
17249}
17250
17251#[doc(hidden)]
17252impl Fn<(&'_ str,&'_ str,)> for CreateStringDictInternalType {
17253    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
17254        createStringDict3270337288.call(args)
17255    }
17256}
17257
17258#[wasm_bindgen]
17259extern {
17260    #[wasm_bindgen(js_name = "createStringDict")]
17261    fn createStringDict3958153503(_ : JsValue, ) ->  StringDict;
17262}
17263
17264#[doc(hidden)]
17265impl FnOnce<(JsValue,)> for CreateStringDictInternalType {
17266    type Output =  StringDict;
17267    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
17268        createStringDict3958153503.call(args)
17269    }
17270}
17271
17272#[doc(hidden)]
17273impl FnMut<(JsValue,)> for CreateStringDictInternalType {
17274    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
17275        createStringDict3958153503.call(args)
17276    }
17277}
17278
17279#[doc(hidden)]
17280impl Fn<(JsValue,)> for CreateStringDictInternalType {
17281    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
17282        createStringDict3958153503.call(args)
17283    }
17284}
17285#[doc=r##"<p>Creates a new instance of <a href="#/p5.NumberDict">p5.NumberDict</a> using the key-value pair
17286 or object you provide.</p>
17287"##]
17288///<h2>Examples</h2>
17289///
17290
17291#[doc=r###"```rust
17292 function setup() {
17293   let myDictionary = createNumberDict(100, 42);
17294   print(myDictionary.hasKey(100)); // logs true to console
17295  let anotherDictionary = createNumberDict({ 200: 84 });
17296   print(anotherDictionary.hasKey(200)); // logs true to console
17297 }
17298 ```"###]
17299/// <h2>Overloads</h2>
17300///
17301#[doc = r##"<code>key</code> 
17302"##]
17303///
17304///
17305#[doc = r##"<code>value</code> 
17306"##]
17307///
17308///
17309/// ---
17310///
17311///
17312#[doc = r##"<code>object</code> object
17313
17314"##]
17315///
17316///
17317/// ---
17318///
17319
17320pub static createNumberDict: CreateNumberDictInternalType = CreateNumberDictInternalType;
17321#[doc(hidden)]
17322pub struct CreateNumberDictInternalType;
17323
17324
17325#[wasm_bindgen]
17326extern {
17327    #[wasm_bindgen(js_name = "createNumberDict")]
17328    fn createNumberDict959845598(_ : f64, _ : f64, ) ->  NumberDict;
17329}
17330
17331#[doc(hidden)]
17332impl FnOnce<(f64,f64,)> for CreateNumberDictInternalType {
17333    type Output =  NumberDict;
17334    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
17335        createNumberDict959845598.call(args)
17336    }
17337}
17338
17339#[doc(hidden)]
17340impl FnMut<(f64,f64,)> for CreateNumberDictInternalType {
17341    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
17342        createNumberDict959845598.call(args)
17343    }
17344}
17345
17346#[doc(hidden)]
17347impl Fn<(f64,f64,)> for CreateNumberDictInternalType {
17348    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
17349        createNumberDict959845598.call(args)
17350    }
17351}
17352
17353#[wasm_bindgen]
17354extern {
17355    #[wasm_bindgen(js_name = "createNumberDict")]
17356    fn createNumberDict4195567845(_ : JsValue, ) ->  NumberDict;
17357}
17358
17359#[doc(hidden)]
17360impl FnOnce<(JsValue,)> for CreateNumberDictInternalType {
17361    type Output =  NumberDict;
17362    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
17363        createNumberDict4195567845.call(args)
17364    }
17365}
17366
17367#[doc(hidden)]
17368impl FnMut<(JsValue,)> for CreateNumberDictInternalType {
17369    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
17370        createNumberDict4195567845.call(args)
17371    }
17372}
17373
17374#[doc(hidden)]
17375impl Fn<(JsValue,)> for CreateNumberDictInternalType {
17376    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
17377        createNumberDict4195567845.call(args)
17378    }
17379}
17380#[doc=r##"<p>Copies a region of pixels from one image to another, using a specified
17381blend mode to do the operation.</p>
17382"##]
17383///<h2>Examples</h2>
17384///
17385
17386#[doc=r###"```rust
17387let img0;
17388let img1;
17389
17390function preload() {
17391  img0 = loadImage('assets/rockies.jpg');
17392  img1 = loadImage('assets/bricks_third.jpg');
17393}
17394
17395function setup() {
17396  background(img0);
17397  image(img1, 0, 0);
17398  blend(img1, 0, 0, 33, 100, 67, 0, 33, 100, LIGHTEST);
17399}
17400```"###]
17401#[doc=r###"```rust
17402let img0;
17403let img1;
17404
17405function preload() {
17406  img0 = loadImage('assets/rockies.jpg');
17407  img1 = loadImage('assets/bricks_third.jpg');
17408}
17409
17410function setup() {
17411  background(img0);
17412  image(img1, 0, 0);
17413  blend(img1, 0, 0, 33, 100, 67, 0, 33, 100, DARKEST);
17414}
17415```"###]
17416#[doc=r###"```rust
17417let img0;
17418let img1;
17419
17420function preload() {
17421  img0 = loadImage('assets/rockies.jpg');
17422  img1 = loadImage('assets/bricks_third.jpg');
17423}
17424
17425function setup() {
17426  background(img0);
17427  image(img1, 0, 0);
17428  blend(img1, 0, 0, 33, 100, 67, 0, 33, 100, ADD);
17429}
17430```"###]
17431/// <h2>Overloads</h2>
17432///
17433#[doc = r##"<code>srcImage</code> source image
17434
17435"##]
17436///
17437///
17438#[doc = r##"<code>sx</code> X coordinate of the source's upper left corner
17439
17440"##]
17441///
17442///
17443#[doc = r##"<code>sy</code> Y coordinate of the source's upper left corner
17444
17445"##]
17446///
17447///
17448#[doc = r##"<code>sw</code> source image width
17449
17450"##]
17451///
17452///
17453#[doc = r##"<code>sh</code> source image height
17454
17455"##]
17456///
17457///
17458#[doc = r##"<code>dx</code> X coordinate of the destination's upper left corner
17459
17460"##]
17461///
17462///
17463#[doc = r##"<code>dy</code> Y coordinate of the destination's upper left corner
17464
17465"##]
17466///
17467///
17468#[doc = r##"<code>dw</code> destination image width
17469
17470"##]
17471///
17472///
17473#[doc = r##"<code>dh</code> destination image height
17474
17475"##]
17476///
17477///
17478#[doc = r##"<code>blendMode</code> the blend mode. either
17479    BLEND, DARKEST, LIGHTEST, DIFFERENCE,
17480    MULTIPLY, EXCLUSION, SCREEN, REPLACE, OVERLAY, HARD_LIGHT,
17481    SOFT_LIGHT, DODGE, BURN, ADD or NORMAL.
17482
17483"##]
17484///
17485///
17486/// ---
17487///
17488///
17489#[doc = r##"<code>sx</code> X coordinate of the source's upper left corner
17490
17491"##]
17492///
17493///
17494#[doc = r##"<code>sy</code> Y coordinate of the source's upper left corner
17495
17496"##]
17497///
17498///
17499#[doc = r##"<code>sw</code> source image width
17500
17501"##]
17502///
17503///
17504#[doc = r##"<code>sh</code> source image height
17505
17506"##]
17507///
17508///
17509#[doc = r##"<code>dx</code> X coordinate of the destination's upper left corner
17510
17511"##]
17512///
17513///
17514#[doc = r##"<code>dy</code> Y coordinate of the destination's upper left corner
17515
17516"##]
17517///
17518///
17519#[doc = r##"<code>dw</code> destination image width
17520
17521"##]
17522///
17523///
17524#[doc = r##"<code>dh</code> destination image height
17525
17526"##]
17527///
17528///
17529#[doc = r##"<code>blendMode</code> the blend mode. either
17530    BLEND, DARKEST, LIGHTEST, DIFFERENCE,
17531    MULTIPLY, EXCLUSION, SCREEN, REPLACE, OVERLAY, HARD_LIGHT,
17532    SOFT_LIGHT, DODGE, BURN, ADD or NORMAL.
17533
17534"##]
17535///
17536///
17537/// ---
17538///
17539
17540pub static blend: BlendInternalType = BlendInternalType;
17541#[doc(hidden)]
17542pub struct BlendInternalType;
17543
17544
17545#[wasm_bindgen]
17546extern {
17547    #[wasm_bindgen(js_name = "blend")]
17548    fn blend2839558456(_ : & Image, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : BLEND_MODE, ) ;
17549}
17550
17551#[doc(hidden)]
17552impl FnOnce<(&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,BLEND_MODE,)> for BlendInternalType {
17553    type Output = ();
17554    extern "rust-call" fn call_once(self, args: (&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,BLEND_MODE,)) -> Self::Output {
17555        blend2839558456.call(args)
17556    }
17557}
17558
17559#[doc(hidden)]
17560impl FnMut<(&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,BLEND_MODE,)> for BlendInternalType {
17561    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,BLEND_MODE,)) -> Self::Output {
17562        blend2839558456.call(args)
17563    }
17564}
17565
17566#[doc(hidden)]
17567impl Fn<(&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,BLEND_MODE,)> for BlendInternalType {
17568    extern "rust-call" fn call(&self, args: (&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,BLEND_MODE,)) -> Self::Output {
17569        blend2839558456.call(args)
17570    }
17571}
17572
17573#[wasm_bindgen]
17574extern {
17575    #[wasm_bindgen(js_name = "blend")]
17576    fn blend2866186324(_ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : Constant, ) ;
17577}
17578
17579#[doc(hidden)]
17580impl FnOnce<(i32,i32,i32,i32,i32,i32,i32,i32,Constant,)> for BlendInternalType {
17581    type Output = ();
17582    extern "rust-call" fn call_once(self, args: (i32,i32,i32,i32,i32,i32,i32,i32,Constant,)) -> Self::Output {
17583        blend2866186324.call(args)
17584    }
17585}
17586
17587#[doc(hidden)]
17588impl FnMut<(i32,i32,i32,i32,i32,i32,i32,i32,Constant,)> for BlendInternalType {
17589    extern "rust-call" fn call_mut(&mut self, args: (i32,i32,i32,i32,i32,i32,i32,i32,Constant,)) -> Self::Output {
17590        blend2866186324.call(args)
17591    }
17592}
17593
17594#[doc(hidden)]
17595impl Fn<(i32,i32,i32,i32,i32,i32,i32,i32,Constant,)> for BlendInternalType {
17596    extern "rust-call" fn call(&self, args: (i32,i32,i32,i32,i32,i32,i32,i32,Constant,)) -> Self::Output {
17597        blend2866186324.call(args)
17598    }
17599}
17600#[doc=r##"<p>Copies a region of the canvas to another region of the canvas
17601and copies a region of pixels from an image used as the srcImg parameter
17602into the canvas srcImage is specified this is used as the source. If
17603the source and destination regions aren't the same size, it will
17604automatically resize source pixels to fit the specified
17605target region.</p>
17606"##]
17607///<h2>Examples</h2>
17608///
17609
17610#[doc=r###"```rust
17611let img;
17612
17613function preload() {
17614  img = loadImage('assets/rockies.jpg');
17615}
17616
17617function setup() {
17618  background(img);
17619  copy(img, 7, 22, 10, 10, 35, 25, 50, 50);
17620  stroke(255);
17621  noFill();
17622  // Rectangle shows area being copied
17623  rect(7, 22, 10, 10);
17624}
17625```"###]
17626/// <h2>Overloads</h2>
17627///
17628#[doc = r##"<code>srcImage</code> source image
17629
17630"##]
17631///
17632///
17633#[doc = r##"<code>sx</code> X coordinate of the source's upper left corner
17634
17635"##]
17636///
17637///
17638#[doc = r##"<code>sy</code> Y coordinate of the source's upper left corner
17639
17640"##]
17641///
17642///
17643#[doc = r##"<code>sw</code> source image width
17644
17645"##]
17646///
17647///
17648#[doc = r##"<code>sh</code> source image height
17649
17650"##]
17651///
17652///
17653#[doc = r##"<code>dx</code> X coordinate of the destination's upper left corner
17654
17655"##]
17656///
17657///
17658#[doc = r##"<code>dy</code> Y coordinate of the destination's upper left corner
17659
17660"##]
17661///
17662///
17663#[doc = r##"<code>dw</code> destination image width
17664
17665"##]
17666///
17667///
17668#[doc = r##"<code>dh</code> destination image height
17669
17670"##]
17671///
17672///
17673/// ---
17674///
17675///
17676#[doc = r##"<code>sx</code> X coordinate of the source's upper left corner
17677
17678"##]
17679///
17680///
17681#[doc = r##"<code>sy</code> Y coordinate of the source's upper left corner
17682
17683"##]
17684///
17685///
17686#[doc = r##"<code>sw</code> source image width
17687
17688"##]
17689///
17690///
17691#[doc = r##"<code>sh</code> source image height
17692
17693"##]
17694///
17695///
17696#[doc = r##"<code>dx</code> X coordinate of the destination's upper left corner
17697
17698"##]
17699///
17700///
17701#[doc = r##"<code>dy</code> Y coordinate of the destination's upper left corner
17702
17703"##]
17704///
17705///
17706#[doc = r##"<code>dw</code> destination image width
17707
17708"##]
17709///
17710///
17711#[doc = r##"<code>dh</code> destination image height
17712
17713"##]
17714///
17715///
17716/// ---
17717///
17718
17719pub static copy: CopyInternalType = CopyInternalType;
17720#[doc(hidden)]
17721pub struct CopyInternalType;
17722
17723
17724#[wasm_bindgen]
17725extern {
17726    #[wasm_bindgen(js_name = "copy")]
17727    fn copy601113704(_ : & Image, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, ) ;
17728}
17729
17730#[doc(hidden)]
17731impl FnOnce<(&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17732    type Output = ();
17733    extern "rust-call" fn call_once(self, args: (&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17734        copy601113704.call(args)
17735    }
17736}
17737
17738#[doc(hidden)]
17739impl FnMut<(&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17740    extern "rust-call" fn call_mut(&mut self, args: (&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17741        copy601113704.call(args)
17742    }
17743}
17744
17745#[doc(hidden)]
17746impl Fn<(&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17747    extern "rust-call" fn call(&self, args: (&'_ Image,i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17748        copy601113704.call(args)
17749    }
17750}
17751
17752#[wasm_bindgen]
17753extern {
17754    #[wasm_bindgen(js_name = "copy")]
17755    fn copy2219902100(_ : & Element, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, ) ;
17756}
17757
17758#[doc(hidden)]
17759impl FnOnce<(&'_ Element,i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17760    type Output = ();
17761    extern "rust-call" fn call_once(self, args: (&'_ Element,i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17762        copy2219902100.call(args)
17763    }
17764}
17765
17766#[doc(hidden)]
17767impl FnMut<(&'_ Element,i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17768    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17769        copy2219902100.call(args)
17770    }
17771}
17772
17773#[doc(hidden)]
17774impl Fn<(&'_ Element,i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17775    extern "rust-call" fn call(&self, args: (&'_ Element,i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17776        copy2219902100.call(args)
17777    }
17778}
17779
17780#[wasm_bindgen]
17781extern {
17782    #[wasm_bindgen(js_name = "copy")]
17783    fn copy783741524(_ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, _ : i32, ) ;
17784}
17785
17786#[doc(hidden)]
17787impl FnOnce<(i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17788    type Output = ();
17789    extern "rust-call" fn call_once(self, args: (i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17790        copy783741524.call(args)
17791    }
17792}
17793
17794#[doc(hidden)]
17795impl FnMut<(i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17796    extern "rust-call" fn call_mut(&mut self, args: (i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17797        copy783741524.call(args)
17798    }
17799}
17800
17801#[doc(hidden)]
17802impl Fn<(i32,i32,i32,i32,i32,i32,i32,i32,)> for CopyInternalType {
17803    extern "rust-call" fn call(&self, args: (i32,i32,i32,i32,i32,i32,i32,i32,)) -> Self::Output {
17804        copy783741524.call(args)
17805    }
17806}
17807#[doc=r##"<p>Applies a filter to the canvas. The presets options are:</p>
17808<p>THRESHOLD
17809Converts the image to black and white pixels depending if they are above or
17810below the threshold defined by the level parameter. The parameter must be
17811between 0.0 (black) and 1.0 (white). If no level is specified, 0.5 is used.</p>
17812<p>GRAY
17813Converts any colors in the image to grayscale equivalents. No parameter
17814is used.</p>
17815<p>OPAQUE
17816Sets the alpha channel to entirely opaque. No parameter is used.</p>
17817<p>INVERT
17818Sets each pixel to its inverse value. No parameter is used.</p>
17819<p>POSTERIZE
17820Limits each channel of the image to the number of colors specified as the
17821parameter. The parameter can be set to values between 2 and 255, but
17822results are most noticeable in the lower ranges.</p>
17823<p>BLUR
17824Executes a Gaussian blur with the level parameter specifying the extent
17825of the blurring. If no parameter is used, the blur is equivalent to
17826Gaussian blur of radius 1. Larger values increase the blur.</p>
17827<p>ERODE
17828Reduces the light areas. No parameter is used.</p>
17829<p>DILATE
17830Increases the light areas. No parameter is used.</p>
17831<p>filter() does not work in WEBGL mode.
17832A similar effect can be achieved in WEBGL mode using custom
17833shaders. Adam Ferriss has written
17834a <a href="https://github.com/aferriss/p5jsShaderExamples"
17835target='_blank'>selection of shader examples</a> that contains many
17836of the effects present in the filter examples.</p>
17837"##]
17838///<h2>Examples</h2>
17839///
17840
17841#[doc=r###"```rust
17842let img;
17843function preload() {
17844  img = loadImage('assets/bricks.jpg');
17845}
17846function setup() {
17847  image(img, 0, 0);
17848  filter(THRESHOLD);
17849}
17850```"###]
17851#[doc=r###"```rust
17852let img;
17853function preload() {
17854  img = loadImage('assets/bricks.jpg');
17855}
17856function setup() {
17857  image(img, 0, 0);
17858  filter(GRAY);
17859}
17860```"###]
17861#[doc=r###"```rust
17862let img;
17863function preload() {
17864  img = loadImage('assets/bricks.jpg');
17865}
17866function setup() {
17867  image(img, 0, 0);
17868  filter(OPAQUE);
17869}
17870```"###]
17871#[doc=r###"```rust
17872let img;
17873function preload() {
17874  img = loadImage('assets/bricks.jpg');
17875}
17876function setup() {
17877  image(img, 0, 0);
17878  filter(INVERT);
17879}
17880```"###]
17881#[doc=r###"```rust
17882let img;
17883function preload() {
17884  img = loadImage('assets/bricks.jpg');
17885}
17886function setup() {
17887  image(img, 0, 0);
17888  filter(POSTERIZE, 3);
17889}
17890```"###]
17891#[doc=r###"```rust
17892let img;
17893function preload() {
17894  img = loadImage('assets/bricks.jpg');
17895}
17896function setup() {
17897  image(img, 0, 0);
17898  filter(DILATE);
17899}
17900```"###]
17901#[doc=r###"```rust
17902let img;
17903function preload() {
17904  img = loadImage('assets/bricks.jpg');
17905}
17906function setup() {
17907  image(img, 0, 0);
17908  filter(BLUR, 3);
17909}
17910```"###]
17911#[doc=r###"```rust
17912let img;
17913function preload() {
17914  img = loadImage('assets/bricks.jpg');
17915}
17916function setup() {
17917  image(img, 0, 0);
17918  filter(ERODE);
17919}
17920```"###]
17921/// <h2>Parameters</h2>
17922///
17923#[doc = r##"<code>filterType</code> either THRESHOLD, GRAY, OPAQUE, INVERT,
17924                               POSTERIZE, BLUR, ERODE, DILATE or BLUR.
17925                               See Filters.js for docs on
17926                               each available filter
17927
17928"##]
17929///
17930///
17931#[doc = r##"<code>filterParam?</code> an optional parameter unique
17932                               to each filter, see above
17933
17934"##]
17935///
17936
17937pub static filter: FilterInternalType = FilterInternalType;
17938#[doc(hidden)]
17939pub struct FilterInternalType;
17940
17941
17942#[wasm_bindgen]
17943extern {
17944    #[wasm_bindgen(js_name = "filter")]
17945    fn filter2903367131(_ : FILTER_TYPE, _ : f64, ) ;
17946}
17947
17948#[doc(hidden)]
17949impl FnOnce<(FILTER_TYPE,f64,)> for FilterInternalType {
17950    type Output = ();
17951    extern "rust-call" fn call_once(self, args: (FILTER_TYPE,f64,)) -> Self::Output {
17952        filter2903367131.call(args)
17953    }
17954}
17955
17956#[doc(hidden)]
17957impl FnMut<(FILTER_TYPE,f64,)> for FilterInternalType {
17958    extern "rust-call" fn call_mut(&mut self, args: (FILTER_TYPE,f64,)) -> Self::Output {
17959        filter2903367131.call(args)
17960    }
17961}
17962
17963#[doc(hidden)]
17964impl Fn<(FILTER_TYPE,f64,)> for FilterInternalType {
17965    extern "rust-call" fn call(&self, args: (FILTER_TYPE,f64,)) -> Self::Output {
17966        filter2903367131.call(args)
17967    }
17968}
17969
17970#[wasm_bindgen]
17971extern {
17972    #[wasm_bindgen(js_name = "filter")]
17973    fn filter425466419(_ : FILTER_TYPE, ) ;
17974}
17975
17976#[doc(hidden)]
17977impl FnOnce<(FILTER_TYPE,)> for FilterInternalType {
17978    type Output = ();
17979    extern "rust-call" fn call_once(self, args: (FILTER_TYPE,)) -> Self::Output {
17980        filter425466419.call(args)
17981    }
17982}
17983
17984#[doc(hidden)]
17985impl FnMut<(FILTER_TYPE,)> for FilterInternalType {
17986    extern "rust-call" fn call_mut(&mut self, args: (FILTER_TYPE,)) -> Self::Output {
17987        filter425466419.call(args)
17988    }
17989}
17990
17991#[doc(hidden)]
17992impl Fn<(FILTER_TYPE,)> for FilterInternalType {
17993    extern "rust-call" fn call(&self, args: (FILTER_TYPE,)) -> Self::Output {
17994        filter425466419.call(args)
17995    }
17996}
17997#[doc=r##"<p>Get a region of pixels, or a single pixel, from the canvas.</p>
17998<p>Returns an array of [R,G,B,A] values for any pixel or grabs a section of
17999an image. If no parameters are specified, the entire image is returned.
18000Use the x and y parameters to get the value of one pixel. Get a section of
18001the display window by specifying additional w and h parameters. When
18002getting an image, the x and y parameters define the coordinates for the
18003upper-left corner of the image, regardless of the current <a href="#/p5/imageMode">imageMode()</a>.</p>
18004<p>Getting the color of a single pixel with get(x, y) is easy, but not as fast
18005as grabbing the data directly from <a href="#/p5/pixels">pixels[]</a>. The equivalent statement to
18006get(x, y) using <a href="#/p5/pixels">pixels[]</a> with pixel density d is</p>
18007<pre><code class="language-javascript">let x, y, d; // set these to the coordinates
18008let off = (y * width + x) * d * 4;
18009let components = [
18010  pixels[off],
18011  pixels[off + 1],
18012  pixels[off + 2],
18013  pixels[off + 3]
18014];
18015print(components);</code></pre>
18016<p>See the reference for <a href="#/p5/pixels">pixels[]</a> for more information.</p>
18017<p>If you want to extract an array of colors or a subimage from an p5.Image object,
18018take a look at <a href="#/p5.Image/get">p5.Image.get()</a></p>
18019"##]
18020///<h2>Examples</h2>
18021///
18022
18023#[doc=r###"```rust
18024let img;
18025function preload() {
18026  img = loadImage('assets/rockies.jpg');
18027}
18028function setup() {
18029  image(img, 0, 0);
18030  let c = get();
18031  image(c, width / 2, 0);
18032}
18033```"###]
18034#[doc=r###"```rust
18035let img;
18036function preload() {
18037  img = loadImage('assets/rockies.jpg');
18038}
18039function setup() {
18040  image(img, 0, 0);
18041  let c = get(50, 90);
18042  fill(c);
18043  noStroke();
18044  rect(25, 25, 50, 50);
18045}
18046```"###]
18047/// <h2>Overloads</h2>
18048///
18049#[doc = r##"<code>x</code> x-coordinate of the pixel
18050
18051"##]
18052///
18053///
18054#[doc = r##"<code>y</code> y-coordinate of the pixel
18055
18056"##]
18057///
18058///
18059#[doc = r##"<code>w</code> width
18060
18061"##]
18062///
18063///
18064#[doc = r##"<code>h</code> height
18065
18066"##]
18067///
18068///
18069/// ---
18070///
18071///
18072/// ---
18073///
18074///
18075#[doc = r##"<code>x</code> x-coordinate of the pixel
18076
18077"##]
18078///
18079///
18080#[doc = r##"<code>y</code> y-coordinate of the pixel
18081
18082"##]
18083///
18084///
18085/// ---
18086///
18087
18088pub static get: GetInternalType = GetInternalType;
18089#[doc(hidden)]
18090pub struct GetInternalType;
18091
18092
18093#[wasm_bindgen]
18094extern {
18095    #[wasm_bindgen(js_name = "get")]
18096    fn get4166229418(_ : f64, _ : f64, _ : f64, _ : f64, ) ->  Image;
18097}
18098
18099#[doc(hidden)]
18100impl FnOnce<(f64,f64,f64,f64,)> for GetInternalType {
18101    type Output =  Image;
18102    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
18103        get4166229418.call(args)
18104    }
18105}
18106
18107#[doc(hidden)]
18108impl FnMut<(f64,f64,f64,f64,)> for GetInternalType {
18109    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
18110        get4166229418.call(args)
18111    }
18112}
18113
18114#[doc(hidden)]
18115impl Fn<(f64,f64,f64,f64,)> for GetInternalType {
18116    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
18117        get4166229418.call(args)
18118    }
18119}
18120
18121#[wasm_bindgen]
18122extern {
18123    #[wasm_bindgen(js_name = "get")]
18124    fn get3857964034() ->  Image;
18125}
18126
18127#[doc(hidden)]
18128impl FnOnce<()> for GetInternalType {
18129    type Output =  Image;
18130    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
18131        get3857964034.call(args)
18132    }
18133}
18134
18135#[doc(hidden)]
18136impl FnMut<()> for GetInternalType {
18137    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
18138        get3857964034.call(args)
18139    }
18140}
18141
18142#[doc(hidden)]
18143impl Fn<()> for GetInternalType {
18144    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
18145        get3857964034.call(args)
18146    }
18147}
18148
18149#[wasm_bindgen]
18150extern {
18151    #[wasm_bindgen(js_name = "get")]
18152    fn get1071965337(_ : f64, _ : f64, ) ;
18153}
18154
18155#[doc(hidden)]
18156impl FnOnce<(f64,f64,)> for GetInternalType {
18157    type Output = ();
18158    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
18159        get1071965337.call(args)
18160    }
18161}
18162
18163#[doc(hidden)]
18164impl FnMut<(f64,f64,)> for GetInternalType {
18165    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
18166        get1071965337.call(args)
18167    }
18168}
18169
18170#[doc(hidden)]
18171impl Fn<(f64,f64,)> for GetInternalType {
18172    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
18173        get1071965337.call(args)
18174    }
18175}
18176#[doc=r##"<p>Loads the pixel data for the display window into the <a href="#/p5/pixels">pixels[]</a> array. This
18177function must always be called before reading from or writing to <a href="#/p5/pixels">pixels[]</a>.
18178Note that only changes made with <a href="#/p5/set">set()</a> or direct manipulation of <a href="#/p5/pixels">pixels[]</a>
18179will occur.</p>
18180"##]
18181///<h2>Examples</h2>
18182///
18183
18184#[doc=r###"```rust
18185let img;
18186function preload() {
18187  img = loadImage('assets/rockies.jpg');
18188}
18189
18190function setup() {
18191  image(img, 0, 0, width, height);
18192  let d = pixelDensity();
18193  let halfImage = 4 * (width * d) * (height * d / 2);
18194  loadPixels();
18195  for (let i = 0; i < halfImage; i++) {
18196    pixels[i + halfImage] = pixels[i];
18197  }
18198  updatePixels();
18199}
18200```"###]
18201
18202pub static loadPixels: LoadPixelsInternalType = LoadPixelsInternalType;
18203#[doc(hidden)]
18204pub struct LoadPixelsInternalType;
18205
18206
18207#[wasm_bindgen]
18208extern {
18209    #[wasm_bindgen(js_name = "loadPixels")]
18210    fn loadPixels3068735308() ;
18211}
18212
18213#[doc(hidden)]
18214impl FnOnce<()> for LoadPixelsInternalType {
18215    type Output = ();
18216    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
18217        loadPixels3068735308.call(args)
18218    }
18219}
18220
18221#[doc(hidden)]
18222impl FnMut<()> for LoadPixelsInternalType {
18223    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
18224        loadPixels3068735308.call(args)
18225    }
18226}
18227
18228#[doc(hidden)]
18229impl Fn<()> for LoadPixelsInternalType {
18230    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
18231        loadPixels3068735308.call(args)
18232    }
18233}
18234#[doc=r##"<p>Changes the color of any pixel, or writes an image directly to the
18235display window.
18236The x and y parameters specify the pixel to change and the c parameter
18237specifies the color value. This can be a <a href="#/p5.Color">p5.Color</a> object, or [R, G, B, A]
18238pixel array. It can also be a single grayscale value.
18239When setting an image, the x and y parameters define the coordinates for
18240the upper-left corner of the image, regardless of the current <a href="#/p5/imageMode">imageMode()</a>.</p>
18241<p>After using <a href="#/p5/set">set()</a>, you must call <a href="#/p5/updatePixels">updatePixels()</a> for your changes to appear.
18242This should be called once all pixels have been set, and must be called before
18243calling .<a href="#/p5/get">get()</a> or drawing the image.</p>
18244<p>Setting the color of a single pixel with set(x, y) is easy, but not as
18245fast as putting the data directly into <a href="#/p5/pixels">pixels[]</a>. Setting the <a href="#/p5/pixels">pixels[]</a>
18246values directly may be complicated when working with a retina display,
18247but will perform better when lots of pixels need to be set directly on
18248every loop. See the reference for <a href="#/p5/pixels">pixels[]</a> for more information.</p>
18249"##]
18250///<h2>Examples</h2>
18251///
18252
18253#[doc=r###"```rust
18254let black = color(0);
18255set(30, 20, black);
18256set(85, 20, black);
18257set(85, 75, black);
18258set(30, 75, black);
18259updatePixels();
18260```"###]
18261#[doc=r###"```rust
18262for (let i = 30; i < width - 15; i++) {
18263  for (let j = 20; j < height - 25; j++) {
18264    let c = color(204 - j, 153 - i, 0);
18265    set(i, j, c);
18266  }
18267}
18268updatePixels();
18269```"###]
18270#[doc=r###"```rust
18271let img;
18272function preload() {
18273  img = loadImage('assets/rockies.jpg');
18274}
18275
18276function setup() {
18277  set(0, 0, img);
18278  updatePixels();
18279  line(0, 0, width, height);
18280  line(0, height, width, 0);
18281}
18282```"###]
18283/// <h2>Parameters</h2>
18284///
18285#[doc = r##"<code>x</code> x-coordinate of the pixel
18286
18287"##]
18288///
18289///
18290#[doc = r##"<code>y</code> y-coordinate of the pixel
18291
18292"##]
18293///
18294///
18295#[doc = r##"<code>c</code> insert a grayscale value | a pixel array |
18296                               a p5.Color object | a p5.Image to copy
18297
18298"##]
18299///
18300
18301pub static set: SetInternalType = SetInternalType;
18302#[doc(hidden)]
18303pub struct SetInternalType;
18304
18305
18306#[wasm_bindgen]
18307extern {
18308    #[wasm_bindgen(js_name = "set")]
18309    fn set1430776427(_ : f64, _ : f64, _ : f64, ) ;
18310}
18311
18312#[doc(hidden)]
18313impl FnOnce<(f64,f64,f64,)> for SetInternalType {
18314    type Output = ();
18315    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
18316        set1430776427.call(args)
18317    }
18318}
18319
18320#[doc(hidden)]
18321impl FnMut<(f64,f64,f64,)> for SetInternalType {
18322    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
18323        set1430776427.call(args)
18324    }
18325}
18326
18327#[doc(hidden)]
18328impl Fn<(f64,f64,f64,)> for SetInternalType {
18329    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
18330        set1430776427.call(args)
18331    }
18332}
18333
18334#[wasm_bindgen]
18335extern {
18336    #[wasm_bindgen(js_name = "set")]
18337    fn set448010371(_ : f64, _ : f64, _ : & [f64], ) ;
18338}
18339
18340#[doc(hidden)]
18341impl FnOnce<(f64,f64,&'_ [f64],)> for SetInternalType {
18342    type Output = ();
18343    extern "rust-call" fn call_once(self, args: (f64,f64,&'_ [f64],)) -> Self::Output {
18344        set448010371.call(args)
18345    }
18346}
18347
18348#[doc(hidden)]
18349impl FnMut<(f64,f64,&'_ [f64],)> for SetInternalType {
18350    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,&'_ [f64],)) -> Self::Output {
18351        set448010371.call(args)
18352    }
18353}
18354
18355#[doc(hidden)]
18356impl Fn<(f64,f64,&'_ [f64],)> for SetInternalType {
18357    extern "rust-call" fn call(&self, args: (f64,f64,&'_ [f64],)) -> Self::Output {
18358        set448010371.call(args)
18359    }
18360}
18361
18362#[wasm_bindgen]
18363extern {
18364    #[wasm_bindgen(js_name = "set")]
18365    fn set891369379(_ : f64, _ : f64, _ : JsValue, ) ;
18366}
18367
18368#[doc(hidden)]
18369impl FnOnce<(f64,f64,JsValue,)> for SetInternalType {
18370    type Output = ();
18371    extern "rust-call" fn call_once(self, args: (f64,f64,JsValue,)) -> Self::Output {
18372        set891369379.call(args)
18373    }
18374}
18375
18376#[doc(hidden)]
18377impl FnMut<(f64,f64,JsValue,)> for SetInternalType {
18378    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,JsValue,)) -> Self::Output {
18379        set891369379.call(args)
18380    }
18381}
18382
18383#[doc(hidden)]
18384impl Fn<(f64,f64,JsValue,)> for SetInternalType {
18385    extern "rust-call" fn call(&self, args: (f64,f64,JsValue,)) -> Self::Output {
18386        set891369379.call(args)
18387    }
18388}
18389#[doc=r##"<p>Updates the display window with the data in the <a href="#/p5/pixels">pixels[]</a> array.
18390Use in conjunction with <a href="#/p5/loadPixels">loadPixels()</a>. If you're only reading pixels from
18391the array, there's no need to call <a href="#/p5/updatePixels">updatePixels()</a> — updating is only
18392necessary to apply changes. <a href="#/p5/updatePixels">updatePixels()</a> should be called anytime the
18393pixels array is manipulated or <a href="#/p5/set">set()</a> is called, and only changes made with
18394<a href="#/p5/set">set()</a> or direct changes to <a href="#/p5/pixels">pixels[]</a> will occur.</p>
18395"##]
18396///<h2>Examples</h2>
18397///
18398
18399#[doc=r###"```rust
18400let img;
18401function preload() {
18402  img = loadImage('assets/rockies.jpg');
18403}
18404
18405function setup() {
18406  image(img, 0, 0, width, height);
18407  let d = pixelDensity();
18408  let halfImage = 4 * (width * d) * (height * d / 2);
18409  loadPixels();
18410  for (let i = 0; i < halfImage; i++) {
18411    pixels[i + halfImage] = pixels[i];
18412  }
18413  updatePixels();
18414}
18415```"###]
18416/// <h2>Parameters</h2>
18417///
18418#[doc = r##"<code>x?</code> x-coordinate of the upper-left corner of region
18419                        to update
18420
18421"##]
18422///
18423///
18424#[doc = r##"<code>y?</code> y-coordinate of the upper-left corner of region
18425                        to update
18426
18427"##]
18428///
18429///
18430#[doc = r##"<code>w?</code> width of region to update
18431
18432"##]
18433///
18434///
18435#[doc = r##"<code>h?</code> height of region to update
18436
18437"##]
18438///
18439
18440pub static updatePixels: UpdatePixelsInternalType = UpdatePixelsInternalType;
18441#[doc(hidden)]
18442pub struct UpdatePixelsInternalType;
18443
18444
18445#[wasm_bindgen]
18446extern {
18447    #[wasm_bindgen(js_name = "updatePixels")]
18448    fn updatePixels2723485461(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
18449}
18450
18451#[doc(hidden)]
18452impl FnOnce<(f64,f64,f64,f64,)> for UpdatePixelsInternalType {
18453    type Output = ();
18454    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
18455        updatePixels2723485461.call(args)
18456    }
18457}
18458
18459#[doc(hidden)]
18460impl FnMut<(f64,f64,f64,f64,)> for UpdatePixelsInternalType {
18461    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
18462        updatePixels2723485461.call(args)
18463    }
18464}
18465
18466#[doc(hidden)]
18467impl Fn<(f64,f64,f64,f64,)> for UpdatePixelsInternalType {
18468    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
18469        updatePixels2723485461.call(args)
18470    }
18471}
18472
18473#[wasm_bindgen]
18474extern {
18475    #[wasm_bindgen(js_name = "updatePixels")]
18476    fn updatePixels3913062415(_ : f64, _ : f64, _ : f64, ) ;
18477}
18478
18479#[doc(hidden)]
18480impl FnOnce<(f64,f64,f64,)> for UpdatePixelsInternalType {
18481    type Output = ();
18482    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
18483        updatePixels3913062415.call(args)
18484    }
18485}
18486
18487#[doc(hidden)]
18488impl FnMut<(f64,f64,f64,)> for UpdatePixelsInternalType {
18489    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
18490        updatePixels3913062415.call(args)
18491    }
18492}
18493
18494#[doc(hidden)]
18495impl Fn<(f64,f64,f64,)> for UpdatePixelsInternalType {
18496    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
18497        updatePixels3913062415.call(args)
18498    }
18499}
18500
18501#[wasm_bindgen]
18502extern {
18503    #[wasm_bindgen(js_name = "updatePixels")]
18504    fn updatePixels4110431285(_ : f64, _ : f64, ) ;
18505}
18506
18507#[doc(hidden)]
18508impl FnOnce<(f64,f64,)> for UpdatePixelsInternalType {
18509    type Output = ();
18510    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
18511        updatePixels4110431285.call(args)
18512    }
18513}
18514
18515#[doc(hidden)]
18516impl FnMut<(f64,f64,)> for UpdatePixelsInternalType {
18517    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
18518        updatePixels4110431285.call(args)
18519    }
18520}
18521
18522#[doc(hidden)]
18523impl Fn<(f64,f64,)> for UpdatePixelsInternalType {
18524    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
18525        updatePixels4110431285.call(args)
18526    }
18527}
18528
18529#[wasm_bindgen]
18530extern {
18531    #[wasm_bindgen(js_name = "updatePixels")]
18532    fn updatePixels1328394842(_ : f64, ) ;
18533}
18534
18535#[doc(hidden)]
18536impl FnOnce<(f64,)> for UpdatePixelsInternalType {
18537    type Output = ();
18538    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
18539        updatePixels1328394842.call(args)
18540    }
18541}
18542
18543#[doc(hidden)]
18544impl FnMut<(f64,)> for UpdatePixelsInternalType {
18545    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
18546        updatePixels1328394842.call(args)
18547    }
18548}
18549
18550#[doc(hidden)]
18551impl Fn<(f64,)> for UpdatePixelsInternalType {
18552    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
18553        updatePixels1328394842.call(args)
18554    }
18555}
18556
18557#[wasm_bindgen]
18558extern {
18559    #[wasm_bindgen(js_name = "updatePixels")]
18560    fn updatePixels1259933552() ;
18561}
18562
18563#[doc(hidden)]
18564impl FnOnce<()> for UpdatePixelsInternalType {
18565    type Output = ();
18566    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
18567        updatePixels1259933552.call(args)
18568    }
18569}
18570
18571#[doc(hidden)]
18572impl FnMut<()> for UpdatePixelsInternalType {
18573    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
18574        updatePixels1259933552.call(args)
18575    }
18576}
18577
18578#[doc(hidden)]
18579impl Fn<()> for UpdatePixelsInternalType {
18580    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
18581        updatePixels1259933552.call(args)
18582    }
18583}
18584#[doc=r##"<p>Combines an array of Strings into one String, each separated by the
18585character(s) used for the separator parameter. To join arrays of ints or
18586floats, it's necessary to first convert them to Strings using <a href="#/p5/nf">nf()</a> or
18587nfs().</p>
18588"##]
18589///<h2>Examples</h2>
18590///
18591
18592#[doc=r###"```rust
18593let array = ['Hello', 'world!'];
18594let separator = ' ';
18595let message = join(array, separator);
18596text(message, 5, 50);
18597```"###]
18598/// <h2>Parameters</h2>
18599///
18600#[doc = r##"<code>list</code> array of Strings to be joined
18601
18602"##]
18603///
18604///
18605#[doc = r##"<code>separator</code> String to be placed between each item
18606
18607"##]
18608///
18609
18610pub static join: JoinInternalType = JoinInternalType;
18611#[doc(hidden)]
18612pub struct JoinInternalType;
18613
18614
18615#[wasm_bindgen]
18616extern {
18617    #[wasm_bindgen(js_name = "join")]
18618    fn join4171417911(_ : js_sys::Array, _ : & str, ) -> String;
18619}
18620
18621#[doc(hidden)]
18622impl FnOnce<(js_sys::Array,&'_ str,)> for JoinInternalType {
18623    type Output = String;
18624    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
18625        join4171417911.call(args)
18626    }
18627}
18628
18629#[doc(hidden)]
18630impl FnMut<(js_sys::Array,&'_ str,)> for JoinInternalType {
18631    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
18632        join4171417911.call(args)
18633    }
18634}
18635
18636#[doc(hidden)]
18637impl Fn<(js_sys::Array,&'_ str,)> for JoinInternalType {
18638    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
18639        join4171417911.call(args)
18640    }
18641}
18642#[doc=r##"<p>This function is used to apply a regular expression to a piece of text,
18643and return matching groups (elements found inside parentheses) as a
18644String array. If there are no matches, a null value will be returned.
18645If no groups are specified in the regular expression, but the sequence
18646matches, an array of length 1 (with the matched text as the first element
18647of the array) will be returned.</p>
18648<p>To use the function, first check to see if the result is null. If the
18649result is null, then the sequence did not match at all. If the sequence
18650did match, an array is returned.</p>
18651<p>If there are groups (specified by sets of parentheses) in the regular
18652expression, then the contents of each will be returned in the array.
18653Element [0] of a regular expression match returns the entire matching
18654string, and the match groups start at element [1] (the first group is [1],
18655the second [2], and so on).</p>
18656"##]
18657///<h2>Examples</h2>
18658///
18659
18660#[doc=r###"```rust
18661let string = 'Hello p5js*!';
18662let regexp = 'p5js\\*';
18663let m = match(string, regexp);
18664text(m, 5, 50);
18665```"###]
18666/// <h2>Parameters</h2>
18667///
18668#[doc = r##"<code>str</code> the String to be searched
18669
18670"##]
18671///
18672///
18673#[doc = r##"<code>regexp</code> the regexp to be used for matching
18674
18675"##]
18676///
18677
18678pub static r#match: RMatchInternalType = RMatchInternalType;
18679#[doc(hidden)]
18680pub struct RMatchInternalType;
18681
18682
18683#[wasm_bindgen]
18684extern {
18685    #[wasm_bindgen(js_name = "r#match")]
18686    fn r#match3560130753(_ : & str, _ : & str, ) ;
18687}
18688
18689#[doc(hidden)]
18690impl FnOnce<(&'_ str,&'_ str,)> for RMatchInternalType {
18691    type Output = ();
18692    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
18693        r#match3560130753.call(args)
18694    }
18695}
18696
18697#[doc(hidden)]
18698impl FnMut<(&'_ str,&'_ str,)> for RMatchInternalType {
18699    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
18700        r#match3560130753.call(args)
18701    }
18702}
18703
18704#[doc(hidden)]
18705impl Fn<(&'_ str,&'_ str,)> for RMatchInternalType {
18706    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
18707        r#match3560130753.call(args)
18708    }
18709}
18710#[doc=r##"<p>This function is used to apply a regular expression to a piece of text,
18711and return a list of matching groups (elements found inside parentheses)
18712as a two-dimensional String array. If there are no matches, a null value
18713will be returned. If no groups are specified in the regular expression,
18714but the sequence matches, a two dimensional array is still returned, but
18715the second dimension is only of length one.</p>
18716<p>To use the function, first check to see if the result is null. If the
18717result is null, then the sequence did not match at all. If the sequence
18718did match, a 2D array is returned.</p>
18719<p>If there are groups (specified by sets of parentheses) in the regular
18720expression, then the contents of each will be returned in the array.
18721Assuming a loop with counter variable i, element [i][0] of a regular
18722expression match returns the entire matching string, and the match groups
18723start at element [i][1] (the first group is [i][1], the second [i][2],
18724and so on).</p>
18725"##]
18726///<h2>Examples</h2>
18727///
18728
18729#[doc=r###"```rust
18730let string = 'Hello p5js*! Hello world!';
18731let regexp = 'Hello';
18732matchAll(string, regexp);
18733```"###]
18734/// <h2>Parameters</h2>
18735///
18736#[doc = r##"<code>str</code> the String to be searched
18737
18738"##]
18739///
18740///
18741#[doc = r##"<code>regexp</code> the regexp to be used for matching
18742
18743"##]
18744///
18745
18746pub static matchAll: MatchAllInternalType = MatchAllInternalType;
18747#[doc(hidden)]
18748pub struct MatchAllInternalType;
18749
18750
18751#[wasm_bindgen]
18752extern {
18753    #[wasm_bindgen(js_name = "matchAll")]
18754    fn matchAll2969875630(_ : & str, _ : & str, ) ;
18755}
18756
18757#[doc(hidden)]
18758impl FnOnce<(&'_ str,&'_ str,)> for MatchAllInternalType {
18759    type Output = ();
18760    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
18761        matchAll2969875630.call(args)
18762    }
18763}
18764
18765#[doc(hidden)]
18766impl FnMut<(&'_ str,&'_ str,)> for MatchAllInternalType {
18767    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
18768        matchAll2969875630.call(args)
18769    }
18770}
18771
18772#[doc(hidden)]
18773impl Fn<(&'_ str,&'_ str,)> for MatchAllInternalType {
18774    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
18775        matchAll2969875630.call(args)
18776    }
18777}
18778#[doc=r##"<p>Utility function for formatting numbers into strings. There are two
18779versions: one for formatting floats, and one for formatting ints.
18780The values for the digits, left, and right parameters should always
18781be positive integers.
18782(NOTE): Be cautious when using left and right parameters as it prepends numbers of 0's if the parameter
18783if greater than the current length of the number.
18784For example if number is 123.2 and left parameter passed is 4 which is greater than length of 123
18785(integer part) i.e 3 than result will be 0123.2. Same case for right parameter i.e. if right is 3 than
18786the result will be 123.200.</p>
18787"##]
18788///<h2>Examples</h2>
18789///
18790
18791#[doc=r###"```rust
18792let myFont;
18793function preload() {
18794  myFont = loadFont('assets/fonts/inconsolata.ttf');
18795}
18796function setup() {
18797  background(200);
18798  let num1 = 321;
18799  let num2 = -1321;
18800
18801  noStroke();
18802  fill(0);
18803  textFont(myFont);
18804  textSize(22);
18805
18806  text(nf(num1, 4, 2), 10, 30);
18807  text(nf(num2, 4, 2), 10, 80);
18808  // Draw dividing line
18809  stroke(120);
18810  line(0, 50, width, 50);
18811}
18812```"###]
18813/// <h2>Overloads</h2>
18814///
18815#[doc = r##"<code>num</code> the Number to format
18816
18817"##]
18818///
18819///
18820#[doc = r##"<code>left?</code> number of digits to the left of the
18821                               decimal point
18822
18823"##]
18824///
18825///
18826#[doc = r##"<code>right?</code> number of digits to the right of the
18827                               decimal point
18828
18829"##]
18830///
18831///
18832/// ---
18833///
18834///
18835#[doc = r##"<code>nums</code> the Numbers to format
18836
18837"##]
18838///
18839///
18840#[doc = r##"<code>left?</code> number of digits to the left of the
18841                               decimal point
18842
18843"##]
18844///
18845///
18846#[doc = r##"<code>right?</code> number of digits to the right of the
18847                               decimal point
18848
18849"##]
18850///
18851///
18852/// ---
18853///
18854
18855pub static nf: NfInternalType = NfInternalType;
18856#[doc(hidden)]
18857pub struct NfInternalType;
18858
18859
18860#[wasm_bindgen]
18861extern {
18862    #[wasm_bindgen(js_name = "nf")]
18863    fn nf2430351649(_ : f64, _ : i32, _ : i32, ) -> String;
18864}
18865
18866#[doc(hidden)]
18867impl FnOnce<(f64,i32,i32,)> for NfInternalType {
18868    type Output = String;
18869    extern "rust-call" fn call_once(self, args: (f64,i32,i32,)) -> Self::Output {
18870        nf2430351649.call(args)
18871    }
18872}
18873
18874#[doc(hidden)]
18875impl FnMut<(f64,i32,i32,)> for NfInternalType {
18876    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,i32,)) -> Self::Output {
18877        nf2430351649.call(args)
18878    }
18879}
18880
18881#[doc(hidden)]
18882impl Fn<(f64,i32,i32,)> for NfInternalType {
18883    extern "rust-call" fn call(&self, args: (f64,i32,i32,)) -> Self::Output {
18884        nf2430351649.call(args)
18885    }
18886}
18887
18888#[wasm_bindgen]
18889extern {
18890    #[wasm_bindgen(js_name = "nf")]
18891    fn nf188240331(_ : f64, _ : i32, _ : & str, ) -> String;
18892}
18893
18894#[doc(hidden)]
18895impl FnOnce<(f64,i32,&'_ str,)> for NfInternalType {
18896    type Output = String;
18897    extern "rust-call" fn call_once(self, args: (f64,i32,&'_ str,)) -> Self::Output {
18898        nf188240331.call(args)
18899    }
18900}
18901
18902#[doc(hidden)]
18903impl FnMut<(f64,i32,&'_ str,)> for NfInternalType {
18904    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,&'_ str,)) -> Self::Output {
18905        nf188240331.call(args)
18906    }
18907}
18908
18909#[doc(hidden)]
18910impl Fn<(f64,i32,&'_ str,)> for NfInternalType {
18911    extern "rust-call" fn call(&self, args: (f64,i32,&'_ str,)) -> Self::Output {
18912        nf188240331.call(args)
18913    }
18914}
18915
18916#[wasm_bindgen]
18917extern {
18918    #[wasm_bindgen(js_name = "nf")]
18919    fn nf2271951143(_ : f64, _ : i32, ) -> String;
18920}
18921
18922#[doc(hidden)]
18923impl FnOnce<(f64,i32,)> for NfInternalType {
18924    type Output = String;
18925    extern "rust-call" fn call_once(self, args: (f64,i32,)) -> Self::Output {
18926        nf2271951143.call(args)
18927    }
18928}
18929
18930#[doc(hidden)]
18931impl FnMut<(f64,i32,)> for NfInternalType {
18932    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,)) -> Self::Output {
18933        nf2271951143.call(args)
18934    }
18935}
18936
18937#[doc(hidden)]
18938impl Fn<(f64,i32,)> for NfInternalType {
18939    extern "rust-call" fn call(&self, args: (f64,i32,)) -> Self::Output {
18940        nf2271951143.call(args)
18941    }
18942}
18943
18944#[wasm_bindgen]
18945extern {
18946    #[wasm_bindgen(js_name = "nf")]
18947    fn nf1860460859(_ : f64, _ : & str, _ : i32, ) -> String;
18948}
18949
18950#[doc(hidden)]
18951impl FnOnce<(f64,&'_ str,i32,)> for NfInternalType {
18952    type Output = String;
18953    extern "rust-call" fn call_once(self, args: (f64,&'_ str,i32,)) -> Self::Output {
18954        nf1860460859.call(args)
18955    }
18956}
18957
18958#[doc(hidden)]
18959impl FnMut<(f64,&'_ str,i32,)> for NfInternalType {
18960    extern "rust-call" fn call_mut(&mut self, args: (f64,&'_ str,i32,)) -> Self::Output {
18961        nf1860460859.call(args)
18962    }
18963}
18964
18965#[doc(hidden)]
18966impl Fn<(f64,&'_ str,i32,)> for NfInternalType {
18967    extern "rust-call" fn call(&self, args: (f64,&'_ str,i32,)) -> Self::Output {
18968        nf1860460859.call(args)
18969    }
18970}
18971
18972#[wasm_bindgen]
18973extern {
18974    #[wasm_bindgen(js_name = "nf")]
18975    fn nf3515540172(_ : f64, _ : & str, _ : & str, ) -> String;
18976}
18977
18978#[doc(hidden)]
18979impl FnOnce<(f64,&'_ str,&'_ str,)> for NfInternalType {
18980    type Output = String;
18981    extern "rust-call" fn call_once(self, args: (f64,&'_ str,&'_ str,)) -> Self::Output {
18982        nf3515540172.call(args)
18983    }
18984}
18985
18986#[doc(hidden)]
18987impl FnMut<(f64,&'_ str,&'_ str,)> for NfInternalType {
18988    extern "rust-call" fn call_mut(&mut self, args: (f64,&'_ str,&'_ str,)) -> Self::Output {
18989        nf3515540172.call(args)
18990    }
18991}
18992
18993#[doc(hidden)]
18994impl Fn<(f64,&'_ str,&'_ str,)> for NfInternalType {
18995    extern "rust-call" fn call(&self, args: (f64,&'_ str,&'_ str,)) -> Self::Output {
18996        nf3515540172.call(args)
18997    }
18998}
18999
19000#[wasm_bindgen]
19001extern {
19002    #[wasm_bindgen(js_name = "nf")]
19003    fn nf3725962799(_ : f64, _ : & str, ) -> String;
19004}
19005
19006#[doc(hidden)]
19007impl FnOnce<(f64,&'_ str,)> for NfInternalType {
19008    type Output = String;
19009    extern "rust-call" fn call_once(self, args: (f64,&'_ str,)) -> Self::Output {
19010        nf3725962799.call(args)
19011    }
19012}
19013
19014#[doc(hidden)]
19015impl FnMut<(f64,&'_ str,)> for NfInternalType {
19016    extern "rust-call" fn call_mut(&mut self, args: (f64,&'_ str,)) -> Self::Output {
19017        nf3725962799.call(args)
19018    }
19019}
19020
19021#[doc(hidden)]
19022impl Fn<(f64,&'_ str,)> for NfInternalType {
19023    extern "rust-call" fn call(&self, args: (f64,&'_ str,)) -> Self::Output {
19024        nf3725962799.call(args)
19025    }
19026}
19027
19028#[wasm_bindgen]
19029extern {
19030    #[wasm_bindgen(js_name = "nf")]
19031    fn nf2362082915(_ : f64, ) -> String;
19032}
19033
19034#[doc(hidden)]
19035impl FnOnce<(f64,)> for NfInternalType {
19036    type Output = String;
19037    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
19038        nf2362082915.call(args)
19039    }
19040}
19041
19042#[doc(hidden)]
19043impl FnMut<(f64,)> for NfInternalType {
19044    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
19045        nf2362082915.call(args)
19046    }
19047}
19048
19049#[doc(hidden)]
19050impl Fn<(f64,)> for NfInternalType {
19051    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
19052        nf2362082915.call(args)
19053    }
19054}
19055
19056#[wasm_bindgen]
19057extern {
19058    #[wasm_bindgen(js_name = "nf")]
19059    fn nf4037302814(_ : & str, _ : i32, _ : i32, ) -> String;
19060}
19061
19062#[doc(hidden)]
19063impl FnOnce<(&'_ str,i32,i32,)> for NfInternalType {
19064    type Output = String;
19065    extern "rust-call" fn call_once(self, args: (&'_ str,i32,i32,)) -> Self::Output {
19066        nf4037302814.call(args)
19067    }
19068}
19069
19070#[doc(hidden)]
19071impl FnMut<(&'_ str,i32,i32,)> for NfInternalType {
19072    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,i32,i32,)) -> Self::Output {
19073        nf4037302814.call(args)
19074    }
19075}
19076
19077#[doc(hidden)]
19078impl Fn<(&'_ str,i32,i32,)> for NfInternalType {
19079    extern "rust-call" fn call(&self, args: (&'_ str,i32,i32,)) -> Self::Output {
19080        nf4037302814.call(args)
19081    }
19082}
19083
19084#[wasm_bindgen]
19085extern {
19086    #[wasm_bindgen(js_name = "nf")]
19087    fn nf1508410174(_ : & str, _ : i32, _ : & str, ) -> String;
19088}
19089
19090#[doc(hidden)]
19091impl FnOnce<(&'_ str,i32,&'_ str,)> for NfInternalType {
19092    type Output = String;
19093    extern "rust-call" fn call_once(self, args: (&'_ str,i32,&'_ str,)) -> Self::Output {
19094        nf1508410174.call(args)
19095    }
19096}
19097
19098#[doc(hidden)]
19099impl FnMut<(&'_ str,i32,&'_ str,)> for NfInternalType {
19100    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,i32,&'_ str,)) -> Self::Output {
19101        nf1508410174.call(args)
19102    }
19103}
19104
19105#[doc(hidden)]
19106impl Fn<(&'_ str,i32,&'_ str,)> for NfInternalType {
19107    extern "rust-call" fn call(&self, args: (&'_ str,i32,&'_ str,)) -> Self::Output {
19108        nf1508410174.call(args)
19109    }
19110}
19111
19112#[wasm_bindgen]
19113extern {
19114    #[wasm_bindgen(js_name = "nf")]
19115    fn nf397064524(_ : & str, _ : i32, ) -> String;
19116}
19117
19118#[doc(hidden)]
19119impl FnOnce<(&'_ str,i32,)> for NfInternalType {
19120    type Output = String;
19121    extern "rust-call" fn call_once(self, args: (&'_ str,i32,)) -> Self::Output {
19122        nf397064524.call(args)
19123    }
19124}
19125
19126#[doc(hidden)]
19127impl FnMut<(&'_ str,i32,)> for NfInternalType {
19128    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,i32,)) -> Self::Output {
19129        nf397064524.call(args)
19130    }
19131}
19132
19133#[doc(hidden)]
19134impl Fn<(&'_ str,i32,)> for NfInternalType {
19135    extern "rust-call" fn call(&self, args: (&'_ str,i32,)) -> Self::Output {
19136        nf397064524.call(args)
19137    }
19138}
19139
19140#[wasm_bindgen]
19141extern {
19142    #[wasm_bindgen(js_name = "nf")]
19143    fn nf3335112119(_ : & str, _ : & str, _ : i32, ) -> String;
19144}
19145
19146#[doc(hidden)]
19147impl FnOnce<(&'_ str,&'_ str,i32,)> for NfInternalType {
19148    type Output = String;
19149    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,i32,)) -> Self::Output {
19150        nf3335112119.call(args)
19151    }
19152}
19153
19154#[doc(hidden)]
19155impl FnMut<(&'_ str,&'_ str,i32,)> for NfInternalType {
19156    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,i32,)) -> Self::Output {
19157        nf3335112119.call(args)
19158    }
19159}
19160
19161#[doc(hidden)]
19162impl Fn<(&'_ str,&'_ str,i32,)> for NfInternalType {
19163    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,i32,)) -> Self::Output {
19164        nf3335112119.call(args)
19165    }
19166}
19167
19168#[wasm_bindgen]
19169extern {
19170    #[wasm_bindgen(js_name = "nf")]
19171    fn nf3461014560(_ : & str, _ : & str, _ : & str, ) -> String;
19172}
19173
19174#[doc(hidden)]
19175impl FnOnce<(&'_ str,&'_ str,&'_ str,)> for NfInternalType {
19176    type Output = String;
19177    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
19178        nf3461014560.call(args)
19179    }
19180}
19181
19182#[doc(hidden)]
19183impl FnMut<(&'_ str,&'_ str,&'_ str,)> for NfInternalType {
19184    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
19185        nf3461014560.call(args)
19186    }
19187}
19188
19189#[doc(hidden)]
19190impl Fn<(&'_ str,&'_ str,&'_ str,)> for NfInternalType {
19191    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
19192        nf3461014560.call(args)
19193    }
19194}
19195
19196#[wasm_bindgen]
19197extern {
19198    #[wasm_bindgen(js_name = "nf")]
19199    fn nf3221756482(_ : & str, _ : & str, ) -> String;
19200}
19201
19202#[doc(hidden)]
19203impl FnOnce<(&'_ str,&'_ str,)> for NfInternalType {
19204    type Output = String;
19205    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
19206        nf3221756482.call(args)
19207    }
19208}
19209
19210#[doc(hidden)]
19211impl FnMut<(&'_ str,&'_ str,)> for NfInternalType {
19212    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
19213        nf3221756482.call(args)
19214    }
19215}
19216
19217#[doc(hidden)]
19218impl Fn<(&'_ str,&'_ str,)> for NfInternalType {
19219    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
19220        nf3221756482.call(args)
19221    }
19222}
19223
19224#[wasm_bindgen]
19225extern {
19226    #[wasm_bindgen(js_name = "nf")]
19227    fn nf3394344498(_ : & str, ) -> String;
19228}
19229
19230#[doc(hidden)]
19231impl FnOnce<(&'_ str,)> for NfInternalType {
19232    type Output = String;
19233    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
19234        nf3394344498.call(args)
19235    }
19236}
19237
19238#[doc(hidden)]
19239impl FnMut<(&'_ str,)> for NfInternalType {
19240    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
19241        nf3394344498.call(args)
19242    }
19243}
19244
19245#[doc(hidden)]
19246impl Fn<(&'_ str,)> for NfInternalType {
19247    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
19248        nf3394344498.call(args)
19249    }
19250}
19251
19252#[wasm_bindgen]
19253extern {
19254    #[wasm_bindgen(js_name = "nf")]
19255    fn nf712852831(_ : js_sys::Array, _ : i32, _ : i32, ) ;
19256}
19257
19258#[doc(hidden)]
19259impl FnOnce<(js_sys::Array,i32,i32,)> for NfInternalType {
19260    type Output = ();
19261    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
19262        nf712852831.call(args)
19263    }
19264}
19265
19266#[doc(hidden)]
19267impl FnMut<(js_sys::Array,i32,i32,)> for NfInternalType {
19268    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
19269        nf712852831.call(args)
19270    }
19271}
19272
19273#[doc(hidden)]
19274impl Fn<(js_sys::Array,i32,i32,)> for NfInternalType {
19275    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
19276        nf712852831.call(args)
19277    }
19278}
19279
19280#[wasm_bindgen]
19281extern {
19282    #[wasm_bindgen(js_name = "nf")]
19283    fn nf3060337981(_ : js_sys::Array, _ : i32, _ : & str, ) ;
19284}
19285
19286#[doc(hidden)]
19287impl FnOnce<(js_sys::Array,i32,&'_ str,)> for NfInternalType {
19288    type Output = ();
19289    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,&'_ str,)) -> Self::Output {
19290        nf3060337981.call(args)
19291    }
19292}
19293
19294#[doc(hidden)]
19295impl FnMut<(js_sys::Array,i32,&'_ str,)> for NfInternalType {
19296    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,&'_ str,)) -> Self::Output {
19297        nf3060337981.call(args)
19298    }
19299}
19300
19301#[doc(hidden)]
19302impl Fn<(js_sys::Array,i32,&'_ str,)> for NfInternalType {
19303    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,&'_ str,)) -> Self::Output {
19304        nf3060337981.call(args)
19305    }
19306}
19307
19308#[wasm_bindgen]
19309extern {
19310    #[wasm_bindgen(js_name = "nf")]
19311    fn nf1996452429(_ : js_sys::Array, _ : i32, ) ;
19312}
19313
19314#[doc(hidden)]
19315impl FnOnce<(js_sys::Array,i32,)> for NfInternalType {
19316    type Output = ();
19317    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,)) -> Self::Output {
19318        nf1996452429.call(args)
19319    }
19320}
19321
19322#[doc(hidden)]
19323impl FnMut<(js_sys::Array,i32,)> for NfInternalType {
19324    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,)) -> Self::Output {
19325        nf1996452429.call(args)
19326    }
19327}
19328
19329#[doc(hidden)]
19330impl Fn<(js_sys::Array,i32,)> for NfInternalType {
19331    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,)) -> Self::Output {
19332        nf1996452429.call(args)
19333    }
19334}
19335
19336#[wasm_bindgen]
19337extern {
19338    #[wasm_bindgen(js_name = "nf")]
19339    fn nf3723669229(_ : js_sys::Array, _ : & str, _ : i32, ) ;
19340}
19341
19342#[doc(hidden)]
19343impl FnOnce<(js_sys::Array,&'_ str,i32,)> for NfInternalType {
19344    type Output = ();
19345    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,i32,)) -> Self::Output {
19346        nf3723669229.call(args)
19347    }
19348}
19349
19350#[doc(hidden)]
19351impl FnMut<(js_sys::Array,&'_ str,i32,)> for NfInternalType {
19352    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,i32,)) -> Self::Output {
19353        nf3723669229.call(args)
19354    }
19355}
19356
19357#[doc(hidden)]
19358impl Fn<(js_sys::Array,&'_ str,i32,)> for NfInternalType {
19359    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,i32,)) -> Self::Output {
19360        nf3723669229.call(args)
19361    }
19362}
19363
19364#[wasm_bindgen]
19365extern {
19366    #[wasm_bindgen(js_name = "nf")]
19367    fn nf4265470417(_ : js_sys::Array, _ : & str, _ : & str, ) ;
19368}
19369
19370#[doc(hidden)]
19371impl FnOnce<(js_sys::Array,&'_ str,&'_ str,)> for NfInternalType {
19372    type Output = ();
19373    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,&'_ str,)) -> Self::Output {
19374        nf4265470417.call(args)
19375    }
19376}
19377
19378#[doc(hidden)]
19379impl FnMut<(js_sys::Array,&'_ str,&'_ str,)> for NfInternalType {
19380    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,&'_ str,)) -> Self::Output {
19381        nf4265470417.call(args)
19382    }
19383}
19384
19385#[doc(hidden)]
19386impl Fn<(js_sys::Array,&'_ str,&'_ str,)> for NfInternalType {
19387    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,&'_ str,)) -> Self::Output {
19388        nf4265470417.call(args)
19389    }
19390}
19391
19392#[wasm_bindgen]
19393extern {
19394    #[wasm_bindgen(js_name = "nf")]
19395    fn nf2245562924(_ : js_sys::Array, _ : & str, ) ;
19396}
19397
19398#[doc(hidden)]
19399impl FnOnce<(js_sys::Array,&'_ str,)> for NfInternalType {
19400    type Output = ();
19401    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
19402        nf2245562924.call(args)
19403    }
19404}
19405
19406#[doc(hidden)]
19407impl FnMut<(js_sys::Array,&'_ str,)> for NfInternalType {
19408    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
19409        nf2245562924.call(args)
19410    }
19411}
19412
19413#[doc(hidden)]
19414impl Fn<(js_sys::Array,&'_ str,)> for NfInternalType {
19415    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
19416        nf2245562924.call(args)
19417    }
19418}
19419
19420#[wasm_bindgen]
19421extern {
19422    #[wasm_bindgen(js_name = "nf")]
19423    fn nf1089988393(_ : js_sys::Array, ) ;
19424}
19425
19426#[doc(hidden)]
19427impl FnOnce<(js_sys::Array,)> for NfInternalType {
19428    type Output = ();
19429    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
19430        nf1089988393.call(args)
19431    }
19432}
19433
19434#[doc(hidden)]
19435impl FnMut<(js_sys::Array,)> for NfInternalType {
19436    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
19437        nf1089988393.call(args)
19438    }
19439}
19440
19441#[doc(hidden)]
19442impl Fn<(js_sys::Array,)> for NfInternalType {
19443    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
19444        nf1089988393.call(args)
19445    }
19446}
19447#[doc=r##"<p>Utility function for formatting numbers into strings and placing
19448appropriate commas to mark units of 1000. There are two versions: one
19449for formatting ints, and one for formatting an array of ints. The value
19450for the right parameter should always be a positive integer.</p>
19451"##]
19452///<h2>Examples</h2>
19453///
19454
19455#[doc=r###"```rust
19456function setup() {
19457  background(200);
19458  let num = 11253106.115;
19459  let numArr = [1, 1, 2];
19460
19461  noStroke();
19462  fill(0);
19463  textSize(12);
19464
19465  // Draw formatted numbers
19466  text(nfc(num, 4), 10, 30);
19467  text(nfc(numArr, 2), 10, 80);
19468
19469  // Draw dividing line
19470  stroke(120);
19471  line(0, 50, width, 50);
19472}
19473```"###]
19474/// <h2>Overloads</h2>
19475///
19476#[doc = r##"<code>num</code> the Number to format
19477
19478"##]
19479///
19480///
19481#[doc = r##"<code>right?</code> number of digits to the right of the
19482                                 decimal point
19483
19484"##]
19485///
19486///
19487/// ---
19488///
19489///
19490#[doc = r##"<code>nums</code> the Numbers to format
19491
19492"##]
19493///
19494///
19495#[doc = r##"<code>right?</code> number of digits to the right of the
19496                                 decimal point
19497
19498"##]
19499///
19500///
19501/// ---
19502///
19503
19504pub static nfc: NfcInternalType = NfcInternalType;
19505#[doc(hidden)]
19506pub struct NfcInternalType;
19507
19508
19509#[wasm_bindgen]
19510extern {
19511    #[wasm_bindgen(js_name = "nfc")]
19512    fn nfc716502095(_ : f64, _ : i32, ) -> String;
19513}
19514
19515#[doc(hidden)]
19516impl FnOnce<(f64,i32,)> for NfcInternalType {
19517    type Output = String;
19518    extern "rust-call" fn call_once(self, args: (f64,i32,)) -> Self::Output {
19519        nfc716502095.call(args)
19520    }
19521}
19522
19523#[doc(hidden)]
19524impl FnMut<(f64,i32,)> for NfcInternalType {
19525    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,)) -> Self::Output {
19526        nfc716502095.call(args)
19527    }
19528}
19529
19530#[doc(hidden)]
19531impl Fn<(f64,i32,)> for NfcInternalType {
19532    extern "rust-call" fn call(&self, args: (f64,i32,)) -> Self::Output {
19533        nfc716502095.call(args)
19534    }
19535}
19536
19537#[wasm_bindgen]
19538extern {
19539    #[wasm_bindgen(js_name = "nfc")]
19540    fn nfc1673587678(_ : f64, _ : & str, ) -> String;
19541}
19542
19543#[doc(hidden)]
19544impl FnOnce<(f64,&'_ str,)> for NfcInternalType {
19545    type Output = String;
19546    extern "rust-call" fn call_once(self, args: (f64,&'_ str,)) -> Self::Output {
19547        nfc1673587678.call(args)
19548    }
19549}
19550
19551#[doc(hidden)]
19552impl FnMut<(f64,&'_ str,)> for NfcInternalType {
19553    extern "rust-call" fn call_mut(&mut self, args: (f64,&'_ str,)) -> Self::Output {
19554        nfc1673587678.call(args)
19555    }
19556}
19557
19558#[doc(hidden)]
19559impl Fn<(f64,&'_ str,)> for NfcInternalType {
19560    extern "rust-call" fn call(&self, args: (f64,&'_ str,)) -> Self::Output {
19561        nfc1673587678.call(args)
19562    }
19563}
19564
19565#[wasm_bindgen]
19566extern {
19567    #[wasm_bindgen(js_name = "nfc")]
19568    fn nfc2579927856(_ : f64, ) -> String;
19569}
19570
19571#[doc(hidden)]
19572impl FnOnce<(f64,)> for NfcInternalType {
19573    type Output = String;
19574    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
19575        nfc2579927856.call(args)
19576    }
19577}
19578
19579#[doc(hidden)]
19580impl FnMut<(f64,)> for NfcInternalType {
19581    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
19582        nfc2579927856.call(args)
19583    }
19584}
19585
19586#[doc(hidden)]
19587impl Fn<(f64,)> for NfcInternalType {
19588    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
19589        nfc2579927856.call(args)
19590    }
19591}
19592
19593#[wasm_bindgen]
19594extern {
19595    #[wasm_bindgen(js_name = "nfc")]
19596    fn nfc3010841235(_ : & str, _ : i32, ) -> String;
19597}
19598
19599#[doc(hidden)]
19600impl FnOnce<(&'_ str,i32,)> for NfcInternalType {
19601    type Output = String;
19602    extern "rust-call" fn call_once(self, args: (&'_ str,i32,)) -> Self::Output {
19603        nfc3010841235.call(args)
19604    }
19605}
19606
19607#[doc(hidden)]
19608impl FnMut<(&'_ str,i32,)> for NfcInternalType {
19609    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,i32,)) -> Self::Output {
19610        nfc3010841235.call(args)
19611    }
19612}
19613
19614#[doc(hidden)]
19615impl Fn<(&'_ str,i32,)> for NfcInternalType {
19616    extern "rust-call" fn call(&self, args: (&'_ str,i32,)) -> Self::Output {
19617        nfc3010841235.call(args)
19618    }
19619}
19620
19621#[wasm_bindgen]
19622extern {
19623    #[wasm_bindgen(js_name = "nfc")]
19624    fn nfc1883538040(_ : & str, _ : & str, ) -> String;
19625}
19626
19627#[doc(hidden)]
19628impl FnOnce<(&'_ str,&'_ str,)> for NfcInternalType {
19629    type Output = String;
19630    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
19631        nfc1883538040.call(args)
19632    }
19633}
19634
19635#[doc(hidden)]
19636impl FnMut<(&'_ str,&'_ str,)> for NfcInternalType {
19637    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
19638        nfc1883538040.call(args)
19639    }
19640}
19641
19642#[doc(hidden)]
19643impl Fn<(&'_ str,&'_ str,)> for NfcInternalType {
19644    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
19645        nfc1883538040.call(args)
19646    }
19647}
19648
19649#[wasm_bindgen]
19650extern {
19651    #[wasm_bindgen(js_name = "nfc")]
19652    fn nfc830813834(_ : & str, ) -> String;
19653}
19654
19655#[doc(hidden)]
19656impl FnOnce<(&'_ str,)> for NfcInternalType {
19657    type Output = String;
19658    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
19659        nfc830813834.call(args)
19660    }
19661}
19662
19663#[doc(hidden)]
19664impl FnMut<(&'_ str,)> for NfcInternalType {
19665    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
19666        nfc830813834.call(args)
19667    }
19668}
19669
19670#[doc(hidden)]
19671impl Fn<(&'_ str,)> for NfcInternalType {
19672    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
19673        nfc830813834.call(args)
19674    }
19675}
19676
19677#[wasm_bindgen]
19678extern {
19679    #[wasm_bindgen(js_name = "nfc")]
19680    fn nfc2753296327(_ : js_sys::Array, _ : i32, ) ;
19681}
19682
19683#[doc(hidden)]
19684impl FnOnce<(js_sys::Array,i32,)> for NfcInternalType {
19685    type Output = ();
19686    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,)) -> Self::Output {
19687        nfc2753296327.call(args)
19688    }
19689}
19690
19691#[doc(hidden)]
19692impl FnMut<(js_sys::Array,i32,)> for NfcInternalType {
19693    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,)) -> Self::Output {
19694        nfc2753296327.call(args)
19695    }
19696}
19697
19698#[doc(hidden)]
19699impl Fn<(js_sys::Array,i32,)> for NfcInternalType {
19700    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,)) -> Self::Output {
19701        nfc2753296327.call(args)
19702    }
19703}
19704
19705#[wasm_bindgen]
19706extern {
19707    #[wasm_bindgen(js_name = "nfc")]
19708    fn nfc1943624632(_ : js_sys::Array, _ : & str, ) ;
19709}
19710
19711#[doc(hidden)]
19712impl FnOnce<(js_sys::Array,&'_ str,)> for NfcInternalType {
19713    type Output = ();
19714    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
19715        nfc1943624632.call(args)
19716    }
19717}
19718
19719#[doc(hidden)]
19720impl FnMut<(js_sys::Array,&'_ str,)> for NfcInternalType {
19721    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
19722        nfc1943624632.call(args)
19723    }
19724}
19725
19726#[doc(hidden)]
19727impl Fn<(js_sys::Array,&'_ str,)> for NfcInternalType {
19728    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
19729        nfc1943624632.call(args)
19730    }
19731}
19732
19733#[wasm_bindgen]
19734extern {
19735    #[wasm_bindgen(js_name = "nfc")]
19736    fn nfc520645911(_ : js_sys::Array, ) ;
19737}
19738
19739#[doc(hidden)]
19740impl FnOnce<(js_sys::Array,)> for NfcInternalType {
19741    type Output = ();
19742    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
19743        nfc520645911.call(args)
19744    }
19745}
19746
19747#[doc(hidden)]
19748impl FnMut<(js_sys::Array,)> for NfcInternalType {
19749    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
19750        nfc520645911.call(args)
19751    }
19752}
19753
19754#[doc(hidden)]
19755impl Fn<(js_sys::Array,)> for NfcInternalType {
19756    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
19757        nfc520645911.call(args)
19758    }
19759}
19760#[doc=r##"<p>Utility function for formatting numbers into strings. Similar to <a href="#/p5/nf">nf()</a> but
19761puts a "+" in front of positive numbers and a "-" in front of negative
19762numbers. There are two versions: one for formatting floats, and one for
19763formatting ints. The values for left, and right parameters
19764should always be positive integers.</p>
19765"##]
19766///<h2>Examples</h2>
19767///
19768
19769#[doc=r###"```rust
19770function setup() {
19771  background(200);
19772  let num1 = 11253106.115;
19773  let num2 = -11253106.115;
19774
19775  noStroke();
19776  fill(0);
19777  textSize(12);
19778
19779  // Draw formatted numbers
19780  text(nfp(num1, 4, 2), 10, 30);
19781  text(nfp(num2, 4, 2), 10, 80);
19782
19783  // Draw dividing line
19784  stroke(120);
19785  line(0, 50, width, 50);
19786}
19787```"###]
19788/// <h2>Overloads</h2>
19789///
19790#[doc = r##"<code>num</code> the Number to format
19791
19792"##]
19793///
19794///
19795#[doc = r##"<code>left?</code> number of digits to the left of the decimal
19796                               point
19797
19798"##]
19799///
19800///
19801#[doc = r##"<code>right?</code> number of digits to the right of the
19802                               decimal point
19803
19804"##]
19805///
19806///
19807/// ---
19808///
19809///
19810#[doc = r##"<code>nums</code> the Numbers to format
19811
19812"##]
19813///
19814///
19815#[doc = r##"<code>left?</code> number of digits to the left of the decimal
19816                               point
19817
19818"##]
19819///
19820///
19821#[doc = r##"<code>right?</code> number of digits to the right of the
19822                               decimal point
19823
19824"##]
19825///
19826///
19827/// ---
19828///
19829
19830pub static nfp: NfpInternalType = NfpInternalType;
19831#[doc(hidden)]
19832pub struct NfpInternalType;
19833
19834
19835#[wasm_bindgen]
19836extern {
19837    #[wasm_bindgen(js_name = "nfp")]
19838    fn nfp1583436572(_ : f64, _ : i32, _ : i32, ) -> String;
19839}
19840
19841#[doc(hidden)]
19842impl FnOnce<(f64,i32,i32,)> for NfpInternalType {
19843    type Output = String;
19844    extern "rust-call" fn call_once(self, args: (f64,i32,i32,)) -> Self::Output {
19845        nfp1583436572.call(args)
19846    }
19847}
19848
19849#[doc(hidden)]
19850impl FnMut<(f64,i32,i32,)> for NfpInternalType {
19851    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,i32,)) -> Self::Output {
19852        nfp1583436572.call(args)
19853    }
19854}
19855
19856#[doc(hidden)]
19857impl Fn<(f64,i32,i32,)> for NfpInternalType {
19858    extern "rust-call" fn call(&self, args: (f64,i32,i32,)) -> Self::Output {
19859        nfp1583436572.call(args)
19860    }
19861}
19862
19863#[wasm_bindgen]
19864extern {
19865    #[wasm_bindgen(js_name = "nfp")]
19866    fn nfp524023511(_ : f64, _ : i32, ) -> String;
19867}
19868
19869#[doc(hidden)]
19870impl FnOnce<(f64,i32,)> for NfpInternalType {
19871    type Output = String;
19872    extern "rust-call" fn call_once(self, args: (f64,i32,)) -> Self::Output {
19873        nfp524023511.call(args)
19874    }
19875}
19876
19877#[doc(hidden)]
19878impl FnMut<(f64,i32,)> for NfpInternalType {
19879    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,)) -> Self::Output {
19880        nfp524023511.call(args)
19881    }
19882}
19883
19884#[doc(hidden)]
19885impl Fn<(f64,i32,)> for NfpInternalType {
19886    extern "rust-call" fn call(&self, args: (f64,i32,)) -> Self::Output {
19887        nfp524023511.call(args)
19888    }
19889}
19890
19891#[wasm_bindgen]
19892extern {
19893    #[wasm_bindgen(js_name = "nfp")]
19894    fn nfp3487710781(_ : f64, ) -> String;
19895}
19896
19897#[doc(hidden)]
19898impl FnOnce<(f64,)> for NfpInternalType {
19899    type Output = String;
19900    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
19901        nfp3487710781.call(args)
19902    }
19903}
19904
19905#[doc(hidden)]
19906impl FnMut<(f64,)> for NfpInternalType {
19907    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
19908        nfp3487710781.call(args)
19909    }
19910}
19911
19912#[doc(hidden)]
19913impl Fn<(f64,)> for NfpInternalType {
19914    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
19915        nfp3487710781.call(args)
19916    }
19917}
19918
19919#[wasm_bindgen]
19920extern {
19921    #[wasm_bindgen(js_name = "nfp")]
19922    fn nfp3725056356(_ : & [f64], _ : i32, _ : i32, ) ;
19923}
19924
19925#[doc(hidden)]
19926impl FnOnce<(&'_ [f64],i32,i32,)> for NfpInternalType {
19927    type Output = ();
19928    extern "rust-call" fn call_once(self, args: (&'_ [f64],i32,i32,)) -> Self::Output {
19929        nfp3725056356.call(args)
19930    }
19931}
19932
19933#[doc(hidden)]
19934impl FnMut<(&'_ [f64],i32,i32,)> for NfpInternalType {
19935    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],i32,i32,)) -> Self::Output {
19936        nfp3725056356.call(args)
19937    }
19938}
19939
19940#[doc(hidden)]
19941impl Fn<(&'_ [f64],i32,i32,)> for NfpInternalType {
19942    extern "rust-call" fn call(&self, args: (&'_ [f64],i32,i32,)) -> Self::Output {
19943        nfp3725056356.call(args)
19944    }
19945}
19946
19947#[wasm_bindgen]
19948extern {
19949    #[wasm_bindgen(js_name = "nfp")]
19950    fn nfp3720362272(_ : & [f64], _ : i32, ) ;
19951}
19952
19953#[doc(hidden)]
19954impl FnOnce<(&'_ [f64],i32,)> for NfpInternalType {
19955    type Output = ();
19956    extern "rust-call" fn call_once(self, args: (&'_ [f64],i32,)) -> Self::Output {
19957        nfp3720362272.call(args)
19958    }
19959}
19960
19961#[doc(hidden)]
19962impl FnMut<(&'_ [f64],i32,)> for NfpInternalType {
19963    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],i32,)) -> Self::Output {
19964        nfp3720362272.call(args)
19965    }
19966}
19967
19968#[doc(hidden)]
19969impl Fn<(&'_ [f64],i32,)> for NfpInternalType {
19970    extern "rust-call" fn call(&self, args: (&'_ [f64],i32,)) -> Self::Output {
19971        nfp3720362272.call(args)
19972    }
19973}
19974
19975#[wasm_bindgen]
19976extern {
19977    #[wasm_bindgen(js_name = "nfp")]
19978    fn nfp444492660(_ : & [f64], ) ;
19979}
19980
19981#[doc(hidden)]
19982impl FnOnce<(&'_ [f64],)> for NfpInternalType {
19983    type Output = ();
19984    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
19985        nfp444492660.call(args)
19986    }
19987}
19988
19989#[doc(hidden)]
19990impl FnMut<(&'_ [f64],)> for NfpInternalType {
19991    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
19992        nfp444492660.call(args)
19993    }
19994}
19995
19996#[doc(hidden)]
19997impl Fn<(&'_ [f64],)> for NfpInternalType {
19998    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
19999        nfp444492660.call(args)
20000    }
20001}
20002#[doc=r##"<p>Utility function for formatting numbers into strings. Similar to <a href="#/p5/nf">nf()</a> but
20003puts an additional "_" (space) in front of positive numbers just in case to align it with negative
20004numbers which includes "-" (minus) sign.
20005The main usecase of nfs() can be seen when one wants to align the digits (place values) of a non-negative
20006number with some negative number (See the example to get a clear picture).
20007There are two versions: one for formatting float, and one for formatting int.
20008The values for the digits, left, and right parameters should always be positive integers.
20009(IMP): The result on the canvas basically the expected alignment can vary based on the typeface you are using.
20010(NOTE): Be cautious when using left and right parameters as it prepends numbers of 0's if the parameter
20011if greater than the current length of the number.
20012For example if number is 123.2 and left parameter passed is 4 which is greater than length of 123
20013(integer part) i.e 3 than result will be 0123.2. Same case for right parameter i.e. if right is 3 than
20014the result will be 123.200.</p>
20015"##]
20016///<h2>Examples</h2>
20017///
20018
20019#[doc=r###"```rust
20020let myFont;
20021function preload() {
20022  myFont = loadFont('assets/fonts/inconsolata.ttf');
20023}
20024function setup() {
20025  background(200);
20026  let num1 = 321;
20027  let num2 = -1321;
20028
20029  noStroke();
20030  fill(0);
20031  textFont(myFont);
20032  textSize(22);
20033
20034  // nfs() aligns num1 (positive number) with num2 (negative number) by
20035  // adding a blank space in front of the num1 (positive number)
20036  // [left = 4] in num1 add one 0 in front, to align the digits with num2
20037  // [right = 2] in num1 and num2 adds two 0's after both numbers
20038  // To see the differences check the example of nf() too.
20039  text(nfs(num1, 4, 2), 10, 30);
20040  text(nfs(num2, 4, 2), 10, 80);
20041  // Draw dividing line
20042  stroke(120);
20043  line(0, 50, width, 50);
20044}
20045```"###]
20046/// <h2>Overloads</h2>
20047///
20048#[doc = r##"<code>num</code> the Number to format
20049
20050"##]
20051///
20052///
20053#[doc = r##"<code>left?</code> number of digits to the left of the decimal
20054                               point
20055
20056"##]
20057///
20058///
20059#[doc = r##"<code>right?</code> number of digits to the right of the
20060                               decimal point
20061
20062"##]
20063///
20064///
20065/// ---
20066///
20067///
20068#[doc = r##"<code>nums</code> the Numbers to format
20069
20070"##]
20071///
20072///
20073#[doc = r##"<code>left?</code> number of digits to the left of the decimal
20074                               point
20075
20076"##]
20077///
20078///
20079#[doc = r##"<code>right?</code> number of digits to the right of the
20080                               decimal point
20081
20082"##]
20083///
20084///
20085/// ---
20086///
20087
20088pub static nfs: NfsInternalType = NfsInternalType;
20089#[doc(hidden)]
20090pub struct NfsInternalType;
20091
20092
20093#[wasm_bindgen]
20094extern {
20095    #[wasm_bindgen(js_name = "nfs")]
20096    fn nfs2081774705(_ : f64, _ : i32, _ : i32, ) -> String;
20097}
20098
20099#[doc(hidden)]
20100impl FnOnce<(f64,i32,i32,)> for NfsInternalType {
20101    type Output = String;
20102    extern "rust-call" fn call_once(self, args: (f64,i32,i32,)) -> Self::Output {
20103        nfs2081774705.call(args)
20104    }
20105}
20106
20107#[doc(hidden)]
20108impl FnMut<(f64,i32,i32,)> for NfsInternalType {
20109    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,i32,)) -> Self::Output {
20110        nfs2081774705.call(args)
20111    }
20112}
20113
20114#[doc(hidden)]
20115impl Fn<(f64,i32,i32,)> for NfsInternalType {
20116    extern "rust-call" fn call(&self, args: (f64,i32,i32,)) -> Self::Output {
20117        nfs2081774705.call(args)
20118    }
20119}
20120
20121#[wasm_bindgen]
20122extern {
20123    #[wasm_bindgen(js_name = "nfs")]
20124    fn nfs3918230971(_ : f64, _ : i32, ) -> String;
20125}
20126
20127#[doc(hidden)]
20128impl FnOnce<(f64,i32,)> for NfsInternalType {
20129    type Output = String;
20130    extern "rust-call" fn call_once(self, args: (f64,i32,)) -> Self::Output {
20131        nfs3918230971.call(args)
20132    }
20133}
20134
20135#[doc(hidden)]
20136impl FnMut<(f64,i32,)> for NfsInternalType {
20137    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,)) -> Self::Output {
20138        nfs3918230971.call(args)
20139    }
20140}
20141
20142#[doc(hidden)]
20143impl Fn<(f64,i32,)> for NfsInternalType {
20144    extern "rust-call" fn call(&self, args: (f64,i32,)) -> Self::Output {
20145        nfs3918230971.call(args)
20146    }
20147}
20148
20149#[wasm_bindgen]
20150extern {
20151    #[wasm_bindgen(js_name = "nfs")]
20152    fn nfs982935868(_ : f64, ) -> String;
20153}
20154
20155#[doc(hidden)]
20156impl FnOnce<(f64,)> for NfsInternalType {
20157    type Output = String;
20158    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
20159        nfs982935868.call(args)
20160    }
20161}
20162
20163#[doc(hidden)]
20164impl FnMut<(f64,)> for NfsInternalType {
20165    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
20166        nfs982935868.call(args)
20167    }
20168}
20169
20170#[doc(hidden)]
20171impl Fn<(f64,)> for NfsInternalType {
20172    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
20173        nfs982935868.call(args)
20174    }
20175}
20176
20177#[wasm_bindgen]
20178extern {
20179    #[wasm_bindgen(js_name = "nfs")]
20180    fn nfs4257406057(_ : js_sys::Array, _ : i32, _ : i32, ) ;
20181}
20182
20183#[doc(hidden)]
20184impl FnOnce<(js_sys::Array,i32,i32,)> for NfsInternalType {
20185    type Output = ();
20186    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
20187        nfs4257406057.call(args)
20188    }
20189}
20190
20191#[doc(hidden)]
20192impl FnMut<(js_sys::Array,i32,i32,)> for NfsInternalType {
20193    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
20194        nfs4257406057.call(args)
20195    }
20196}
20197
20198#[doc(hidden)]
20199impl Fn<(js_sys::Array,i32,i32,)> for NfsInternalType {
20200    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
20201        nfs4257406057.call(args)
20202    }
20203}
20204
20205#[wasm_bindgen]
20206extern {
20207    #[wasm_bindgen(js_name = "nfs")]
20208    fn nfs2788245080(_ : js_sys::Array, _ : i32, ) ;
20209}
20210
20211#[doc(hidden)]
20212impl FnOnce<(js_sys::Array,i32,)> for NfsInternalType {
20213    type Output = ();
20214    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,)) -> Self::Output {
20215        nfs2788245080.call(args)
20216    }
20217}
20218
20219#[doc(hidden)]
20220impl FnMut<(js_sys::Array,i32,)> for NfsInternalType {
20221    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,)) -> Self::Output {
20222        nfs2788245080.call(args)
20223    }
20224}
20225
20226#[doc(hidden)]
20227impl Fn<(js_sys::Array,i32,)> for NfsInternalType {
20228    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,)) -> Self::Output {
20229        nfs2788245080.call(args)
20230    }
20231}
20232
20233#[wasm_bindgen]
20234extern {
20235    #[wasm_bindgen(js_name = "nfs")]
20236    fn nfs737673710(_ : js_sys::Array, ) ;
20237}
20238
20239#[doc(hidden)]
20240impl FnOnce<(js_sys::Array,)> for NfsInternalType {
20241    type Output = ();
20242    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
20243        nfs737673710.call(args)
20244    }
20245}
20246
20247#[doc(hidden)]
20248impl FnMut<(js_sys::Array,)> for NfsInternalType {
20249    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
20250        nfs737673710.call(args)
20251    }
20252}
20253
20254#[doc(hidden)]
20255impl Fn<(js_sys::Array,)> for NfsInternalType {
20256    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
20257        nfs737673710.call(args)
20258    }
20259}
20260#[doc=r##"<p>The <a href="#/p5/split">split()</a> function maps to String.split(), it breaks a String into
20261pieces using a character or string as the delimiter. The delim parameter
20262specifies the character or characters that mark the boundaries between
20263each piece. A String[] array is returned that contains each of the pieces.</p>
20264<p>The <a href="#/p5/splitTokens">splitTokens()</a> function works in a similar fashion, except that it
20265splits using a range of characters instead of a specific character or
20266sequence.</p>
20267"##]
20268///<h2>Examples</h2>
20269///
20270
20271#[doc=r###"```rust
20272let names = 'Pat,Xio,Alex';
20273let splitString = split(names, ',');
20274text(splitString[0], 5, 30);
20275text(splitString[1], 5, 50);
20276text(splitString[2], 5, 70);
20277```"###]
20278/// <h2>Parameters</h2>
20279///
20280#[doc = r##"<code>value</code> the String to be split
20281
20282"##]
20283///
20284///
20285#[doc = r##"<code>delim</code> the String used to separate the data
20286
20287"##]
20288///
20289
20290pub static split: SplitInternalType = SplitInternalType;
20291#[doc(hidden)]
20292pub struct SplitInternalType;
20293
20294
20295#[wasm_bindgen]
20296extern {
20297    #[wasm_bindgen(js_name = "split")]
20298    fn split1601592130(_ : & str, _ : & str, ) ;
20299}
20300
20301#[doc(hidden)]
20302impl FnOnce<(&'_ str,&'_ str,)> for SplitInternalType {
20303    type Output = ();
20304    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
20305        split1601592130.call(args)
20306    }
20307}
20308
20309#[doc(hidden)]
20310impl FnMut<(&'_ str,&'_ str,)> for SplitInternalType {
20311    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
20312        split1601592130.call(args)
20313    }
20314}
20315
20316#[doc(hidden)]
20317impl Fn<(&'_ str,&'_ str,)> for SplitInternalType {
20318    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
20319        split1601592130.call(args)
20320    }
20321}
20322#[doc=r##"<p>The <a href="#/p5/splitTokens">splitTokens()</a> function splits a String at one or many character
20323delimiters or "tokens." The delim parameter specifies the character or
20324characters to be used as a boundary.</p>
20325<p>If no delim characters are specified, any whitespace character is used to
20326split. Whitespace characters include tab (\t), line feed (\n), carriage
20327return (\r), form feed (\f), and space.</p>
20328"##]
20329///<h2>Examples</h2>
20330///
20331
20332#[doc=r###"```rust
20333function setup() {
20334  let myStr = 'Mango, Banana, Lime';
20335  let myStrArr = splitTokens(myStr, ',');
20336
20337  print(myStrArr); // prints : ["Mango"," Banana"," Lime"]
20338}
20339```"###]
20340/// <h2>Parameters</h2>
20341///
20342#[doc = r##"<code>value</code> the String to be split
20343
20344"##]
20345///
20346///
20347#[doc = r##"<code>delim?</code> list of individual Strings that will be used as
20348                         separators
20349
20350"##]
20351///
20352
20353pub static splitTokens: SplitTokensInternalType = SplitTokensInternalType;
20354#[doc(hidden)]
20355pub struct SplitTokensInternalType;
20356
20357
20358#[wasm_bindgen]
20359extern {
20360    #[wasm_bindgen(js_name = "splitTokens")]
20361    fn splitTokens3487344536(_ : & str, _ : & str, ) ;
20362}
20363
20364#[doc(hidden)]
20365impl FnOnce<(&'_ str,&'_ str,)> for SplitTokensInternalType {
20366    type Output = ();
20367    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
20368        splitTokens3487344536.call(args)
20369    }
20370}
20371
20372#[doc(hidden)]
20373impl FnMut<(&'_ str,&'_ str,)> for SplitTokensInternalType {
20374    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
20375        splitTokens3487344536.call(args)
20376    }
20377}
20378
20379#[doc(hidden)]
20380impl Fn<(&'_ str,&'_ str,)> for SplitTokensInternalType {
20381    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
20382        splitTokens3487344536.call(args)
20383    }
20384}
20385
20386#[wasm_bindgen]
20387extern {
20388    #[wasm_bindgen(js_name = "splitTokens")]
20389    fn splitTokens2440679195(_ : & str, ) ;
20390}
20391
20392#[doc(hidden)]
20393impl FnOnce<(&'_ str,)> for SplitTokensInternalType {
20394    type Output = ();
20395    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
20396        splitTokens2440679195.call(args)
20397    }
20398}
20399
20400#[doc(hidden)]
20401impl FnMut<(&'_ str,)> for SplitTokensInternalType {
20402    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
20403        splitTokens2440679195.call(args)
20404    }
20405}
20406
20407#[doc(hidden)]
20408impl Fn<(&'_ str,)> for SplitTokensInternalType {
20409    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
20410        splitTokens2440679195.call(args)
20411    }
20412}
20413#[doc=r##"<p>Removes whitespace characters from the beginning and end of a String. In
20414addition to standard whitespace characters such as space, carriage return,
20415and tab, this function also removes the Unicode "nbsp" character.</p>
20416"##]
20417///<h2>Examples</h2>
20418///
20419
20420#[doc=r###"```rust
20421let string = trim('  No new lines\n   ');
20422text(string + ' here', 2, 50);
20423```"###]
20424/// <h2>Overloads</h2>
20425///
20426#[doc = r##"<code>str</code> a String to be trimmed
20427
20428"##]
20429///
20430///
20431/// ---
20432///
20433///
20434#[doc = r##"<code>strs</code> an Array of Strings to be trimmed
20435
20436"##]
20437///
20438///
20439/// ---
20440///
20441
20442pub static trim: TrimInternalType = TrimInternalType;
20443#[doc(hidden)]
20444pub struct TrimInternalType;
20445
20446
20447#[wasm_bindgen]
20448extern {
20449    #[wasm_bindgen(js_name = "trim")]
20450    fn trim4124924324(_ : & str, ) -> String;
20451}
20452
20453#[doc(hidden)]
20454impl FnOnce<(&'_ str,)> for TrimInternalType {
20455    type Output = String;
20456    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
20457        trim4124924324.call(args)
20458    }
20459}
20460
20461#[doc(hidden)]
20462impl FnMut<(&'_ str,)> for TrimInternalType {
20463    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
20464        trim4124924324.call(args)
20465    }
20466}
20467
20468#[doc(hidden)]
20469impl Fn<(&'_ str,)> for TrimInternalType {
20470    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
20471        trim4124924324.call(args)
20472    }
20473}
20474
20475#[wasm_bindgen]
20476extern {
20477    #[wasm_bindgen(js_name = "trim")]
20478    fn trim912580576(_ : js_sys::Array, ) ;
20479}
20480
20481#[doc(hidden)]
20482impl FnOnce<(js_sys::Array,)> for TrimInternalType {
20483    type Output = ();
20484    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
20485        trim912580576.call(args)
20486    }
20487}
20488
20489#[doc(hidden)]
20490impl FnMut<(js_sys::Array,)> for TrimInternalType {
20491    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
20492        trim912580576.call(args)
20493    }
20494}
20495
20496#[doc(hidden)]
20497impl Fn<(js_sys::Array,)> for TrimInternalType {
20498    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
20499        trim912580576.call(args)
20500    }
20501}
20502#[doc=r##"<p>The inverse of <a href="#/p5/cos">cos()</a>, returns the arc cosine of a value.
20503This function expects the values in the range of -1 to 1 and values are returned in
20504the range 0 to PI (3.1415927) if the angleMode is RADIANS or 0 to 180 if the
20505angle mode is DEGREES.</p>
20506"##]
20507///<h2>Examples</h2>
20508///
20509
20510#[doc=r###"```rust
20511let a = PI;
20512let c = cos(a);
20513let ac = acos(c);
20514// Prints: "3.1415927 : -1.0 : 3.1415927"
20515print(a + ' : ' + c + ' : ' + ac);
20516```"###]
20517#[doc=r###"```rust
20518let a = PI + PI / 4.0;
20519let c = cos(a);
20520let ac = acos(c);
20521// Prints: "3.926991 : -0.70710665 : 2.3561943"
20522print(a + ' : ' + c + ' : ' + ac);
20523```"###]
20524/// <h2>Parameters</h2>
20525///
20526#[doc = r##"<code>value</code> the value whose arc cosine is to be returned
20527
20528"##]
20529///
20530
20531pub static acos: AcosInternalType = AcosInternalType;
20532#[doc(hidden)]
20533pub struct AcosInternalType;
20534
20535
20536#[wasm_bindgen]
20537extern {
20538    #[wasm_bindgen(js_name = "acos")]
20539    fn acos1188825790(_ : f64, ) -> f64;
20540}
20541
20542#[doc(hidden)]
20543impl FnOnce<(f64,)> for AcosInternalType {
20544    type Output = f64;
20545    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
20546        acos1188825790.call(args)
20547    }
20548}
20549
20550#[doc(hidden)]
20551impl FnMut<(f64,)> for AcosInternalType {
20552    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
20553        acos1188825790.call(args)
20554    }
20555}
20556
20557#[doc(hidden)]
20558impl Fn<(f64,)> for AcosInternalType {
20559    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
20560        acos1188825790.call(args)
20561    }
20562}
20563#[doc=r##"<p>The inverse of <a href="#/p5/sin">sin()</a>, returns the arc sine of a value.
20564This function expects the values in the range of -1 to 1 and values are returned
20565in the range -PI/2 to PI/2 if the angleMode is RADIANS or -90 to 90 if the angle
20566mode is DEGREES.</p>
20567"##]
20568///<h2>Examples</h2>
20569///
20570
20571#[doc=r###"```rust
20572let a = PI / 3.0;
20573let s = sin(a);
20574let as = asin(s);
20575// Prints: "1.0471975 : 0.86602540 : 1.0471975"
20576print(a + ' : ' + s + ' : ' + as);
20577```"###]
20578#[doc=r###"```rust
20579let a = PI + PI / 3.0;
20580let s = sin(a);
20581let as = asin(s);
20582// Prints: "4.1887902 : -0.86602540 : -1.0471975"
20583print(a + ' : ' + s + ' : ' + as);
20584```"###]
20585/// <h2>Parameters</h2>
20586///
20587#[doc = r##"<code>value</code> the value whose arc sine is to be returned
20588
20589"##]
20590///
20591
20592pub static asin: AsinInternalType = AsinInternalType;
20593#[doc(hidden)]
20594pub struct AsinInternalType;
20595
20596
20597#[wasm_bindgen]
20598extern {
20599    #[wasm_bindgen(js_name = "asin")]
20600    fn asin2813492774(_ : f64, ) -> f64;
20601}
20602
20603#[doc(hidden)]
20604impl FnOnce<(f64,)> for AsinInternalType {
20605    type Output = f64;
20606    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
20607        asin2813492774.call(args)
20608    }
20609}
20610
20611#[doc(hidden)]
20612impl FnMut<(f64,)> for AsinInternalType {
20613    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
20614        asin2813492774.call(args)
20615    }
20616}
20617
20618#[doc(hidden)]
20619impl Fn<(f64,)> for AsinInternalType {
20620    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
20621        asin2813492774.call(args)
20622    }
20623}
20624#[doc=r##"<p>The inverse of <a href="#/p5/tan">tan()</a>, returns the arc tangent of a value.
20625This function expects the values in the range of -Infinity to Infinity (exclusive) and
20626values are returned in the range -PI/2 to PI/2 if the angleMode is RADIANS or
20627-90 to 90 if the angle mode is DEGREES.</p>
20628"##]
20629///<h2>Examples</h2>
20630///
20631
20632#[doc=r###"```rust
20633let a = PI / 3.0;
20634let t = tan(a);
20635let at = atan(t);
20636// Prints: "1.0471975 : 1.7320508 : 1.0471975"
20637print(a + ' : ' + t + ' : ' + at);
20638```"###]
20639#[doc=r###"```rust
20640let a = PI + PI / 3.0;
20641let t = tan(a);
20642let at = atan(t);
20643// Prints: "4.1887902 : 1.7320508 : 1.0471975"
20644print(a + ' : ' + t + ' : ' + at);
20645```"###]
20646/// <h2>Parameters</h2>
20647///
20648#[doc = r##"<code>value</code> the value whose arc tangent is to be returned
20649
20650"##]
20651///
20652
20653pub static atan: AtanInternalType = AtanInternalType;
20654#[doc(hidden)]
20655pub struct AtanInternalType;
20656
20657
20658#[wasm_bindgen]
20659extern {
20660    #[wasm_bindgen(js_name = "atan")]
20661    fn atan3812741378(_ : f64, ) -> f64;
20662}
20663
20664#[doc(hidden)]
20665impl FnOnce<(f64,)> for AtanInternalType {
20666    type Output = f64;
20667    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
20668        atan3812741378.call(args)
20669    }
20670}
20671
20672#[doc(hidden)]
20673impl FnMut<(f64,)> for AtanInternalType {
20674    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
20675        atan3812741378.call(args)
20676    }
20677}
20678
20679#[doc(hidden)]
20680impl Fn<(f64,)> for AtanInternalType {
20681    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
20682        atan3812741378.call(args)
20683    }
20684}
20685#[doc=r##"<p>Calculates the angle (in radians) from a specified point to the coordinate
20686origin as measured from the positive x-axis. Values are returned as a
20687float in the range from PI to -PI if the angleMode is RADIANS or 180 to
20688-180 if the angleMode is DEGREES. The atan2<a href="#/p5/">()</a> function is
20689most often used for orienting geometry to the position of the cursor.</p>
20690<p>Note: The y-coordinate of the point is the first parameter, and the
20691x-coordinate is the second parameter, due the the structure of calculating
20692the tangent.</p>
20693"##]
20694///<h2>Examples</h2>
20695///
20696
20697#[doc=r###"```rust
20698function draw() {
20699  background(204);
20700  translate(width / 2, height / 2);
20701  let a = atan2(mouseY - height / 2, mouseX - width / 2);
20702  rotate(a);
20703  rect(-30, -5, 60, 10);
20704}
20705```"###]
20706/// <h2>Parameters</h2>
20707///
20708#[doc = r##"<code>y</code> y-coordinate of the point
20709
20710"##]
20711///
20712///
20713#[doc = r##"<code>x</code> x-coordinate of the point
20714
20715"##]
20716///
20717
20718pub static atan2: Atan2InternalType = Atan2InternalType;
20719#[doc(hidden)]
20720pub struct Atan2InternalType;
20721
20722
20723#[wasm_bindgen]
20724extern {
20725    #[wasm_bindgen(js_name = "atan2")]
20726    fn atan257021824(_ : f64, _ : f64, ) -> f64;
20727}
20728
20729#[doc(hidden)]
20730impl FnOnce<(f64,f64,)> for Atan2InternalType {
20731    type Output = f64;
20732    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
20733        atan257021824.call(args)
20734    }
20735}
20736
20737#[doc(hidden)]
20738impl FnMut<(f64,f64,)> for Atan2InternalType {
20739    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
20740        atan257021824.call(args)
20741    }
20742}
20743
20744#[doc(hidden)]
20745impl Fn<(f64,f64,)> for Atan2InternalType {
20746    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
20747        atan257021824.call(args)
20748    }
20749}
20750#[doc=r##"<p>Calculates the cosine of an angle. This function takes into account the
20751current <a href="#/p5/angleMode">angleMode</a>. Values are returned in the range -1 to 1.</p>
20752"##]
20753///<h2>Examples</h2>
20754///
20755
20756#[doc=r###"```rust
20757let a = 0.0;
20758let inc = TWO_PI / 25.0;
20759for (let i = 0; i < 25; i++) {
20760  line(i * 4, 50, i * 4, 50 + cos(a) * 40.0);
20761  a = a + inc;
20762}
20763```"###]
20764/// <h2>Parameters</h2>
20765///
20766#[doc = r##"<code>angle</code> the angle
20767
20768"##]
20769///
20770
20771pub static cos: CosInternalType = CosInternalType;
20772#[doc(hidden)]
20773pub struct CosInternalType;
20774
20775
20776#[wasm_bindgen]
20777extern {
20778    #[wasm_bindgen(js_name = "cos")]
20779    fn cos3768136020(_ : f64, ) -> f64;
20780}
20781
20782#[doc(hidden)]
20783impl FnOnce<(f64,)> for CosInternalType {
20784    type Output = f64;
20785    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
20786        cos3768136020.call(args)
20787    }
20788}
20789
20790#[doc(hidden)]
20791impl FnMut<(f64,)> for CosInternalType {
20792    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
20793        cos3768136020.call(args)
20794    }
20795}
20796
20797#[doc(hidden)]
20798impl Fn<(f64,)> for CosInternalType {
20799    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
20800        cos3768136020.call(args)
20801    }
20802}
20803#[doc=r##"<p>Calculates the sine of an angle. This function takes into account the
20804current <a href="#/p5/angleMode">angleMode</a>. Values are returned in the range -1 to 1.</p>
20805"##]
20806///<h2>Examples</h2>
20807///
20808
20809#[doc=r###"```rust
20810let a = 0.0;
20811let inc = TWO_PI / 25.0;
20812for (let i = 0; i < 25; i++) {
20813  line(i * 4, 50, i * 4, 50 + sin(a) * 40.0);
20814  a = a + inc;
20815}
20816```"###]
20817/// <h2>Parameters</h2>
20818///
20819#[doc = r##"<code>angle</code> the angle
20820
20821"##]
20822///
20823
20824pub static sin: SinInternalType = SinInternalType;
20825#[doc(hidden)]
20826pub struct SinInternalType;
20827
20828
20829#[wasm_bindgen]
20830extern {
20831    #[wasm_bindgen(js_name = "sin")]
20832    fn sin1278000597(_ : f64, ) -> f64;
20833}
20834
20835#[doc(hidden)]
20836impl FnOnce<(f64,)> for SinInternalType {
20837    type Output = f64;
20838    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
20839        sin1278000597.call(args)
20840    }
20841}
20842
20843#[doc(hidden)]
20844impl FnMut<(f64,)> for SinInternalType {
20845    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
20846        sin1278000597.call(args)
20847    }
20848}
20849
20850#[doc(hidden)]
20851impl Fn<(f64,)> for SinInternalType {
20852    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
20853        sin1278000597.call(args)
20854    }
20855}
20856#[doc=r##"<p>Calculates the tangent of an angle. This function takes into account
20857the current <a href="#/p5/angleMode">angleMode</a>. Values are returned in the range of all real numbers.</p>
20858"##]
20859///<h2>Examples</h2>
20860///
20861
20862#[doc=r###"```rust
20863let a = 0.0;
20864let inc = TWO_PI / 50.0;
20865for (let i = 0; i < 100; i = i + 2) {
20866  line(i, 50, i, 50 + tan(a) * 2.0);
20867  a = a + inc;
20868}
20869```"###]
20870/// <h2>Parameters</h2>
20871///
20872#[doc = r##"<code>angle</code> the angle
20873
20874"##]
20875///
20876
20877pub static tan: TanInternalType = TanInternalType;
20878#[doc(hidden)]
20879pub struct TanInternalType;
20880
20881
20882#[wasm_bindgen]
20883extern {
20884    #[wasm_bindgen(js_name = "tan")]
20885    fn tan2789107627(_ : f64, ) -> f64;
20886}
20887
20888#[doc(hidden)]
20889impl FnOnce<(f64,)> for TanInternalType {
20890    type Output = f64;
20891    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
20892        tan2789107627.call(args)
20893    }
20894}
20895
20896#[doc(hidden)]
20897impl FnMut<(f64,)> for TanInternalType {
20898    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
20899        tan2789107627.call(args)
20900    }
20901}
20902
20903#[doc(hidden)]
20904impl Fn<(f64,)> for TanInternalType {
20905    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
20906        tan2789107627.call(args)
20907    }
20908}
20909#[doc=r##"<p>Converts a radian measurement to its corresponding value in degrees.
20910Radians and degrees are two ways of measuring the same thing. There are
20911360 degrees in a circle and 2*PI radians in a circle. For example,
2091290° = PI/2 = 1.5707964. This function does not take into account the
20913current <a href="#/p5/angleMode">angleMode</a>.</p>
20914"##]
20915///<h2>Examples</h2>
20916///
20917
20918#[doc=r###"```rust
20919let rad = PI / 4;
20920let deg = degrees(rad);
20921print(rad + ' radians is ' + deg + ' degrees');
20922// Prints: 0.7853981633974483 radians is 45 degrees
20923```"###]
20924/// <h2>Parameters</h2>
20925///
20926#[doc = r##"<code>radians</code> the radians value to convert to degrees
20927
20928"##]
20929///
20930
20931pub static degrees: DegreesInternalType = DegreesInternalType;
20932#[doc(hidden)]
20933pub struct DegreesInternalType;
20934
20935
20936#[wasm_bindgen]
20937extern {
20938    #[wasm_bindgen(js_name = "degrees")]
20939    fn degrees1983220414(_ : f64, ) -> f64;
20940}
20941
20942#[doc(hidden)]
20943impl FnOnce<(f64,)> for DegreesInternalType {
20944    type Output = f64;
20945    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
20946        degrees1983220414.call(args)
20947    }
20948}
20949
20950#[doc(hidden)]
20951impl FnMut<(f64,)> for DegreesInternalType {
20952    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
20953        degrees1983220414.call(args)
20954    }
20955}
20956
20957#[doc(hidden)]
20958impl Fn<(f64,)> for DegreesInternalType {
20959    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
20960        degrees1983220414.call(args)
20961    }
20962}
20963#[doc=r##"<p>Converts a degree measurement to its corresponding value in radians.
20964Radians and degrees are two ways of measuring the same thing. There are
20965360 degrees in a circle and 2*PI radians in a circle. For example,
2096690° = PI/2 = 1.5707964. This function does not take into account the
20967current <a href="#/p5/angleMode">angleMode</a>.</p>
20968"##]
20969///<h2>Examples</h2>
20970///
20971
20972#[doc=r###"```rust
20973let deg = 45.0;
20974let rad = radians(deg);
20975print(deg + ' degrees is ' + rad + ' radians');
20976// Prints: 45 degrees is 0.7853981633974483 radians
20977```"###]
20978/// <h2>Parameters</h2>
20979///
20980#[doc = r##"<code>degrees</code> the degree value to convert to radians
20981
20982"##]
20983///
20984
20985pub static radians: RadiansInternalType = RadiansInternalType;
20986#[doc(hidden)]
20987pub struct RadiansInternalType;
20988
20989
20990#[wasm_bindgen]
20991extern {
20992    #[wasm_bindgen(js_name = "radians")]
20993    fn radians3334138422(_ : f64, ) -> f64;
20994}
20995
20996#[doc(hidden)]
20997impl FnOnce<(f64,)> for RadiansInternalType {
20998    type Output = f64;
20999    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
21000        radians3334138422.call(args)
21001    }
21002}
21003
21004#[doc(hidden)]
21005impl FnMut<(f64,)> for RadiansInternalType {
21006    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
21007        radians3334138422.call(args)
21008    }
21009}
21010
21011#[doc(hidden)]
21012impl Fn<(f64,)> for RadiansInternalType {
21013    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
21014        radians3334138422.call(args)
21015    }
21016}
21017#[doc=r##"<p>Sets the current mode of p5 to given mode. Default mode is RADIANS.</p>
21018"##]
21019///<h2>Examples</h2>
21020///
21021
21022#[doc=r###"```rust
21023function draw() {
21024  background(204);
21025  angleMode(DEGREES); // Change the mode to DEGREES
21026  let a = atan2(mouseY - height / 2, mouseX - width / 2);
21027  translate(width / 2, height / 2);
21028  push();
21029  rotate(a);
21030  rect(-20, -5, 40, 10); // Larger rectangle is rotating in degrees
21031  pop();
21032  angleMode(RADIANS); // Change the mode to RADIANS
21033  rotate(a); // variable a stays the same
21034  rect(-40, -5, 20, 10); // Smaller rectangle is rotating in radians
21035}
21036```"###]
21037/// <h2>Parameters</h2>
21038///
21039#[doc = r##"<code>mode</code> either RADIANS or DEGREES
21040
21041"##]
21042///
21043
21044pub static angleMode: AngleModeInternalType = AngleModeInternalType;
21045#[doc(hidden)]
21046pub struct AngleModeInternalType;
21047
21048
21049#[wasm_bindgen]
21050extern {
21051    #[wasm_bindgen(js_name = "angleMode")]
21052    fn angleMode105599934(_ : ANGLE_MODE, ) ;
21053}
21054
21055#[doc(hidden)]
21056impl FnOnce<(ANGLE_MODE,)> for AngleModeInternalType {
21057    type Output = ();
21058    extern "rust-call" fn call_once(self, args: (ANGLE_MODE,)) -> Self::Output {
21059        angleMode105599934.call(args)
21060    }
21061}
21062
21063#[doc(hidden)]
21064impl FnMut<(ANGLE_MODE,)> for AngleModeInternalType {
21065    extern "rust-call" fn call_mut(&mut self, args: (ANGLE_MODE,)) -> Self::Output {
21066        angleMode105599934.call(args)
21067    }
21068}
21069
21070#[doc(hidden)]
21071impl Fn<(ANGLE_MODE,)> for AngleModeInternalType {
21072    extern "rust-call" fn call(&self, args: (ANGLE_MODE,)) -> Self::Output {
21073        angleMode105599934.call(args)
21074    }
21075}
21076#[doc=r##"<p>Set attributes for the WebGL Drawing context.
21077This is a way of adjusting how the WebGL
21078renderer works to fine-tune the display and performance.</p>
21079<p>Note that this will reinitialize the drawing context
21080if called after the WebGL canvas is made.</p>
21081<p>If an object is passed as the parameter, all attributes
21082not declared in the object will be set to defaults.</p>
21083<p>The available attributes are:
21084<br>
21085alpha - indicates if the canvas contains an alpha buffer
21086default is true</p>
21087<p>depth - indicates whether the drawing buffer has a depth buffer
21088of at least 16 bits - default is true</p>
21089<p>stencil - indicates whether the drawing buffer has a stencil buffer
21090of at least 8 bits</p>
21091<p>antialias - indicates whether or not to perform anti-aliasing
21092default is false (true in Safari)</p>
21093<p>premultipliedAlpha - indicates that the page compositor will assume
21094the drawing buffer contains colors with pre-multiplied alpha
21095default is false</p>
21096<p>preserveDrawingBuffer - if true the buffers will not be cleared and
21097and will preserve their values until cleared or overwritten by author
21098(note that p5 clears automatically on draw loop)
21099default is true</p>
21100<p>perPixelLighting - if true, per-pixel lighting will be used in the
21101lighting shader otherwise per-vertex lighting is used.
21102default is true.</p>
21103"##]
21104///<h2>Examples</h2>
21105///
21106
21107#[doc=r###"```rust
21108function setup() {
21109  createCanvas(100, 100, WEBGL);
21110}
21111
21112function draw() {
21113  background(255);
21114  push();
21115  rotateZ(frameCount * 0.02);
21116  rotateX(frameCount * 0.02);
21117  rotateY(frameCount * 0.02);
21118  fill(0, 0, 0);
21119  box(50);
21120  pop();
21121}
21122```"###]
21123#[doc=r###"```rust
21124function setup() {
21125  setAttributes('antialias', true);
21126  createCanvas(100, 100, WEBGL);
21127}
21128
21129function draw() {
21130  background(255);
21131  push();
21132  rotateZ(frameCount * 0.02);
21133  rotateX(frameCount * 0.02);
21134  rotateY(frameCount * 0.02);
21135  fill(0, 0, 0);
21136  box(50);
21137  pop();
21138}
21139```"###]
21140#[doc=r###"```rust
21141// press the mouse button to disable perPixelLighting
21142function setup() {
21143  createCanvas(100, 100, WEBGL);
21144  noStroke();
21145  fill(255);
21146}
21147
21148let lights = [
21149  { c: '#f00', t: 1.12, p: 1.91, r: 0.2 },
21150  { c: '#0f0', t: 1.21, p: 1.31, r: 0.2 },
21151  { c: '#00f', t: 1.37, p: 1.57, r: 0.2 },
21152  { c: '#ff0', t: 1.12, p: 1.91, r: 0.7 },
21153  { c: '#0ff', t: 1.21, p: 1.31, r: 0.7 },
21154  { c: '#f0f', t: 1.37, p: 1.57, r: 0.7 }
21155];
21156
21157function draw() {
21158  let t = millis() / 1000 + 1000;
21159  background(0);
21160  directionalLight(color('#222'), 1, 1, 1);
21161
21162  for (let i = 0; i < lights.length; i++) {
21163    let light = lights[i];
21164    pointLight(
21165      color(light.c),
21166      p5.Vector.fromAngles(t * light.t, t * light.p, width * light.r)
21167    );
21168  }
21169
21170  specularMaterial(255);
21171  sphere(width * 0.1);
21172
21173  rotateX(t * 0.77);
21174  rotateY(t * 0.83);
21175  rotateZ(t * 0.91);
21176  torus(width * 0.3, width * 0.07, 24, 10);
21177}
21178
21179function mousePressed() {
21180  setAttributes('perPixelLighting', false);
21181  noStroke();
21182  fill(255);
21183}
21184function mouseReleased() {
21185  setAttributes('perPixelLighting', true);
21186  noStroke();
21187  fill(255);
21188}
21189```"###]
21190/// <h2>Overloads</h2>
21191///
21192#[doc = r##"<code>key</code> Name of attribute
21193
21194"##]
21195///
21196///
21197#[doc = r##"<code>value</code> New value of named attribute
21198
21199"##]
21200///
21201///
21202/// ---
21203///
21204///
21205#[doc = r##"<code>obj</code> object with key-value pairs
21206
21207"##]
21208///
21209///
21210/// ---
21211///
21212
21213pub static setAttributes: SetAttributesInternalType = SetAttributesInternalType;
21214#[doc(hidden)]
21215pub struct SetAttributesInternalType;
21216
21217
21218#[wasm_bindgen]
21219extern {
21220    #[wasm_bindgen(js_name = "setAttributes")]
21221    fn setAttributes2279280046(_ : & str, _ : bool, ) ;
21222}
21223
21224#[doc(hidden)]
21225impl FnOnce<(&'_ str,bool,)> for SetAttributesInternalType {
21226    type Output = ();
21227    extern "rust-call" fn call_once(self, args: (&'_ str,bool,)) -> Self::Output {
21228        setAttributes2279280046.call(args)
21229    }
21230}
21231
21232#[doc(hidden)]
21233impl FnMut<(&'_ str,bool,)> for SetAttributesInternalType {
21234    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,)) -> Self::Output {
21235        setAttributes2279280046.call(args)
21236    }
21237}
21238
21239#[doc(hidden)]
21240impl Fn<(&'_ str,bool,)> for SetAttributesInternalType {
21241    extern "rust-call" fn call(&self, args: (&'_ str,bool,)) -> Self::Output {
21242        setAttributes2279280046.call(args)
21243    }
21244}
21245
21246#[wasm_bindgen]
21247extern {
21248    #[wasm_bindgen(js_name = "setAttributes")]
21249    fn setAttributes2523539394(_ : JsValue, ) ;
21250}
21251
21252#[doc(hidden)]
21253impl FnOnce<(JsValue,)> for SetAttributesInternalType {
21254    type Output = ();
21255    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
21256        setAttributes2523539394.call(args)
21257    }
21258}
21259
21260#[doc(hidden)]
21261impl FnMut<(JsValue,)> for SetAttributesInternalType {
21262    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
21263        setAttributes2523539394.call(args)
21264    }
21265}
21266
21267#[doc(hidden)]
21268impl Fn<(JsValue,)> for SetAttributesInternalType {
21269    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
21270        setAttributes2523539394.call(args)
21271    }
21272}
21273#[doc=r##"<p>Sets the current alignment for drawing text. Accepts two
21274arguments: horizAlign (LEFT, CENTER, or RIGHT) and
21275vertAlign (TOP, BOTTOM, CENTER, or BASELINE).</p>
21276<p>The horizAlign parameter is in reference to the x value
21277of the <a href="#/p5/text">text()</a> function, while the vertAlign parameter
21278is in reference to the y value.</p>
21279<p>So if you write textAlign(LEFT), you are aligning the left
21280edge of your text to the x value you give in <a href="#/p5/text">text()</a>.
21281If you write textAlign(RIGHT, TOP), you are aligning the right edge
21282of your text to the x value and the top of edge of the text
21283to the y value.</p>
21284"##]
21285///<h2>Examples</h2>
21286///
21287
21288#[doc=r###"```rust
21289textSize(16);
21290textAlign(RIGHT);
21291text('ABCD', 50, 30);
21292textAlign(CENTER);
21293text('EFGH', 50, 50);
21294textAlign(LEFT);
21295text('IJKL', 50, 70);
21296```"###]
21297#[doc=r###"```rust
21298textSize(16);
21299strokeWeight(0.5);
21300
21301line(0, 12, width, 12);
21302textAlign(CENTER, TOP);
21303text('TOP', 0, 12, width);
21304
21305line(0, 37, width, 37);
21306textAlign(CENTER, CENTER);
21307text('CENTER', 0, 37, width);
21308
21309line(0, 62, width, 62);
21310textAlign(CENTER, BASELINE);
21311text('BASELINE', 0, 62, width);
21312
21313line(0, 87, width, 87);
21314textAlign(CENTER, BOTTOM);
21315text('BOTTOM', 0, 87, width);
21316```"###]
21317/// <h2>Overloads</h2>
21318///
21319#[doc = r##"<code>horizAlign</code> horizontal alignment, either LEFT,
21320                           CENTER, or RIGHT
21321
21322"##]
21323///
21324///
21325#[doc = r##"<code>vertAlign?</code> vertical alignment, either TOP,
21326                           BOTTOM, CENTER, or BASELINE
21327
21328"##]
21329///
21330///
21331/// ---
21332///
21333///
21334/// ---
21335///
21336
21337pub static textAlign: TextAlignInternalType = TextAlignInternalType;
21338#[doc(hidden)]
21339pub struct TextAlignInternalType;
21340
21341
21342#[wasm_bindgen]
21343extern {
21344    #[wasm_bindgen(js_name = "textAlign")]
21345    fn textAlign2261606669(_ : HORIZ_ALIGN, _ : VERT_ALIGN, ) ;
21346}
21347
21348#[doc(hidden)]
21349impl FnOnce<(HORIZ_ALIGN,VERT_ALIGN,)> for TextAlignInternalType {
21350    type Output = ();
21351    extern "rust-call" fn call_once(self, args: (HORIZ_ALIGN,VERT_ALIGN,)) -> Self::Output {
21352        textAlign2261606669.call(args)
21353    }
21354}
21355
21356#[doc(hidden)]
21357impl FnMut<(HORIZ_ALIGN,VERT_ALIGN,)> for TextAlignInternalType {
21358    extern "rust-call" fn call_mut(&mut self, args: (HORIZ_ALIGN,VERT_ALIGN,)) -> Self::Output {
21359        textAlign2261606669.call(args)
21360    }
21361}
21362
21363#[doc(hidden)]
21364impl Fn<(HORIZ_ALIGN,VERT_ALIGN,)> for TextAlignInternalType {
21365    extern "rust-call" fn call(&self, args: (HORIZ_ALIGN,VERT_ALIGN,)) -> Self::Output {
21366        textAlign2261606669.call(args)
21367    }
21368}
21369
21370#[wasm_bindgen]
21371extern {
21372    #[wasm_bindgen(js_name = "textAlign")]
21373    fn textAlign68811059(_ : HORIZ_ALIGN, ) ;
21374}
21375
21376#[doc(hidden)]
21377impl FnOnce<(HORIZ_ALIGN,)> for TextAlignInternalType {
21378    type Output = ();
21379    extern "rust-call" fn call_once(self, args: (HORIZ_ALIGN,)) -> Self::Output {
21380        textAlign68811059.call(args)
21381    }
21382}
21383
21384#[doc(hidden)]
21385impl FnMut<(HORIZ_ALIGN,)> for TextAlignInternalType {
21386    extern "rust-call" fn call_mut(&mut self, args: (HORIZ_ALIGN,)) -> Self::Output {
21387        textAlign68811059.call(args)
21388    }
21389}
21390
21391#[doc(hidden)]
21392impl Fn<(HORIZ_ALIGN,)> for TextAlignInternalType {
21393    extern "rust-call" fn call(&self, args: (HORIZ_ALIGN,)) -> Self::Output {
21394        textAlign68811059.call(args)
21395    }
21396}
21397
21398#[wasm_bindgen]
21399extern {
21400    #[wasm_bindgen(js_name = "textAlign")]
21401    fn textAlign4084341697() -> js_sys::Object;
21402}
21403
21404#[doc(hidden)]
21405impl FnOnce<()> for TextAlignInternalType {
21406    type Output = js_sys::Object;
21407    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
21408        textAlign4084341697.call(args)
21409    }
21410}
21411
21412#[doc(hidden)]
21413impl FnMut<()> for TextAlignInternalType {
21414    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
21415        textAlign4084341697.call(args)
21416    }
21417}
21418
21419#[doc(hidden)]
21420impl Fn<()> for TextAlignInternalType {
21421    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
21422        textAlign4084341697.call(args)
21423    }
21424}
21425#[doc=r##"<p>Sets/gets the spacing, in pixels, between lines of text. This setting will be
21426used in all subsequent calls to the <a href="#/p5/text">text()</a> function.</p>
21427"##]
21428///<h2>Examples</h2>
21429///
21430
21431#[doc=r###"```rust
21432let lines = 'L1\nL2\nL3'; // "\n" is a "new line" character
21433textSize(12);
21434
21435textLeading(10);
21436text(lines, 10, 25);
21437
21438textLeading(20);
21439text(lines, 40, 25);
21440
21441textLeading(30);
21442text(lines, 70, 25);
21443```"###]
21444/// <h2>Overloads</h2>
21445///
21446#[doc = r##"<code>leading</code> the size in pixels for spacing between lines
21447
21448"##]
21449///
21450///
21451/// ---
21452///
21453///
21454/// ---
21455///
21456
21457pub static textLeading: TextLeadingInternalType = TextLeadingInternalType;
21458#[doc(hidden)]
21459pub struct TextLeadingInternalType;
21460
21461
21462#[wasm_bindgen]
21463extern {
21464    #[wasm_bindgen(js_name = "textLeading")]
21465    fn textLeading1455853475(_ : f64, ) ;
21466}
21467
21468#[doc(hidden)]
21469impl FnOnce<(f64,)> for TextLeadingInternalType {
21470    type Output = ();
21471    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
21472        textLeading1455853475.call(args)
21473    }
21474}
21475
21476#[doc(hidden)]
21477impl FnMut<(f64,)> for TextLeadingInternalType {
21478    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
21479        textLeading1455853475.call(args)
21480    }
21481}
21482
21483#[doc(hidden)]
21484impl Fn<(f64,)> for TextLeadingInternalType {
21485    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
21486        textLeading1455853475.call(args)
21487    }
21488}
21489
21490#[wasm_bindgen]
21491extern {
21492    #[wasm_bindgen(js_name = "textLeading")]
21493    fn textLeading1098004036() -> f64;
21494}
21495
21496#[doc(hidden)]
21497impl FnOnce<()> for TextLeadingInternalType {
21498    type Output = f64;
21499    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
21500        textLeading1098004036.call(args)
21501    }
21502}
21503
21504#[doc(hidden)]
21505impl FnMut<()> for TextLeadingInternalType {
21506    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
21507        textLeading1098004036.call(args)
21508    }
21509}
21510
21511#[doc(hidden)]
21512impl Fn<()> for TextLeadingInternalType {
21513    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
21514        textLeading1098004036.call(args)
21515    }
21516}
21517#[doc=r##"<p>Sets/gets the current font size. This size will be used in all subsequent
21518calls to the <a href="#/p5/text">text()</a> function. Font size is measured in pixels.</p>
21519"##]
21520///<h2>Examples</h2>
21521///
21522
21523#[doc=r###"```rust
21524textSize(12);
21525text('Font Size 12', 10, 30);
21526textSize(14);
21527text('Font Size 14', 10, 60);
21528textSize(16);
21529text('Font Size 16', 10, 90);
21530```"###]
21531/// <h2>Overloads</h2>
21532///
21533#[doc = r##"<code>theSize</code> the size of the letters in units of pixels
21534
21535"##]
21536///
21537///
21538/// ---
21539///
21540///
21541/// ---
21542///
21543
21544pub static textSize: TextSizeInternalType = TextSizeInternalType;
21545#[doc(hidden)]
21546pub struct TextSizeInternalType;
21547
21548
21549#[wasm_bindgen]
21550extern {
21551    #[wasm_bindgen(js_name = "textSize")]
21552    fn textSize517594270(_ : f64, ) ;
21553}
21554
21555#[doc(hidden)]
21556impl FnOnce<(f64,)> for TextSizeInternalType {
21557    type Output = ();
21558    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
21559        textSize517594270.call(args)
21560    }
21561}
21562
21563#[doc(hidden)]
21564impl FnMut<(f64,)> for TextSizeInternalType {
21565    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
21566        textSize517594270.call(args)
21567    }
21568}
21569
21570#[doc(hidden)]
21571impl Fn<(f64,)> for TextSizeInternalType {
21572    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
21573        textSize517594270.call(args)
21574    }
21575}
21576
21577#[wasm_bindgen]
21578extern {
21579    #[wasm_bindgen(js_name = "textSize")]
21580    fn textSize46458980() -> f64;
21581}
21582
21583#[doc(hidden)]
21584impl FnOnce<()> for TextSizeInternalType {
21585    type Output = f64;
21586    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
21587        textSize46458980.call(args)
21588    }
21589}
21590
21591#[doc(hidden)]
21592impl FnMut<()> for TextSizeInternalType {
21593    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
21594        textSize46458980.call(args)
21595    }
21596}
21597
21598#[doc(hidden)]
21599impl Fn<()> for TextSizeInternalType {
21600    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
21601        textSize46458980.call(args)
21602    }
21603}
21604#[doc=r##"<p>Sets/gets the style of the text for system fonts to NORMAL, ITALIC, BOLD or BOLDITALIC.
21605Note: this may be is overridden by CSS styling. For non-system fonts
21606(opentype, truetype, etc.) please load styled fonts instead.</p>
21607"##]
21608///<h2>Examples</h2>
21609///
21610
21611#[doc=r###"```rust
21612strokeWeight(0);
21613textSize(12);
21614textStyle(NORMAL);
21615text('Font Style Normal', 10, 15);
21616textStyle(ITALIC);
21617text('Font Style Italic', 10, 40);
21618textStyle(BOLD);
21619text('Font Style Bold', 10, 65);
21620textStyle(BOLDITALIC);
21621text('Font Style Bold Italic', 10, 90);
21622```"###]
21623/// <h2>Overloads</h2>
21624///
21625#[doc = r##"<code>theStyle</code> styling for text, either NORMAL,
21626                           ITALIC, BOLD or BOLDITALIC
21627
21628"##]
21629///
21630///
21631/// ---
21632///
21633///
21634/// ---
21635///
21636
21637pub static textStyle: TextStyleInternalType = TextStyleInternalType;
21638#[doc(hidden)]
21639pub struct TextStyleInternalType;
21640
21641
21642#[wasm_bindgen]
21643extern {
21644    #[wasm_bindgen(js_name = "textStyle")]
21645    fn textStyle1042628788(_ : THE_STYLE, ) ;
21646}
21647
21648#[doc(hidden)]
21649impl FnOnce<(THE_STYLE,)> for TextStyleInternalType {
21650    type Output = ();
21651    extern "rust-call" fn call_once(self, args: (THE_STYLE,)) -> Self::Output {
21652        textStyle1042628788.call(args)
21653    }
21654}
21655
21656#[doc(hidden)]
21657impl FnMut<(THE_STYLE,)> for TextStyleInternalType {
21658    extern "rust-call" fn call_mut(&mut self, args: (THE_STYLE,)) -> Self::Output {
21659        textStyle1042628788.call(args)
21660    }
21661}
21662
21663#[doc(hidden)]
21664impl Fn<(THE_STYLE,)> for TextStyleInternalType {
21665    extern "rust-call" fn call(&self, args: (THE_STYLE,)) -> Self::Output {
21666        textStyle1042628788.call(args)
21667    }
21668}
21669
21670#[wasm_bindgen]
21671extern {
21672    #[wasm_bindgen(js_name = "textStyle")]
21673    fn textStyle50401707() -> String;
21674}
21675
21676#[doc(hidden)]
21677impl FnOnce<()> for TextStyleInternalType {
21678    type Output = String;
21679    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
21680        textStyle50401707.call(args)
21681    }
21682}
21683
21684#[doc(hidden)]
21685impl FnMut<()> for TextStyleInternalType {
21686    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
21687        textStyle50401707.call(args)
21688    }
21689}
21690
21691#[doc(hidden)]
21692impl Fn<()> for TextStyleInternalType {
21693    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
21694        textStyle50401707.call(args)
21695    }
21696}
21697#[doc=r##"<p>Calculates and returns the width of any character or text string.</p>
21698"##]
21699///<h2>Examples</h2>
21700///
21701
21702#[doc=r###"```rust
21703textSize(28);
21704
21705let aChar = 'P';
21706let cWidth = textWidth(aChar);
21707text(aChar, 0, 40);
21708line(cWidth, 0, cWidth, 50);
21709
21710let aString = 'p5.js';
21711let sWidth = textWidth(aString);
21712text(aString, 0, 85);
21713line(sWidth, 50, sWidth, 100);
21714```"###]
21715/// <h2>Parameters</h2>
21716///
21717#[doc = r##"<code>theText</code> the String of characters to measure
21718
21719"##]
21720///
21721
21722pub static textWidth: TextWidthInternalType = TextWidthInternalType;
21723#[doc(hidden)]
21724pub struct TextWidthInternalType;
21725
21726
21727#[wasm_bindgen]
21728extern {
21729    #[wasm_bindgen(js_name = "textWidth")]
21730    fn textWidth1632051229(_ : & str, ) -> f64;
21731}
21732
21733#[doc(hidden)]
21734impl FnOnce<(&'_ str,)> for TextWidthInternalType {
21735    type Output = f64;
21736    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
21737        textWidth1632051229.call(args)
21738    }
21739}
21740
21741#[doc(hidden)]
21742impl FnMut<(&'_ str,)> for TextWidthInternalType {
21743    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
21744        textWidth1632051229.call(args)
21745    }
21746}
21747
21748#[doc(hidden)]
21749impl Fn<(&'_ str,)> for TextWidthInternalType {
21750    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
21751        textWidth1632051229.call(args)
21752    }
21753}
21754#[doc=r##"<p>Returns the ascent of the current font at its current size. The ascent
21755represents the distance, in pixels, of the tallest character above
21756the baseline.</p>
21757"##]
21758///<h2>Examples</h2>
21759///
21760
21761#[doc=r###"```rust
21762let base = height * 0.75;
21763let scalar = 0.8; // Different for each font
21764
21765textSize(32); // Set initial text size
21766let asc = textAscent() * scalar; // Calc ascent
21767line(0, base - asc, width, base - asc);
21768text('dp', 0, base); // Draw text on baseline
21769
21770textSize(64); // Increase text size
21771asc = textAscent() * scalar; // Recalc ascent
21772line(40, base - asc, width, base - asc);
21773text('dp', 40, base); // Draw text on baseline
21774```"###]
21775
21776pub static textAscent: TextAscentInternalType = TextAscentInternalType;
21777#[doc(hidden)]
21778pub struct TextAscentInternalType;
21779
21780
21781#[wasm_bindgen]
21782extern {
21783    #[wasm_bindgen(js_name = "textAscent")]
21784    fn textAscent4079815082() -> f64;
21785}
21786
21787#[doc(hidden)]
21788impl FnOnce<()> for TextAscentInternalType {
21789    type Output = f64;
21790    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
21791        textAscent4079815082.call(args)
21792    }
21793}
21794
21795#[doc(hidden)]
21796impl FnMut<()> for TextAscentInternalType {
21797    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
21798        textAscent4079815082.call(args)
21799    }
21800}
21801
21802#[doc(hidden)]
21803impl Fn<()> for TextAscentInternalType {
21804    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
21805        textAscent4079815082.call(args)
21806    }
21807}
21808#[doc=r##"<p>Returns the descent of the current font at its current size. The descent
21809represents the distance, in pixels, of the character with the longest
21810descender below the baseline.</p>
21811"##]
21812///<h2>Examples</h2>
21813///
21814
21815#[doc=r###"```rust
21816let base = height * 0.75;
21817let scalar = 0.8; // Different for each font
21818
21819textSize(32); // Set initial text size
21820let desc = textDescent() * scalar; // Calc ascent
21821line(0, base + desc, width, base + desc);
21822text('dp', 0, base); // Draw text on baseline
21823
21824textSize(64); // Increase text size
21825desc = textDescent() * scalar; // Recalc ascent
21826line(40, base + desc, width, base + desc);
21827text('dp', 40, base); // Draw text on baseline
21828```"###]
21829
21830pub static textDescent: TextDescentInternalType = TextDescentInternalType;
21831#[doc(hidden)]
21832pub struct TextDescentInternalType;
21833
21834
21835#[wasm_bindgen]
21836extern {
21837    #[wasm_bindgen(js_name = "textDescent")]
21838    fn textDescent1741730523() -> f64;
21839}
21840
21841#[doc(hidden)]
21842impl FnOnce<()> for TextDescentInternalType {
21843    type Output = f64;
21844    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
21845        textDescent1741730523.call(args)
21846    }
21847}
21848
21849#[doc(hidden)]
21850impl FnMut<()> for TextDescentInternalType {
21851    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
21852        textDescent1741730523.call(args)
21853    }
21854}
21855
21856#[doc(hidden)]
21857impl Fn<()> for TextDescentInternalType {
21858    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
21859        textDescent1741730523.call(args)
21860    }
21861}
21862#[doc=r##"<p>Multiplies the current matrix by the one specified through the parameters.
21863This is a powerful operation that can perform the equivalent of translate,
21864scale, shear and rotate all at once. You can learn more about transformation
21865matrices on <a href="https://en.wikipedia.org/wiki/Transformation_matrix">
21866Wikipedia</a>.</p>
21867<p>The naming of the arguments here follows the naming of the <a href=
21868"https://html.spec.whatwg.org/multipage/canvas.html#dom-context-2d-transform">
21869WHATWG specification</a> and corresponds to a
21870transformation matrix of the
21871form:</p>
21872<blockquote>
21873<p><img style="max-width: 150px" src="assets/transformation-matrix.png"
21874alt="The transformation matrix used when applyMatrix is called"/></p>
21875</blockquote>
21876"##]
21877///<h2>Examples</h2>
21878///
21879
21880#[doc=r###"```rust
21881function setup() {
21882  frameRate(10);
21883  rectMode(CENTER);
21884}
21885
21886function draw() {
21887  let step = frameCount % 20;
21888  background(200);
21889  // Equivalent to translate(x, y);
21890  applyMatrix(1, 0, 0, 1, 40 + step, 50);
21891  rect(0, 0, 50, 50);
21892}
21893```"###]
21894#[doc=r###"```rust
21895function setup() {
21896  frameRate(10);
21897  rectMode(CENTER);
21898}
21899
21900function draw() {
21901  let step = frameCount % 20;
21902  background(200);
21903  translate(50, 50);
21904  // Equivalent to scale(x, y);
21905  applyMatrix(1 / step, 0, 0, 1 / step, 0, 0);
21906  rect(0, 0, 50, 50);
21907}
21908```"###]
21909#[doc=r###"```rust
21910function setup() {
21911  frameRate(10);
21912  rectMode(CENTER);
21913}
21914
21915function draw() {
21916  let step = frameCount % 20;
21917  let angle = map(step, 0, 20, 0, TWO_PI);
21918  let cos_a = cos(angle);
21919  let sin_a = sin(angle);
21920  background(200);
21921  translate(50, 50);
21922  // Equivalent to rotate(angle);
21923  applyMatrix(cos_a, sin_a, -sin_a, cos_a, 0, 0);
21924  rect(0, 0, 50, 50);
21925}
21926```"###]
21927#[doc=r###"```rust
21928function setup() {
21929  frameRate(10);
21930  rectMode(CENTER);
21931}
21932
21933function draw() {
21934  let step = frameCount % 20;
21935  let angle = map(step, 0, 20, -PI / 4, PI / 4);
21936  background(200);
21937  translate(50, 50);
21938  // equivalent to shearX(angle);
21939  let shear_factor = 1 / tan(PI / 2 - angle);
21940  applyMatrix(1, 0, shear_factor, 1, 0, 0);
21941  rect(0, 0, 50, 50);
21942}
21943```"###]
21944#[doc=r###"```rust
21945function setup() {
21946  createCanvas(100, 100, WEBGL);
21947  noFill();
21948}
21949
21950function draw() {
21951  background(200);
21952  rotateY(PI / 6);
21953  stroke(153);
21954  box(35);
21955  let rad = millis() / 1000;
21956  // Set rotation angles
21957  let ct = cos(rad);
21958  let st = sin(rad);
21959  // Matrix for rotation around the Y axis
21960  applyMatrix(  ct, 0.0,  st,  0.0,
21961               0.0, 1.0, 0.0,  0.0,
21962               -st, 0.0,  ct,  0.0,
21963               0.0, 0.0, 0.0,  1.0);
21964  stroke(255);
21965  box(50);
21966}
21967```"###]
21968/// <h2>Parameters</h2>
21969///
21970#[doc = r##"<code>a</code> numbers which define the 2x3 matrix to be multiplied
21971
21972"##]
21973///
21974///
21975#[doc = r##"<code>b</code> numbers which define the 2x3 matrix to be multiplied
21976
21977"##]
21978///
21979///
21980#[doc = r##"<code>c</code> numbers which define the 2x3 matrix to be multiplied
21981
21982"##]
21983///
21984///
21985#[doc = r##"<code>d</code> numbers which define the 2x3 matrix to be multiplied
21986
21987"##]
21988///
21989///
21990#[doc = r##"<code>e</code> numbers which define the 2x3 matrix to be multiplied
21991
21992"##]
21993///
21994///
21995#[doc = r##"<code>f</code> numbers which define the 2x3 matrix to be multiplied
21996
21997"##]
21998///
21999
22000pub static applyMatrix: ApplyMatrixInternalType = ApplyMatrixInternalType;
22001#[doc(hidden)]
22002pub struct ApplyMatrixInternalType;
22003
22004
22005#[wasm_bindgen]
22006extern {
22007    #[wasm_bindgen(js_name = "applyMatrix")]
22008    fn applyMatrix1640153144(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
22009}
22010
22011#[doc(hidden)]
22012impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for ApplyMatrixInternalType {
22013    type Output = ();
22014    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
22015        applyMatrix1640153144.call(args)
22016    }
22017}
22018
22019#[doc(hidden)]
22020impl FnMut<(f64,f64,f64,f64,f64,f64,)> for ApplyMatrixInternalType {
22021    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
22022        applyMatrix1640153144.call(args)
22023    }
22024}
22025
22026#[doc(hidden)]
22027impl Fn<(f64,f64,f64,f64,f64,f64,)> for ApplyMatrixInternalType {
22028    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
22029        applyMatrix1640153144.call(args)
22030    }
22031}
22032#[doc=r##"<p>Replaces the current matrix with the identity matrix.</p>
22033"##]
22034///<h2>Examples</h2>
22035///
22036
22037#[doc=r###"```rust
22038translate(50, 50);
22039applyMatrix(0.5, 0.5, -0.5, 0.5, 0, 0);
22040rect(0, 0, 20, 20);
22041// Note that the translate is also reset.
22042resetMatrix();
22043rect(0, 0, 20, 20);
22044```"###]
22045
22046pub static resetMatrix: ResetMatrixInternalType = ResetMatrixInternalType;
22047#[doc(hidden)]
22048pub struct ResetMatrixInternalType;
22049
22050
22051#[wasm_bindgen]
22052extern {
22053    #[wasm_bindgen(js_name = "resetMatrix")]
22054    fn resetMatrix1062250360() ;
22055}
22056
22057#[doc(hidden)]
22058impl FnOnce<()> for ResetMatrixInternalType {
22059    type Output = ();
22060    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
22061        resetMatrix1062250360.call(args)
22062    }
22063}
22064
22065#[doc(hidden)]
22066impl FnMut<()> for ResetMatrixInternalType {
22067    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
22068        resetMatrix1062250360.call(args)
22069    }
22070}
22071
22072#[doc(hidden)]
22073impl Fn<()> for ResetMatrixInternalType {
22074    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
22075        resetMatrix1062250360.call(args)
22076    }
22077}
22078#[doc=r##"<p>Rotates a shape by the amount specified by the angle parameter. This
22079function accounts for <a href="#/p5/angleMode">angleMode</a>, so angles
22080can be entered in either RADIANS or DEGREES.</p>
22081<p>Objects are always rotated around their relative position to the
22082origin and positive numbers rotate objects in a clockwise direction.
22083Transformations apply to everything that happens after and subsequent
22084calls to the function accumulates the effect. For example, calling
22085rotate(HALF_PI) and then rotate(HALF_PI) is the same as rotate(PI).
22086All tranformations are reset when <a href="#/p5/draw">draw()</a> begins again.</p>
22087<p>Technically, <a href="#/p5/rotate">rotate()</a> multiplies the current transformation matrix
22088by a rotation matrix. This function can be further controlled by
22089the <a href="#/p5/push">push()</a> and <a href="#/p5/pop">pop()</a>.</p>
22090"##]
22091///<h2>Examples</h2>
22092///
22093
22094#[doc=r###"```rust
22095translate(width / 2, height / 2);
22096rotate(PI / 3.0);
22097rect(-26, -26, 52, 52);
22098```"###]
22099/// <h2>Parameters</h2>
22100///
22101#[doc = r##"<code>angle</code> the angle of rotation, specified in radians
22102                       or degrees, depending on current angleMode
22103
22104"##]
22105///
22106///
22107#[doc = r##"<code>axis?</code> (in 3d) the axis to rotate around
22108
22109"##]
22110///
22111
22112pub static rotate: RotateInternalType = RotateInternalType;
22113#[doc(hidden)]
22114pub struct RotateInternalType;
22115
22116
22117#[wasm_bindgen]
22118extern {
22119    #[wasm_bindgen(js_name = "rotate")]
22120    fn rotate874210099(_ : f64, _ : & Vector, ) ;
22121}
22122
22123#[doc(hidden)]
22124impl FnOnce<(f64,&'_ Vector,)> for RotateInternalType {
22125    type Output = ();
22126    extern "rust-call" fn call_once(self, args: (f64,&'_ Vector,)) -> Self::Output {
22127        rotate874210099.call(args)
22128    }
22129}
22130
22131#[doc(hidden)]
22132impl FnMut<(f64,&'_ Vector,)> for RotateInternalType {
22133    extern "rust-call" fn call_mut(&mut self, args: (f64,&'_ Vector,)) -> Self::Output {
22134        rotate874210099.call(args)
22135    }
22136}
22137
22138#[doc(hidden)]
22139impl Fn<(f64,&'_ Vector,)> for RotateInternalType {
22140    extern "rust-call" fn call(&self, args: (f64,&'_ Vector,)) -> Self::Output {
22141        rotate874210099.call(args)
22142    }
22143}
22144
22145#[wasm_bindgen]
22146extern {
22147    #[wasm_bindgen(js_name = "rotate")]
22148    fn rotate2079470350(_ : f64, _ : & [f64], ) ;
22149}
22150
22151#[doc(hidden)]
22152impl FnOnce<(f64,&'_ [f64],)> for RotateInternalType {
22153    type Output = ();
22154    extern "rust-call" fn call_once(self, args: (f64,&'_ [f64],)) -> Self::Output {
22155        rotate2079470350.call(args)
22156    }
22157}
22158
22159#[doc(hidden)]
22160impl FnMut<(f64,&'_ [f64],)> for RotateInternalType {
22161    extern "rust-call" fn call_mut(&mut self, args: (f64,&'_ [f64],)) -> Self::Output {
22162        rotate2079470350.call(args)
22163    }
22164}
22165
22166#[doc(hidden)]
22167impl Fn<(f64,&'_ [f64],)> for RotateInternalType {
22168    extern "rust-call" fn call(&self, args: (f64,&'_ [f64],)) -> Self::Output {
22169        rotate2079470350.call(args)
22170    }
22171}
22172
22173#[wasm_bindgen]
22174extern {
22175    #[wasm_bindgen(js_name = "rotate")]
22176    fn rotate3251684292(_ : f64, ) ;
22177}
22178
22179#[doc(hidden)]
22180impl FnOnce<(f64,)> for RotateInternalType {
22181    type Output = ();
22182    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
22183        rotate3251684292.call(args)
22184    }
22185}
22186
22187#[doc(hidden)]
22188impl FnMut<(f64,)> for RotateInternalType {
22189    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
22190        rotate3251684292.call(args)
22191    }
22192}
22193
22194#[doc(hidden)]
22195impl Fn<(f64,)> for RotateInternalType {
22196    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
22197        rotate3251684292.call(args)
22198    }
22199}
22200#[doc=r##"<p>Rotates a shape around X axis by the amount specified in angle parameter.
22201The angles can be entered in either RADIANS or DEGREES.</p>
22202<p>Objects are always rotated around their relative position to the
22203origin and positive numbers rotate objects in a clockwise direction.
22204All tranformations are reset when <a href="#/p5/draw">draw()</a> begins again.</p>
22205"##]
22206///<h2>Examples</h2>
22207///
22208
22209#[doc=r###"```rust
22210function setup() {
22211  createCanvas(100, 100, WEBGL);
22212}
22213function draw() {
22214  background(255);
22215  rotateX(millis() / 1000);
22216  box();
22217}
22218```"###]
22219/// <h2>Parameters</h2>
22220///
22221#[doc = r##"<code>angle</code> the angle of rotation, specified in radians
22222                       or degrees, depending on current angleMode
22223
22224"##]
22225///
22226
22227pub static rotateX: RotateXInternalType = RotateXInternalType;
22228#[doc(hidden)]
22229pub struct RotateXInternalType;
22230
22231
22232#[wasm_bindgen]
22233extern {
22234    #[wasm_bindgen(js_name = "rotateX")]
22235    fn rotateX537443161(_ : f64, ) ;
22236}
22237
22238#[doc(hidden)]
22239impl FnOnce<(f64,)> for RotateXInternalType {
22240    type Output = ();
22241    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
22242        rotateX537443161.call(args)
22243    }
22244}
22245
22246#[doc(hidden)]
22247impl FnMut<(f64,)> for RotateXInternalType {
22248    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
22249        rotateX537443161.call(args)
22250    }
22251}
22252
22253#[doc(hidden)]
22254impl Fn<(f64,)> for RotateXInternalType {
22255    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
22256        rotateX537443161.call(args)
22257    }
22258}
22259#[doc=r##"<p>Rotates a shape around Y axis by the amount specified in angle parameter.
22260The angles can be entered in either RADIANS or DEGREES.</p>
22261<p>Objects are always rotated around their relative position to the
22262origin and positive numbers rotate objects in a clockwise direction.
22263All tranformations are reset when <a href="#/p5/draw">draw()</a> begins again.</p>
22264"##]
22265///<h2>Examples</h2>
22266///
22267
22268#[doc=r###"```rust
22269function setup() {
22270  createCanvas(100, 100, WEBGL);
22271}
22272function draw() {
22273  background(255);
22274  rotateY(millis() / 1000);
22275  box();
22276}
22277```"###]
22278/// <h2>Parameters</h2>
22279///
22280#[doc = r##"<code>angle</code> the angle of rotation, specified in radians
22281                       or degrees, depending on current angleMode
22282
22283"##]
22284///
22285
22286pub static rotateY: RotateYInternalType = RotateYInternalType;
22287#[doc(hidden)]
22288pub struct RotateYInternalType;
22289
22290
22291#[wasm_bindgen]
22292extern {
22293    #[wasm_bindgen(js_name = "rotateY")]
22294    fn rotateY202484440(_ : f64, ) ;
22295}
22296
22297#[doc(hidden)]
22298impl FnOnce<(f64,)> for RotateYInternalType {
22299    type Output = ();
22300    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
22301        rotateY202484440.call(args)
22302    }
22303}
22304
22305#[doc(hidden)]
22306impl FnMut<(f64,)> for RotateYInternalType {
22307    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
22308        rotateY202484440.call(args)
22309    }
22310}
22311
22312#[doc(hidden)]
22313impl Fn<(f64,)> for RotateYInternalType {
22314    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
22315        rotateY202484440.call(args)
22316    }
22317}
22318#[doc=r##"<p>Rotates a shape around Z axis by the amount specified in angle parameter.
22319The angles can be entered in either RADIANS or DEGREES.</p>
22320<p>This method works in WEBGL mode only.</p>
22321<p>Objects are always rotated around their relative position to the
22322origin and positive numbers rotate objects in a clockwise direction.
22323All tranformations are reset when <a href="#/p5/draw">draw()</a> begins again.</p>
22324"##]
22325///<h2>Examples</h2>
22326///
22327
22328#[doc=r###"```rust
22329function setup() {
22330  createCanvas(100, 100, WEBGL);
22331}
22332function draw() {
22333  background(255);
22334  rotateZ(millis() / 1000);
22335  box();
22336}
22337```"###]
22338/// <h2>Parameters</h2>
22339///
22340#[doc = r##"<code>angle</code> the angle of rotation, specified in radians
22341                       or degrees, depending on current angleMode
22342
22343"##]
22344///
22345
22346pub static rotateZ: RotateZInternalType = RotateZInternalType;
22347#[doc(hidden)]
22348pub struct RotateZInternalType;
22349
22350
22351#[wasm_bindgen]
22352extern {
22353    #[wasm_bindgen(js_name = "rotateZ")]
22354    fn rotateZ760085044(_ : f64, ) ;
22355}
22356
22357#[doc(hidden)]
22358impl FnOnce<(f64,)> for RotateZInternalType {
22359    type Output = ();
22360    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
22361        rotateZ760085044.call(args)
22362    }
22363}
22364
22365#[doc(hidden)]
22366impl FnMut<(f64,)> for RotateZInternalType {
22367    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
22368        rotateZ760085044.call(args)
22369    }
22370}
22371
22372#[doc(hidden)]
22373impl Fn<(f64,)> for RotateZInternalType {
22374    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
22375        rotateZ760085044.call(args)
22376    }
22377}
22378#[doc=r##"<p>Increases or decreases the size of a shape by expanding or contracting
22379vertices. Objects always scale from their relative origin to the
22380coordinate system. Scale values are specified as decimal percentages.
22381For example, the function call scale(2.0) increases the dimension of a
22382shape by 200%.</p>
22383<p>Transformations apply to everything that happens after and subsequent
22384calls to the function multiply the effect. For example, calling scale(2.0)
22385and then scale(1.5) is the same as scale(3.0). If <a href="#/p5/scale">scale()</a> is called
22386within <a href="#/p5/draw">draw()</a>, the transformation is reset when the loop begins again.</p>
22387<p>Using this function with the z parameter is only available in WEBGL mode.
22388This function can be further controlled with <a href="#/p5/push">push()</a> and <a href="#/p5/pop">pop()</a>.</p>
22389"##]
22390///<h2>Examples</h2>
22391///
22392
22393#[doc=r###"```rust
22394rect(30, 20, 50, 50);
22395scale(0.5);
22396rect(30, 20, 50, 50);
22397```"###]
22398#[doc=r###"```rust
22399rect(30, 20, 50, 50);
22400scale(0.5, 1.3);
22401rect(30, 20, 50, 50);
22402```"###]
22403/// <h2>Overloads</h2>
22404///
22405#[doc = r##"<code>s</code> percent to scale the object, or percentage to
22406                     scale the object in the x-axis if multiple arguments
22407                     are given
22408
22409"##]
22410///
22411///
22412#[doc = r##"<code>y?</code> percent to scale the object in the y-axis
22413
22414"##]
22415///
22416///
22417#[doc = r##"<code>z?</code> percent to scale the object in the z-axis (webgl only)
22418
22419"##]
22420///
22421///
22422/// ---
22423///
22424///
22425#[doc = r##"<code>scales</code> per-axis percents to scale the object
22426
22427"##]
22428///
22429///
22430/// ---
22431///
22432
22433pub static scale: ScaleInternalType = ScaleInternalType;
22434#[doc(hidden)]
22435pub struct ScaleInternalType;
22436
22437
22438#[wasm_bindgen]
22439extern {
22440    #[wasm_bindgen(js_name = "scale")]
22441    fn scale678612558(_ : f64, _ : f64, _ : f64, ) ;
22442}
22443
22444#[doc(hidden)]
22445impl FnOnce<(f64,f64,f64,)> for ScaleInternalType {
22446    type Output = ();
22447    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
22448        scale678612558.call(args)
22449    }
22450}
22451
22452#[doc(hidden)]
22453impl FnMut<(f64,f64,f64,)> for ScaleInternalType {
22454    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
22455        scale678612558.call(args)
22456    }
22457}
22458
22459#[doc(hidden)]
22460impl Fn<(f64,f64,f64,)> for ScaleInternalType {
22461    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
22462        scale678612558.call(args)
22463    }
22464}
22465
22466#[wasm_bindgen]
22467extern {
22468    #[wasm_bindgen(js_name = "scale")]
22469    fn scale1495517535(_ : f64, _ : f64, ) ;
22470}
22471
22472#[doc(hidden)]
22473impl FnOnce<(f64,f64,)> for ScaleInternalType {
22474    type Output = ();
22475    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
22476        scale1495517535.call(args)
22477    }
22478}
22479
22480#[doc(hidden)]
22481impl FnMut<(f64,f64,)> for ScaleInternalType {
22482    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
22483        scale1495517535.call(args)
22484    }
22485}
22486
22487#[doc(hidden)]
22488impl Fn<(f64,f64,)> for ScaleInternalType {
22489    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
22490        scale1495517535.call(args)
22491    }
22492}
22493
22494#[wasm_bindgen]
22495extern {
22496    #[wasm_bindgen(js_name = "scale")]
22497    fn scale2606391196(_ : f64, ) ;
22498}
22499
22500#[doc(hidden)]
22501impl FnOnce<(f64,)> for ScaleInternalType {
22502    type Output = ();
22503    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
22504        scale2606391196.call(args)
22505    }
22506}
22507
22508#[doc(hidden)]
22509impl FnMut<(f64,)> for ScaleInternalType {
22510    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
22511        scale2606391196.call(args)
22512    }
22513}
22514
22515#[doc(hidden)]
22516impl Fn<(f64,)> for ScaleInternalType {
22517    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
22518        scale2606391196.call(args)
22519    }
22520}
22521
22522#[wasm_bindgen]
22523extern {
22524    #[wasm_bindgen(js_name = "scale")]
22525    fn scale1108887924(_ : & Vector, _ : f64, _ : f64, ) ;
22526}
22527
22528#[doc(hidden)]
22529impl FnOnce<(&'_ Vector,f64,f64,)> for ScaleInternalType {
22530    type Output = ();
22531    extern "rust-call" fn call_once(self, args: (&'_ Vector,f64,f64,)) -> Self::Output {
22532        scale1108887924.call(args)
22533    }
22534}
22535
22536#[doc(hidden)]
22537impl FnMut<(&'_ Vector,f64,f64,)> for ScaleInternalType {
22538    extern "rust-call" fn call_mut(&mut self, args: (&'_ Vector,f64,f64,)) -> Self::Output {
22539        scale1108887924.call(args)
22540    }
22541}
22542
22543#[doc(hidden)]
22544impl Fn<(&'_ Vector,f64,f64,)> for ScaleInternalType {
22545    extern "rust-call" fn call(&self, args: (&'_ Vector,f64,f64,)) -> Self::Output {
22546        scale1108887924.call(args)
22547    }
22548}
22549
22550#[wasm_bindgen]
22551extern {
22552    #[wasm_bindgen(js_name = "scale")]
22553    fn scale1782013511(_ : & Vector, _ : f64, ) ;
22554}
22555
22556#[doc(hidden)]
22557impl FnOnce<(&'_ Vector,f64,)> for ScaleInternalType {
22558    type Output = ();
22559    extern "rust-call" fn call_once(self, args: (&'_ Vector,f64,)) -> Self::Output {
22560        scale1782013511.call(args)
22561    }
22562}
22563
22564#[doc(hidden)]
22565impl FnMut<(&'_ Vector,f64,)> for ScaleInternalType {
22566    extern "rust-call" fn call_mut(&mut self, args: (&'_ Vector,f64,)) -> Self::Output {
22567        scale1782013511.call(args)
22568    }
22569}
22570
22571#[doc(hidden)]
22572impl Fn<(&'_ Vector,f64,)> for ScaleInternalType {
22573    extern "rust-call" fn call(&self, args: (&'_ Vector,f64,)) -> Self::Output {
22574        scale1782013511.call(args)
22575    }
22576}
22577
22578#[wasm_bindgen]
22579extern {
22580    #[wasm_bindgen(js_name = "scale")]
22581    fn scale2742958802(_ : & Vector, ) ;
22582}
22583
22584#[doc(hidden)]
22585impl FnOnce<(&'_ Vector,)> for ScaleInternalType {
22586    type Output = ();
22587    extern "rust-call" fn call_once(self, args: (&'_ Vector,)) -> Self::Output {
22588        scale2742958802.call(args)
22589    }
22590}
22591
22592#[doc(hidden)]
22593impl FnMut<(&'_ Vector,)> for ScaleInternalType {
22594    extern "rust-call" fn call_mut(&mut self, args: (&'_ Vector,)) -> Self::Output {
22595        scale2742958802.call(args)
22596    }
22597}
22598
22599#[doc(hidden)]
22600impl Fn<(&'_ Vector,)> for ScaleInternalType {
22601    extern "rust-call" fn call(&self, args: (&'_ Vector,)) -> Self::Output {
22602        scale2742958802.call(args)
22603    }
22604}
22605
22606#[wasm_bindgen]
22607extern {
22608    #[wasm_bindgen(js_name = "scale")]
22609    fn scale808972105(_ : & [f64], _ : f64, _ : f64, ) ;
22610}
22611
22612#[doc(hidden)]
22613impl FnOnce<(&'_ [f64],f64,f64,)> for ScaleInternalType {
22614    type Output = ();
22615    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,)) -> Self::Output {
22616        scale808972105.call(args)
22617    }
22618}
22619
22620#[doc(hidden)]
22621impl FnMut<(&'_ [f64],f64,f64,)> for ScaleInternalType {
22622    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,)) -> Self::Output {
22623        scale808972105.call(args)
22624    }
22625}
22626
22627#[doc(hidden)]
22628impl Fn<(&'_ [f64],f64,f64,)> for ScaleInternalType {
22629    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,)) -> Self::Output {
22630        scale808972105.call(args)
22631    }
22632}
22633
22634#[wasm_bindgen]
22635extern {
22636    #[wasm_bindgen(js_name = "scale")]
22637    fn scale1242081759(_ : & [f64], _ : f64, ) ;
22638}
22639
22640#[doc(hidden)]
22641impl FnOnce<(&'_ [f64],f64,)> for ScaleInternalType {
22642    type Output = ();
22643    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,)) -> Self::Output {
22644        scale1242081759.call(args)
22645    }
22646}
22647
22648#[doc(hidden)]
22649impl FnMut<(&'_ [f64],f64,)> for ScaleInternalType {
22650    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,)) -> Self::Output {
22651        scale1242081759.call(args)
22652    }
22653}
22654
22655#[doc(hidden)]
22656impl Fn<(&'_ [f64],f64,)> for ScaleInternalType {
22657    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,)) -> Self::Output {
22658        scale1242081759.call(args)
22659    }
22660}
22661
22662#[wasm_bindgen]
22663extern {
22664    #[wasm_bindgen(js_name = "scale")]
22665    fn scale2515990498(_ : & [f64], ) ;
22666}
22667
22668#[doc(hidden)]
22669impl FnOnce<(&'_ [f64],)> for ScaleInternalType {
22670    type Output = ();
22671    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
22672        scale2515990498.call(args)
22673    }
22674}
22675
22676#[doc(hidden)]
22677impl FnMut<(&'_ [f64],)> for ScaleInternalType {
22678    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
22679        scale2515990498.call(args)
22680    }
22681}
22682
22683#[doc(hidden)]
22684impl Fn<(&'_ [f64],)> for ScaleInternalType {
22685    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
22686        scale2515990498.call(args)
22687    }
22688}
22689#[doc=r##"<p>Shears a shape around the x-axis by the amount specified by the angle
22690parameter. Angles should be specified in the current angleMode.
22691Objects are always sheared around their relative position to the origin
22692and positive numbers shear objects in a clockwise direction.</p>
22693<p>Transformations apply to everything that happens after and subsequent
22694calls to the function accumulates the effect. For example, calling
22695shearX(PI/2) and then shearX(PI/2) is the same as shearX(PI).
22696If <a href="#/p5/shearX">shearX()</a> is called within the <a href="#/p5/draw">draw()</a>,
22697the transformation is reset when the loop begins again.</p>
22698<p>Technically, <a href="#/p5/shearX">shearX()</a> multiplies the current
22699transformation matrix by a rotation matrix. This function can be further
22700controlled by the <a href="#/p5/push">push()</a> and <a href="#/p5/pop">pop()</a> functions.</p>
22701"##]
22702///<h2>Examples</h2>
22703///
22704
22705#[doc=r###"```rust
22706translate(width / 4, height / 4);
22707shearX(PI / 4.0);
22708rect(0, 0, 30, 30);
22709```"###]
22710/// <h2>Parameters</h2>
22711///
22712#[doc = r##"<code>angle</code> angle of shear specified in radians or degrees,
22713                       depending on current angleMode
22714
22715"##]
22716///
22717
22718pub static shearX: ShearXInternalType = ShearXInternalType;
22719#[doc(hidden)]
22720pub struct ShearXInternalType;
22721
22722
22723#[wasm_bindgen]
22724extern {
22725    #[wasm_bindgen(js_name = "shearX")]
22726    fn shearX499780366(_ : f64, ) ;
22727}
22728
22729#[doc(hidden)]
22730impl FnOnce<(f64,)> for ShearXInternalType {
22731    type Output = ();
22732    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
22733        shearX499780366.call(args)
22734    }
22735}
22736
22737#[doc(hidden)]
22738impl FnMut<(f64,)> for ShearXInternalType {
22739    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
22740        shearX499780366.call(args)
22741    }
22742}
22743
22744#[doc(hidden)]
22745impl Fn<(f64,)> for ShearXInternalType {
22746    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
22747        shearX499780366.call(args)
22748    }
22749}
22750#[doc=r##"<p>Shears a shape around the y-axis the amount specified by the angle
22751parameter. Angles should be specified in the current angleMode. Objects
22752are always sheared around their relative position to the origin and
22753positive numbers shear objects in a clockwise direction.</p>
22754<p>Transformations apply to everything that happens after and subsequent
22755calls to the function accumulates the effect. For example, calling
22756shearY(PI/2) and then shearY(PI/2) is the same as shearY(PI). If
22757<a href="#/p5/shearY">shearY()</a> is called within the <a href="#/p5/draw">draw()</a>, the transformation is reset when
22758the loop begins again.</p>
22759<p>Technically, <a href="#/p5/shearY">shearY()</a> multiplies the current transformation matrix by a
22760rotation matrix. This function can be further controlled by the
22761<a href="#/p5/push">push()</a> and <a href="#/p5/pop">pop()</a> functions.</p>
22762"##]
22763///<h2>Examples</h2>
22764///
22765
22766#[doc=r###"```rust
22767translate(width / 4, height / 4);
22768shearY(PI / 4.0);
22769rect(0, 0, 30, 30);
22770```"###]
22771/// <h2>Parameters</h2>
22772///
22773#[doc = r##"<code>angle</code> angle of shear specified in radians or degrees,
22774                       depending on current angleMode
22775
22776"##]
22777///
22778
22779pub static shearY: ShearYInternalType = ShearYInternalType;
22780#[doc(hidden)]
22781pub struct ShearYInternalType;
22782
22783
22784#[wasm_bindgen]
22785extern {
22786    #[wasm_bindgen(js_name = "shearY")]
22787    fn shearY2594860630(_ : f64, ) ;
22788}
22789
22790#[doc(hidden)]
22791impl FnOnce<(f64,)> for ShearYInternalType {
22792    type Output = ();
22793    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
22794        shearY2594860630.call(args)
22795    }
22796}
22797
22798#[doc(hidden)]
22799impl FnMut<(f64,)> for ShearYInternalType {
22800    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
22801        shearY2594860630.call(args)
22802    }
22803}
22804
22805#[doc(hidden)]
22806impl Fn<(f64,)> for ShearYInternalType {
22807    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
22808        shearY2594860630.call(args)
22809    }
22810}
22811#[doc=r##"<p>Specifies an amount to displace objects within the display window.
22812The x parameter specifies left/right translation, the y parameter
22813specifies up/down translation.</p>
22814<p>Transformations are cumulative and apply to everything that happens after
22815and subsequent calls to the function accumulates the effect. For example,
22816calling translate(50, 0) and then translate(20, 0) is the same as
22817translate(70, 0). If <a href="#/p5/translate">translate()</a> is called within <a href="#/p5/draw">draw()</a>, the
22818transformation is reset when the loop begins again. This function can be
22819further controlled by using <a href="#/p5/push">push()</a> and <a href="#/p5/pop">pop()</a>.</p>
22820"##]
22821///<h2>Examples</h2>
22822///
22823
22824#[doc=r###"```rust
22825translate(30, 20);
22826rect(0, 0, 55, 55);
22827```"###]
22828#[doc=r###"```rust
22829rect(0, 0, 55, 55); // Draw rect at original 0,0
22830translate(30, 20);
22831rect(0, 0, 55, 55); // Draw rect at new 0,0
22832translate(14, 14);
22833rect(0, 0, 55, 55); // Draw rect at new 0,0
22834```"###]
22835#[doc=r###"```rust
22836function draw() {
22837  background(200);
22838  rectMode(CENTER);
22839  translate(width / 2, height / 2);
22840  translate(p5.Vector.fromAngle(millis() / 1000, 40));
22841  rect(0, 0, 20, 20);
22842}
22843```"###]
22844/// <h2>Overloads</h2>
22845///
22846#[doc = r##"<code>x</code> left/right translation
22847
22848"##]
22849///
22850///
22851#[doc = r##"<code>y</code> up/down translation
22852
22853"##]
22854///
22855///
22856#[doc = r##"<code>z?</code> forward/backward translation (webgl only)
22857
22858"##]
22859///
22860///
22861/// ---
22862///
22863///
22864#[doc = r##"<code>vector</code> the vector to translate by
22865
22866"##]
22867///
22868///
22869/// ---
22870///
22871
22872pub static translate: TranslateInternalType = TranslateInternalType;
22873#[doc(hidden)]
22874pub struct TranslateInternalType;
22875
22876
22877#[wasm_bindgen]
22878extern {
22879    #[wasm_bindgen(js_name = "translate")]
22880    fn translate1872703650(_ : f64, _ : f64, _ : f64, ) ;
22881}
22882
22883#[doc(hidden)]
22884impl FnOnce<(f64,f64,f64,)> for TranslateInternalType {
22885    type Output = ();
22886    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
22887        translate1872703650.call(args)
22888    }
22889}
22890
22891#[doc(hidden)]
22892impl FnMut<(f64,f64,f64,)> for TranslateInternalType {
22893    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
22894        translate1872703650.call(args)
22895    }
22896}
22897
22898#[doc(hidden)]
22899impl Fn<(f64,f64,f64,)> for TranslateInternalType {
22900    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
22901        translate1872703650.call(args)
22902    }
22903}
22904
22905#[wasm_bindgen]
22906extern {
22907    #[wasm_bindgen(js_name = "translate")]
22908    fn translate4035295824(_ : f64, _ : f64, ) ;
22909}
22910
22911#[doc(hidden)]
22912impl FnOnce<(f64,f64,)> for TranslateInternalType {
22913    type Output = ();
22914    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
22915        translate4035295824.call(args)
22916    }
22917}
22918
22919#[doc(hidden)]
22920impl FnMut<(f64,f64,)> for TranslateInternalType {
22921    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
22922        translate4035295824.call(args)
22923    }
22924}
22925
22926#[doc(hidden)]
22927impl Fn<(f64,f64,)> for TranslateInternalType {
22928    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
22929        translate4035295824.call(args)
22930    }
22931}
22932
22933#[wasm_bindgen]
22934extern {
22935    #[wasm_bindgen(js_name = "translate")]
22936    fn translate2663268457(_ : & Vector, ) ;
22937}
22938
22939#[doc(hidden)]
22940impl FnOnce<(&'_ Vector,)> for TranslateInternalType {
22941    type Output = ();
22942    extern "rust-call" fn call_once(self, args: (&'_ Vector,)) -> Self::Output {
22943        translate2663268457.call(args)
22944    }
22945}
22946
22947#[doc(hidden)]
22948impl FnMut<(&'_ Vector,)> for TranslateInternalType {
22949    extern "rust-call" fn call_mut(&mut self, args: (&'_ Vector,)) -> Self::Output {
22950        translate2663268457.call(args)
22951    }
22952}
22953
22954#[doc(hidden)]
22955impl Fn<(&'_ Vector,)> for TranslateInternalType {
22956    extern "rust-call" fn call(&self, args: (&'_ Vector,)) -> Self::Output {
22957        translate2663268457.call(args)
22958    }
22959}
22960#[doc=r##"<p>Extracts the alpha value from a color or pixel array.</p>
22961"##]
22962///<h2>Examples</h2>
22963///
22964
22965#[doc=r###"```rust
22966noStroke();
22967let c = color(0, 126, 255, 102);
22968fill(c);
22969rect(15, 15, 35, 70);
22970let value = alpha(c); // Sets 'value' to 102
22971fill(value);
22972rect(50, 15, 35, 70);
22973```"###]
22974/// <h2>Parameters</h2>
22975///
22976#[doc = r##"<code>color</code> p5.Color object, color components,
22977                                        or CSS color
22978
22979"##]
22980///
22981
22982pub static alpha: AlphaInternalType = AlphaInternalType;
22983#[doc(hidden)]
22984pub struct AlphaInternalType;
22985
22986
22987#[wasm_bindgen]
22988extern {
22989    #[wasm_bindgen(js_name = "alpha")]
22990    fn alpha2771614555(_ : & Color, ) -> f64;
22991}
22992
22993#[doc(hidden)]
22994impl FnOnce<(&'_ Color,)> for AlphaInternalType {
22995    type Output = f64;
22996    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
22997        alpha2771614555.call(args)
22998    }
22999}
23000
23001#[doc(hidden)]
23002impl FnMut<(&'_ Color,)> for AlphaInternalType {
23003    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
23004        alpha2771614555.call(args)
23005    }
23006}
23007
23008#[doc(hidden)]
23009impl Fn<(&'_ Color,)> for AlphaInternalType {
23010    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
23011        alpha2771614555.call(args)
23012    }
23013}
23014
23015#[wasm_bindgen]
23016extern {
23017    #[wasm_bindgen(js_name = "alpha")]
23018    fn alpha3092700221(_ : & [f64], ) -> f64;
23019}
23020
23021#[doc(hidden)]
23022impl FnOnce<(&'_ [f64],)> for AlphaInternalType {
23023    type Output = f64;
23024    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
23025        alpha3092700221.call(args)
23026    }
23027}
23028
23029#[doc(hidden)]
23030impl FnMut<(&'_ [f64],)> for AlphaInternalType {
23031    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
23032        alpha3092700221.call(args)
23033    }
23034}
23035
23036#[doc(hidden)]
23037impl Fn<(&'_ [f64],)> for AlphaInternalType {
23038    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
23039        alpha3092700221.call(args)
23040    }
23041}
23042
23043#[wasm_bindgen]
23044extern {
23045    #[wasm_bindgen(js_name = "alpha")]
23046    fn alpha689731141(_ : & str, ) -> f64;
23047}
23048
23049#[doc(hidden)]
23050impl FnOnce<(&'_ str,)> for AlphaInternalType {
23051    type Output = f64;
23052    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
23053        alpha689731141.call(args)
23054    }
23055}
23056
23057#[doc(hidden)]
23058impl FnMut<(&'_ str,)> for AlphaInternalType {
23059    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
23060        alpha689731141.call(args)
23061    }
23062}
23063
23064#[doc(hidden)]
23065impl Fn<(&'_ str,)> for AlphaInternalType {
23066    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
23067        alpha689731141.call(args)
23068    }
23069}
23070#[doc=r##"<p>Extracts the blue value from a color or pixel array.</p>
23071"##]
23072///<h2>Examples</h2>
23073///
23074
23075#[doc=r###"```rust
23076let c = color(175, 100, 220);
23077fill(c);
23078rect(15, 20, 35, 60); // Draw left rectangle
23079let blueValue = blue(c);
23080fill(0, 0, blueValue);
23081rect(50, 20, 35, 60); // Draw right rectangle
23082```"###]
23083/// <h2>Parameters</h2>
23084///
23085#[doc = r##"<code>color</code> p5.Color object, color components,
23086                                        or CSS color
23087
23088"##]
23089///
23090
23091pub static blue: BlueInternalType = BlueInternalType;
23092#[doc(hidden)]
23093pub struct BlueInternalType;
23094
23095
23096#[wasm_bindgen]
23097extern {
23098    #[wasm_bindgen(js_name = "blue")]
23099    fn blue2803915788(_ : & Color, ) -> f64;
23100}
23101
23102#[doc(hidden)]
23103impl FnOnce<(&'_ Color,)> for BlueInternalType {
23104    type Output = f64;
23105    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
23106        blue2803915788.call(args)
23107    }
23108}
23109
23110#[doc(hidden)]
23111impl FnMut<(&'_ Color,)> for BlueInternalType {
23112    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
23113        blue2803915788.call(args)
23114    }
23115}
23116
23117#[doc(hidden)]
23118impl Fn<(&'_ Color,)> for BlueInternalType {
23119    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
23120        blue2803915788.call(args)
23121    }
23122}
23123
23124#[wasm_bindgen]
23125extern {
23126    #[wasm_bindgen(js_name = "blue")]
23127    fn blue2224436633(_ : & [f64], ) -> f64;
23128}
23129
23130#[doc(hidden)]
23131impl FnOnce<(&'_ [f64],)> for BlueInternalType {
23132    type Output = f64;
23133    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
23134        blue2224436633.call(args)
23135    }
23136}
23137
23138#[doc(hidden)]
23139impl FnMut<(&'_ [f64],)> for BlueInternalType {
23140    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
23141        blue2224436633.call(args)
23142    }
23143}
23144
23145#[doc(hidden)]
23146impl Fn<(&'_ [f64],)> for BlueInternalType {
23147    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
23148        blue2224436633.call(args)
23149    }
23150}
23151
23152#[wasm_bindgen]
23153extern {
23154    #[wasm_bindgen(js_name = "blue")]
23155    fn blue3607422463(_ : & str, ) -> f64;
23156}
23157
23158#[doc(hidden)]
23159impl FnOnce<(&'_ str,)> for BlueInternalType {
23160    type Output = f64;
23161    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
23162        blue3607422463.call(args)
23163    }
23164}
23165
23166#[doc(hidden)]
23167impl FnMut<(&'_ str,)> for BlueInternalType {
23168    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
23169        blue3607422463.call(args)
23170    }
23171}
23172
23173#[doc(hidden)]
23174impl Fn<(&'_ str,)> for BlueInternalType {
23175    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
23176        blue3607422463.call(args)
23177    }
23178}
23179#[doc=r##"<p>Extracts the HSB brightness value from a color or pixel array.</p>
23180"##]
23181///<h2>Examples</h2>
23182///
23183
23184#[doc=r###"```rust
23185noStroke();
23186colorMode(HSB, 255);
23187let c = color(0, 126, 255);
23188fill(c);
23189rect(15, 20, 35, 60);
23190let value = brightness(c); // Sets 'value' to 255
23191fill(value);
23192rect(50, 20, 35, 60);
23193```"###]
23194#[doc=r###"```rust
23195noStroke();
23196colorMode(HSB, 255);
23197let c = color('hsb(60, 100%, 50%)');
23198fill(c);
23199rect(15, 20, 35, 60);
23200let value = brightness(c); // A 'value' of 50% is 127.5
23201fill(value);
23202rect(50, 20, 35, 60);
23203```"###]
23204/// <h2>Parameters</h2>
23205///
23206#[doc = r##"<code>color</code> p5.Color object, color components,
23207                                        or CSS color
23208
23209"##]
23210///
23211
23212pub static brightness: BrightnessInternalType = BrightnessInternalType;
23213#[doc(hidden)]
23214pub struct BrightnessInternalType;
23215
23216
23217#[wasm_bindgen]
23218extern {
23219    #[wasm_bindgen(js_name = "brightness")]
23220    fn brightness3171960842(_ : & Color, ) -> f64;
23221}
23222
23223#[doc(hidden)]
23224impl FnOnce<(&'_ Color,)> for BrightnessInternalType {
23225    type Output = f64;
23226    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
23227        brightness3171960842.call(args)
23228    }
23229}
23230
23231#[doc(hidden)]
23232impl FnMut<(&'_ Color,)> for BrightnessInternalType {
23233    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
23234        brightness3171960842.call(args)
23235    }
23236}
23237
23238#[doc(hidden)]
23239impl Fn<(&'_ Color,)> for BrightnessInternalType {
23240    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
23241        brightness3171960842.call(args)
23242    }
23243}
23244
23245#[wasm_bindgen]
23246extern {
23247    #[wasm_bindgen(js_name = "brightness")]
23248    fn brightness3263699917(_ : & [f64], ) -> f64;
23249}
23250
23251#[doc(hidden)]
23252impl FnOnce<(&'_ [f64],)> for BrightnessInternalType {
23253    type Output = f64;
23254    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
23255        brightness3263699917.call(args)
23256    }
23257}
23258
23259#[doc(hidden)]
23260impl FnMut<(&'_ [f64],)> for BrightnessInternalType {
23261    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
23262        brightness3263699917.call(args)
23263    }
23264}
23265
23266#[doc(hidden)]
23267impl Fn<(&'_ [f64],)> for BrightnessInternalType {
23268    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
23269        brightness3263699917.call(args)
23270    }
23271}
23272
23273#[wasm_bindgen]
23274extern {
23275    #[wasm_bindgen(js_name = "brightness")]
23276    fn brightness2922027373(_ : & str, ) -> f64;
23277}
23278
23279#[doc(hidden)]
23280impl FnOnce<(&'_ str,)> for BrightnessInternalType {
23281    type Output = f64;
23282    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
23283        brightness2922027373.call(args)
23284    }
23285}
23286
23287#[doc(hidden)]
23288impl FnMut<(&'_ str,)> for BrightnessInternalType {
23289    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
23290        brightness2922027373.call(args)
23291    }
23292}
23293
23294#[doc(hidden)]
23295impl Fn<(&'_ str,)> for BrightnessInternalType {
23296    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
23297        brightness2922027373.call(args)
23298    }
23299}
23300#[doc=r##"<p>Creates colors for storing in variables of the color datatype. The
23301parameters are interpreted as RGB or HSB values depending on the
23302current <a href="#/p5/colorMode">colorMode()</a>. The default mode is RGB values from 0 to 255
23303and, therefore, the function call color(255, 204, 0) will return a
23304bright yellow color.</p>
23305<p>Note that if only one value is provided to <a href="#/p5/color">color()</a>, it will be interpreted
23306as a grayscale value. Add a second value, and it will be used for alpha
23307transparency. When three values are specified, they are interpreted as
23308either RGB or HSB values. Adding a fourth value applies alpha
23309transparency.</p>
23310<p>If a single string argument is provided, RGB, RGBA and Hex CSS color
23311strings and all named color strings are supported. In this case, an alpha
23312number value as a second argument is not supported, the RGBA form should be
23313used.</p>
23314"##]
23315///<h2>Examples</h2>
23316///
23317
23318#[doc=r###"```rust
23319let c = color(255, 204, 0);
23320fill(c);
23321noStroke();
23322rect(30, 20, 55, 55);
23323```"###]
23324#[doc=r###"```rust
23325let c = color(255, 204, 0);
23326fill(c);
23327noStroke();
23328ellipse(25, 25, 80, 80); // Draw left circle
23329// Using only one value generates a grayscale value.
23330c = color(65);
23331fill(c);
23332ellipse(75, 75, 80, 80);
23333```"###]
23334#[doc=r###"```rust
23335// You can use named SVG & CSS colors
23336let c = color('magenta');
23337fill(c);
23338noStroke();
23339rect(20, 20, 60, 60);
23340```"###]
23341#[doc=r###"```rust
23342// Example of hex color codes
23343noStroke();
23344let c = color('#0f0');
23345fill(c);
23346rect(0, 10, 45, 80);
23347c = color('#00ff00');
23348fill(c);
23349rect(55, 10, 45, 80);
23350```"###]
23351#[doc=r###"```rust
23352// RGB and RGBA color strings are also supported
23353// these all set to the same color (solid blue)
23354let c;
23355noStroke();
23356c = color('rgb(0,0,255)');
23357fill(c);
23358rect(10, 10, 35, 35); // Draw rectangle
23359c = color('rgb(0%, 0%, 100%)');
23360fill(c);
23361rect(55, 10, 35, 35); // Draw rectangle
23362c = color('rgba(0, 0, 255, 1)');
23363fill(c);
23364rect(10, 55, 35, 35); // Draw rectangle
23365c = color('rgba(0%, 0%, 100%, 1)');
23366fill(c);
23367rect(55, 55, 35, 35); // Draw rectangle
23368```"###]
23369#[doc=r###"```rust
23370// HSL color can also be specified by value
23371let c = color('hsl(160, 100%, 50%)');
23372noStroke();
23373fill(c);
23374rect(0, 10, 45, 80); // Draw rectangle
23375c = color('hsla(160, 100%, 50%, 0.5)');
23376fill(c);
23377rect(55, 10, 45, 80); // Draw rectangle
23378```"###]
23379#[doc=r###"```rust
23380// HSB color can also be specified
23381let c = color('hsb(160, 100%, 50%)');
23382noStroke();
23383fill(c);
23384rect(0, 10, 45, 80); // Draw rectangle
23385c = color('hsba(160, 100%, 50%, 0.5)');
23386fill(c);
23387rect(55, 10, 45, 80); // Draw rectangle
23388```"###]
23389#[doc=r###"```rust
23390noStroke();
23391let c = color(50, 55, 100);
23392fill(c);
23393rect(0, 10, 45, 80); // Draw left rect
23394colorMode(HSB, 100);
23395c = color(50, 55, 100);
23396fill(c);
23397rect(55, 10, 45, 80);
23398```"###]
23399/// <h2>Overloads</h2>
23400///
23401#[doc = r##"<code>gray</code> number specifying value between white and black.
23402
23403"##]
23404///
23405///
23406#[doc = r##"<code>alpha?</code> alpha value relative to current color range
23407                                (default is 0-255)
23408
23409"##]
23410///
23411///
23412/// ---
23413///
23414///
23415#[doc = r##"<code>v1</code> red or hue value relative to
23416                                the current color range
23417
23418"##]
23419///
23420///
23421#[doc = r##"<code>v2</code> green or saturation value
23422                                relative to the current color range
23423
23424"##]
23425///
23426///
23427#[doc = r##"<code>v3</code> blue or brightness value
23428                                relative to the current color range
23429
23430"##]
23431///
23432///
23433#[doc = r##"<code>alpha?</code> alpha value relative to current color range
23434                                (default is 0-255)
23435
23436"##]
23437///
23438///
23439/// ---
23440///
23441///
23442#[doc = r##"<code>value</code> a color string
23443
23444"##]
23445///
23446///
23447/// ---
23448///
23449///
23450#[doc = r##"<code>values</code> an array containing the red,green,blue &
23451                                and alpha components of the color
23452
23453"##]
23454///
23455///
23456/// ---
23457///
23458///
23459#[doc = r##"<code>color</code> 
23460"##]
23461///
23462///
23463/// ---
23464///
23465
23466pub static color: ColorInternalType = ColorInternalType;
23467#[doc(hidden)]
23468pub struct ColorInternalType;
23469
23470
23471#[wasm_bindgen]
23472extern {
23473    #[wasm_bindgen(js_name = "color")]
23474    fn color2547786803(_ : f64, _ : f64, ) ->  Color;
23475}
23476
23477#[doc(hidden)]
23478impl FnOnce<(f64,f64,)> for ColorInternalType {
23479    type Output =  Color;
23480    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
23481        color2547786803.call(args)
23482    }
23483}
23484
23485#[doc(hidden)]
23486impl FnMut<(f64,f64,)> for ColorInternalType {
23487    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
23488        color2547786803.call(args)
23489    }
23490}
23491
23492#[doc(hidden)]
23493impl Fn<(f64,f64,)> for ColorInternalType {
23494    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
23495        color2547786803.call(args)
23496    }
23497}
23498
23499#[wasm_bindgen]
23500extern {
23501    #[wasm_bindgen(js_name = "color")]
23502    fn color1258302120(_ : f64, ) ->  Color;
23503}
23504
23505#[doc(hidden)]
23506impl FnOnce<(f64,)> for ColorInternalType {
23507    type Output =  Color;
23508    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
23509        color1258302120.call(args)
23510    }
23511}
23512
23513#[doc(hidden)]
23514impl FnMut<(f64,)> for ColorInternalType {
23515    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
23516        color1258302120.call(args)
23517    }
23518}
23519
23520#[doc(hidden)]
23521impl Fn<(f64,)> for ColorInternalType {
23522    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
23523        color1258302120.call(args)
23524    }
23525}
23526
23527#[wasm_bindgen]
23528extern {
23529    #[wasm_bindgen(js_name = "color")]
23530    fn color1865288631(_ : f64, _ : f64, _ : f64, _ : f64, ) ->  Color;
23531}
23532
23533#[doc(hidden)]
23534impl FnOnce<(f64,f64,f64,f64,)> for ColorInternalType {
23535    type Output =  Color;
23536    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
23537        color1865288631.call(args)
23538    }
23539}
23540
23541#[doc(hidden)]
23542impl FnMut<(f64,f64,f64,f64,)> for ColorInternalType {
23543    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
23544        color1865288631.call(args)
23545    }
23546}
23547
23548#[doc(hidden)]
23549impl Fn<(f64,f64,f64,f64,)> for ColorInternalType {
23550    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
23551        color1865288631.call(args)
23552    }
23553}
23554
23555#[wasm_bindgen]
23556extern {
23557    #[wasm_bindgen(js_name = "color")]
23558    fn color1229716470(_ : f64, _ : f64, _ : f64, ) ->  Color;
23559}
23560
23561#[doc(hidden)]
23562impl FnOnce<(f64,f64,f64,)> for ColorInternalType {
23563    type Output =  Color;
23564    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
23565        color1229716470.call(args)
23566    }
23567}
23568
23569#[doc(hidden)]
23570impl FnMut<(f64,f64,f64,)> for ColorInternalType {
23571    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
23572        color1229716470.call(args)
23573    }
23574}
23575
23576#[doc(hidden)]
23577impl Fn<(f64,f64,f64,)> for ColorInternalType {
23578    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
23579        color1229716470.call(args)
23580    }
23581}
23582
23583#[wasm_bindgen]
23584extern {
23585    #[wasm_bindgen(js_name = "color")]
23586    fn color3217502212(_ : & str, ) ->  Color;
23587}
23588
23589#[doc(hidden)]
23590impl FnOnce<(&'_ str,)> for ColorInternalType {
23591    type Output =  Color;
23592    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
23593        color3217502212.call(args)
23594    }
23595}
23596
23597#[doc(hidden)]
23598impl FnMut<(&'_ str,)> for ColorInternalType {
23599    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
23600        color3217502212.call(args)
23601    }
23602}
23603
23604#[doc(hidden)]
23605impl Fn<(&'_ str,)> for ColorInternalType {
23606    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
23607        color3217502212.call(args)
23608    }
23609}
23610
23611#[wasm_bindgen]
23612extern {
23613    #[wasm_bindgen(js_name = "color")]
23614    fn color411208024(_ : & [f64], ) ->  Color;
23615}
23616
23617#[doc(hidden)]
23618impl FnOnce<(&'_ [f64],)> for ColorInternalType {
23619    type Output =  Color;
23620    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
23621        color411208024.call(args)
23622    }
23623}
23624
23625#[doc(hidden)]
23626impl FnMut<(&'_ [f64],)> for ColorInternalType {
23627    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
23628        color411208024.call(args)
23629    }
23630}
23631
23632#[doc(hidden)]
23633impl Fn<(&'_ [f64],)> for ColorInternalType {
23634    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
23635        color411208024.call(args)
23636    }
23637}
23638
23639#[wasm_bindgen]
23640extern {
23641    #[wasm_bindgen(js_name = "color")]
23642    fn color3982212263(_ : & Color, ) ->  Color;
23643}
23644
23645#[doc(hidden)]
23646impl FnOnce<(&'_ Color,)> for ColorInternalType {
23647    type Output =  Color;
23648    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
23649        color3982212263.call(args)
23650    }
23651}
23652
23653#[doc(hidden)]
23654impl FnMut<(&'_ Color,)> for ColorInternalType {
23655    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
23656        color3982212263.call(args)
23657    }
23658}
23659
23660#[doc(hidden)]
23661impl Fn<(&'_ Color,)> for ColorInternalType {
23662    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
23663        color3982212263.call(args)
23664    }
23665}
23666#[doc=r##"<p>Extracts the green value from a color or pixel array.</p>
23667"##]
23668///<h2>Examples</h2>
23669///
23670
23671#[doc=r###"```rust
23672let c = color(20, 75, 200); // Define color 'c'
23673fill(c); // Use color variable 'c' as fill color
23674rect(15, 20, 35, 60); // Draw left rectangle
23675
23676let greenValue = green(c); // Get green in 'c'
23677print(greenValue); // Print "75.0"
23678fill(0, greenValue, 0); // Use 'greenValue' in new fill
23679rect(50, 20, 35, 60); // Draw right rectangle
23680```"###]
23681/// <h2>Parameters</h2>
23682///
23683#[doc = r##"<code>color</code> p5.Color object, color components,
23684                                        or CSS color
23685
23686"##]
23687///
23688
23689pub static green: GreenInternalType = GreenInternalType;
23690#[doc(hidden)]
23691pub struct GreenInternalType;
23692
23693
23694#[wasm_bindgen]
23695extern {
23696    #[wasm_bindgen(js_name = "green")]
23697    fn green1048113876(_ : & Color, ) -> f64;
23698}
23699
23700#[doc(hidden)]
23701impl FnOnce<(&'_ Color,)> for GreenInternalType {
23702    type Output = f64;
23703    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
23704        green1048113876.call(args)
23705    }
23706}
23707
23708#[doc(hidden)]
23709impl FnMut<(&'_ Color,)> for GreenInternalType {
23710    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
23711        green1048113876.call(args)
23712    }
23713}
23714
23715#[doc(hidden)]
23716impl Fn<(&'_ Color,)> for GreenInternalType {
23717    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
23718        green1048113876.call(args)
23719    }
23720}
23721
23722#[wasm_bindgen]
23723extern {
23724    #[wasm_bindgen(js_name = "green")]
23725    fn green2294506626(_ : & [f64], ) -> f64;
23726}
23727
23728#[doc(hidden)]
23729impl FnOnce<(&'_ [f64],)> for GreenInternalType {
23730    type Output = f64;
23731    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
23732        green2294506626.call(args)
23733    }
23734}
23735
23736#[doc(hidden)]
23737impl FnMut<(&'_ [f64],)> for GreenInternalType {
23738    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
23739        green2294506626.call(args)
23740    }
23741}
23742
23743#[doc(hidden)]
23744impl Fn<(&'_ [f64],)> for GreenInternalType {
23745    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
23746        green2294506626.call(args)
23747    }
23748}
23749
23750#[wasm_bindgen]
23751extern {
23752    #[wasm_bindgen(js_name = "green")]
23753    fn green3014603660(_ : & str, ) -> f64;
23754}
23755
23756#[doc(hidden)]
23757impl FnOnce<(&'_ str,)> for GreenInternalType {
23758    type Output = f64;
23759    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
23760        green3014603660.call(args)
23761    }
23762}
23763
23764#[doc(hidden)]
23765impl FnMut<(&'_ str,)> for GreenInternalType {
23766    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
23767        green3014603660.call(args)
23768    }
23769}
23770
23771#[doc(hidden)]
23772impl Fn<(&'_ str,)> for GreenInternalType {
23773    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
23774        green3014603660.call(args)
23775    }
23776}
23777#[doc=r##"<p>Extracts the hue value from a color or pixel array.</p>
23778<p>Hue exists in both HSB and HSL. This function will return the
23779HSB-normalized hue when supplied with an HSB color object (or when supplied
23780with a pixel array while the color mode is HSB), but will default to the
23781HSL-normalized hue otherwise. (The values will only be different if the
23782maximum hue setting for each system is different.)</p>
23783"##]
23784///<h2>Examples</h2>
23785///
23786
23787#[doc=r###"```rust
23788noStroke();
23789colorMode(HSB, 255);
23790let c = color(0, 126, 255);
23791fill(c);
23792rect(15, 20, 35, 60);
23793let value = hue(c); // Sets 'value' to "0"
23794fill(value);
23795rect(50, 20, 35, 60);
23796```"###]
23797/// <h2>Parameters</h2>
23798///
23799#[doc = r##"<code>color</code> p5.Color object, color components,
23800                                        or CSS color
23801
23802"##]
23803///
23804
23805pub static hue: HueInternalType = HueInternalType;
23806#[doc(hidden)]
23807pub struct HueInternalType;
23808
23809
23810#[wasm_bindgen]
23811extern {
23812    #[wasm_bindgen(js_name = "hue")]
23813    fn hue2990081610(_ : & Color, ) -> f64;
23814}
23815
23816#[doc(hidden)]
23817impl FnOnce<(&'_ Color,)> for HueInternalType {
23818    type Output = f64;
23819    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
23820        hue2990081610.call(args)
23821    }
23822}
23823
23824#[doc(hidden)]
23825impl FnMut<(&'_ Color,)> for HueInternalType {
23826    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
23827        hue2990081610.call(args)
23828    }
23829}
23830
23831#[doc(hidden)]
23832impl Fn<(&'_ Color,)> for HueInternalType {
23833    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
23834        hue2990081610.call(args)
23835    }
23836}
23837
23838#[wasm_bindgen]
23839extern {
23840    #[wasm_bindgen(js_name = "hue")]
23841    fn hue809211351(_ : & [f64], ) -> f64;
23842}
23843
23844#[doc(hidden)]
23845impl FnOnce<(&'_ [f64],)> for HueInternalType {
23846    type Output = f64;
23847    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
23848        hue809211351.call(args)
23849    }
23850}
23851
23852#[doc(hidden)]
23853impl FnMut<(&'_ [f64],)> for HueInternalType {
23854    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
23855        hue809211351.call(args)
23856    }
23857}
23858
23859#[doc(hidden)]
23860impl Fn<(&'_ [f64],)> for HueInternalType {
23861    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
23862        hue809211351.call(args)
23863    }
23864}
23865
23866#[wasm_bindgen]
23867extern {
23868    #[wasm_bindgen(js_name = "hue")]
23869    fn hue396918183(_ : & str, ) -> f64;
23870}
23871
23872#[doc(hidden)]
23873impl FnOnce<(&'_ str,)> for HueInternalType {
23874    type Output = f64;
23875    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
23876        hue396918183.call(args)
23877    }
23878}
23879
23880#[doc(hidden)]
23881impl FnMut<(&'_ str,)> for HueInternalType {
23882    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
23883        hue396918183.call(args)
23884    }
23885}
23886
23887#[doc(hidden)]
23888impl Fn<(&'_ str,)> for HueInternalType {
23889    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
23890        hue396918183.call(args)
23891    }
23892}
23893#[doc=r##"<p>Blends two colors to find a third color somewhere between them. The amt
23894parameter is the amount to interpolate between the two values where 0.0
23895equal to the first color, 0.1 is very near the first color, 0.5 is halfway
23896in between, etc. An amount below 0 will be treated as 0. Likewise, amounts
23897above 1 will be capped at 1. This is different from the behavior of <a href="#/p5/lerp">lerp()</a>,
23898but necessary because otherwise numbers outside the range will produce
23899strange and unexpected colors.</p>
23900<p>The way that colors are interpolated depends on the current color mode.</p>
23901"##]
23902///<h2>Examples</h2>
23903///
23904
23905#[doc=r###"```rust
23906colorMode(RGB);
23907stroke(255);
23908background(51);
23909let from = color(218, 165, 32);
23910let to = color(72, 61, 139);
23911colorMode(RGB); // Try changing to HSB.
23912let interA = lerpColor(from, to, 0.33);
23913let interB = lerpColor(from, to, 0.66);
23914fill(from);
23915rect(10, 20, 20, 60);
23916fill(interA);
23917rect(30, 20, 20, 60);
23918fill(interB);
23919rect(50, 20, 20, 60);
23920fill(to);
23921rect(70, 20, 20, 60);
23922```"###]
23923/// <h2>Parameters</h2>
23924///
23925#[doc = r##"<code>c1</code> interpolate from this color
23926
23927"##]
23928///
23929///
23930#[doc = r##"<code>c2</code> interpolate to this color
23931
23932"##]
23933///
23934///
23935#[doc = r##"<code>amt</code> number between 0 and 1
23936
23937"##]
23938///
23939
23940pub static lerpColor: LerpColorInternalType = LerpColorInternalType;
23941#[doc(hidden)]
23942pub struct LerpColorInternalType;
23943
23944
23945#[wasm_bindgen]
23946extern {
23947    #[wasm_bindgen(js_name = "lerpColor")]
23948    fn lerpColor961202270(_ : & Color, _ : & Color, _ : f64, ) ->  Color;
23949}
23950
23951#[doc(hidden)]
23952impl FnOnce<(&'_ Color,&'_ Color,f64,)> for LerpColorInternalType {
23953    type Output =  Color;
23954    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Color,f64,)) -> Self::Output {
23955        lerpColor961202270.call(args)
23956    }
23957}
23958
23959#[doc(hidden)]
23960impl FnMut<(&'_ Color,&'_ Color,f64,)> for LerpColorInternalType {
23961    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Color,f64,)) -> Self::Output {
23962        lerpColor961202270.call(args)
23963    }
23964}
23965
23966#[doc(hidden)]
23967impl Fn<(&'_ Color,&'_ Color,f64,)> for LerpColorInternalType {
23968    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Color,f64,)) -> Self::Output {
23969        lerpColor961202270.call(args)
23970    }
23971}
23972#[doc=r##"<p>Extracts the HSL lightness value from a color or pixel array.</p>
23973"##]
23974///<h2>Examples</h2>
23975///
23976
23977#[doc=r###"```rust
23978noStroke();
23979colorMode(HSL);
23980let c = color(156, 100, 50, 1);
23981fill(c);
23982rect(15, 20, 35, 60);
23983let value = lightness(c); // Sets 'value' to 50
23984fill(value);
23985rect(50, 20, 35, 60);
23986```"###]
23987/// <h2>Parameters</h2>
23988///
23989#[doc = r##"<code>color</code> p5.Color object, color components,
23990                                        or CSS color
23991
23992"##]
23993///
23994
23995pub static lightness: LightnessInternalType = LightnessInternalType;
23996#[doc(hidden)]
23997pub struct LightnessInternalType;
23998
23999
24000#[wasm_bindgen]
24001extern {
24002    #[wasm_bindgen(js_name = "lightness")]
24003    fn lightness3772083704(_ : & Color, ) -> f64;
24004}
24005
24006#[doc(hidden)]
24007impl FnOnce<(&'_ Color,)> for LightnessInternalType {
24008    type Output = f64;
24009    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
24010        lightness3772083704.call(args)
24011    }
24012}
24013
24014#[doc(hidden)]
24015impl FnMut<(&'_ Color,)> for LightnessInternalType {
24016    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
24017        lightness3772083704.call(args)
24018    }
24019}
24020
24021#[doc(hidden)]
24022impl Fn<(&'_ Color,)> for LightnessInternalType {
24023    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
24024        lightness3772083704.call(args)
24025    }
24026}
24027
24028#[wasm_bindgen]
24029extern {
24030    #[wasm_bindgen(js_name = "lightness")]
24031    fn lightness3208825503(_ : & [f64], ) -> f64;
24032}
24033
24034#[doc(hidden)]
24035impl FnOnce<(&'_ [f64],)> for LightnessInternalType {
24036    type Output = f64;
24037    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
24038        lightness3208825503.call(args)
24039    }
24040}
24041
24042#[doc(hidden)]
24043impl FnMut<(&'_ [f64],)> for LightnessInternalType {
24044    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
24045        lightness3208825503.call(args)
24046    }
24047}
24048
24049#[doc(hidden)]
24050impl Fn<(&'_ [f64],)> for LightnessInternalType {
24051    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
24052        lightness3208825503.call(args)
24053    }
24054}
24055
24056#[wasm_bindgen]
24057extern {
24058    #[wasm_bindgen(js_name = "lightness")]
24059    fn lightness3617662242(_ : & str, ) -> f64;
24060}
24061
24062#[doc(hidden)]
24063impl FnOnce<(&'_ str,)> for LightnessInternalType {
24064    type Output = f64;
24065    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
24066        lightness3617662242.call(args)
24067    }
24068}
24069
24070#[doc(hidden)]
24071impl FnMut<(&'_ str,)> for LightnessInternalType {
24072    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
24073        lightness3617662242.call(args)
24074    }
24075}
24076
24077#[doc(hidden)]
24078impl Fn<(&'_ str,)> for LightnessInternalType {
24079    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
24080        lightness3617662242.call(args)
24081    }
24082}
24083#[doc=r##"<p>Extracts the red value from a color or pixel array.</p>
24084"##]
24085///<h2>Examples</h2>
24086///
24087
24088#[doc=r###"```rust
24089let c = color(255, 204, 0); // Define color 'c'
24090fill(c); // Use color variable 'c' as fill color
24091rect(15, 20, 35, 60); // Draw left rectangle
24092
24093let redValue = red(c); // Get red in 'c'
24094print(redValue); // Print "255.0"
24095fill(redValue, 0, 0); // Use 'redValue' in new fill
24096rect(50, 20, 35, 60); // Draw right rectangle
24097```"###]
24098#[doc=r###"```rust
24099colorMode(RGB, 255); // Sets the range for red, green, and blue to 255
24100let c = color(127, 255, 0);
24101colorMode(RGB, 1); // Sets the range for red, green, and blue to 1
24102let myColor = red(c);
24103print(myColor); // 0.4980392156862745
24104```"###]
24105/// <h2>Parameters</h2>
24106///
24107#[doc = r##"<code>color</code> p5.Color object, color components,
24108                                        or CSS color
24109
24110"##]
24111///
24112
24113pub static red: RedInternalType = RedInternalType;
24114#[doc(hidden)]
24115pub struct RedInternalType;
24116
24117
24118#[wasm_bindgen]
24119extern {
24120    #[wasm_bindgen(js_name = "red")]
24121    fn red3730130047(_ : & Color, ) -> f64;
24122}
24123
24124#[doc(hidden)]
24125impl FnOnce<(&'_ Color,)> for RedInternalType {
24126    type Output = f64;
24127    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
24128        red3730130047.call(args)
24129    }
24130}
24131
24132#[doc(hidden)]
24133impl FnMut<(&'_ Color,)> for RedInternalType {
24134    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
24135        red3730130047.call(args)
24136    }
24137}
24138
24139#[doc(hidden)]
24140impl Fn<(&'_ Color,)> for RedInternalType {
24141    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
24142        red3730130047.call(args)
24143    }
24144}
24145
24146#[wasm_bindgen]
24147extern {
24148    #[wasm_bindgen(js_name = "red")]
24149    fn red3945275644(_ : & [f64], ) -> f64;
24150}
24151
24152#[doc(hidden)]
24153impl FnOnce<(&'_ [f64],)> for RedInternalType {
24154    type Output = f64;
24155    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
24156        red3945275644.call(args)
24157    }
24158}
24159
24160#[doc(hidden)]
24161impl FnMut<(&'_ [f64],)> for RedInternalType {
24162    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
24163        red3945275644.call(args)
24164    }
24165}
24166
24167#[doc(hidden)]
24168impl Fn<(&'_ [f64],)> for RedInternalType {
24169    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
24170        red3945275644.call(args)
24171    }
24172}
24173
24174#[wasm_bindgen]
24175extern {
24176    #[wasm_bindgen(js_name = "red")]
24177    fn red3521520627(_ : & str, ) -> f64;
24178}
24179
24180#[doc(hidden)]
24181impl FnOnce<(&'_ str,)> for RedInternalType {
24182    type Output = f64;
24183    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
24184        red3521520627.call(args)
24185    }
24186}
24187
24188#[doc(hidden)]
24189impl FnMut<(&'_ str,)> for RedInternalType {
24190    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
24191        red3521520627.call(args)
24192    }
24193}
24194
24195#[doc(hidden)]
24196impl Fn<(&'_ str,)> for RedInternalType {
24197    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
24198        red3521520627.call(args)
24199    }
24200}
24201#[doc=r##"<p>Extracts the saturation value from a color or pixel array.</p>
24202<p>Saturation is scaled differently in HSB and HSL. This function will return
24203the HSB saturation when supplied with an HSB color object (or when supplied
24204with a pixel array while the color mode is HSB), but will default to the
24205HSL saturation otherwise.</p>
24206"##]
24207///<h2>Examples</h2>
24208///
24209
24210#[doc=r###"```rust
24211noStroke();
24212colorMode(HSB, 255);
24213let c = color(0, 126, 255);
24214fill(c);
24215rect(15, 20, 35, 60);
24216let value = saturation(c); // Sets 'value' to 126
24217fill(value);
24218rect(50, 20, 35, 60);
24219```"###]
24220/// <h2>Parameters</h2>
24221///
24222#[doc = r##"<code>color</code> p5.Color object, color components,
24223                                        or CSS color
24224
24225"##]
24226///
24227
24228pub static saturation: SaturationInternalType = SaturationInternalType;
24229#[doc(hidden)]
24230pub struct SaturationInternalType;
24231
24232
24233#[wasm_bindgen]
24234extern {
24235    #[wasm_bindgen(js_name = "saturation")]
24236    fn saturation1437837177(_ : & Color, ) -> f64;
24237}
24238
24239#[doc(hidden)]
24240impl FnOnce<(&'_ Color,)> for SaturationInternalType {
24241    type Output = f64;
24242    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
24243        saturation1437837177.call(args)
24244    }
24245}
24246
24247#[doc(hidden)]
24248impl FnMut<(&'_ Color,)> for SaturationInternalType {
24249    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
24250        saturation1437837177.call(args)
24251    }
24252}
24253
24254#[doc(hidden)]
24255impl Fn<(&'_ Color,)> for SaturationInternalType {
24256    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
24257        saturation1437837177.call(args)
24258    }
24259}
24260
24261#[wasm_bindgen]
24262extern {
24263    #[wasm_bindgen(js_name = "saturation")]
24264    fn saturation4029856146(_ : & [f64], ) -> f64;
24265}
24266
24267#[doc(hidden)]
24268impl FnOnce<(&'_ [f64],)> for SaturationInternalType {
24269    type Output = f64;
24270    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
24271        saturation4029856146.call(args)
24272    }
24273}
24274
24275#[doc(hidden)]
24276impl FnMut<(&'_ [f64],)> for SaturationInternalType {
24277    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
24278        saturation4029856146.call(args)
24279    }
24280}
24281
24282#[doc(hidden)]
24283impl Fn<(&'_ [f64],)> for SaturationInternalType {
24284    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
24285        saturation4029856146.call(args)
24286    }
24287}
24288
24289#[wasm_bindgen]
24290extern {
24291    #[wasm_bindgen(js_name = "saturation")]
24292    fn saturation1544709490(_ : & str, ) -> f64;
24293}
24294
24295#[doc(hidden)]
24296impl FnOnce<(&'_ str,)> for SaturationInternalType {
24297    type Output = f64;
24298    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
24299        saturation1544709490.call(args)
24300    }
24301}
24302
24303#[doc(hidden)]
24304impl FnMut<(&'_ str,)> for SaturationInternalType {
24305    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
24306        saturation1544709490.call(args)
24307    }
24308}
24309
24310#[doc(hidden)]
24311impl Fn<(&'_ str,)> for SaturationInternalType {
24312    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
24313        saturation1544709490.call(args)
24314    }
24315}
24316#[doc=r##"<p>Stores a value in local storage under the key name.
24317 Local storage is saved in the browser and persists
24318 between browsing sessions and page reloads.
24319 The key can be the name of the variable but doesn't
24320 have to be. To retrieve stored items
24321 see <a href="#/p5/getItem">getItem</a>.
24322Sensitive data such as passwords or personal information
24323 should not be stored in local storage.</p>
24324"##]
24325///<h2>Examples</h2>
24326///
24327
24328#[doc=r###"```rust
24329 // Type to change the letter in the
24330 // center of the canvas.
24331 // If you reload the page, it will
24332 // still display the last key you entered
24333let myText;
24334function setup() {
24335   createCanvas(100, 100);
24336   myText = getItem('myText');
24337   if (myText === null) {
24338     myText = '';
24339   }
24340 }
24341function draw() {
24342   textSize(40);
24343   background(255);
24344   text(myText, width / 2, height / 2);
24345 }
24346function keyPressed() {
24347   myText = key;
24348   storeItem('myText', myText);
24349 }
24350 ```"###]
24351/// <h2>Parameters</h2>
24352///
24353#[doc = r##"<code>key</code> 
24354"##]
24355///
24356///
24357#[doc = r##"<code>value</code> 
24358"##]
24359///
24360
24361pub static storeItem: StoreItemInternalType = StoreItemInternalType;
24362#[doc(hidden)]
24363pub struct StoreItemInternalType;
24364
24365
24366#[wasm_bindgen]
24367extern {
24368    #[wasm_bindgen(js_name = "storeItem")]
24369    fn storeItem4113173554(_ : & str, _ : & str, ) ;
24370}
24371
24372#[doc(hidden)]
24373impl FnOnce<(&'_ str,&'_ str,)> for StoreItemInternalType {
24374    type Output = ();
24375    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
24376        storeItem4113173554.call(args)
24377    }
24378}
24379
24380#[doc(hidden)]
24381impl FnMut<(&'_ str,&'_ str,)> for StoreItemInternalType {
24382    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
24383        storeItem4113173554.call(args)
24384    }
24385}
24386
24387#[doc(hidden)]
24388impl Fn<(&'_ str,&'_ str,)> for StoreItemInternalType {
24389    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
24390        storeItem4113173554.call(args)
24391    }
24392}
24393
24394#[wasm_bindgen]
24395extern {
24396    #[wasm_bindgen(js_name = "storeItem")]
24397    fn storeItem1284299563(_ : & str, _ : f64, ) ;
24398}
24399
24400#[doc(hidden)]
24401impl FnOnce<(&'_ str,f64,)> for StoreItemInternalType {
24402    type Output = ();
24403    extern "rust-call" fn call_once(self, args: (&'_ str,f64,)) -> Self::Output {
24404        storeItem1284299563.call(args)
24405    }
24406}
24407
24408#[doc(hidden)]
24409impl FnMut<(&'_ str,f64,)> for StoreItemInternalType {
24410    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,)) -> Self::Output {
24411        storeItem1284299563.call(args)
24412    }
24413}
24414
24415#[doc(hidden)]
24416impl Fn<(&'_ str,f64,)> for StoreItemInternalType {
24417    extern "rust-call" fn call(&self, args: (&'_ str,f64,)) -> Self::Output {
24418        storeItem1284299563.call(args)
24419    }
24420}
24421
24422#[wasm_bindgen]
24423extern {
24424    #[wasm_bindgen(js_name = "storeItem")]
24425    fn storeItem3499518402(_ : & str, _ : JsValue, ) ;
24426}
24427
24428#[doc(hidden)]
24429impl FnOnce<(&'_ str,JsValue,)> for StoreItemInternalType {
24430    type Output = ();
24431    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,)) -> Self::Output {
24432        storeItem3499518402.call(args)
24433    }
24434}
24435
24436#[doc(hidden)]
24437impl FnMut<(&'_ str,JsValue,)> for StoreItemInternalType {
24438    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,)) -> Self::Output {
24439        storeItem3499518402.call(args)
24440    }
24441}
24442
24443#[doc(hidden)]
24444impl Fn<(&'_ str,JsValue,)> for StoreItemInternalType {
24445    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,)) -> Self::Output {
24446        storeItem3499518402.call(args)
24447    }
24448}
24449
24450#[wasm_bindgen]
24451extern {
24452    #[wasm_bindgen(js_name = "storeItem")]
24453    fn storeItem628929274(_ : & str, _ : bool, ) ;
24454}
24455
24456#[doc(hidden)]
24457impl FnOnce<(&'_ str,bool,)> for StoreItemInternalType {
24458    type Output = ();
24459    extern "rust-call" fn call_once(self, args: (&'_ str,bool,)) -> Self::Output {
24460        storeItem628929274.call(args)
24461    }
24462}
24463
24464#[doc(hidden)]
24465impl FnMut<(&'_ str,bool,)> for StoreItemInternalType {
24466    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,)) -> Self::Output {
24467        storeItem628929274.call(args)
24468    }
24469}
24470
24471#[doc(hidden)]
24472impl Fn<(&'_ str,bool,)> for StoreItemInternalType {
24473    extern "rust-call" fn call(&self, args: (&'_ str,bool,)) -> Self::Output {
24474        storeItem628929274.call(args)
24475    }
24476}
24477
24478#[wasm_bindgen]
24479extern {
24480    #[wasm_bindgen(js_name = "storeItem")]
24481    fn storeItem717232080(_ : & str, _ : & Color, ) ;
24482}
24483
24484#[doc(hidden)]
24485impl FnOnce<(&'_ str,&'_ Color,)> for StoreItemInternalType {
24486    type Output = ();
24487    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Color,)) -> Self::Output {
24488        storeItem717232080.call(args)
24489    }
24490}
24491
24492#[doc(hidden)]
24493impl FnMut<(&'_ str,&'_ Color,)> for StoreItemInternalType {
24494    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Color,)) -> Self::Output {
24495        storeItem717232080.call(args)
24496    }
24497}
24498
24499#[doc(hidden)]
24500impl Fn<(&'_ str,&'_ Color,)> for StoreItemInternalType {
24501    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Color,)) -> Self::Output {
24502        storeItem717232080.call(args)
24503    }
24504}
24505
24506#[wasm_bindgen]
24507extern {
24508    #[wasm_bindgen(js_name = "storeItem")]
24509    fn storeItem772879454(_ : & str, _ : & Vector, ) ;
24510}
24511
24512#[doc(hidden)]
24513impl FnOnce<(&'_ str,&'_ Vector,)> for StoreItemInternalType {
24514    type Output = ();
24515    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
24516        storeItem772879454.call(args)
24517    }
24518}
24519
24520#[doc(hidden)]
24521impl FnMut<(&'_ str,&'_ Vector,)> for StoreItemInternalType {
24522    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
24523        storeItem772879454.call(args)
24524    }
24525}
24526
24527#[doc(hidden)]
24528impl Fn<(&'_ str,&'_ Vector,)> for StoreItemInternalType {
24529    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
24530        storeItem772879454.call(args)
24531    }
24532}
24533#[doc=r##"<p>Returns the value of an item that was stored in local storage
24534 using storeItem()</p>
24535"##]
24536///<h2>Examples</h2>
24537///
24538
24539#[doc=r###"```rust
24540 // Click the mouse to change
24541 // the color of the background
24542 // Once you have changed the color
24543 // it will stay changed even when you
24544 // reload the page.
24545let myColor;
24546function setup() {
24547   createCanvas(100, 100);
24548   myColor = getItem('myColor');
24549 }
24550function draw() {
24551   if (myColor !== null) {
24552     background(myColor);
24553   }
24554 }
24555function mousePressed() {
24556   myColor = color(random(255), random(255), random(255));
24557   storeItem('myColor', myColor);
24558 }
24559 ```"###]
24560/// <h2>Parameters</h2>
24561///
24562#[doc = r##"<code>key</code> name that you wish to use to store in local storage
24563
24564"##]
24565///
24566
24567pub static getItem: GetItemInternalType = GetItemInternalType;
24568#[doc(hidden)]
24569pub struct GetItemInternalType;
24570
24571
24572#[wasm_bindgen]
24573extern {
24574    #[wasm_bindgen(js_name = "getItem")]
24575    fn getItem1901660384(_ : & str, ) -> f64;
24576}
24577
24578#[doc(hidden)]
24579impl FnOnce<(&'_ str,)> for GetItemInternalType {
24580    type Output = f64;
24581    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
24582        getItem1901660384.call(args)
24583    }
24584}
24585
24586#[doc(hidden)]
24587impl FnMut<(&'_ str,)> for GetItemInternalType {
24588    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
24589        getItem1901660384.call(args)
24590    }
24591}
24592
24593#[doc(hidden)]
24594impl Fn<(&'_ str,)> for GetItemInternalType {
24595    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
24596        getItem1901660384.call(args)
24597    }
24598}
24599#[doc=r##"<p>Clears all local storage items set with storeItem()
24600 for the current domain.</p>
24601"##]
24602///<h2>Examples</h2>
24603///
24604
24605#[doc=r###"```rust
24606 function setup() {
24607   let myNum = 10;
24608   let myBool = false;
24609   storeItem('myNum', myNum);
24610   storeItem('myBool', myBool);
24611   print(getItem('myNum')); // logs 10 to the console
24612   print(getItem('myBool')); // logs false to the console
24613   clearStorage();
24614   print(getItem('myNum')); // logs null to the console
24615   print(getItem('myBool')); // logs null to the console
24616 }
24617 ```"###]
24618
24619pub static clearStorage: ClearStorageInternalType = ClearStorageInternalType;
24620#[doc(hidden)]
24621pub struct ClearStorageInternalType;
24622
24623
24624#[wasm_bindgen]
24625extern {
24626    #[wasm_bindgen(js_name = "clearStorage")]
24627    fn clearStorage3178783879() ;
24628}
24629
24630#[doc(hidden)]
24631impl FnOnce<()> for ClearStorageInternalType {
24632    type Output = ();
24633    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
24634        clearStorage3178783879.call(args)
24635    }
24636}
24637
24638#[doc(hidden)]
24639impl FnMut<()> for ClearStorageInternalType {
24640    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
24641        clearStorage3178783879.call(args)
24642    }
24643}
24644
24645#[doc(hidden)]
24646impl Fn<()> for ClearStorageInternalType {
24647    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
24648        clearStorage3178783879.call(args)
24649    }
24650}
24651#[doc=r##"<p>Removes an item that was stored with storeItem()</p>
24652"##]
24653///<h2>Examples</h2>
24654///
24655
24656#[doc=r###"```rust
24657 function setup() {
24658   let myVar = 10;
24659   storeItem('myVar', myVar);
24660   print(getItem('myVar')); // logs 10 to the console
24661   removeItem('myVar');
24662   print(getItem('myVar')); // logs null to the console
24663 }
24664 ```"###]
24665/// <h2>Parameters</h2>
24666///
24667#[doc = r##"<code>key</code> 
24668"##]
24669///
24670
24671pub static removeItem: RemoveItemInternalType = RemoveItemInternalType;
24672#[doc(hidden)]
24673pub struct RemoveItemInternalType;
24674
24675
24676#[wasm_bindgen]
24677extern {
24678    #[wasm_bindgen(js_name = "removeItem")]
24679    fn removeItem997857833(_ : & str, ) ;
24680}
24681
24682#[doc(hidden)]
24683impl FnOnce<(&'_ str,)> for RemoveItemInternalType {
24684    type Output = ();
24685    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
24686        removeItem997857833.call(args)
24687    }
24688}
24689
24690#[doc(hidden)]
24691impl FnMut<(&'_ str,)> for RemoveItemInternalType {
24692    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
24693        removeItem997857833.call(args)
24694    }
24695}
24696
24697#[doc(hidden)]
24698impl Fn<(&'_ str,)> for RemoveItemInternalType {
24699    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
24700        removeItem997857833.call(args)
24701    }
24702}
24703#[doc=r##"<p>Stops p5.js from continuously executing the code within <a href="#/p5/draw">draw()</a>.
24704If <a href="#/p5/loop">loop()</a> is called, the code in <a href="#/p5/draw">draw()</a>
24705begins to run continuously again. If using <a href="#/p5/noLoop">noLoop()</a>
24706in <a href="#/p5/setup">setup()</a>, it should be the last line inside the block.</p>
24707<p>When <a href="#/p5/noLoop">noLoop()</a> is used, it's not possible to manipulate
24708or access the screen inside event handling functions such as
24709<a href="#/p5/mousePressed">mousePressed()</a> or
24710<a href="#/p5/keyPressed">keyPressed()</a>. Instead, use those functions to
24711call <a href="#/p5/redraw">redraw()</a> or <a href="#/p5/loop">loop()</a>,
24712which will run <a href="#/p5/draw">draw()</a>, which can update the screen
24713properly. This means that when <a href="#/p5/noLoop">noLoop()</a> has been
24714called, no drawing can happen, and functions like <a href="#/p5/saveFrame">saveFrame()</a>
24715or <a href="#/p5/loadPixels">loadPixels()</a> may not be used.</p>
24716<p>Note that if the sketch is resized, <a href="#/p5/redraw">redraw()</a> will
24717be called to update the sketch, even after <a href="#/p5/noLoop">noLoop()</a>
24718has been specified. Otherwise, the sketch would enter an odd state until
24719<a href="#/p5/loop">loop()</a> was called.</p>
24720<p>Use <a href="#/p5/isLooping">isLooping()</a> to check current state of loop().</p>
24721"##]
24722///<h2>Examples</h2>
24723///
24724
24725#[doc=r###"```rust
24726function setup() {
24727  createCanvas(100, 100);
24728  background(200);
24729  noLoop();
24730}
24731
24732function draw() {
24733  line(10, 10, 90, 90);
24734}
24735```"###]
24736#[doc=r###"```rust
24737let x = 0;
24738function setup() {
24739  createCanvas(100, 100);
24740}
24741
24742function draw() {
24743  background(204);
24744  x = x + 0.1;
24745  if (x > width) {
24746    x = 0;
24747  }
24748  line(x, 0, x, height);
24749}
24750
24751function mousePressed() {
24752  noLoop();
24753}
24754
24755function mouseReleased() {
24756  loop();
24757}
24758```"###]
24759
24760pub static noLoop: NoLoopInternalType = NoLoopInternalType;
24761#[doc(hidden)]
24762pub struct NoLoopInternalType;
24763
24764
24765#[wasm_bindgen]
24766extern {
24767    #[wasm_bindgen(js_name = "noLoop")]
24768    fn noLoop538356296() ;
24769}
24770
24771#[doc(hidden)]
24772impl FnOnce<()> for NoLoopInternalType {
24773    type Output = ();
24774    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
24775        noLoop538356296.call(args)
24776    }
24777}
24778
24779#[doc(hidden)]
24780impl FnMut<()> for NoLoopInternalType {
24781    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
24782        noLoop538356296.call(args)
24783    }
24784}
24785
24786#[doc(hidden)]
24787impl Fn<()> for NoLoopInternalType {
24788    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
24789        noLoop538356296.call(args)
24790    }
24791}
24792#[doc=r##"<p>By default, p5.js loops through draw() continuously, executing the code within
24793it. However, the <a href="#/p5/draw">draw()</a> loop may be stopped by calling
24794<a href="#/p5/noLoop">noLoop()</a>. In that case, the <a href="#/p5/draw">draw()</a>
24795loop can be resumed with loop().</p>
24796<p>Avoid calling loop() from inside setup().</p>
24797<p>Use <a href="#/p5/isLooping">isLooping()</a> to check current state of loop().</p>
24798"##]
24799///<h2>Examples</h2>
24800///
24801
24802#[doc=r###"```rust
24803let x = 0;
24804function setup() {
24805  createCanvas(100, 100);
24806  noLoop();
24807}
24808
24809function draw() {
24810  background(204);
24811  x = x + 0.1;
24812  if (x > width) {
24813    x = 0;
24814  }
24815  line(x, 0, x, height);
24816}
24817
24818function mousePressed() {
24819  loop();
24820}
24821
24822function mouseReleased() {
24823  noLoop();
24824}
24825```"###]
24826
24827pub static r#loop: RLoopInternalType = RLoopInternalType;
24828#[doc(hidden)]
24829pub struct RLoopInternalType;
24830
24831
24832#[wasm_bindgen]
24833extern {
24834    #[wasm_bindgen(js_name = "r#loop")]
24835    fn r#loop3298883363() ;
24836}
24837
24838#[doc(hidden)]
24839impl FnOnce<()> for RLoopInternalType {
24840    type Output = ();
24841    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
24842        r#loop3298883363.call(args)
24843    }
24844}
24845
24846#[doc(hidden)]
24847impl FnMut<()> for RLoopInternalType {
24848    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
24849        r#loop3298883363.call(args)
24850    }
24851}
24852
24853#[doc(hidden)]
24854impl Fn<()> for RLoopInternalType {
24855    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
24856        r#loop3298883363.call(args)
24857    }
24858}
24859#[doc=r##"<p>By default, p5.js loops through <a href="#/p5/draw">draw()</a> continuously,
24860executing the code within it. If the sketch is stopped with
24861<a href="#/p5/noLoop">noLoop()</a> or resumed with <a href="#/p5/loop">loop()</a>,
24862isLooping() returns the current state for use within custom event handlers.</p>
24863"##]
24864///<h2>Examples</h2>
24865///
24866
24867#[doc=r###"```rust
24868let checkbox, button, colBG, colFill;
24869
24870function setup() {
24871  createCanvas(100, 100);
24872
24873  button = createButton('Colorize if loop()');
24874  button.position(0, 120);
24875  button.mousePressed(changeBG);
24876
24877  checkbox = createCheckbox('loop()', true);
24878  checkbox.changed(checkLoop);
24879
24880  colBG = color(0);
24881  colFill = color(255);
24882}
24883
24884function changeBG() {
24885  if (isLooping()) {
24886    colBG = color(random(255), random(255), random(255));
24887    colFill = color(random(255), random(255), random(255));
24888  }
24889}
24890
24891function checkLoop() {
24892  if (this.checked()) {
24893    loop();
24894  } else {
24895    noLoop();
24896  }
24897}
24898
24899function draw() {
24900  background(colBG);
24901  fill(colFill);
24902  ellipse(frameCount % width, height / 2, 50);
24903}
24904```"###]
24905
24906pub static isLooping: IsLoopingInternalType = IsLoopingInternalType;
24907#[doc(hidden)]
24908pub struct IsLoopingInternalType;
24909
24910
24911#[wasm_bindgen]
24912extern {
24913    #[wasm_bindgen(js_name = "isLooping")]
24914    fn isLooping3045790815() ;
24915}
24916
24917#[doc(hidden)]
24918impl FnOnce<()> for IsLoopingInternalType {
24919    type Output = ();
24920    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
24921        isLooping3045790815.call(args)
24922    }
24923}
24924
24925#[doc(hidden)]
24926impl FnMut<()> for IsLoopingInternalType {
24927    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
24928        isLooping3045790815.call(args)
24929    }
24930}
24931
24932#[doc(hidden)]
24933impl Fn<()> for IsLoopingInternalType {
24934    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
24935        isLooping3045790815.call(args)
24936    }
24937}
24938#[doc=r##"<p>The <a href="#/p5/push">push()</a> function saves the current drawing style
24939settings and transformations, while <a href="#/p5/pop">pop()</a> restores these
24940settings. Note that these functions are always used together. They allow you to
24941change the style and transformation settings and later return to what you had.
24942When a new state is started with <a href="#/p5/push">push()</a>, it builds on
24943the current style and transform information. The <a href="#/p5/push">push()</a>
24944and <a href="#/p5/pop">pop()</a> functions can be embedded to provide more
24945control. (See the second example for a demonstration.)</p>
24946<p><a href="#/p5/push">push()</a> stores information related to the current transformation state
24947and style settings controlled by the following functions:
24948<a href="#/p5/fill">fill()</a>,
24949<a href="#/p5/noFill">noFill()</a>,
24950<a href="#/p5/noStroke">noStroke()</a>,
24951<a href="#/p5/stroke">stroke()</a>,
24952<a href="#/p5/tint">tint()</a>,
24953<a href="#/p5/noTint">noTint()</a>,
24954<a href="#/p5/strokeWeight">strokeWeight()</a>,
24955<a href="#/p5/strokeCap">strokeCap()</a>,
24956<a href="#/p5/strokeJoin">strokeJoin()</a>,
24957<a href="#/p5/imageMode">imageMode()</a>,
24958<a href="#/p5/rectMode">rectMode()</a>,
24959<a href="#/p5/ellipseMode">ellipseMode()</a>,
24960<a href="#/p5/colorMode">colorMode()</a>,
24961<a href="#/p5/textAlign">textAlign()</a>,
24962<a href="#/p5/textFont">textFont()</a>,
24963<a href="#/p5/textSize">textSize()</a>,
24964<a href="#/p5/textLeading">textLeading()</a>,
24965<a href="#/p5/applyMatrix">applyMatrix()</a>,
24966<a href="#/p5/resetMatrix">resetMatrix()</a>,
24967<a href="#/p5/rotate">rotate()</a>,
24968<a href="#/p5/scale">scale()</a>,
24969<a href="#/p5/shearX">shearX()</a>,
24970<a href="#/p5/shearY">shearY()</a>,
24971<a href="#/p5/translate">translate()</a>,
24972<a href="#/p5/noiseSeed">noiseSeed()</a>.</p>
24973<p>In WEBGL mode additional style settings are stored. These are controlled by the
24974following functions: <a href="#/p5/setCamera">setCamera()</a>,
24975<a href="#/p5/ambientLight">ambientLight()</a>,
24976<a href="#/p5/directionalLight">directionalLight()</a>,
24977<a href="#/p5/pointLight">pointLight()</a>, <a href="#/p5/texture">texture()</a>,
24978<a href="#/p5/specularMaterial">specularMaterial()</a>,
24979<a href="#/p5/shininess">shininess()</a>,
24980<a href="#/p5/normalMaterial">normalMaterial()</a>
24981and <a href="#/p5/shader">shader()</a>.</p>
24982"##]
24983///<h2>Examples</h2>
24984///
24985
24986#[doc=r###"```rust
24987ellipse(0, 50, 33, 33); // Left circle
24988
24989push(); // Start a new drawing state
24990strokeWeight(10);
24991fill(204, 153, 0);
24992translate(50, 0);
24993ellipse(0, 50, 33, 33); // Middle circle
24994pop(); // Restore original state
24995
24996ellipse(100, 50, 33, 33); // Right circle
24997```"###]
24998#[doc=r###"```rust
24999ellipse(0, 50, 33, 33); // Left circle
25000
25001push(); // Start a new drawing state
25002strokeWeight(10);
25003fill(204, 153, 0);
25004ellipse(33, 50, 33, 33); // Left-middle circle
25005
25006push(); // Start another new drawing state
25007stroke(0, 102, 153);
25008ellipse(66, 50, 33, 33); // Right-middle circle
25009pop(); // Restore previous state
25010
25011pop(); // Restore original state
25012
25013ellipse(100, 50, 33, 33); // Right circle
25014```"###]
25015
25016pub static push: PushInternalType = PushInternalType;
25017#[doc(hidden)]
25018pub struct PushInternalType;
25019
25020
25021#[wasm_bindgen]
25022extern {
25023    #[wasm_bindgen(js_name = "push")]
25024    fn push1115498150() ;
25025}
25026
25027#[doc(hidden)]
25028impl FnOnce<()> for PushInternalType {
25029    type Output = ();
25030    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
25031        push1115498150.call(args)
25032    }
25033}
25034
25035#[doc(hidden)]
25036impl FnMut<()> for PushInternalType {
25037    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
25038        push1115498150.call(args)
25039    }
25040}
25041
25042#[doc(hidden)]
25043impl Fn<()> for PushInternalType {
25044    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
25045        push1115498150.call(args)
25046    }
25047}
25048#[doc=r##"<p>The <a href="#/p5/push">push()</a> function saves the current drawing style
25049settings and transformations, while <a href="#/p5/pop">pop()</a> restores
25050these settings. Note that these functions are always used together. They allow
25051you to change the style and transformation settings and later return to what
25052you had. When a new state is started with <a href="#/p5/push">push()</a>, it
25053builds on the current style and transform information. The <a href="#/p5/push">push()</a>
25054and <a href="#/p5/pop">pop()</a> functions can be embedded to provide more
25055control. (See the second example for a demonstration.)</p>
25056<p><a href="#/p5/push">push()</a> stores information related to the current transformation state
25057and style settings controlled by the following functions:
25058<a href="#/p5/fill">fill()</a>,
25059<a href="#/p5/noFill">noFill()</a>,
25060<a href="#/p5/noStroke">noStroke()</a>,
25061<a href="#/p5/stroke">stroke()</a>,
25062<a href="#/p5/tint">tint()</a>,
25063<a href="#/p5/noTint">noTint()</a>,
25064<a href="#/p5/strokeWeight">strokeWeight()</a>,
25065<a href="#/p5/strokeCap">strokeCap()</a>,
25066<a href="#/p5/strokeJoin">strokeJoin()</a>,
25067<a href="#/p5/imageMode">imageMode()</a>,
25068<a href="#/p5/rectMode">rectMode()</a>,
25069<a href="#/p5/ellipseMode">ellipseMode()</a>,
25070<a href="#/p5/colorMode">colorMode()</a>,
25071<a href="#/p5/textAlign">textAlign()</a>,
25072<a href="#/p5/textFont">textFont()</a>,
25073<a href="#/p5/textSize">textSize()</a>,
25074<a href="#/p5/textLeading">textLeading()</a>,
25075<a href="#/p5/applyMatrix">applyMatrix()</a>,
25076<a href="#/p5/resetMatrix">resetMatrix()</a>,
25077<a href="#/p5/rotate">rotate()</a>,
25078<a href="#/p5/scale">scale()</a>,
25079<a href="#/p5/shearX">shearX()</a>,
25080<a href="#/p5/shearY">shearY()</a>,
25081<a href="#/p5/translate">translate()</a>,
25082<a href="#/p5/noiseSeed">noiseSeed()</a>.</p>
25083<p>In WEBGL mode additional style settings are stored. These are controlled by
25084the following functions:
25085<a href="#/p5/setCamera">setCamera()</a>,
25086<a href="#/p5/ambientLight">ambientLight()</a>,
25087<a href="#/p5/directionalLight">directionalLight()</a>,
25088<a href="#/p5/pointLight">pointLight()</a>,
25089<a href="#/p5/texture">texture()</a>,
25090<a href="#/p5/specularMaterial">specularMaterial()</a>,
25091<a href="#/p5/shininess">shininess()</a>,
25092<a href="#/p5/normalMaterial">normalMaterial()</a> and
25093<a href="#/p5/shader">shader()</a>.</p>
25094"##]
25095///<h2>Examples</h2>
25096///
25097
25098#[doc=r###"```rust
25099ellipse(0, 50, 33, 33); // Left circle
25100
25101push(); // Start a new drawing state
25102translate(50, 0);
25103strokeWeight(10);
25104fill(204, 153, 0);
25105ellipse(0, 50, 33, 33); // Middle circle
25106pop(); // Restore original state
25107
25108ellipse(100, 50, 33, 33); // Right circle
25109```"###]
25110#[doc=r###"```rust
25111ellipse(0, 50, 33, 33); // Left circle
25112
25113push(); // Start a new drawing state
25114strokeWeight(10);
25115fill(204, 153, 0);
25116ellipse(33, 50, 33, 33); // Left-middle circle
25117
25118push(); // Start another new drawing state
25119stroke(0, 102, 153);
25120ellipse(66, 50, 33, 33); // Right-middle circle
25121pop(); // Restore previous state
25122
25123pop(); // Restore original state
25124
25125ellipse(100, 50, 33, 33); // Right circle
25126```"###]
25127
25128pub static pop: PopInternalType = PopInternalType;
25129#[doc(hidden)]
25130pub struct PopInternalType;
25131
25132
25133#[wasm_bindgen]
25134extern {
25135    #[wasm_bindgen(js_name = "pop")]
25136    fn pop3141922570() ;
25137}
25138
25139#[doc(hidden)]
25140impl FnOnce<()> for PopInternalType {
25141    type Output = ();
25142    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
25143        pop3141922570.call(args)
25144    }
25145}
25146
25147#[doc(hidden)]
25148impl FnMut<()> for PopInternalType {
25149    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
25150        pop3141922570.call(args)
25151    }
25152}
25153
25154#[doc(hidden)]
25155impl Fn<()> for PopInternalType {
25156    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
25157        pop3141922570.call(args)
25158    }
25159}
25160#[doc=r##"<p>Executes the code within <a href="#/p5/draw">draw()</a> one time. This
25161function allows the program to update the display window only when necessary,
25162for example when an event registered by <a href="#/p5/mousePressed">mousePressed()</a>
25163or <a href="#/p5/keyPressed">keyPressed()</a> occurs.</p>
25164<p>In structuring a program, it only makes sense to call <a href="#/p5/redraw">redraw()</a>
25165within events such as <a href="#/p5/mousePressed">mousePressed()</a>. This
25166is because <a href="#/p5/redraw">redraw()</a> does not run
25167<a href="#/p5/draw">draw()</a> immediately (it only sets a flag that indicates
25168an update is needed).</p>
25169<p>The <a href="#/p5/redraw">redraw()</a> function does not work properly when
25170called inside <a href="#/p5/draw">draw()</a>.To enable/disable animations,
25171use <a href="#/p5/loop">loop()</a> and <a href="#/p5/noLoop">noLoop()</a>.</p>
25172<p>In addition you can set the number of redraws per method call. Just
25173add an integer as single parameter for the number of redraws.</p>
25174"##]
25175///<h2>Examples</h2>
25176///
25177
25178#[doc=r###"```rust
25179let x = 0;
25180
25181function setup() {
25182  createCanvas(100, 100);
25183  noLoop();
25184}
25185
25186function draw() {
25187  background(204);
25188  line(x, 0, x, height);
25189}
25190
25191function mousePressed() {
25192  x += 1;
25193  redraw();
25194}
25195```"###]
25196#[doc=r###"```rust
25197let x = 0;
25198
25199function setup() {
25200  createCanvas(100, 100);
25201  noLoop();
25202}
25203
25204function draw() {
25205  background(204);
25206  x += 1;
25207  line(x, 0, x, height);
25208}
25209
25210function mousePressed() {
25211  redraw(5);
25212}
25213```"###]
25214/// <h2>Parameters</h2>
25215///
25216#[doc = r##"<code>n?</code> Redraw for n-times. The default value is 1.
25217
25218"##]
25219///
25220
25221pub static redraw: RedrawInternalType = RedrawInternalType;
25222#[doc(hidden)]
25223pub struct RedrawInternalType;
25224
25225
25226#[wasm_bindgen]
25227extern {
25228    #[wasm_bindgen(js_name = "redraw")]
25229    fn redraw564499594(_ : i32, ) ;
25230}
25231
25232#[doc(hidden)]
25233impl FnOnce<(i32,)> for RedrawInternalType {
25234    type Output = ();
25235    extern "rust-call" fn call_once(self, args: (i32,)) -> Self::Output {
25236        redraw564499594.call(args)
25237    }
25238}
25239
25240#[doc(hidden)]
25241impl FnMut<(i32,)> for RedrawInternalType {
25242    extern "rust-call" fn call_mut(&mut self, args: (i32,)) -> Self::Output {
25243        redraw564499594.call(args)
25244    }
25245}
25246
25247#[doc(hidden)]
25248impl Fn<(i32,)> for RedrawInternalType {
25249    extern "rust-call" fn call(&self, args: (i32,)) -> Self::Output {
25250        redraw564499594.call(args)
25251    }
25252}
25253
25254#[wasm_bindgen]
25255extern {
25256    #[wasm_bindgen(js_name = "redraw")]
25257    fn redraw2268040650() ;
25258}
25259
25260#[doc(hidden)]
25261impl FnOnce<()> for RedrawInternalType {
25262    type Output = ();
25263    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
25264        redraw2268040650.call(args)
25265    }
25266}
25267
25268#[doc(hidden)]
25269impl FnMut<()> for RedrawInternalType {
25270    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
25271        redraw2268040650.call(args)
25272    }
25273}
25274
25275#[doc(hidden)]
25276impl Fn<()> for RedrawInternalType {
25277    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
25278        redraw2268040650.call(args)
25279    }
25280}
25281#[doc=r##"<p>The <code>p5()</code> constructor enables you to activate "instance mode" instead of normal
25282"global mode". This is an advanced topic. A short description and example is
25283included below. Please see
25284<a target="blank" href="https://www.youtube.com/watch?v=Su792jEauZg&feature=youtu.be">
25285Dan Shiffman's Coding Train video tutorial</a> or this
25286<a target="blank" href="https://github.com/processing/p5.js/wiki/p5.js-overview#instantiation--namespace">tutorial page</a>
25287for more info.</p>
25288<p>By default, all p5.js functions are in the global namespace (i.e. bound to the window
25289object), meaning you can call them simply <code>ellipse()</code>, <code>fill()</code>, etc. However, this
25290might be inconvenient if you are mixing with other JS libraries (synchronously or
25291asynchronously) or writing long programs of your own. p5.js currently supports a
25292way around this problem called "instance mode". In instance mode, all p5 functions
25293are bound up in a single variable instead of polluting your global namespace.</p>
25294<p>Optionally, you can specify a default container for the canvas and any other elements
25295to append to with a second argument. You can give the ID of an element in your html,
25296or an html node itself.</p>
25297<p>Note that creating instances like this also allows you to have more than one p5 sketch on
25298a single web page, as they will each be wrapped up with their own set up variables. Of
25299course, you could also use iframes to have multiple sketches in global mode.</p>
25300"##]
25301///<h2>Examples</h2>
25302///
25303
25304#[doc=r###"```rust
25305const s = p => {
25306  let x = 100;
25307  let y = 100;
25308
25309  p.setup = function() {
25310    p.createCanvas(700, 410);
25311  };
25312
25313  p.draw = function() {
25314    p.background(0);
25315    p.fill(255);
25316    p.rect(x, y, 50, 50);
25317  };
25318};
25319
25320new p5(s); // invoke p5
25321```"###]
25322/// <h2>Parameters</h2>
25323///
25324#[doc = r##"<code>sketch</code> a function containing a p5.js sketch
25325
25326"##]
25327///
25328///
25329#[doc = r##"<code>node</code> ID or pointer to HTML DOM node to contain sketch in
25330
25331"##]
25332///
25333
25334pub static p5: P5InternalType = P5InternalType;
25335#[doc(hidden)]
25336pub struct P5InternalType;
25337
25338
25339#[wasm_bindgen]
25340extern {
25341    #[wasm_bindgen(js_name = "p5")]
25342    fn p5833171748(_ : JsValue, _ : & str, ) ;
25343}
25344
25345#[doc(hidden)]
25346impl FnOnce<(JsValue,&'_ str,)> for P5InternalType {
25347    type Output = ();
25348    extern "rust-call" fn call_once(self, args: (JsValue,&'_ str,)) -> Self::Output {
25349        p5833171748.call(args)
25350    }
25351}
25352
25353#[doc(hidden)]
25354impl FnMut<(JsValue,&'_ str,)> for P5InternalType {
25355    extern "rust-call" fn call_mut(&mut self, args: (JsValue,&'_ str,)) -> Self::Output {
25356        p5833171748.call(args)
25357    }
25358}
25359
25360#[doc(hidden)]
25361impl Fn<(JsValue,&'_ str,)> for P5InternalType {
25362    extern "rust-call" fn call(&self, args: (JsValue,&'_ str,)) -> Self::Output {
25363        p5833171748.call(args)
25364    }
25365}
25366
25367#[wasm_bindgen]
25368extern {
25369    #[wasm_bindgen(js_name = "p5")]
25370    fn p53496952788(_ : JsValue, _ : JsValue, ) ;
25371}
25372
25373#[doc(hidden)]
25374impl FnOnce<(JsValue,JsValue,)> for P5InternalType {
25375    type Output = ();
25376    extern "rust-call" fn call_once(self, args: (JsValue,JsValue,)) -> Self::Output {
25377        p53496952788.call(args)
25378    }
25379}
25380
25381#[doc(hidden)]
25382impl FnMut<(JsValue,JsValue,)> for P5InternalType {
25383    extern "rust-call" fn call_mut(&mut self, args: (JsValue,JsValue,)) -> Self::Output {
25384        p53496952788.call(args)
25385    }
25386}
25387
25388#[doc(hidden)]
25389impl Fn<(JsValue,JsValue,)> for P5InternalType {
25390    extern "rust-call" fn call(&self, args: (JsValue,JsValue,)) -> Self::Output {
25391        p53496952788.call(args)
25392    }
25393}
25394#[doc=r##"<p>Creates an ambient light with a color. Ambient light is light that comes from everywhere on the canvas.
25395It has no particular source.</p>
25396"##]
25397///<h2>Examples</h2>
25398///
25399
25400#[doc=r###"```rust
25401createCanvas(100, 100, WEBGL);
25402ambientLight(0);
25403ambientMaterial(250);
25404sphere(40);
25405```"###]
25406#[doc=r###"```rust
25407function setup() {
25408  createCanvas(100, 100, WEBGL);
25409}
25410function draw() {
25411  background(51);
25412  ambientLight(100); // white light
25413  ambientMaterial(255, 102, 94); // magenta material
25414  box(30);
25415}
25416```"###]
25417/// <h2>Overloads</h2>
25418///
25419#[doc = r##"<code>v1</code> red or hue value relative to
25420                                the current color range
25421
25422"##]
25423///
25424///
25425#[doc = r##"<code>v2</code> green or saturation value
25426                                relative to the current color range
25427
25428"##]
25429///
25430///
25431#[doc = r##"<code>v3</code> blue or brightness value
25432                                relative to the current color range
25433
25434"##]
25435///
25436///
25437#[doc = r##"<code>alpha?</code> the alpha value
25438
25439"##]
25440///
25441///
25442/// ---
25443///
25444///
25445#[doc = r##"<code>value</code> a color string
25446
25447"##]
25448///
25449///
25450/// ---
25451///
25452///
25453#[doc = r##"<code>gray</code> a gray value
25454
25455"##]
25456///
25457///
25458#[doc = r##"<code>alpha?</code> the alpha value
25459
25460"##]
25461///
25462///
25463/// ---
25464///
25465///
25466#[doc = r##"<code>values</code> an array containing the red,green,blue &
25467                                and alpha components of the color
25468
25469"##]
25470///
25471///
25472/// ---
25473///
25474///
25475#[doc = r##"<code>color</code> the ambient light color
25476
25477"##]
25478///
25479///
25480/// ---
25481///
25482
25483pub static ambientLight: AmbientLightInternalType = AmbientLightInternalType;
25484#[doc(hidden)]
25485pub struct AmbientLightInternalType;
25486
25487
25488#[wasm_bindgen]
25489extern {
25490    #[wasm_bindgen(js_name = "ambientLight")]
25491    fn ambientLight264979927(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
25492}
25493
25494#[doc(hidden)]
25495impl FnOnce<(f64,f64,f64,f64,)> for AmbientLightInternalType {
25496    type Output = ();
25497    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
25498        ambientLight264979927.call(args)
25499    }
25500}
25501
25502#[doc(hidden)]
25503impl FnMut<(f64,f64,f64,f64,)> for AmbientLightInternalType {
25504    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
25505        ambientLight264979927.call(args)
25506    }
25507}
25508
25509#[doc(hidden)]
25510impl Fn<(f64,f64,f64,f64,)> for AmbientLightInternalType {
25511    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
25512        ambientLight264979927.call(args)
25513    }
25514}
25515
25516#[wasm_bindgen]
25517extern {
25518    #[wasm_bindgen(js_name = "ambientLight")]
25519    fn ambientLight1030369908(_ : f64, _ : f64, _ : f64, ) ;
25520}
25521
25522#[doc(hidden)]
25523impl FnOnce<(f64,f64,f64,)> for AmbientLightInternalType {
25524    type Output = ();
25525    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
25526        ambientLight1030369908.call(args)
25527    }
25528}
25529
25530#[doc(hidden)]
25531impl FnMut<(f64,f64,f64,)> for AmbientLightInternalType {
25532    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
25533        ambientLight1030369908.call(args)
25534    }
25535}
25536
25537#[doc(hidden)]
25538impl Fn<(f64,f64,f64,)> for AmbientLightInternalType {
25539    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
25540        ambientLight1030369908.call(args)
25541    }
25542}
25543
25544#[wasm_bindgen]
25545extern {
25546    #[wasm_bindgen(js_name = "ambientLight")]
25547    fn ambientLight564210670(_ : & str, ) ;
25548}
25549
25550#[doc(hidden)]
25551impl FnOnce<(&'_ str,)> for AmbientLightInternalType {
25552    type Output = ();
25553    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
25554        ambientLight564210670.call(args)
25555    }
25556}
25557
25558#[doc(hidden)]
25559impl FnMut<(&'_ str,)> for AmbientLightInternalType {
25560    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
25561        ambientLight564210670.call(args)
25562    }
25563}
25564
25565#[doc(hidden)]
25566impl Fn<(&'_ str,)> for AmbientLightInternalType {
25567    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
25568        ambientLight564210670.call(args)
25569    }
25570}
25571
25572#[wasm_bindgen]
25573extern {
25574    #[wasm_bindgen(js_name = "ambientLight")]
25575    fn ambientLight4261199237(_ : f64, _ : f64, ) ;
25576}
25577
25578#[doc(hidden)]
25579impl FnOnce<(f64,f64,)> for AmbientLightInternalType {
25580    type Output = ();
25581    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
25582        ambientLight4261199237.call(args)
25583    }
25584}
25585
25586#[doc(hidden)]
25587impl FnMut<(f64,f64,)> for AmbientLightInternalType {
25588    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
25589        ambientLight4261199237.call(args)
25590    }
25591}
25592
25593#[doc(hidden)]
25594impl Fn<(f64,f64,)> for AmbientLightInternalType {
25595    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
25596        ambientLight4261199237.call(args)
25597    }
25598}
25599
25600#[wasm_bindgen]
25601extern {
25602    #[wasm_bindgen(js_name = "ambientLight")]
25603    fn ambientLight3917054215(_ : f64, ) ;
25604}
25605
25606#[doc(hidden)]
25607impl FnOnce<(f64,)> for AmbientLightInternalType {
25608    type Output = ();
25609    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
25610        ambientLight3917054215.call(args)
25611    }
25612}
25613
25614#[doc(hidden)]
25615impl FnMut<(f64,)> for AmbientLightInternalType {
25616    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
25617        ambientLight3917054215.call(args)
25618    }
25619}
25620
25621#[doc(hidden)]
25622impl Fn<(f64,)> for AmbientLightInternalType {
25623    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
25624        ambientLight3917054215.call(args)
25625    }
25626}
25627
25628#[wasm_bindgen]
25629extern {
25630    #[wasm_bindgen(js_name = "ambientLight")]
25631    fn ambientLight2583764148(_ : & [f64], ) ;
25632}
25633
25634#[doc(hidden)]
25635impl FnOnce<(&'_ [f64],)> for AmbientLightInternalType {
25636    type Output = ();
25637    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
25638        ambientLight2583764148.call(args)
25639    }
25640}
25641
25642#[doc(hidden)]
25643impl FnMut<(&'_ [f64],)> for AmbientLightInternalType {
25644    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
25645        ambientLight2583764148.call(args)
25646    }
25647}
25648
25649#[doc(hidden)]
25650impl Fn<(&'_ [f64],)> for AmbientLightInternalType {
25651    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
25652        ambientLight2583764148.call(args)
25653    }
25654}
25655
25656#[wasm_bindgen]
25657extern {
25658    #[wasm_bindgen(js_name = "ambientLight")]
25659    fn ambientLight3014577676(_ : & Color, ) ;
25660}
25661
25662#[doc(hidden)]
25663impl FnOnce<(&'_ Color,)> for AmbientLightInternalType {
25664    type Output = ();
25665    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
25666        ambientLight3014577676.call(args)
25667    }
25668}
25669
25670#[doc(hidden)]
25671impl FnMut<(&'_ Color,)> for AmbientLightInternalType {
25672    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
25673        ambientLight3014577676.call(args)
25674    }
25675}
25676
25677#[doc(hidden)]
25678impl Fn<(&'_ Color,)> for AmbientLightInternalType {
25679    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
25680        ambientLight3014577676.call(args)
25681    }
25682}
25683#[doc=r##"<p>Set's the color of the specular highlight when using a specular material and
25684specular light.</p>
25685<p>This method can be combined with specularMaterial() and shininess()
25686functions to set specular highlights. The default color is white, ie
25687(255, 255, 255), which is used if this method is not called before
25688specularMaterial(). If this method is called without specularMaterial(),
25689There will be no effect.</p>
25690<p>Note: specularColor is equivalent to the processing function
25691<a href="https://processing.org/reference/lightSpecular_.html">lightSpecular</a>.</p>
25692"##]
25693///<h2>Examples</h2>
25694///
25695
25696#[doc=r###"```rust
25697function setup() {
25698  createCanvas(100, 100, WEBGL);
25699  noStroke();
25700}
25701
25702function draw() {
25703  background(0);
25704  shininess(20);
25705  ambientLight(50);
25706  specularColor(255, 0, 0);
25707  pointLight(255, 0, 0, 0, -50, 50);
25708  specularColor(0, 255, 0);
25709  pointLight(0, 255, 0, 0, 50, 50);
25710  specularMaterial(255);
25711  sphere(40);
25712}
25713```"###]
25714/// <h2>Overloads</h2>
25715///
25716#[doc = r##"<code>v1</code> red or hue value relative to
25717                                the current color range
25718
25719"##]
25720///
25721///
25722#[doc = r##"<code>v2</code> green or saturation value
25723                                relative to the current color range
25724
25725"##]
25726///
25727///
25728#[doc = r##"<code>v3</code> blue or brightness value
25729                                relative to the current color range
25730
25731"##]
25732///
25733///
25734/// ---
25735///
25736///
25737#[doc = r##"<code>value</code> a color string
25738
25739"##]
25740///
25741///
25742/// ---
25743///
25744///
25745#[doc = r##"<code>gray</code> a gray value
25746
25747"##]
25748///
25749///
25750/// ---
25751///
25752///
25753#[doc = r##"<code>values</code> an array containing the red,green,blue &
25754                                and alpha components of the color
25755
25756"##]
25757///
25758///
25759/// ---
25760///
25761///
25762#[doc = r##"<code>color</code> the ambient light color
25763
25764"##]
25765///
25766///
25767/// ---
25768///
25769
25770pub static specularColor: SpecularColorInternalType = SpecularColorInternalType;
25771#[doc(hidden)]
25772pub struct SpecularColorInternalType;
25773
25774
25775#[wasm_bindgen]
25776extern {
25777    #[wasm_bindgen(js_name = "specularColor")]
25778    fn specularColor2703518711(_ : f64, _ : f64, _ : f64, ) ;
25779}
25780
25781#[doc(hidden)]
25782impl FnOnce<(f64,f64,f64,)> for SpecularColorInternalType {
25783    type Output = ();
25784    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
25785        specularColor2703518711.call(args)
25786    }
25787}
25788
25789#[doc(hidden)]
25790impl FnMut<(f64,f64,f64,)> for SpecularColorInternalType {
25791    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
25792        specularColor2703518711.call(args)
25793    }
25794}
25795
25796#[doc(hidden)]
25797impl Fn<(f64,f64,f64,)> for SpecularColorInternalType {
25798    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
25799        specularColor2703518711.call(args)
25800    }
25801}
25802
25803#[wasm_bindgen]
25804extern {
25805    #[wasm_bindgen(js_name = "specularColor")]
25806    fn specularColor3312087972(_ : & str, ) ;
25807}
25808
25809#[doc(hidden)]
25810impl FnOnce<(&'_ str,)> for SpecularColorInternalType {
25811    type Output = ();
25812    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
25813        specularColor3312087972.call(args)
25814    }
25815}
25816
25817#[doc(hidden)]
25818impl FnMut<(&'_ str,)> for SpecularColorInternalType {
25819    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
25820        specularColor3312087972.call(args)
25821    }
25822}
25823
25824#[doc(hidden)]
25825impl Fn<(&'_ str,)> for SpecularColorInternalType {
25826    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
25827        specularColor3312087972.call(args)
25828    }
25829}
25830
25831#[wasm_bindgen]
25832extern {
25833    #[wasm_bindgen(js_name = "specularColor")]
25834    fn specularColor3662165415(_ : f64, ) ;
25835}
25836
25837#[doc(hidden)]
25838impl FnOnce<(f64,)> for SpecularColorInternalType {
25839    type Output = ();
25840    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
25841        specularColor3662165415.call(args)
25842    }
25843}
25844
25845#[doc(hidden)]
25846impl FnMut<(f64,)> for SpecularColorInternalType {
25847    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
25848        specularColor3662165415.call(args)
25849    }
25850}
25851
25852#[doc(hidden)]
25853impl Fn<(f64,)> for SpecularColorInternalType {
25854    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
25855        specularColor3662165415.call(args)
25856    }
25857}
25858
25859#[wasm_bindgen]
25860extern {
25861    #[wasm_bindgen(js_name = "specularColor")]
25862    fn specularColor3811383337(_ : & [f64], ) ;
25863}
25864
25865#[doc(hidden)]
25866impl FnOnce<(&'_ [f64],)> for SpecularColorInternalType {
25867    type Output = ();
25868    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
25869        specularColor3811383337.call(args)
25870    }
25871}
25872
25873#[doc(hidden)]
25874impl FnMut<(&'_ [f64],)> for SpecularColorInternalType {
25875    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
25876        specularColor3811383337.call(args)
25877    }
25878}
25879
25880#[doc(hidden)]
25881impl Fn<(&'_ [f64],)> for SpecularColorInternalType {
25882    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
25883        specularColor3811383337.call(args)
25884    }
25885}
25886
25887#[wasm_bindgen]
25888extern {
25889    #[wasm_bindgen(js_name = "specularColor")]
25890    fn specularColor1321806907(_ : & Color, ) ;
25891}
25892
25893#[doc(hidden)]
25894impl FnOnce<(&'_ Color,)> for SpecularColorInternalType {
25895    type Output = ();
25896    extern "rust-call" fn call_once(self, args: (&'_ Color,)) -> Self::Output {
25897        specularColor1321806907.call(args)
25898    }
25899}
25900
25901#[doc(hidden)]
25902impl FnMut<(&'_ Color,)> for SpecularColorInternalType {
25903    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,)) -> Self::Output {
25904        specularColor1321806907.call(args)
25905    }
25906}
25907
25908#[doc(hidden)]
25909impl Fn<(&'_ Color,)> for SpecularColorInternalType {
25910    extern "rust-call" fn call(&self, args: (&'_ Color,)) -> Self::Output {
25911        specularColor1321806907.call(args)
25912    }
25913}
25914#[doc=r##"<p>Creates a directional light with a color and a direction</p>
25915<p>A maximum of 5 directionalLight can be active at one time</p>
25916"##]
25917///<h2>Examples</h2>
25918///
25919
25920#[doc=r###"```rust
25921function setup() {
25922  createCanvas(100, 100, WEBGL);
25923}
25924function draw() {
25925  background(0);
25926  //move your mouse to change light direction
25927  let dirX = (mouseX / width - 0.5) * 2;
25928  let dirY = (mouseY / height - 0.5) * 2;
25929  directionalLight(250, 250, 250, -dirX, -dirY, -1);
25930  noStroke();
25931  sphere(40);
25932}
25933```"###]
25934/// <h2>Overloads</h2>
25935///
25936#[doc = r##"<code>v1</code> red or hue value (depending on the current
25937color mode),
25938
25939"##]
25940///
25941///
25942#[doc = r##"<code>v2</code> green or saturation value
25943
25944"##]
25945///
25946///
25947#[doc = r##"<code>v3</code> blue or brightness value
25948
25949"##]
25950///
25951///
25952#[doc = r##"<code>position</code> the direction of the light
25953
25954"##]
25955///
25956///
25957/// ---
25958///
25959///
25960#[doc = r##"<code>color</code> color Array, CSS color string,
25961                                            or p5.Color value
25962
25963"##]
25964///
25965///
25966#[doc = r##"<code>x</code> x axis direction
25967
25968"##]
25969///
25970///
25971#[doc = r##"<code>y</code> y axis direction
25972
25973"##]
25974///
25975///
25976#[doc = r##"<code>z</code> z axis direction
25977
25978"##]
25979///
25980///
25981/// ---
25982///
25983///
25984#[doc = r##"<code>color</code> color Array, CSS color string,
25985                                            or p5.Color value
25986
25987"##]
25988///
25989///
25990#[doc = r##"<code>position</code> the direction of the light
25991
25992"##]
25993///
25994///
25995/// ---
25996///
25997///
25998#[doc = r##"<code>v1</code> red or hue value (depending on the current
25999color mode),
26000
26001"##]
26002///
26003///
26004#[doc = r##"<code>v2</code> green or saturation value
26005
26006"##]
26007///
26008///
26009#[doc = r##"<code>v3</code> blue or brightness value
26010
26011"##]
26012///
26013///
26014#[doc = r##"<code>x</code> x axis direction
26015
26016"##]
26017///
26018///
26019#[doc = r##"<code>y</code> y axis direction
26020
26021"##]
26022///
26023///
26024#[doc = r##"<code>z</code> z axis direction
26025
26026"##]
26027///
26028///
26029/// ---
26030///
26031
26032pub static directionalLight: DirectionalLightInternalType = DirectionalLightInternalType;
26033#[doc(hidden)]
26034pub struct DirectionalLightInternalType;
26035
26036
26037#[wasm_bindgen]
26038extern {
26039    #[wasm_bindgen(js_name = "directionalLight")]
26040    fn directionalLight3207987357(_ : f64, _ : f64, _ : f64, _ : & Vector, ) ;
26041}
26042
26043#[doc(hidden)]
26044impl FnOnce<(f64,f64,f64,&'_ Vector,)> for DirectionalLightInternalType {
26045    type Output = ();
26046    extern "rust-call" fn call_once(self, args: (f64,f64,f64,&'_ Vector,)) -> Self::Output {
26047        directionalLight3207987357.call(args)
26048    }
26049}
26050
26051#[doc(hidden)]
26052impl FnMut<(f64,f64,f64,&'_ Vector,)> for DirectionalLightInternalType {
26053    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,&'_ Vector,)) -> Self::Output {
26054        directionalLight3207987357.call(args)
26055    }
26056}
26057
26058#[doc(hidden)]
26059impl Fn<(f64,f64,f64,&'_ Vector,)> for DirectionalLightInternalType {
26060    extern "rust-call" fn call(&self, args: (f64,f64,f64,&'_ Vector,)) -> Self::Output {
26061        directionalLight3207987357.call(args)
26062    }
26063}
26064
26065#[wasm_bindgen]
26066extern {
26067    #[wasm_bindgen(js_name = "directionalLight")]
26068    fn directionalLight854581901(_ : & [f64], _ : f64, _ : f64, _ : f64, ) ;
26069}
26070
26071#[doc(hidden)]
26072impl FnOnce<(&'_ [f64],f64,f64,f64,)> for DirectionalLightInternalType {
26073    type Output = ();
26074    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,f64,)) -> Self::Output {
26075        directionalLight854581901.call(args)
26076    }
26077}
26078
26079#[doc(hidden)]
26080impl FnMut<(&'_ [f64],f64,f64,f64,)> for DirectionalLightInternalType {
26081    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,f64,)) -> Self::Output {
26082        directionalLight854581901.call(args)
26083    }
26084}
26085
26086#[doc(hidden)]
26087impl Fn<(&'_ [f64],f64,f64,f64,)> for DirectionalLightInternalType {
26088    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,f64,)) -> Self::Output {
26089        directionalLight854581901.call(args)
26090    }
26091}
26092
26093#[wasm_bindgen]
26094extern {
26095    #[wasm_bindgen(js_name = "directionalLight")]
26096    fn directionalLight1594715861(_ : & str, _ : f64, _ : f64, _ : f64, ) ;
26097}
26098
26099#[doc(hidden)]
26100impl FnOnce<(&'_ str,f64,f64,f64,)> for DirectionalLightInternalType {
26101    type Output = ();
26102    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
26103        directionalLight1594715861.call(args)
26104    }
26105}
26106
26107#[doc(hidden)]
26108impl FnMut<(&'_ str,f64,f64,f64,)> for DirectionalLightInternalType {
26109    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
26110        directionalLight1594715861.call(args)
26111    }
26112}
26113
26114#[doc(hidden)]
26115impl Fn<(&'_ str,f64,f64,f64,)> for DirectionalLightInternalType {
26116    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
26117        directionalLight1594715861.call(args)
26118    }
26119}
26120
26121#[wasm_bindgen]
26122extern {
26123    #[wasm_bindgen(js_name = "directionalLight")]
26124    fn directionalLight3830959573(_ : & Color, _ : f64, _ : f64, _ : f64, ) ;
26125}
26126
26127#[doc(hidden)]
26128impl FnOnce<(&'_ Color,f64,f64,f64,)> for DirectionalLightInternalType {
26129    type Output = ();
26130    extern "rust-call" fn call_once(self, args: (&'_ Color,f64,f64,f64,)) -> Self::Output {
26131        directionalLight3830959573.call(args)
26132    }
26133}
26134
26135#[doc(hidden)]
26136impl FnMut<(&'_ Color,f64,f64,f64,)> for DirectionalLightInternalType {
26137    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,f64,f64,f64,)) -> Self::Output {
26138        directionalLight3830959573.call(args)
26139    }
26140}
26141
26142#[doc(hidden)]
26143impl Fn<(&'_ Color,f64,f64,f64,)> for DirectionalLightInternalType {
26144    extern "rust-call" fn call(&self, args: (&'_ Color,f64,f64,f64,)) -> Self::Output {
26145        directionalLight3830959573.call(args)
26146    }
26147}
26148
26149#[wasm_bindgen]
26150extern {
26151    #[wasm_bindgen(js_name = "directionalLight")]
26152    fn directionalLight1069429165(_ : & [f64], _ : & Vector, ) ;
26153}
26154
26155#[doc(hidden)]
26156impl FnOnce<(&'_ [f64],&'_ Vector,)> for DirectionalLightInternalType {
26157    type Output = ();
26158    extern "rust-call" fn call_once(self, args: (&'_ [f64],&'_ Vector,)) -> Self::Output {
26159        directionalLight1069429165.call(args)
26160    }
26161}
26162
26163#[doc(hidden)]
26164impl FnMut<(&'_ [f64],&'_ Vector,)> for DirectionalLightInternalType {
26165    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],&'_ Vector,)) -> Self::Output {
26166        directionalLight1069429165.call(args)
26167    }
26168}
26169
26170#[doc(hidden)]
26171impl Fn<(&'_ [f64],&'_ Vector,)> for DirectionalLightInternalType {
26172    extern "rust-call" fn call(&self, args: (&'_ [f64],&'_ Vector,)) -> Self::Output {
26173        directionalLight1069429165.call(args)
26174    }
26175}
26176
26177#[wasm_bindgen]
26178extern {
26179    #[wasm_bindgen(js_name = "directionalLight")]
26180    fn directionalLight3986974955(_ : & str, _ : & Vector, ) ;
26181}
26182
26183#[doc(hidden)]
26184impl FnOnce<(&'_ str,&'_ Vector,)> for DirectionalLightInternalType {
26185    type Output = ();
26186    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
26187        directionalLight3986974955.call(args)
26188    }
26189}
26190
26191#[doc(hidden)]
26192impl FnMut<(&'_ str,&'_ Vector,)> for DirectionalLightInternalType {
26193    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
26194        directionalLight3986974955.call(args)
26195    }
26196}
26197
26198#[doc(hidden)]
26199impl Fn<(&'_ str,&'_ Vector,)> for DirectionalLightInternalType {
26200    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
26201        directionalLight3986974955.call(args)
26202    }
26203}
26204
26205#[wasm_bindgen]
26206extern {
26207    #[wasm_bindgen(js_name = "directionalLight")]
26208    fn directionalLight2575269121(_ : & Color, _ : & Vector, ) ;
26209}
26210
26211#[doc(hidden)]
26212impl FnOnce<(&'_ Color,&'_ Vector,)> for DirectionalLightInternalType {
26213    type Output = ();
26214    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Vector,)) -> Self::Output {
26215        directionalLight2575269121.call(args)
26216    }
26217}
26218
26219#[doc(hidden)]
26220impl FnMut<(&'_ Color,&'_ Vector,)> for DirectionalLightInternalType {
26221    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Vector,)) -> Self::Output {
26222        directionalLight2575269121.call(args)
26223    }
26224}
26225
26226#[doc(hidden)]
26227impl Fn<(&'_ Color,&'_ Vector,)> for DirectionalLightInternalType {
26228    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Vector,)) -> Self::Output {
26229        directionalLight2575269121.call(args)
26230    }
26231}
26232
26233#[wasm_bindgen]
26234extern {
26235    #[wasm_bindgen(js_name = "directionalLight")]
26236    fn directionalLight211217796(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
26237}
26238
26239#[doc(hidden)]
26240impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for DirectionalLightInternalType {
26241    type Output = ();
26242    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
26243        directionalLight211217796.call(args)
26244    }
26245}
26246
26247#[doc(hidden)]
26248impl FnMut<(f64,f64,f64,f64,f64,f64,)> for DirectionalLightInternalType {
26249    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
26250        directionalLight211217796.call(args)
26251    }
26252}
26253
26254#[doc(hidden)]
26255impl Fn<(f64,f64,f64,f64,f64,f64,)> for DirectionalLightInternalType {
26256    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
26257        directionalLight211217796.call(args)
26258    }
26259}
26260#[doc=r##"<p>Creates a point light with a color and a light position</p>
26261<p>A maximum of 5 pointLight can be active at one time</p>
26262"##]
26263///<h2>Examples</h2>
26264///
26265
26266#[doc=r###"```rust
26267function setup() {
26268  createCanvas(100, 100, WEBGL);
26269}
26270function draw() {
26271  background(0);
26272  //move your mouse to change light position
26273  let locX = mouseX - width / 2;
26274  let locY = mouseY - height / 2;
26275  // to set the light position,
26276  // think of the world's coordinate as:
26277  // -width/2,-height/2 -------- width/2,-height/2
26278  //                |            |
26279  //                |     0,0    |
26280  //                |            |
26281  // -width/2,height/2--------width/2,height/2
26282  pointLight(250, 250, 250, locX, locY, 50);
26283  noStroke();
26284  sphere(40);
26285}
26286```"###]
26287/// <h2>Overloads</h2>
26288///
26289#[doc = r##"<code>v1</code> red or hue value (depending on the current
26290color mode),
26291
26292"##]
26293///
26294///
26295#[doc = r##"<code>v2</code> green or saturation value
26296
26297"##]
26298///
26299///
26300#[doc = r##"<code>v3</code> blue or brightness value
26301
26302"##]
26303///
26304///
26305#[doc = r##"<code>x</code> x axis position
26306
26307"##]
26308///
26309///
26310#[doc = r##"<code>y</code> y axis position
26311
26312"##]
26313///
26314///
26315#[doc = r##"<code>z</code> z axis position
26316
26317"##]
26318///
26319///
26320/// ---
26321///
26322///
26323#[doc = r##"<code>v1</code> red or hue value (depending on the current
26324color mode),
26325
26326"##]
26327///
26328///
26329#[doc = r##"<code>v2</code> green or saturation value
26330
26331"##]
26332///
26333///
26334#[doc = r##"<code>v3</code> blue or brightness value
26335
26336"##]
26337///
26338///
26339#[doc = r##"<code>position</code> the position of the light
26340
26341"##]
26342///
26343///
26344/// ---
26345///
26346///
26347#[doc = r##"<code>color</code> color Array, CSS color string,
26348or p5.Color value
26349
26350"##]
26351///
26352///
26353#[doc = r##"<code>x</code> x axis position
26354
26355"##]
26356///
26357///
26358#[doc = r##"<code>y</code> y axis position
26359
26360"##]
26361///
26362///
26363#[doc = r##"<code>z</code> z axis position
26364
26365"##]
26366///
26367///
26368/// ---
26369///
26370///
26371#[doc = r##"<code>color</code> color Array, CSS color string,
26372or p5.Color value
26373
26374"##]
26375///
26376///
26377#[doc = r##"<code>position</code> the position of the light
26378
26379"##]
26380///
26381///
26382/// ---
26383///
26384
26385pub static pointLight: PointLightInternalType = PointLightInternalType;
26386#[doc(hidden)]
26387pub struct PointLightInternalType;
26388
26389
26390#[wasm_bindgen]
26391extern {
26392    #[wasm_bindgen(js_name = "pointLight")]
26393    fn pointLight882938072(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
26394}
26395
26396#[doc(hidden)]
26397impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for PointLightInternalType {
26398    type Output = ();
26399    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
26400        pointLight882938072.call(args)
26401    }
26402}
26403
26404#[doc(hidden)]
26405impl FnMut<(f64,f64,f64,f64,f64,f64,)> for PointLightInternalType {
26406    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
26407        pointLight882938072.call(args)
26408    }
26409}
26410
26411#[doc(hidden)]
26412impl Fn<(f64,f64,f64,f64,f64,f64,)> for PointLightInternalType {
26413    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
26414        pointLight882938072.call(args)
26415    }
26416}
26417
26418#[wasm_bindgen]
26419extern {
26420    #[wasm_bindgen(js_name = "pointLight")]
26421    fn pointLight2980930638(_ : f64, _ : f64, _ : f64, _ : & Vector, ) ;
26422}
26423
26424#[doc(hidden)]
26425impl FnOnce<(f64,f64,f64,&'_ Vector,)> for PointLightInternalType {
26426    type Output = ();
26427    extern "rust-call" fn call_once(self, args: (f64,f64,f64,&'_ Vector,)) -> Self::Output {
26428        pointLight2980930638.call(args)
26429    }
26430}
26431
26432#[doc(hidden)]
26433impl FnMut<(f64,f64,f64,&'_ Vector,)> for PointLightInternalType {
26434    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,&'_ Vector,)) -> Self::Output {
26435        pointLight2980930638.call(args)
26436    }
26437}
26438
26439#[doc(hidden)]
26440impl Fn<(f64,f64,f64,&'_ Vector,)> for PointLightInternalType {
26441    extern "rust-call" fn call(&self, args: (f64,f64,f64,&'_ Vector,)) -> Self::Output {
26442        pointLight2980930638.call(args)
26443    }
26444}
26445
26446#[wasm_bindgen]
26447extern {
26448    #[wasm_bindgen(js_name = "pointLight")]
26449    fn pointLight3965194534(_ : & [f64], _ : f64, _ : f64, _ : f64, ) ;
26450}
26451
26452#[doc(hidden)]
26453impl FnOnce<(&'_ [f64],f64,f64,f64,)> for PointLightInternalType {
26454    type Output = ();
26455    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,f64,)) -> Self::Output {
26456        pointLight3965194534.call(args)
26457    }
26458}
26459
26460#[doc(hidden)]
26461impl FnMut<(&'_ [f64],f64,f64,f64,)> for PointLightInternalType {
26462    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,f64,)) -> Self::Output {
26463        pointLight3965194534.call(args)
26464    }
26465}
26466
26467#[doc(hidden)]
26468impl Fn<(&'_ [f64],f64,f64,f64,)> for PointLightInternalType {
26469    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,f64,)) -> Self::Output {
26470        pointLight3965194534.call(args)
26471    }
26472}
26473
26474#[wasm_bindgen]
26475extern {
26476    #[wasm_bindgen(js_name = "pointLight")]
26477    fn pointLight2103117131(_ : & str, _ : f64, _ : f64, _ : f64, ) ;
26478}
26479
26480#[doc(hidden)]
26481impl FnOnce<(&'_ str,f64,f64,f64,)> for PointLightInternalType {
26482    type Output = ();
26483    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
26484        pointLight2103117131.call(args)
26485    }
26486}
26487
26488#[doc(hidden)]
26489impl FnMut<(&'_ str,f64,f64,f64,)> for PointLightInternalType {
26490    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
26491        pointLight2103117131.call(args)
26492    }
26493}
26494
26495#[doc(hidden)]
26496impl Fn<(&'_ str,f64,f64,f64,)> for PointLightInternalType {
26497    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,)) -> Self::Output {
26498        pointLight2103117131.call(args)
26499    }
26500}
26501
26502#[wasm_bindgen]
26503extern {
26504    #[wasm_bindgen(js_name = "pointLight")]
26505    fn pointLight3488473115(_ : & Color, _ : f64, _ : f64, _ : f64, ) ;
26506}
26507
26508#[doc(hidden)]
26509impl FnOnce<(&'_ Color,f64,f64,f64,)> for PointLightInternalType {
26510    type Output = ();
26511    extern "rust-call" fn call_once(self, args: (&'_ Color,f64,f64,f64,)) -> Self::Output {
26512        pointLight3488473115.call(args)
26513    }
26514}
26515
26516#[doc(hidden)]
26517impl FnMut<(&'_ Color,f64,f64,f64,)> for PointLightInternalType {
26518    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,f64,f64,f64,)) -> Self::Output {
26519        pointLight3488473115.call(args)
26520    }
26521}
26522
26523#[doc(hidden)]
26524impl Fn<(&'_ Color,f64,f64,f64,)> for PointLightInternalType {
26525    extern "rust-call" fn call(&self, args: (&'_ Color,f64,f64,f64,)) -> Self::Output {
26526        pointLight3488473115.call(args)
26527    }
26528}
26529
26530#[wasm_bindgen]
26531extern {
26532    #[wasm_bindgen(js_name = "pointLight")]
26533    fn pointLight2812934801(_ : & [f64], _ : & Vector, ) ;
26534}
26535
26536#[doc(hidden)]
26537impl FnOnce<(&'_ [f64],&'_ Vector,)> for PointLightInternalType {
26538    type Output = ();
26539    extern "rust-call" fn call_once(self, args: (&'_ [f64],&'_ Vector,)) -> Self::Output {
26540        pointLight2812934801.call(args)
26541    }
26542}
26543
26544#[doc(hidden)]
26545impl FnMut<(&'_ [f64],&'_ Vector,)> for PointLightInternalType {
26546    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],&'_ Vector,)) -> Self::Output {
26547        pointLight2812934801.call(args)
26548    }
26549}
26550
26551#[doc(hidden)]
26552impl Fn<(&'_ [f64],&'_ Vector,)> for PointLightInternalType {
26553    extern "rust-call" fn call(&self, args: (&'_ [f64],&'_ Vector,)) -> Self::Output {
26554        pointLight2812934801.call(args)
26555    }
26556}
26557
26558#[wasm_bindgen]
26559extern {
26560    #[wasm_bindgen(js_name = "pointLight")]
26561    fn pointLight2012919146(_ : & str, _ : & Vector, ) ;
26562}
26563
26564#[doc(hidden)]
26565impl FnOnce<(&'_ str,&'_ Vector,)> for PointLightInternalType {
26566    type Output = ();
26567    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
26568        pointLight2012919146.call(args)
26569    }
26570}
26571
26572#[doc(hidden)]
26573impl FnMut<(&'_ str,&'_ Vector,)> for PointLightInternalType {
26574    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
26575        pointLight2012919146.call(args)
26576    }
26577}
26578
26579#[doc(hidden)]
26580impl Fn<(&'_ str,&'_ Vector,)> for PointLightInternalType {
26581    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,)) -> Self::Output {
26582        pointLight2012919146.call(args)
26583    }
26584}
26585
26586#[wasm_bindgen]
26587extern {
26588    #[wasm_bindgen(js_name = "pointLight")]
26589    fn pointLight1394103085(_ : & Color, _ : & Vector, ) ;
26590}
26591
26592#[doc(hidden)]
26593impl FnOnce<(&'_ Color,&'_ Vector,)> for PointLightInternalType {
26594    type Output = ();
26595    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Vector,)) -> Self::Output {
26596        pointLight1394103085.call(args)
26597    }
26598}
26599
26600#[doc(hidden)]
26601impl FnMut<(&'_ Color,&'_ Vector,)> for PointLightInternalType {
26602    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Vector,)) -> Self::Output {
26603        pointLight1394103085.call(args)
26604    }
26605}
26606
26607#[doc(hidden)]
26608impl Fn<(&'_ Color,&'_ Vector,)> for PointLightInternalType {
26609    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Vector,)) -> Self::Output {
26610        pointLight1394103085.call(args)
26611    }
26612}
26613#[doc=r##"<p>Sets the default ambient and directional light. The defaults are <a href="#/p5/ambientLight">ambientLight(128, 128, 128)</a> and <a href="#/p5/directionalLight">directionalLight(128, 128, 128, 0, 0, -1)</a>. Lights need to be included in the <a href="#/p5/draw">draw()</a> to remain persistent in a looping program. Placing them in the <a href="#/p5/setup">setup()</a> of a looping program will cause them to only have an effect the first time through the loop.</p>
26614"##]
26615///<h2>Examples</h2>
26616///
26617
26618#[doc=r###"```rust
26619function setup() {
26620  createCanvas(100, 100, WEBGL);
26621}
26622function draw() {
26623  background(0);
26624  lights();
26625  rotateX(millis() / 1000);
26626  rotateY(millis() / 1000);
26627  rotateZ(millis() / 1000);
26628  box();
26629}
26630```"###]
26631
26632pub static lights: LightsInternalType = LightsInternalType;
26633#[doc(hidden)]
26634pub struct LightsInternalType;
26635
26636
26637#[wasm_bindgen]
26638extern {
26639    #[wasm_bindgen(js_name = "lights")]
26640    fn lights3739958075() ;
26641}
26642
26643#[doc(hidden)]
26644impl FnOnce<()> for LightsInternalType {
26645    type Output = ();
26646    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
26647        lights3739958075.call(args)
26648    }
26649}
26650
26651#[doc(hidden)]
26652impl FnMut<()> for LightsInternalType {
26653    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
26654        lights3739958075.call(args)
26655    }
26656}
26657
26658#[doc(hidden)]
26659impl Fn<()> for LightsInternalType {
26660    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
26661        lights3739958075.call(args)
26662    }
26663}
26664#[doc=r##"<p>Sets the falloff rates for point lights. It affects only the elements which are created after it in the code.
26665The default value is lightFalloff(1.0, 0.0, 0.0), and the parameters are used to calculate the falloff with the following equation:</p>
26666<p>d = distance from light position to vertex position</p>
26667<p>falloff = 1 / (CONSTANT + d * LINEAR + ( d * d ) * QUADRATIC)</p>
26668"##]
26669///<h2>Examples</h2>
26670///
26671
26672#[doc=r###"```rust
26673function setup() {
26674  createCanvas(100, 100, WEBGL);
26675  noStroke();
26676}
26677function draw() {
26678  background(0);
26679  let locX = mouseX - width / 2;
26680  let locY = mouseY - height / 2;
26681  translate(-25, 0, 0);
26682  lightFalloff(1, 0, 0);
26683  pointLight(250, 250, 250, locX, locY, 50);
26684  sphere(20);
26685  translate(50, 0, 0);
26686  lightFalloff(0.9, 0.01, 0);
26687  pointLight(250, 250, 250, locX, locY, 50);
26688  sphere(20);
26689}
26690```"###]
26691/// <h2>Parameters</h2>
26692///
26693#[doc = r##"<code>constant</code> constant value for determining falloff
26694
26695"##]
26696///
26697///
26698#[doc = r##"<code>linear</code> linear value for determining falloff
26699
26700"##]
26701///
26702///
26703#[doc = r##"<code>quadratic</code> quadratic value for determining falloff
26704
26705"##]
26706///
26707
26708pub static lightFalloff: LightFalloffInternalType = LightFalloffInternalType;
26709#[doc(hidden)]
26710pub struct LightFalloffInternalType;
26711
26712
26713#[wasm_bindgen]
26714extern {
26715    #[wasm_bindgen(js_name = "lightFalloff")]
26716    fn lightFalloff1050281091(_ : f64, _ : f64, _ : f64, ) ;
26717}
26718
26719#[doc(hidden)]
26720impl FnOnce<(f64,f64,f64,)> for LightFalloffInternalType {
26721    type Output = ();
26722    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
26723        lightFalloff1050281091.call(args)
26724    }
26725}
26726
26727#[doc(hidden)]
26728impl FnMut<(f64,f64,f64,)> for LightFalloffInternalType {
26729    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
26730        lightFalloff1050281091.call(args)
26731    }
26732}
26733
26734#[doc(hidden)]
26735impl Fn<(f64,f64,f64,)> for LightFalloffInternalType {
26736    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
26737        lightFalloff1050281091.call(args)
26738    }
26739}
26740#[doc=r##"<p>Creates a spotlight with a given color, position, direction of light,
26741angle and concentration. Here, angle refers to the opening or aperture
26742of the cone of the spotlight, and concentration is used to focus the
26743light towards the center. Both angle and concentration are optional, but if
26744you want to provide concentration, you will also have to specify the angle.</p>
26745<p>A maximum of 5 spotLight can be active at one time</p>
26746"##]
26747///<h2>Examples</h2>
26748///
26749
26750#[doc=r###"```rust
26751function setup() {
26752  createCanvas(100, 100, WEBGL);
26753}
26754function draw() {
26755  background(0);
26756  //move your mouse to change light position
26757  let locX = mouseX - width / 2;
26758  let locY = mouseY - height / 2;
26759  // to set the light position,
26760  // think of the world's coordinate as:
26761  // -width/2,-height/2 -------- width/2,-height/2
26762  //                |            |
26763  //                |     0,0    |
26764  //                |            |
26765  // -width/2,height/2--------width/2,height/2
26766  ambientLight(50);
26767  spotLight(0, 250, 0, locX, locY, 100, 0, 0, -1, Math.PI / 16);
26768  noStroke();
26769  sphere(40);
26770}
26771```"###]
26772/// <h2>Overloads</h2>
26773///
26774#[doc = r##"<code>v1</code> red or hue value (depending on the current
26775color mode),
26776
26777"##]
26778///
26779///
26780#[doc = r##"<code>v2</code> green or saturation value
26781
26782"##]
26783///
26784///
26785#[doc = r##"<code>v3</code> blue or brightness value
26786
26787"##]
26788///
26789///
26790#[doc = r##"<code>x</code> x axis position
26791
26792"##]
26793///
26794///
26795#[doc = r##"<code>y</code> y axis position
26796
26797"##]
26798///
26799///
26800#[doc = r##"<code>z</code> z axis position
26801
26802"##]
26803///
26804///
26805#[doc = r##"<code>rx</code> x axis direction of light
26806
26807"##]
26808///
26809///
26810#[doc = r##"<code>ry</code> y axis direction of light
26811
26812"##]
26813///
26814///
26815#[doc = r##"<code>rz</code> z axis direction of light
26816
26817"##]
26818///
26819///
26820#[doc = r##"<code>angle?</code> optional parameter for angle. Defaults to PI/3
26821
26822"##]
26823///
26824///
26825#[doc = r##"<code>conc?</code> optional parameter for concentration. Defaults to 100
26826
26827"##]
26828///
26829///
26830/// ---
26831///
26832///
26833#[doc = r##"<code>color</code> color Array, CSS color string,
26834or p5.Color value
26835
26836"##]
26837///
26838///
26839#[doc = r##"<code>position</code> the position of the light
26840
26841"##]
26842///
26843///
26844#[doc = r##"<code>direction</code> the direction of the light
26845
26846"##]
26847///
26848///
26849#[doc = r##"<code>angle?</code> optional parameter for angle. Defaults to PI/3
26850
26851"##]
26852///
26853///
26854#[doc = r##"<code>conc?</code> optional parameter for concentration. Defaults to 100
26855
26856"##]
26857///
26858///
26859/// ---
26860///
26861///
26862#[doc = r##"<code>v1</code> red or hue value (depending on the current
26863color mode),
26864
26865"##]
26866///
26867///
26868#[doc = r##"<code>v2</code> green or saturation value
26869
26870"##]
26871///
26872///
26873#[doc = r##"<code>v3</code> blue or brightness value
26874
26875"##]
26876///
26877///
26878#[doc = r##"<code>position</code> the position of the light
26879
26880"##]
26881///
26882///
26883#[doc = r##"<code>direction</code> the direction of the light
26884
26885"##]
26886///
26887///
26888#[doc = r##"<code>angle?</code> optional parameter for angle. Defaults to PI/3
26889
26890"##]
26891///
26892///
26893#[doc = r##"<code>conc?</code> optional parameter for concentration. Defaults to 100
26894
26895"##]
26896///
26897///
26898/// ---
26899///
26900///
26901#[doc = r##"<code>color</code> color Array, CSS color string,
26902or p5.Color value
26903
26904"##]
26905///
26906///
26907#[doc = r##"<code>x</code> x axis position
26908
26909"##]
26910///
26911///
26912#[doc = r##"<code>y</code> y axis position
26913
26914"##]
26915///
26916///
26917#[doc = r##"<code>z</code> z axis position
26918
26919"##]
26920///
26921///
26922#[doc = r##"<code>direction</code> the direction of the light
26923
26924"##]
26925///
26926///
26927#[doc = r##"<code>angle?</code> optional parameter for angle. Defaults to PI/3
26928
26929"##]
26930///
26931///
26932#[doc = r##"<code>conc?</code> optional parameter for concentration. Defaults to 100
26933
26934"##]
26935///
26936///
26937/// ---
26938///
26939///
26940#[doc = r##"<code>color</code> color Array, CSS color string,
26941or p5.Color value
26942
26943"##]
26944///
26945///
26946#[doc = r##"<code>position</code> the position of the light
26947
26948"##]
26949///
26950///
26951#[doc = r##"<code>rx</code> x axis direction of light
26952
26953"##]
26954///
26955///
26956#[doc = r##"<code>ry</code> y axis direction of light
26957
26958"##]
26959///
26960///
26961#[doc = r##"<code>rz</code> z axis direction of light
26962
26963"##]
26964///
26965///
26966#[doc = r##"<code>angle?</code> optional parameter for angle. Defaults to PI/3
26967
26968"##]
26969///
26970///
26971#[doc = r##"<code>conc?</code> optional parameter for concentration. Defaults to 100
26972
26973"##]
26974///
26975///
26976/// ---
26977///
26978///
26979#[doc = r##"<code>v1</code> red or hue value (depending on the current
26980color mode),
26981
26982"##]
26983///
26984///
26985#[doc = r##"<code>v2</code> green or saturation value
26986
26987"##]
26988///
26989///
26990#[doc = r##"<code>v3</code> blue or brightness value
26991
26992"##]
26993///
26994///
26995#[doc = r##"<code>x</code> x axis position
26996
26997"##]
26998///
26999///
27000#[doc = r##"<code>y</code> y axis position
27001
27002"##]
27003///
27004///
27005#[doc = r##"<code>z</code> z axis position
27006
27007"##]
27008///
27009///
27010#[doc = r##"<code>direction</code> the direction of the light
27011
27012"##]
27013///
27014///
27015#[doc = r##"<code>angle?</code> optional parameter for angle. Defaults to PI/3
27016
27017"##]
27018///
27019///
27020#[doc = r##"<code>conc?</code> optional parameter for concentration. Defaults to 100
27021
27022"##]
27023///
27024///
27025/// ---
27026///
27027///
27028#[doc = r##"<code>v1</code> red or hue value (depending on the current
27029color mode),
27030
27031"##]
27032///
27033///
27034#[doc = r##"<code>v2</code> green or saturation value
27035
27036"##]
27037///
27038///
27039#[doc = r##"<code>v3</code> blue or brightness value
27040
27041"##]
27042///
27043///
27044#[doc = r##"<code>position</code> the position of the light
27045
27046"##]
27047///
27048///
27049#[doc = r##"<code>rx</code> x axis direction of light
27050
27051"##]
27052///
27053///
27054#[doc = r##"<code>ry</code> y axis direction of light
27055
27056"##]
27057///
27058///
27059#[doc = r##"<code>rz</code> z axis direction of light
27060
27061"##]
27062///
27063///
27064#[doc = r##"<code>angle?</code> optional parameter for angle. Defaults to PI/3
27065
27066"##]
27067///
27068///
27069#[doc = r##"<code>conc?</code> optional parameter for concentration. Defaults to 100
27070
27071"##]
27072///
27073///
27074/// ---
27075///
27076///
27077#[doc = r##"<code>color</code> color Array, CSS color string,
27078or p5.Color value
27079
27080"##]
27081///
27082///
27083#[doc = r##"<code>x</code> x axis position
27084
27085"##]
27086///
27087///
27088#[doc = r##"<code>y</code> y axis position
27089
27090"##]
27091///
27092///
27093#[doc = r##"<code>z</code> z axis position
27094
27095"##]
27096///
27097///
27098#[doc = r##"<code>rx</code> x axis direction of light
27099
27100"##]
27101///
27102///
27103#[doc = r##"<code>ry</code> y axis direction of light
27104
27105"##]
27106///
27107///
27108#[doc = r##"<code>rz</code> z axis direction of light
27109
27110"##]
27111///
27112///
27113#[doc = r##"<code>angle?</code> optional parameter for angle. Defaults to PI/3
27114
27115"##]
27116///
27117///
27118#[doc = r##"<code>conc?</code> optional parameter for concentration. Defaults to 100
27119
27120"##]
27121///
27122///
27123/// ---
27124///
27125
27126pub static spotLight: SpotLightInternalType = SpotLightInternalType;
27127#[doc(hidden)]
27128pub struct SpotLightInternalType;
27129
27130
27131#[wasm_bindgen]
27132extern {
27133    #[wasm_bindgen(js_name = "spotLight")]
27134    fn spotLight1308801150(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
27135}
27136
27137#[doc(hidden)]
27138impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27139    type Output = ();
27140    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27141        spotLight1308801150.call(args)
27142    }
27143}
27144
27145#[doc(hidden)]
27146impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27147    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27148        spotLight1308801150.call(args)
27149    }
27150}
27151
27152#[doc(hidden)]
27153impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27154    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27155        spotLight1308801150.call(args)
27156    }
27157}
27158
27159#[wasm_bindgen]
27160extern {
27161    #[wasm_bindgen(js_name = "spotLight")]
27162    fn spotLight4140842868(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
27163}
27164
27165#[doc(hidden)]
27166impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27167    type Output = ();
27168    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27169        spotLight4140842868.call(args)
27170    }
27171}
27172
27173#[doc(hidden)]
27174impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27175    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27176        spotLight4140842868.call(args)
27177    }
27178}
27179
27180#[doc(hidden)]
27181impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27182    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27183        spotLight4140842868.call(args)
27184    }
27185}
27186
27187#[wasm_bindgen]
27188extern {
27189    #[wasm_bindgen(js_name = "spotLight")]
27190    fn spotLight2362751213(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
27191}
27192
27193#[doc(hidden)]
27194impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27195    type Output = ();
27196    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27197        spotLight2362751213.call(args)
27198    }
27199}
27200
27201#[doc(hidden)]
27202impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27203    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27204        spotLight2362751213.call(args)
27205    }
27206}
27207
27208#[doc(hidden)]
27209impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27210    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
27211        spotLight2362751213.call(args)
27212    }
27213}
27214
27215#[wasm_bindgen]
27216extern {
27217    #[wasm_bindgen(js_name = "spotLight")]
27218    fn spotLight3171394915(_ : & [f64], _ : & Vector, _ : & Vector, _ : f64, _ : f64, ) ;
27219}
27220
27221#[doc(hidden)]
27222impl FnOnce<(&'_ [f64],&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27223    type Output = ();
27224    extern "rust-call" fn call_once(self, args: (&'_ [f64],&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27225        spotLight3171394915.call(args)
27226    }
27227}
27228
27229#[doc(hidden)]
27230impl FnMut<(&'_ [f64],&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27231    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27232        spotLight3171394915.call(args)
27233    }
27234}
27235
27236#[doc(hidden)]
27237impl Fn<(&'_ [f64],&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27238    extern "rust-call" fn call(&self, args: (&'_ [f64],&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27239        spotLight3171394915.call(args)
27240    }
27241}
27242
27243#[wasm_bindgen]
27244extern {
27245    #[wasm_bindgen(js_name = "spotLight")]
27246    fn spotLight3375071488(_ : & [f64], _ : & Vector, _ : & Vector, _ : f64, ) ;
27247}
27248
27249#[doc(hidden)]
27250impl FnOnce<(&'_ [f64],&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27251    type Output = ();
27252    extern "rust-call" fn call_once(self, args: (&'_ [f64],&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27253        spotLight3375071488.call(args)
27254    }
27255}
27256
27257#[doc(hidden)]
27258impl FnMut<(&'_ [f64],&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27259    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27260        spotLight3375071488.call(args)
27261    }
27262}
27263
27264#[doc(hidden)]
27265impl Fn<(&'_ [f64],&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27266    extern "rust-call" fn call(&self, args: (&'_ [f64],&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27267        spotLight3375071488.call(args)
27268    }
27269}
27270
27271#[wasm_bindgen]
27272extern {
27273    #[wasm_bindgen(js_name = "spotLight")]
27274    fn spotLight2697552092(_ : & [f64], _ : & Vector, _ : & Vector, ) ;
27275}
27276
27277#[doc(hidden)]
27278impl FnOnce<(&'_ [f64],&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27279    type Output = ();
27280    extern "rust-call" fn call_once(self, args: (&'_ [f64],&'_ Vector,&'_ Vector,)) -> Self::Output {
27281        spotLight2697552092.call(args)
27282    }
27283}
27284
27285#[doc(hidden)]
27286impl FnMut<(&'_ [f64],&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27287    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],&'_ Vector,&'_ Vector,)) -> Self::Output {
27288        spotLight2697552092.call(args)
27289    }
27290}
27291
27292#[doc(hidden)]
27293impl Fn<(&'_ [f64],&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27294    extern "rust-call" fn call(&self, args: (&'_ [f64],&'_ Vector,&'_ Vector,)) -> Self::Output {
27295        spotLight2697552092.call(args)
27296    }
27297}
27298
27299#[wasm_bindgen]
27300extern {
27301    #[wasm_bindgen(js_name = "spotLight")]
27302    fn spotLight1123030294(_ : & str, _ : & Vector, _ : & Vector, _ : f64, _ : f64, ) ;
27303}
27304
27305#[doc(hidden)]
27306impl FnOnce<(&'_ str,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27307    type Output = ();
27308    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27309        spotLight1123030294.call(args)
27310    }
27311}
27312
27313#[doc(hidden)]
27314impl FnMut<(&'_ str,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27315    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27316        spotLight1123030294.call(args)
27317    }
27318}
27319
27320#[doc(hidden)]
27321impl Fn<(&'_ str,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27322    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27323        spotLight1123030294.call(args)
27324    }
27325}
27326
27327#[wasm_bindgen]
27328extern {
27329    #[wasm_bindgen(js_name = "spotLight")]
27330    fn spotLight1699260810(_ : & str, _ : & Vector, _ : & Vector, _ : f64, ) ;
27331}
27332
27333#[doc(hidden)]
27334impl FnOnce<(&'_ str,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27335    type Output = ();
27336    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27337        spotLight1699260810.call(args)
27338    }
27339}
27340
27341#[doc(hidden)]
27342impl FnMut<(&'_ str,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27343    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27344        spotLight1699260810.call(args)
27345    }
27346}
27347
27348#[doc(hidden)]
27349impl Fn<(&'_ str,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27350    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27351        spotLight1699260810.call(args)
27352    }
27353}
27354
27355#[wasm_bindgen]
27356extern {
27357    #[wasm_bindgen(js_name = "spotLight")]
27358    fn spotLight369901195(_ : & str, _ : & Vector, _ : & Vector, ) ;
27359}
27360
27361#[doc(hidden)]
27362impl FnOnce<(&'_ str,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27363    type Output = ();
27364    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,&'_ Vector,)) -> Self::Output {
27365        spotLight369901195.call(args)
27366    }
27367}
27368
27369#[doc(hidden)]
27370impl FnMut<(&'_ str,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27371    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,&'_ Vector,)) -> Self::Output {
27372        spotLight369901195.call(args)
27373    }
27374}
27375
27376#[doc(hidden)]
27377impl Fn<(&'_ str,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27378    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,&'_ Vector,)) -> Self::Output {
27379        spotLight369901195.call(args)
27380    }
27381}
27382
27383#[wasm_bindgen]
27384extern {
27385    #[wasm_bindgen(js_name = "spotLight")]
27386    fn spotLight2889914109(_ : & Color, _ : & Vector, _ : & Vector, _ : f64, _ : f64, ) ;
27387}
27388
27389#[doc(hidden)]
27390impl FnOnce<(&'_ Color,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27391    type Output = ();
27392    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27393        spotLight2889914109.call(args)
27394    }
27395}
27396
27397#[doc(hidden)]
27398impl FnMut<(&'_ Color,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27399    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27400        spotLight2889914109.call(args)
27401    }
27402}
27403
27404#[doc(hidden)]
27405impl Fn<(&'_ Color,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27406    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27407        spotLight2889914109.call(args)
27408    }
27409}
27410
27411#[wasm_bindgen]
27412extern {
27413    #[wasm_bindgen(js_name = "spotLight")]
27414    fn spotLight309896609(_ : & Color, _ : & Vector, _ : & Vector, _ : f64, ) ;
27415}
27416
27417#[doc(hidden)]
27418impl FnOnce<(&'_ Color,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27419    type Output = ();
27420    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27421        spotLight309896609.call(args)
27422    }
27423}
27424
27425#[doc(hidden)]
27426impl FnMut<(&'_ Color,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27427    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27428        spotLight309896609.call(args)
27429    }
27430}
27431
27432#[doc(hidden)]
27433impl Fn<(&'_ Color,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27434    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27435        spotLight309896609.call(args)
27436    }
27437}
27438
27439#[wasm_bindgen]
27440extern {
27441    #[wasm_bindgen(js_name = "spotLight")]
27442    fn spotLight892840671(_ : & Color, _ : & Vector, _ : & Vector, ) ;
27443}
27444
27445#[doc(hidden)]
27446impl FnOnce<(&'_ Color,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27447    type Output = ();
27448    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Vector,&'_ Vector,)) -> Self::Output {
27449        spotLight892840671.call(args)
27450    }
27451}
27452
27453#[doc(hidden)]
27454impl FnMut<(&'_ Color,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27455    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Vector,&'_ Vector,)) -> Self::Output {
27456        spotLight892840671.call(args)
27457    }
27458}
27459
27460#[doc(hidden)]
27461impl Fn<(&'_ Color,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27462    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Vector,&'_ Vector,)) -> Self::Output {
27463        spotLight892840671.call(args)
27464    }
27465}
27466
27467#[wasm_bindgen]
27468extern {
27469    #[wasm_bindgen(js_name = "spotLight")]
27470    fn spotLight3572262150(_ : f64, _ : f64, _ : f64, _ : & Vector, _ : & Vector, _ : f64, _ : f64, ) ;
27471}
27472
27473#[doc(hidden)]
27474impl FnOnce<(f64,f64,f64,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27475    type Output = ();
27476    extern "rust-call" fn call_once(self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27477        spotLight3572262150.call(args)
27478    }
27479}
27480
27481#[doc(hidden)]
27482impl FnMut<(f64,f64,f64,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27483    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27484        spotLight3572262150.call(args)
27485    }
27486}
27487
27488#[doc(hidden)]
27489impl Fn<(f64,f64,f64,&'_ Vector,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27490    extern "rust-call" fn call(&self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,f64,f64,)) -> Self::Output {
27491        spotLight3572262150.call(args)
27492    }
27493}
27494
27495#[wasm_bindgen]
27496extern {
27497    #[wasm_bindgen(js_name = "spotLight")]
27498    fn spotLight3860252111(_ : f64, _ : f64, _ : f64, _ : & Vector, _ : & Vector, _ : f64, ) ;
27499}
27500
27501#[doc(hidden)]
27502impl FnOnce<(f64,f64,f64,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27503    type Output = ();
27504    extern "rust-call" fn call_once(self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27505        spotLight3860252111.call(args)
27506    }
27507}
27508
27509#[doc(hidden)]
27510impl FnMut<(f64,f64,f64,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27511    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27512        spotLight3860252111.call(args)
27513    }
27514}
27515
27516#[doc(hidden)]
27517impl Fn<(f64,f64,f64,&'_ Vector,&'_ Vector,f64,)> for SpotLightInternalType {
27518    extern "rust-call" fn call(&self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,f64,)) -> Self::Output {
27519        spotLight3860252111.call(args)
27520    }
27521}
27522
27523#[wasm_bindgen]
27524extern {
27525    #[wasm_bindgen(js_name = "spotLight")]
27526    fn spotLight3249436797(_ : f64, _ : f64, _ : f64, _ : & Vector, _ : & Vector, ) ;
27527}
27528
27529#[doc(hidden)]
27530impl FnOnce<(f64,f64,f64,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27531    type Output = ();
27532    extern "rust-call" fn call_once(self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,)) -> Self::Output {
27533        spotLight3249436797.call(args)
27534    }
27535}
27536
27537#[doc(hidden)]
27538impl FnMut<(f64,f64,f64,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27539    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,)) -> Self::Output {
27540        spotLight3249436797.call(args)
27541    }
27542}
27543
27544#[doc(hidden)]
27545impl Fn<(f64,f64,f64,&'_ Vector,&'_ Vector,)> for SpotLightInternalType {
27546    extern "rust-call" fn call(&self, args: (f64,f64,f64,&'_ Vector,&'_ Vector,)) -> Self::Output {
27547        spotLight3249436797.call(args)
27548    }
27549}
27550
27551#[wasm_bindgen]
27552extern {
27553    #[wasm_bindgen(js_name = "spotLight")]
27554    fn spotLight1644356978(_ : & [f64], _ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, _ : f64, ) ;
27555}
27556
27557#[doc(hidden)]
27558impl FnOnce<(&'_ [f64],f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27559    type Output = ();
27560    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27561        spotLight1644356978.call(args)
27562    }
27563}
27564
27565#[doc(hidden)]
27566impl FnMut<(&'_ [f64],f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27567    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27568        spotLight1644356978.call(args)
27569    }
27570}
27571
27572#[doc(hidden)]
27573impl Fn<(&'_ [f64],f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27574    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27575        spotLight1644356978.call(args)
27576    }
27577}
27578
27579#[wasm_bindgen]
27580extern {
27581    #[wasm_bindgen(js_name = "spotLight")]
27582    fn spotLight745842001(_ : & [f64], _ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, ) ;
27583}
27584
27585#[doc(hidden)]
27586impl FnOnce<(&'_ [f64],f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27587    type Output = ();
27588    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27589        spotLight745842001.call(args)
27590    }
27591}
27592
27593#[doc(hidden)]
27594impl FnMut<(&'_ [f64],f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27595    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27596        spotLight745842001.call(args)
27597    }
27598}
27599
27600#[doc(hidden)]
27601impl Fn<(&'_ [f64],f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27602    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27603        spotLight745842001.call(args)
27604    }
27605}
27606
27607#[wasm_bindgen]
27608extern {
27609    #[wasm_bindgen(js_name = "spotLight")]
27610    fn spotLight3296226736(_ : & [f64], _ : f64, _ : f64, _ : f64, _ : & Vector, ) ;
27611}
27612
27613#[doc(hidden)]
27614impl FnOnce<(&'_ [f64],f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27615    type Output = ();
27616    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,)) -> Self::Output {
27617        spotLight3296226736.call(args)
27618    }
27619}
27620
27621#[doc(hidden)]
27622impl FnMut<(&'_ [f64],f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27623    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,)) -> Self::Output {
27624        spotLight3296226736.call(args)
27625    }
27626}
27627
27628#[doc(hidden)]
27629impl Fn<(&'_ [f64],f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27630    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,f64,&'_ Vector,)) -> Self::Output {
27631        spotLight3296226736.call(args)
27632    }
27633}
27634
27635#[wasm_bindgen]
27636extern {
27637    #[wasm_bindgen(js_name = "spotLight")]
27638    fn spotLight3712072760(_ : & str, _ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, _ : f64, ) ;
27639}
27640
27641#[doc(hidden)]
27642impl FnOnce<(&'_ str,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27643    type Output = ();
27644    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27645        spotLight3712072760.call(args)
27646    }
27647}
27648
27649#[doc(hidden)]
27650impl FnMut<(&'_ str,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27651    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27652        spotLight3712072760.call(args)
27653    }
27654}
27655
27656#[doc(hidden)]
27657impl Fn<(&'_ str,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27658    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27659        spotLight3712072760.call(args)
27660    }
27661}
27662
27663#[wasm_bindgen]
27664extern {
27665    #[wasm_bindgen(js_name = "spotLight")]
27666    fn spotLight3954297721(_ : & str, _ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, ) ;
27667}
27668
27669#[doc(hidden)]
27670impl FnOnce<(&'_ str,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27671    type Output = ();
27672    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27673        spotLight3954297721.call(args)
27674    }
27675}
27676
27677#[doc(hidden)]
27678impl FnMut<(&'_ str,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27679    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27680        spotLight3954297721.call(args)
27681    }
27682}
27683
27684#[doc(hidden)]
27685impl Fn<(&'_ str,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27686    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27687        spotLight3954297721.call(args)
27688    }
27689}
27690
27691#[wasm_bindgen]
27692extern {
27693    #[wasm_bindgen(js_name = "spotLight")]
27694    fn spotLight4094990181(_ : & str, _ : f64, _ : f64, _ : f64, _ : & Vector, ) ;
27695}
27696
27697#[doc(hidden)]
27698impl FnOnce<(&'_ str,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27699    type Output = ();
27700    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,&'_ Vector,)) -> Self::Output {
27701        spotLight4094990181.call(args)
27702    }
27703}
27704
27705#[doc(hidden)]
27706impl FnMut<(&'_ str,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27707    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,&'_ Vector,)) -> Self::Output {
27708        spotLight4094990181.call(args)
27709    }
27710}
27711
27712#[doc(hidden)]
27713impl Fn<(&'_ str,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27714    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,&'_ Vector,)) -> Self::Output {
27715        spotLight4094990181.call(args)
27716    }
27717}
27718
27719#[wasm_bindgen]
27720extern {
27721    #[wasm_bindgen(js_name = "spotLight")]
27722    fn spotLight67627449(_ : & Color, _ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, _ : f64, ) ;
27723}
27724
27725#[doc(hidden)]
27726impl FnOnce<(&'_ Color,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27727    type Output = ();
27728    extern "rust-call" fn call_once(self, args: (&'_ Color,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27729        spotLight67627449.call(args)
27730    }
27731}
27732
27733#[doc(hidden)]
27734impl FnMut<(&'_ Color,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27735    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27736        spotLight67627449.call(args)
27737    }
27738}
27739
27740#[doc(hidden)]
27741impl Fn<(&'_ Color,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
27742    extern "rust-call" fn call(&self, args: (&'_ Color,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
27743        spotLight67627449.call(args)
27744    }
27745}
27746
27747#[wasm_bindgen]
27748extern {
27749    #[wasm_bindgen(js_name = "spotLight")]
27750    fn spotLight2703603675(_ : & Color, _ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, ) ;
27751}
27752
27753#[doc(hidden)]
27754impl FnOnce<(&'_ Color,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27755    type Output = ();
27756    extern "rust-call" fn call_once(self, args: (&'_ Color,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27757        spotLight2703603675.call(args)
27758    }
27759}
27760
27761#[doc(hidden)]
27762impl FnMut<(&'_ Color,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27763    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27764        spotLight2703603675.call(args)
27765    }
27766}
27767
27768#[doc(hidden)]
27769impl Fn<(&'_ Color,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
27770    extern "rust-call" fn call(&self, args: (&'_ Color,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
27771        spotLight2703603675.call(args)
27772    }
27773}
27774
27775#[wasm_bindgen]
27776extern {
27777    #[wasm_bindgen(js_name = "spotLight")]
27778    fn spotLight1622927813(_ : & Color, _ : f64, _ : f64, _ : f64, _ : & Vector, ) ;
27779}
27780
27781#[doc(hidden)]
27782impl FnOnce<(&'_ Color,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27783    type Output = ();
27784    extern "rust-call" fn call_once(self, args: (&'_ Color,f64,f64,f64,&'_ Vector,)) -> Self::Output {
27785        spotLight1622927813.call(args)
27786    }
27787}
27788
27789#[doc(hidden)]
27790impl FnMut<(&'_ Color,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27791    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,f64,f64,f64,&'_ Vector,)) -> Self::Output {
27792        spotLight1622927813.call(args)
27793    }
27794}
27795
27796#[doc(hidden)]
27797impl Fn<(&'_ Color,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
27798    extern "rust-call" fn call(&self, args: (&'_ Color,f64,f64,f64,&'_ Vector,)) -> Self::Output {
27799        spotLight1622927813.call(args)
27800    }
27801}
27802
27803#[wasm_bindgen]
27804extern {
27805    #[wasm_bindgen(js_name = "spotLight")]
27806    fn spotLight3711218125(_ : & [f64], _ : & Vector, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
27807}
27808
27809#[doc(hidden)]
27810impl FnOnce<(&'_ [f64],&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27811    type Output = ();
27812    extern "rust-call" fn call_once(self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27813        spotLight3711218125.call(args)
27814    }
27815}
27816
27817#[doc(hidden)]
27818impl FnMut<(&'_ [f64],&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27819    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27820        spotLight3711218125.call(args)
27821    }
27822}
27823
27824#[doc(hidden)]
27825impl Fn<(&'_ [f64],&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27826    extern "rust-call" fn call(&self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27827        spotLight3711218125.call(args)
27828    }
27829}
27830
27831#[wasm_bindgen]
27832extern {
27833    #[wasm_bindgen(js_name = "spotLight")]
27834    fn spotLight3457922688(_ : & [f64], _ : & Vector, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
27835}
27836
27837#[doc(hidden)]
27838impl FnOnce<(&'_ [f64],&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
27839    type Output = ();
27840    extern "rust-call" fn call_once(self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
27841        spotLight3457922688.call(args)
27842    }
27843}
27844
27845#[doc(hidden)]
27846impl FnMut<(&'_ [f64],&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
27847    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
27848        spotLight3457922688.call(args)
27849    }
27850}
27851
27852#[doc(hidden)]
27853impl Fn<(&'_ [f64],&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
27854    extern "rust-call" fn call(&self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
27855        spotLight3457922688.call(args)
27856    }
27857}
27858
27859#[wasm_bindgen]
27860extern {
27861    #[wasm_bindgen(js_name = "spotLight")]
27862    fn spotLight2356023299(_ : & [f64], _ : & Vector, _ : f64, _ : f64, _ : f64, ) ;
27863}
27864
27865#[doc(hidden)]
27866impl FnOnce<(&'_ [f64],&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
27867    type Output = ();
27868    extern "rust-call" fn call_once(self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,)) -> Self::Output {
27869        spotLight2356023299.call(args)
27870    }
27871}
27872
27873#[doc(hidden)]
27874impl FnMut<(&'_ [f64],&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
27875    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,)) -> Self::Output {
27876        spotLight2356023299.call(args)
27877    }
27878}
27879
27880#[doc(hidden)]
27881impl Fn<(&'_ [f64],&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
27882    extern "rust-call" fn call(&self, args: (&'_ [f64],&'_ Vector,f64,f64,f64,)) -> Self::Output {
27883        spotLight2356023299.call(args)
27884    }
27885}
27886
27887#[wasm_bindgen]
27888extern {
27889    #[wasm_bindgen(js_name = "spotLight")]
27890    fn spotLight3316204128(_ : & str, _ : & Vector, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
27891}
27892
27893#[doc(hidden)]
27894impl FnOnce<(&'_ str,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27895    type Output = ();
27896    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27897        spotLight3316204128.call(args)
27898    }
27899}
27900
27901#[doc(hidden)]
27902impl FnMut<(&'_ str,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27903    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27904        spotLight3316204128.call(args)
27905    }
27906}
27907
27908#[doc(hidden)]
27909impl Fn<(&'_ str,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27910    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27911        spotLight3316204128.call(args)
27912    }
27913}
27914
27915#[wasm_bindgen]
27916extern {
27917    #[wasm_bindgen(js_name = "spotLight")]
27918    fn spotLight3012809455(_ : & str, _ : & Vector, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
27919}
27920
27921#[doc(hidden)]
27922impl FnOnce<(&'_ str,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
27923    type Output = ();
27924    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
27925        spotLight3012809455.call(args)
27926    }
27927}
27928
27929#[doc(hidden)]
27930impl FnMut<(&'_ str,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
27931    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
27932        spotLight3012809455.call(args)
27933    }
27934}
27935
27936#[doc(hidden)]
27937impl Fn<(&'_ str,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
27938    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
27939        spotLight3012809455.call(args)
27940    }
27941}
27942
27943#[wasm_bindgen]
27944extern {
27945    #[wasm_bindgen(js_name = "spotLight")]
27946    fn spotLight3098058974(_ : & str, _ : & Vector, _ : f64, _ : f64, _ : f64, ) ;
27947}
27948
27949#[doc(hidden)]
27950impl FnOnce<(&'_ str,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
27951    type Output = ();
27952    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ Vector,f64,f64,f64,)) -> Self::Output {
27953        spotLight3098058974.call(args)
27954    }
27955}
27956
27957#[doc(hidden)]
27958impl FnMut<(&'_ str,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
27959    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ Vector,f64,f64,f64,)) -> Self::Output {
27960        spotLight3098058974.call(args)
27961    }
27962}
27963
27964#[doc(hidden)]
27965impl Fn<(&'_ str,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
27966    extern "rust-call" fn call(&self, args: (&'_ str,&'_ Vector,f64,f64,f64,)) -> Self::Output {
27967        spotLight3098058974.call(args)
27968    }
27969}
27970
27971#[wasm_bindgen]
27972extern {
27973    #[wasm_bindgen(js_name = "spotLight")]
27974    fn spotLight909010766(_ : & Color, _ : & Vector, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
27975}
27976
27977#[doc(hidden)]
27978impl FnOnce<(&'_ Color,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27979    type Output = ();
27980    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27981        spotLight909010766.call(args)
27982    }
27983}
27984
27985#[doc(hidden)]
27986impl FnMut<(&'_ Color,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27987    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27988        spotLight909010766.call(args)
27989    }
27990}
27991
27992#[doc(hidden)]
27993impl Fn<(&'_ Color,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
27994    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
27995        spotLight909010766.call(args)
27996    }
27997}
27998
27999#[wasm_bindgen]
28000extern {
28001    #[wasm_bindgen(js_name = "spotLight")]
28002    fn spotLight2773604094(_ : & Color, _ : & Vector, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28003}
28004
28005#[doc(hidden)]
28006impl FnOnce<(&'_ Color,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
28007    type Output = ();
28008    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
28009        spotLight2773604094.call(args)
28010    }
28011}
28012
28013#[doc(hidden)]
28014impl FnMut<(&'_ Color,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
28015    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
28016        spotLight2773604094.call(args)
28017    }
28018}
28019
28020#[doc(hidden)]
28021impl Fn<(&'_ Color,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
28022    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
28023        spotLight2773604094.call(args)
28024    }
28025}
28026
28027#[wasm_bindgen]
28028extern {
28029    #[wasm_bindgen(js_name = "spotLight")]
28030    fn spotLight3923904160(_ : & Color, _ : & Vector, _ : f64, _ : f64, _ : f64, ) ;
28031}
28032
28033#[doc(hidden)]
28034impl FnOnce<(&'_ Color,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
28035    type Output = ();
28036    extern "rust-call" fn call_once(self, args: (&'_ Color,&'_ Vector,f64,f64,f64,)) -> Self::Output {
28037        spotLight3923904160.call(args)
28038    }
28039}
28040
28041#[doc(hidden)]
28042impl FnMut<(&'_ Color,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
28043    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,&'_ Vector,f64,f64,f64,)) -> Self::Output {
28044        spotLight3923904160.call(args)
28045    }
28046}
28047
28048#[doc(hidden)]
28049impl Fn<(&'_ Color,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
28050    extern "rust-call" fn call(&self, args: (&'_ Color,&'_ Vector,f64,f64,f64,)) -> Self::Output {
28051        spotLight3923904160.call(args)
28052    }
28053}
28054
28055#[wasm_bindgen]
28056extern {
28057    #[wasm_bindgen(js_name = "spotLight")]
28058    fn spotLight3040105239(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, _ : f64, ) ;
28059}
28060
28061#[doc(hidden)]
28062impl FnOnce<(f64,f64,f64,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
28063    type Output = ();
28064    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
28065        spotLight3040105239.call(args)
28066    }
28067}
28068
28069#[doc(hidden)]
28070impl FnMut<(f64,f64,f64,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
28071    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
28072        spotLight3040105239.call(args)
28073    }
28074}
28075
28076#[doc(hidden)]
28077impl Fn<(f64,f64,f64,f64,f64,f64,&'_ Vector,f64,f64,)> for SpotLightInternalType {
28078    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,f64,f64,)) -> Self::Output {
28079        spotLight3040105239.call(args)
28080    }
28081}
28082
28083#[wasm_bindgen]
28084extern {
28085    #[wasm_bindgen(js_name = "spotLight")]
28086    fn spotLight4186198688(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, ) ;
28087}
28088
28089#[doc(hidden)]
28090impl FnOnce<(f64,f64,f64,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
28091    type Output = ();
28092    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
28093        spotLight4186198688.call(args)
28094    }
28095}
28096
28097#[doc(hidden)]
28098impl FnMut<(f64,f64,f64,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
28099    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
28100        spotLight4186198688.call(args)
28101    }
28102}
28103
28104#[doc(hidden)]
28105impl Fn<(f64,f64,f64,f64,f64,f64,&'_ Vector,f64,)> for SpotLightInternalType {
28106    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,f64,)) -> Self::Output {
28107        spotLight4186198688.call(args)
28108    }
28109}
28110
28111#[wasm_bindgen]
28112extern {
28113    #[wasm_bindgen(js_name = "spotLight")]
28114    fn spotLight852905730(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : & Vector, ) ;
28115}
28116
28117#[doc(hidden)]
28118impl FnOnce<(f64,f64,f64,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
28119    type Output = ();
28120    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,)) -> Self::Output {
28121        spotLight852905730.call(args)
28122    }
28123}
28124
28125#[doc(hidden)]
28126impl FnMut<(f64,f64,f64,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
28127    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,)) -> Self::Output {
28128        spotLight852905730.call(args)
28129    }
28130}
28131
28132#[doc(hidden)]
28133impl Fn<(f64,f64,f64,f64,f64,f64,&'_ Vector,)> for SpotLightInternalType {
28134    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,&'_ Vector,)) -> Self::Output {
28135        spotLight852905730.call(args)
28136    }
28137}
28138
28139#[wasm_bindgen]
28140extern {
28141    #[wasm_bindgen(js_name = "spotLight")]
28142    fn spotLight2138466943(_ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28143}
28144
28145#[doc(hidden)]
28146impl FnOnce<(f64,f64,f64,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28147    type Output = ();
28148    extern "rust-call" fn call_once(self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
28149        spotLight2138466943.call(args)
28150    }
28151}
28152
28153#[doc(hidden)]
28154impl FnMut<(f64,f64,f64,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28155    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
28156        spotLight2138466943.call(args)
28157    }
28158}
28159
28160#[doc(hidden)]
28161impl Fn<(f64,f64,f64,&'_ Vector,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28162    extern "rust-call" fn call(&self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,f64,f64,)) -> Self::Output {
28163        spotLight2138466943.call(args)
28164    }
28165}
28166
28167#[wasm_bindgen]
28168extern {
28169    #[wasm_bindgen(js_name = "spotLight")]
28170    fn spotLight1123935226(_ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28171}
28172
28173#[doc(hidden)]
28174impl FnOnce<(f64,f64,f64,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
28175    type Output = ();
28176    extern "rust-call" fn call_once(self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
28177        spotLight1123935226.call(args)
28178    }
28179}
28180
28181#[doc(hidden)]
28182impl FnMut<(f64,f64,f64,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
28183    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
28184        spotLight1123935226.call(args)
28185    }
28186}
28187
28188#[doc(hidden)]
28189impl Fn<(f64,f64,f64,&'_ Vector,f64,f64,f64,f64,)> for SpotLightInternalType {
28190    extern "rust-call" fn call(&self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,f64,)) -> Self::Output {
28191        spotLight1123935226.call(args)
28192    }
28193}
28194
28195#[wasm_bindgen]
28196extern {
28197    #[wasm_bindgen(js_name = "spotLight")]
28198    fn spotLight72216051(_ : f64, _ : f64, _ : f64, _ : & Vector, _ : f64, _ : f64, _ : f64, ) ;
28199}
28200
28201#[doc(hidden)]
28202impl FnOnce<(f64,f64,f64,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
28203    type Output = ();
28204    extern "rust-call" fn call_once(self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,)) -> Self::Output {
28205        spotLight72216051.call(args)
28206    }
28207}
28208
28209#[doc(hidden)]
28210impl FnMut<(f64,f64,f64,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
28211    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,)) -> Self::Output {
28212        spotLight72216051.call(args)
28213    }
28214}
28215
28216#[doc(hidden)]
28217impl Fn<(f64,f64,f64,&'_ Vector,f64,f64,f64,)> for SpotLightInternalType {
28218    extern "rust-call" fn call(&self, args: (f64,f64,f64,&'_ Vector,f64,f64,f64,)) -> Self::Output {
28219        spotLight72216051.call(args)
28220    }
28221}
28222
28223#[wasm_bindgen]
28224extern {
28225    #[wasm_bindgen(js_name = "spotLight")]
28226    fn spotLight2833750077(_ : & [f64], _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28227}
28228
28229#[doc(hidden)]
28230impl FnOnce<(&'_ [f64],f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28231    type Output = ();
28232    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28233        spotLight2833750077.call(args)
28234    }
28235}
28236
28237#[doc(hidden)]
28238impl FnMut<(&'_ [f64],f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28239    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28240        spotLight2833750077.call(args)
28241    }
28242}
28243
28244#[doc(hidden)]
28245impl Fn<(&'_ [f64],f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28246    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28247        spotLight2833750077.call(args)
28248    }
28249}
28250
28251#[wasm_bindgen]
28252extern {
28253    #[wasm_bindgen(js_name = "spotLight")]
28254    fn spotLight3843546550(_ : & [f64], _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28255}
28256
28257#[doc(hidden)]
28258impl FnOnce<(&'_ [f64],f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28259    type Output = ();
28260    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28261        spotLight3843546550.call(args)
28262    }
28263}
28264
28265#[doc(hidden)]
28266impl FnMut<(&'_ [f64],f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28267    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28268        spotLight3843546550.call(args)
28269    }
28270}
28271
28272#[doc(hidden)]
28273impl Fn<(&'_ [f64],f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28274    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28275        spotLight3843546550.call(args)
28276    }
28277}
28278
28279#[wasm_bindgen]
28280extern {
28281    #[wasm_bindgen(js_name = "spotLight")]
28282    fn spotLight1185569178(_ : & [f64], _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28283}
28284
28285#[doc(hidden)]
28286impl FnOnce<(&'_ [f64],f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28287    type Output = ();
28288    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28289        spotLight1185569178.call(args)
28290    }
28291}
28292
28293#[doc(hidden)]
28294impl FnMut<(&'_ [f64],f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28295    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28296        spotLight1185569178.call(args)
28297    }
28298}
28299
28300#[doc(hidden)]
28301impl Fn<(&'_ [f64],f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28302    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28303        spotLight1185569178.call(args)
28304    }
28305}
28306
28307#[wasm_bindgen]
28308extern {
28309    #[wasm_bindgen(js_name = "spotLight")]
28310    fn spotLight2797787561(_ : & str, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28311}
28312
28313#[doc(hidden)]
28314impl FnOnce<(&'_ str,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28315    type Output = ();
28316    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28317        spotLight2797787561.call(args)
28318    }
28319}
28320
28321#[doc(hidden)]
28322impl FnMut<(&'_ str,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28323    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28324        spotLight2797787561.call(args)
28325    }
28326}
28327
28328#[doc(hidden)]
28329impl Fn<(&'_ str,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28330    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28331        spotLight2797787561.call(args)
28332    }
28333}
28334
28335#[wasm_bindgen]
28336extern {
28337    #[wasm_bindgen(js_name = "spotLight")]
28338    fn spotLight2955521624(_ : & str, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28339}
28340
28341#[doc(hidden)]
28342impl FnOnce<(&'_ str,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28343    type Output = ();
28344    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28345        spotLight2955521624.call(args)
28346    }
28347}
28348
28349#[doc(hidden)]
28350impl FnMut<(&'_ str,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28351    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28352        spotLight2955521624.call(args)
28353    }
28354}
28355
28356#[doc(hidden)]
28357impl Fn<(&'_ str,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28358    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28359        spotLight2955521624.call(args)
28360    }
28361}
28362
28363#[wasm_bindgen]
28364extern {
28365    #[wasm_bindgen(js_name = "spotLight")]
28366    fn spotLight3421692463(_ : & str, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28367}
28368
28369#[doc(hidden)]
28370impl FnOnce<(&'_ str,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28371    type Output = ();
28372    extern "rust-call" fn call_once(self, args: (&'_ str,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28373        spotLight3421692463.call(args)
28374    }
28375}
28376
28377#[doc(hidden)]
28378impl FnMut<(&'_ str,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28379    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28380        spotLight3421692463.call(args)
28381    }
28382}
28383
28384#[doc(hidden)]
28385impl Fn<(&'_ str,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28386    extern "rust-call" fn call(&self, args: (&'_ str,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28387        spotLight3421692463.call(args)
28388    }
28389}
28390
28391#[wasm_bindgen]
28392extern {
28393    #[wasm_bindgen(js_name = "spotLight")]
28394    fn spotLight1884373168(_ : & Color, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28395}
28396
28397#[doc(hidden)]
28398impl FnOnce<(&'_ Color,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28399    type Output = ();
28400    extern "rust-call" fn call_once(self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28401        spotLight1884373168.call(args)
28402    }
28403}
28404
28405#[doc(hidden)]
28406impl FnMut<(&'_ Color,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28407    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28408        spotLight1884373168.call(args)
28409    }
28410}
28411
28412#[doc(hidden)]
28413impl Fn<(&'_ Color,f64,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28414    extern "rust-call" fn call(&self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28415        spotLight1884373168.call(args)
28416    }
28417}
28418
28419#[wasm_bindgen]
28420extern {
28421    #[wasm_bindgen(js_name = "spotLight")]
28422    fn spotLight896594924(_ : & Color, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28423}
28424
28425#[doc(hidden)]
28426impl FnOnce<(&'_ Color,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28427    type Output = ();
28428    extern "rust-call" fn call_once(self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28429        spotLight896594924.call(args)
28430    }
28431}
28432
28433#[doc(hidden)]
28434impl FnMut<(&'_ Color,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28435    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28436        spotLight896594924.call(args)
28437    }
28438}
28439
28440#[doc(hidden)]
28441impl Fn<(&'_ Color,f64,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28442    extern "rust-call" fn call(&self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28443        spotLight896594924.call(args)
28444    }
28445}
28446
28447#[wasm_bindgen]
28448extern {
28449    #[wasm_bindgen(js_name = "spotLight")]
28450    fn spotLight2705526750(_ : & Color, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
28451}
28452
28453#[doc(hidden)]
28454impl FnOnce<(&'_ Color,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28455    type Output = ();
28456    extern "rust-call" fn call_once(self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28457        spotLight2705526750.call(args)
28458    }
28459}
28460
28461#[doc(hidden)]
28462impl FnMut<(&'_ Color,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28463    extern "rust-call" fn call_mut(&mut self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28464        spotLight2705526750.call(args)
28465    }
28466}
28467
28468#[doc(hidden)]
28469impl Fn<(&'_ Color,f64,f64,f64,f64,f64,f64,)> for SpotLightInternalType {
28470    extern "rust-call" fn call(&self, args: (&'_ Color,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
28471        spotLight2705526750.call(args)
28472    }
28473}
28474#[doc=r##"<p>This function will remove all the lights from the sketch for the
28475subsequent materials rendered. It affects all the subsequent methods.
28476Calls to lighting methods made after noLights() will re-enable lights
28477in the sketch.</p>
28478"##]
28479///<h2>Examples</h2>
28480///
28481
28482#[doc=r###"```rust
28483function setup() {
28484  createCanvas(100, 100, WEBGL);
28485}
28486function draw() {
28487  background(0);
28488  noStroke();
28489
28490  ambientLight(150, 0, 0);
28491  translate(-25, 0, 0);
28492  ambientMaterial(250);
28493  sphere(20);
28494
28495  noLights();
28496  ambientLight(0, 150, 0);
28497  translate(50, 0, 0);
28498  ambientMaterial(250);
28499  sphere(20);
28500}
28501```"###]
28502
28503pub static noLights: NoLightsInternalType = NoLightsInternalType;
28504#[doc(hidden)]
28505pub struct NoLightsInternalType;
28506
28507
28508#[wasm_bindgen]
28509extern {
28510    #[wasm_bindgen(js_name = "noLights")]
28511    fn noLights1701882882() ;
28512}
28513
28514#[doc(hidden)]
28515impl FnOnce<()> for NoLightsInternalType {
28516    type Output = ();
28517    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
28518        noLights1701882882.call(args)
28519    }
28520}
28521
28522#[doc(hidden)]
28523impl FnMut<()> for NoLightsInternalType {
28524    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
28525        noLights1701882882.call(args)
28526    }
28527}
28528
28529#[doc(hidden)]
28530impl Fn<()> for NoLightsInternalType {
28531    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
28532        noLights1701882882.call(args)
28533    }
28534}
28535#[doc=r##"<p>Load a 3d model from an OBJ or STL file.</p>
28536<p><a href="#/p5/loadModel">loadModel()</a> should be placed inside of <a href="#/p5/preload">preload()</a>.
28537This allows the model to load fully before the rest of your code is run.</p>
28538<p>One of the limitations of the OBJ and STL format is that it doesn't have a built-in
28539sense of scale. This means that models exported from different programs might
28540be very different sizes. If your model isn't displaying, try calling
28541<a href="#/p5/loadModel">loadModel()</a> with the normalized parameter set to true. This will resize the
28542model to a scale appropriate for p5. You can also make additional changes to
28543the final size of your model with the <a href="#/p5/scale">scale()</a> function.</p>
28544<p>Also, the support for colored STL files is not present. STL files with color will be
28545rendered without color properties.</p>
28546"##]
28547///<h2>Examples</h2>
28548///
28549
28550#[doc=r###"```rust
28551//draw a spinning octahedron
28552let octahedron;
28553
28554function preload() {
28555  octahedron = loadModel('assets/octahedron.obj');
28556}
28557
28558function setup() {
28559  createCanvas(100, 100, WEBGL);
28560}
28561
28562function draw() {
28563  background(200);
28564  rotateX(frameCount * 0.01);
28565  rotateY(frameCount * 0.01);
28566  model(octahedron);
28567}
28568```"###]
28569#[doc=r###"```rust
28570//draw a spinning teapot
28571let teapot;
28572
28573function preload() {
28574  // Load model with normalise parameter set to true
28575  teapot = loadModel('assets/teapot.obj', true);
28576}
28577
28578function setup() {
28579  createCanvas(100, 100, WEBGL);
28580}
28581
28582function draw() {
28583  background(200);
28584  scale(0.4); // Scaled to make model fit into canvas
28585  rotateX(frameCount * 0.01);
28586  rotateY(frameCount * 0.01);
28587  normalMaterial(); // For effect
28588  model(teapot);
28589}
28590```"###]
28591/// <h2>Overloads</h2>
28592///
28593#[doc = r##"<code>path</code> Path of the model to be loaded
28594
28595"##]
28596///
28597///
28598#[doc = r##"<code>normalize</code> If true, scale the model to a
28599                                     standardized size when loading
28600
28601"##]
28602///
28603///
28604#[doc = r##"<code>successCallback?</code> Function to be called
28605                                    once the model is loaded. Will be passed
28606                                    the 3D model object.
28607
28608"##]
28609///
28610///
28611#[doc = r##"<code>failureCallback?</code> called with event error if
28612                                        the model fails to load.
28613
28614"##]
28615///
28616///
28617#[doc = r##"<code>fileType?</code> The file extension of the model
28618                                     (.stl, .obj).
28619
28620"##]
28621///
28622///
28623/// ---
28624///
28625///
28626#[doc = r##"<code>path</code> Path of the model to be loaded
28627
28628"##]
28629///
28630///
28631#[doc = r##"<code>successCallback?</code> Function to be called
28632                                    once the model is loaded. Will be passed
28633                                    the 3D model object.
28634
28635"##]
28636///
28637///
28638#[doc = r##"<code>failureCallback?</code> called with event error if
28639                                        the model fails to load.
28640
28641"##]
28642///
28643///
28644#[doc = r##"<code>fileType?</code> The file extension of the model
28645                                     (.stl, .obj).
28646
28647"##]
28648///
28649///
28650/// ---
28651///
28652
28653pub static loadModel: LoadModelInternalType = LoadModelInternalType;
28654#[doc(hidden)]
28655pub struct LoadModelInternalType;
28656
28657
28658#[wasm_bindgen]
28659extern {
28660    #[wasm_bindgen(js_name = "loadModel")]
28661    fn loadModel3284087574(_ : & str, _ : bool, _ : js_sys::Function, _ : js_sys::Function, _ : & str, ) ->  Geometry;
28662}
28663
28664#[doc(hidden)]
28665impl FnOnce<(&'_ str,bool,js_sys::Function,js_sys::Function,&'_ str,)> for LoadModelInternalType {
28666    type Output =  Geometry;
28667    extern "rust-call" fn call_once(self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,&'_ str,)) -> Self::Output {
28668        loadModel3284087574.call(args)
28669    }
28670}
28671
28672#[doc(hidden)]
28673impl FnMut<(&'_ str,bool,js_sys::Function,js_sys::Function,&'_ str,)> for LoadModelInternalType {
28674    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,&'_ str,)) -> Self::Output {
28675        loadModel3284087574.call(args)
28676    }
28677}
28678
28679#[doc(hidden)]
28680impl Fn<(&'_ str,bool,js_sys::Function,js_sys::Function,&'_ str,)> for LoadModelInternalType {
28681    extern "rust-call" fn call(&self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,&'_ str,)) -> Self::Output {
28682        loadModel3284087574.call(args)
28683    }
28684}
28685
28686#[wasm_bindgen]
28687extern {
28688    #[wasm_bindgen(js_name = "loadModel")]
28689    fn loadModel3744074438(_ : & str, _ : bool, _ : js_sys::Function, _ : js_sys::Function, ) ->  Geometry;
28690}
28691
28692#[doc(hidden)]
28693impl FnOnce<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for LoadModelInternalType {
28694    type Output =  Geometry;
28695    extern "rust-call" fn call_once(self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
28696        loadModel3744074438.call(args)
28697    }
28698}
28699
28700#[doc(hidden)]
28701impl FnMut<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for LoadModelInternalType {
28702    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
28703        loadModel3744074438.call(args)
28704    }
28705}
28706
28707#[doc(hidden)]
28708impl Fn<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for LoadModelInternalType {
28709    extern "rust-call" fn call(&self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
28710        loadModel3744074438.call(args)
28711    }
28712}
28713
28714#[wasm_bindgen]
28715extern {
28716    #[wasm_bindgen(js_name = "loadModel")]
28717    fn loadModel2987058576(_ : & str, _ : bool, _ : js_sys::Function, ) ->  Geometry;
28718}
28719
28720#[doc(hidden)]
28721impl FnOnce<(&'_ str,bool,js_sys::Function,)> for LoadModelInternalType {
28722    type Output =  Geometry;
28723    extern "rust-call" fn call_once(self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
28724        loadModel2987058576.call(args)
28725    }
28726}
28727
28728#[doc(hidden)]
28729impl FnMut<(&'_ str,bool,js_sys::Function,)> for LoadModelInternalType {
28730    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
28731        loadModel2987058576.call(args)
28732    }
28733}
28734
28735#[doc(hidden)]
28736impl Fn<(&'_ str,bool,js_sys::Function,)> for LoadModelInternalType {
28737    extern "rust-call" fn call(&self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
28738        loadModel2987058576.call(args)
28739    }
28740}
28741
28742#[wasm_bindgen]
28743extern {
28744    #[wasm_bindgen(js_name = "loadModel")]
28745    fn loadModel3138280052(_ : & str, _ : bool, ) ->  Geometry;
28746}
28747
28748#[doc(hidden)]
28749impl FnOnce<(&'_ str,bool,)> for LoadModelInternalType {
28750    type Output =  Geometry;
28751    extern "rust-call" fn call_once(self, args: (&'_ str,bool,)) -> Self::Output {
28752        loadModel3138280052.call(args)
28753    }
28754}
28755
28756#[doc(hidden)]
28757impl FnMut<(&'_ str,bool,)> for LoadModelInternalType {
28758    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,)) -> Self::Output {
28759        loadModel3138280052.call(args)
28760    }
28761}
28762
28763#[doc(hidden)]
28764impl Fn<(&'_ str,bool,)> for LoadModelInternalType {
28765    extern "rust-call" fn call(&self, args: (&'_ str,bool,)) -> Self::Output {
28766        loadModel3138280052.call(args)
28767    }
28768}
28769
28770#[wasm_bindgen]
28771extern {
28772    #[wasm_bindgen(js_name = "loadModel")]
28773    fn loadModel3646612048(_ : & str, _ : js_sys::Function, _ : js_sys::Function, _ : & str, ) ->  Geometry;
28774}
28775
28776#[doc(hidden)]
28777impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,&'_ str,)> for LoadModelInternalType {
28778    type Output =  Geometry;
28779    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,&'_ str,)) -> Self::Output {
28780        loadModel3646612048.call(args)
28781    }
28782}
28783
28784#[doc(hidden)]
28785impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,&'_ str,)> for LoadModelInternalType {
28786    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,&'_ str,)) -> Self::Output {
28787        loadModel3646612048.call(args)
28788    }
28789}
28790
28791#[doc(hidden)]
28792impl Fn<(&'_ str,js_sys::Function,js_sys::Function,&'_ str,)> for LoadModelInternalType {
28793    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,&'_ str,)) -> Self::Output {
28794        loadModel3646612048.call(args)
28795    }
28796}
28797
28798#[wasm_bindgen]
28799extern {
28800    #[wasm_bindgen(js_name = "loadModel")]
28801    fn loadModel3660669488(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) ->  Geometry;
28802}
28803
28804#[doc(hidden)]
28805impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadModelInternalType {
28806    type Output =  Geometry;
28807    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
28808        loadModel3660669488.call(args)
28809    }
28810}
28811
28812#[doc(hidden)]
28813impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadModelInternalType {
28814    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
28815        loadModel3660669488.call(args)
28816    }
28817}
28818
28819#[doc(hidden)]
28820impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadModelInternalType {
28821    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
28822        loadModel3660669488.call(args)
28823    }
28824}
28825
28826#[wasm_bindgen]
28827extern {
28828    #[wasm_bindgen(js_name = "loadModel")]
28829    fn loadModel2484836372(_ : & str, _ : js_sys::Function, ) ->  Geometry;
28830}
28831
28832#[doc(hidden)]
28833impl FnOnce<(&'_ str,js_sys::Function,)> for LoadModelInternalType {
28834    type Output =  Geometry;
28835    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
28836        loadModel2484836372.call(args)
28837    }
28838}
28839
28840#[doc(hidden)]
28841impl FnMut<(&'_ str,js_sys::Function,)> for LoadModelInternalType {
28842    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
28843        loadModel2484836372.call(args)
28844    }
28845}
28846
28847#[doc(hidden)]
28848impl Fn<(&'_ str,js_sys::Function,)> for LoadModelInternalType {
28849    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
28850        loadModel2484836372.call(args)
28851    }
28852}
28853
28854#[wasm_bindgen]
28855extern {
28856    #[wasm_bindgen(js_name = "loadModel")]
28857    fn loadModel4061679869(_ : & str, ) ->  Geometry;
28858}
28859
28860#[doc(hidden)]
28861impl FnOnce<(&'_ str,)> for LoadModelInternalType {
28862    type Output =  Geometry;
28863    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
28864        loadModel4061679869.call(args)
28865    }
28866}
28867
28868#[doc(hidden)]
28869impl FnMut<(&'_ str,)> for LoadModelInternalType {
28870    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
28871        loadModel4061679869.call(args)
28872    }
28873}
28874
28875#[doc(hidden)]
28876impl Fn<(&'_ str,)> for LoadModelInternalType {
28877    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
28878        loadModel4061679869.call(args)
28879    }
28880}
28881#[doc=r##"<p>Render a 3d model to the screen.</p>
28882"##]
28883///<h2>Examples</h2>
28884///
28885
28886#[doc=r###"```rust
28887//draw a spinning octahedron
28888let octahedron;
28889
28890function preload() {
28891  octahedron = loadModel('assets/octahedron.obj');
28892}
28893
28894function setup() {
28895  createCanvas(100, 100, WEBGL);
28896}
28897
28898function draw() {
28899  background(200);
28900  rotateX(frameCount * 0.01);
28901  rotateY(frameCount * 0.01);
28902  model(octahedron);
28903}
28904```"###]
28905/// <h2>Parameters</h2>
28906///
28907#[doc = r##"<code>model</code> Loaded 3d model to be rendered
28908
28909"##]
28910///
28911
28912pub static model: ModelInternalType = ModelInternalType;
28913#[doc(hidden)]
28914pub struct ModelInternalType;
28915
28916
28917#[wasm_bindgen]
28918extern {
28919    #[wasm_bindgen(js_name = "model")]
28920    fn model813207277(_ : & Geometry, ) ;
28921}
28922
28923#[doc(hidden)]
28924impl FnOnce<(&'_ Geometry,)> for ModelInternalType {
28925    type Output = ();
28926    extern "rust-call" fn call_once(self, args: (&'_ Geometry,)) -> Self::Output {
28927        model813207277.call(args)
28928    }
28929}
28930
28931#[doc(hidden)]
28932impl FnMut<(&'_ Geometry,)> for ModelInternalType {
28933    extern "rust-call" fn call_mut(&mut self, args: (&'_ Geometry,)) -> Self::Output {
28934        model813207277.call(args)
28935    }
28936}
28937
28938#[doc(hidden)]
28939impl Fn<(&'_ Geometry,)> for ModelInternalType {
28940    extern "rust-call" fn call(&self, args: (&'_ Geometry,)) -> Self::Output {
28941        model813207277.call(args)
28942    }
28943}
28944#[doc=r##"<p>Converts a string to its floating point representation. The contents of a
28945string must resemble a number, or NaN (not a number) will be returned.
28946For example, float("1234.56") evaluates to 1234.56, but float("giraffe")
28947will return NaN.</p>
28948<p>When an array of values is passed in, then an array of floats of the same
28949length is returned.</p>
28950"##]
28951///<h2>Examples</h2>
28952///
28953
28954#[doc=r###"```rust
28955let str = '20';
28956let diameter = float(str);
28957ellipse(width / 2, height / 2, diameter, diameter);
28958```"###]
28959#[doc=r###"```rust
28960print(float('10.31')); // 10.31
28961print(float('Infinity')); // Infinity
28962print(float('-Infinity')); // -Infinity
28963```"###]
28964/// <h2>Parameters</h2>
28965///
28966#[doc = r##"<code>str</code> float string to parse
28967
28968"##]
28969///
28970
28971pub static float: FloatInternalType = FloatInternalType;
28972#[doc(hidden)]
28973pub struct FloatInternalType;
28974
28975
28976#[wasm_bindgen]
28977extern {
28978    #[wasm_bindgen(js_name = "float")]
28979    fn float3541251080(_ : & str, ) -> f64;
28980}
28981
28982#[doc(hidden)]
28983impl FnOnce<(&'_ str,)> for FloatInternalType {
28984    type Output = f64;
28985    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
28986        float3541251080.call(args)
28987    }
28988}
28989
28990#[doc(hidden)]
28991impl FnMut<(&'_ str,)> for FloatInternalType {
28992    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
28993        float3541251080.call(args)
28994    }
28995}
28996
28997#[doc(hidden)]
28998impl Fn<(&'_ str,)> for FloatInternalType {
28999    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
29000        float3541251080.call(args)
29001    }
29002}
29003#[doc=r##"<p>Converts a boolean, string, or float to its integer representation.
29004When an array of values is passed in, then an int array of the same length
29005is returned.</p>
29006"##]
29007///<h2>Examples</h2>
29008///
29009
29010#[doc=r###"```rust
29011print(int('10')); // 10
29012print(int(10.31)); // 10
29013print(int(-10)); // -10
29014print(int(true)); // 1
29015print(int(false)); // 0
29016print(int([false, true, '10.3', 9.8])); // [0, 1, 10, 9]
29017print(int(Infinity)); // Infinity
29018print(int('-Infinity')); // -Infinity
29019```"###]
29020/// <h2>Overloads</h2>
29021///
29022#[doc = r##"<code>n</code> value to parse
29023
29024"##]
29025///
29026///
29027#[doc = r##"<code>radix?</code> the radix to convert to (default: 10)
29028
29029"##]
29030///
29031///
29032/// ---
29033///
29034///
29035#[doc = r##"<code>ns</code> values to parse
29036
29037"##]
29038///
29039///
29040/// ---
29041///
29042
29043pub static int: IntInternalType = IntInternalType;
29044#[doc(hidden)]
29045pub struct IntInternalType;
29046
29047
29048#[wasm_bindgen]
29049extern {
29050    #[wasm_bindgen(js_name = "int")]
29051    fn int364430369(_ : & str, _ : i32, ) -> f64;
29052}
29053
29054#[doc(hidden)]
29055impl FnOnce<(&'_ str,i32,)> for IntInternalType {
29056    type Output = f64;
29057    extern "rust-call" fn call_once(self, args: (&'_ str,i32,)) -> Self::Output {
29058        int364430369.call(args)
29059    }
29060}
29061
29062#[doc(hidden)]
29063impl FnMut<(&'_ str,i32,)> for IntInternalType {
29064    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,i32,)) -> Self::Output {
29065        int364430369.call(args)
29066    }
29067}
29068
29069#[doc(hidden)]
29070impl Fn<(&'_ str,i32,)> for IntInternalType {
29071    extern "rust-call" fn call(&self, args: (&'_ str,i32,)) -> Self::Output {
29072        int364430369.call(args)
29073    }
29074}
29075
29076#[wasm_bindgen]
29077extern {
29078    #[wasm_bindgen(js_name = "int")]
29079    fn int1113836105(_ : & str, ) -> f64;
29080}
29081
29082#[doc(hidden)]
29083impl FnOnce<(&'_ str,)> for IntInternalType {
29084    type Output = f64;
29085    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
29086        int1113836105.call(args)
29087    }
29088}
29089
29090#[doc(hidden)]
29091impl FnMut<(&'_ str,)> for IntInternalType {
29092    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
29093        int1113836105.call(args)
29094    }
29095}
29096
29097#[doc(hidden)]
29098impl Fn<(&'_ str,)> for IntInternalType {
29099    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
29100        int1113836105.call(args)
29101    }
29102}
29103
29104#[wasm_bindgen]
29105extern {
29106    #[wasm_bindgen(js_name = "int")]
29107    fn int2616980441(_ : bool, _ : i32, ) -> f64;
29108}
29109
29110#[doc(hidden)]
29111impl FnOnce<(bool,i32,)> for IntInternalType {
29112    type Output = f64;
29113    extern "rust-call" fn call_once(self, args: (bool,i32,)) -> Self::Output {
29114        int2616980441.call(args)
29115    }
29116}
29117
29118#[doc(hidden)]
29119impl FnMut<(bool,i32,)> for IntInternalType {
29120    extern "rust-call" fn call_mut(&mut self, args: (bool,i32,)) -> Self::Output {
29121        int2616980441.call(args)
29122    }
29123}
29124
29125#[doc(hidden)]
29126impl Fn<(bool,i32,)> for IntInternalType {
29127    extern "rust-call" fn call(&self, args: (bool,i32,)) -> Self::Output {
29128        int2616980441.call(args)
29129    }
29130}
29131
29132#[wasm_bindgen]
29133extern {
29134    #[wasm_bindgen(js_name = "int")]
29135    fn int2286569230(_ : bool, ) -> f64;
29136}
29137
29138#[doc(hidden)]
29139impl FnOnce<(bool,)> for IntInternalType {
29140    type Output = f64;
29141    extern "rust-call" fn call_once(self, args: (bool,)) -> Self::Output {
29142        int2286569230.call(args)
29143    }
29144}
29145
29146#[doc(hidden)]
29147impl FnMut<(bool,)> for IntInternalType {
29148    extern "rust-call" fn call_mut(&mut self, args: (bool,)) -> Self::Output {
29149        int2286569230.call(args)
29150    }
29151}
29152
29153#[doc(hidden)]
29154impl Fn<(bool,)> for IntInternalType {
29155    extern "rust-call" fn call(&self, args: (bool,)) -> Self::Output {
29156        int2286569230.call(args)
29157    }
29158}
29159
29160#[wasm_bindgen]
29161extern {
29162    #[wasm_bindgen(js_name = "int")]
29163    fn int1206893810(_ : f64, _ : i32, ) -> f64;
29164}
29165
29166#[doc(hidden)]
29167impl FnOnce<(f64,i32,)> for IntInternalType {
29168    type Output = f64;
29169    extern "rust-call" fn call_once(self, args: (f64,i32,)) -> Self::Output {
29170        int1206893810.call(args)
29171    }
29172}
29173
29174#[doc(hidden)]
29175impl FnMut<(f64,i32,)> for IntInternalType {
29176    extern "rust-call" fn call_mut(&mut self, args: (f64,i32,)) -> Self::Output {
29177        int1206893810.call(args)
29178    }
29179}
29180
29181#[doc(hidden)]
29182impl Fn<(f64,i32,)> for IntInternalType {
29183    extern "rust-call" fn call(&self, args: (f64,i32,)) -> Self::Output {
29184        int1206893810.call(args)
29185    }
29186}
29187
29188#[wasm_bindgen]
29189extern {
29190    #[wasm_bindgen(js_name = "int")]
29191    fn int705357487(_ : f64, ) -> f64;
29192}
29193
29194#[doc(hidden)]
29195impl FnOnce<(f64,)> for IntInternalType {
29196    type Output = f64;
29197    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
29198        int705357487.call(args)
29199    }
29200}
29201
29202#[doc(hidden)]
29203impl FnMut<(f64,)> for IntInternalType {
29204    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
29205        int705357487.call(args)
29206    }
29207}
29208
29209#[doc(hidden)]
29210impl Fn<(f64,)> for IntInternalType {
29211    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
29212        int705357487.call(args)
29213    }
29214}
29215
29216#[wasm_bindgen]
29217extern {
29218    #[wasm_bindgen(js_name = "int")]
29219    fn int1739044027(_ : js_sys::Array, ) ;
29220}
29221
29222#[doc(hidden)]
29223impl FnOnce<(js_sys::Array,)> for IntInternalType {
29224    type Output = ();
29225    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
29226        int1739044027.call(args)
29227    }
29228}
29229
29230#[doc(hidden)]
29231impl FnMut<(js_sys::Array,)> for IntInternalType {
29232    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
29233        int1739044027.call(args)
29234    }
29235}
29236
29237#[doc(hidden)]
29238impl Fn<(js_sys::Array,)> for IntInternalType {
29239    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
29240        int1739044027.call(args)
29241    }
29242}
29243#[doc=r##"<p>Converts a boolean, string or number to its string representation.
29244When an array of values is passed in, then an array of strings of the same
29245length is returned.</p>
29246"##]
29247///<h2>Examples</h2>
29248///
29249
29250#[doc=r###"```rust
29251print(str('10')); // "10"
29252print(str(10.31)); // "10.31"
29253print(str(-10)); // "-10"
29254print(str(true)); // "true"
29255print(str(false)); // "false"
29256print(str([true, '10.3', 9.8])); // [ "true", "10.3", "9.8" ]
29257```"###]
29258/// <h2>Parameters</h2>
29259///
29260#[doc = r##"<code>n</code> value to parse
29261
29262"##]
29263///
29264
29265pub static str: StrInternalType = StrInternalType;
29266#[doc(hidden)]
29267pub struct StrInternalType;
29268
29269
29270#[wasm_bindgen]
29271extern {
29272    #[wasm_bindgen(js_name = "str")]
29273    fn str3633901085(_ : & str, ) -> String;
29274}
29275
29276#[doc(hidden)]
29277impl FnOnce<(&'_ str,)> for StrInternalType {
29278    type Output = String;
29279    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
29280        str3633901085.call(args)
29281    }
29282}
29283
29284#[doc(hidden)]
29285impl FnMut<(&'_ str,)> for StrInternalType {
29286    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
29287        str3633901085.call(args)
29288    }
29289}
29290
29291#[doc(hidden)]
29292impl Fn<(&'_ str,)> for StrInternalType {
29293    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
29294        str3633901085.call(args)
29295    }
29296}
29297
29298#[wasm_bindgen]
29299extern {
29300    #[wasm_bindgen(js_name = "str")]
29301    fn str3942742964(_ : bool, ) -> String;
29302}
29303
29304#[doc(hidden)]
29305impl FnOnce<(bool,)> for StrInternalType {
29306    type Output = String;
29307    extern "rust-call" fn call_once(self, args: (bool,)) -> Self::Output {
29308        str3942742964.call(args)
29309    }
29310}
29311
29312#[doc(hidden)]
29313impl FnMut<(bool,)> for StrInternalType {
29314    extern "rust-call" fn call_mut(&mut self, args: (bool,)) -> Self::Output {
29315        str3942742964.call(args)
29316    }
29317}
29318
29319#[doc(hidden)]
29320impl Fn<(bool,)> for StrInternalType {
29321    extern "rust-call" fn call(&self, args: (bool,)) -> Self::Output {
29322        str3942742964.call(args)
29323    }
29324}
29325
29326#[wasm_bindgen]
29327extern {
29328    #[wasm_bindgen(js_name = "str")]
29329    fn str1736560206(_ : f64, ) -> String;
29330}
29331
29332#[doc(hidden)]
29333impl FnOnce<(f64,)> for StrInternalType {
29334    type Output = String;
29335    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
29336        str1736560206.call(args)
29337    }
29338}
29339
29340#[doc(hidden)]
29341impl FnMut<(f64,)> for StrInternalType {
29342    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
29343        str1736560206.call(args)
29344    }
29345}
29346
29347#[doc(hidden)]
29348impl Fn<(f64,)> for StrInternalType {
29349    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
29350        str1736560206.call(args)
29351    }
29352}
29353
29354#[wasm_bindgen]
29355extern {
29356    #[wasm_bindgen(js_name = "str")]
29357    fn str3512922021(_ : js_sys::Array, ) -> String;
29358}
29359
29360#[doc(hidden)]
29361impl FnOnce<(js_sys::Array,)> for StrInternalType {
29362    type Output = String;
29363    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
29364        str3512922021.call(args)
29365    }
29366}
29367
29368#[doc(hidden)]
29369impl FnMut<(js_sys::Array,)> for StrInternalType {
29370    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
29371        str3512922021.call(args)
29372    }
29373}
29374
29375#[doc(hidden)]
29376impl Fn<(js_sys::Array,)> for StrInternalType {
29377    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
29378        str3512922021.call(args)
29379    }
29380}
29381#[doc=r##"<p>Converts a number or string to its boolean representation.
29382For a number, any non-zero value (positive or negative) evaluates to true,
29383while zero evaluates to false. For a string, the value "true" evaluates to
29384true, while any other value evaluates to false. When an array of number or
29385string values is passed in, then a array of booleans of the same length is
29386returned.</p>
29387"##]
29388///<h2>Examples</h2>
29389///
29390
29391#[doc=r###"```rust
29392print(boolean(0)); // false
29393print(boolean(1)); // true
29394print(boolean('true')); // true
29395print(boolean('abcd')); // false
29396print(boolean([0, 12, 'true'])); // [false, true, true]
29397```"###]
29398/// <h2>Parameters</h2>
29399///
29400#[doc = r##"<code>n</code> value to parse
29401
29402"##]
29403///
29404
29405pub static boolean: BooleanInternalType = BooleanInternalType;
29406#[doc(hidden)]
29407pub struct BooleanInternalType;
29408
29409
29410#[wasm_bindgen]
29411extern {
29412    #[wasm_bindgen(js_name = "boolean")]
29413    fn boolean3951030036(_ : & str, ) -> bool;
29414}
29415
29416#[doc(hidden)]
29417impl FnOnce<(&'_ str,)> for BooleanInternalType {
29418    type Output = bool;
29419    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
29420        boolean3951030036.call(args)
29421    }
29422}
29423
29424#[doc(hidden)]
29425impl FnMut<(&'_ str,)> for BooleanInternalType {
29426    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
29427        boolean3951030036.call(args)
29428    }
29429}
29430
29431#[doc(hidden)]
29432impl Fn<(&'_ str,)> for BooleanInternalType {
29433    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
29434        boolean3951030036.call(args)
29435    }
29436}
29437
29438#[wasm_bindgen]
29439extern {
29440    #[wasm_bindgen(js_name = "boolean")]
29441    fn boolean84320844(_ : bool, ) -> bool;
29442}
29443
29444#[doc(hidden)]
29445impl FnOnce<(bool,)> for BooleanInternalType {
29446    type Output = bool;
29447    extern "rust-call" fn call_once(self, args: (bool,)) -> Self::Output {
29448        boolean84320844.call(args)
29449    }
29450}
29451
29452#[doc(hidden)]
29453impl FnMut<(bool,)> for BooleanInternalType {
29454    extern "rust-call" fn call_mut(&mut self, args: (bool,)) -> Self::Output {
29455        boolean84320844.call(args)
29456    }
29457}
29458
29459#[doc(hidden)]
29460impl Fn<(bool,)> for BooleanInternalType {
29461    extern "rust-call" fn call(&self, args: (bool,)) -> Self::Output {
29462        boolean84320844.call(args)
29463    }
29464}
29465
29466#[wasm_bindgen]
29467extern {
29468    #[wasm_bindgen(js_name = "boolean")]
29469    fn boolean2563413168(_ : f64, ) -> bool;
29470}
29471
29472#[doc(hidden)]
29473impl FnOnce<(f64,)> for BooleanInternalType {
29474    type Output = bool;
29475    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
29476        boolean2563413168.call(args)
29477    }
29478}
29479
29480#[doc(hidden)]
29481impl FnMut<(f64,)> for BooleanInternalType {
29482    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
29483        boolean2563413168.call(args)
29484    }
29485}
29486
29487#[doc(hidden)]
29488impl Fn<(f64,)> for BooleanInternalType {
29489    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
29490        boolean2563413168.call(args)
29491    }
29492}
29493
29494#[wasm_bindgen]
29495extern {
29496    #[wasm_bindgen(js_name = "boolean")]
29497    fn boolean2629180668(_ : js_sys::Array, ) -> bool;
29498}
29499
29500#[doc(hidden)]
29501impl FnOnce<(js_sys::Array,)> for BooleanInternalType {
29502    type Output = bool;
29503    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
29504        boolean2629180668.call(args)
29505    }
29506}
29507
29508#[doc(hidden)]
29509impl FnMut<(js_sys::Array,)> for BooleanInternalType {
29510    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
29511        boolean2629180668.call(args)
29512    }
29513}
29514
29515#[doc(hidden)]
29516impl Fn<(js_sys::Array,)> for BooleanInternalType {
29517    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
29518        boolean2629180668.call(args)
29519    }
29520}
29521#[doc=r##"<p>Converts a number, string representation of a number, or boolean to its byte
29522representation. A byte can be only a whole number between -128 and 127, so
29523when a value outside of this range is converted, it wraps around to the
29524corresponding byte representation. When an array of number, string or boolean
29525values is passed in, then an array of bytes the same length is returned.</p>
29526"##]
29527///<h2>Examples</h2>
29528///
29529
29530#[doc=r###"```rust
29531print(byte(127)); // 127
29532print(byte(128)); // -128
29533print(byte(23.4)); // 23
29534print(byte('23.4')); // 23
29535print(byte('hello')); // NaN
29536print(byte(true)); // 1
29537print(byte([0, 255, '100'])); // [0, -1, 100]
29538```"###]
29539/// <h2>Overloads</h2>
29540///
29541#[doc = r##"<code>n</code> value to parse
29542
29543"##]
29544///
29545///
29546/// ---
29547///
29548///
29549#[doc = r##"<code>ns</code> values to parse
29550
29551"##]
29552///
29553///
29554/// ---
29555///
29556
29557pub static byte: ByteInternalType = ByteInternalType;
29558#[doc(hidden)]
29559pub struct ByteInternalType;
29560
29561
29562#[wasm_bindgen]
29563extern {
29564    #[wasm_bindgen(js_name = "byte")]
29565    fn byte276735682(_ : & str, ) -> f64;
29566}
29567
29568#[doc(hidden)]
29569impl FnOnce<(&'_ str,)> for ByteInternalType {
29570    type Output = f64;
29571    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
29572        byte276735682.call(args)
29573    }
29574}
29575
29576#[doc(hidden)]
29577impl FnMut<(&'_ str,)> for ByteInternalType {
29578    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
29579        byte276735682.call(args)
29580    }
29581}
29582
29583#[doc(hidden)]
29584impl Fn<(&'_ str,)> for ByteInternalType {
29585    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
29586        byte276735682.call(args)
29587    }
29588}
29589
29590#[wasm_bindgen]
29591extern {
29592    #[wasm_bindgen(js_name = "byte")]
29593    fn byte808577236(_ : bool, ) -> f64;
29594}
29595
29596#[doc(hidden)]
29597impl FnOnce<(bool,)> for ByteInternalType {
29598    type Output = f64;
29599    extern "rust-call" fn call_once(self, args: (bool,)) -> Self::Output {
29600        byte808577236.call(args)
29601    }
29602}
29603
29604#[doc(hidden)]
29605impl FnMut<(bool,)> for ByteInternalType {
29606    extern "rust-call" fn call_mut(&mut self, args: (bool,)) -> Self::Output {
29607        byte808577236.call(args)
29608    }
29609}
29610
29611#[doc(hidden)]
29612impl Fn<(bool,)> for ByteInternalType {
29613    extern "rust-call" fn call(&self, args: (bool,)) -> Self::Output {
29614        byte808577236.call(args)
29615    }
29616}
29617
29618#[wasm_bindgen]
29619extern {
29620    #[wasm_bindgen(js_name = "byte")]
29621    fn byte3271537786(_ : f64, ) -> f64;
29622}
29623
29624#[doc(hidden)]
29625impl FnOnce<(f64,)> for ByteInternalType {
29626    type Output = f64;
29627    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
29628        byte3271537786.call(args)
29629    }
29630}
29631
29632#[doc(hidden)]
29633impl FnMut<(f64,)> for ByteInternalType {
29634    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
29635        byte3271537786.call(args)
29636    }
29637}
29638
29639#[doc(hidden)]
29640impl Fn<(f64,)> for ByteInternalType {
29641    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
29642        byte3271537786.call(args)
29643    }
29644}
29645
29646#[wasm_bindgen]
29647extern {
29648    #[wasm_bindgen(js_name = "byte")]
29649    fn byte3521256876(_ : js_sys::Array, ) ;
29650}
29651
29652#[doc(hidden)]
29653impl FnOnce<(js_sys::Array,)> for ByteInternalType {
29654    type Output = ();
29655    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
29656        byte3521256876.call(args)
29657    }
29658}
29659
29660#[doc(hidden)]
29661impl FnMut<(js_sys::Array,)> for ByteInternalType {
29662    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
29663        byte3521256876.call(args)
29664    }
29665}
29666
29667#[doc(hidden)]
29668impl Fn<(js_sys::Array,)> for ByteInternalType {
29669    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
29670        byte3521256876.call(args)
29671    }
29672}
29673#[doc=r##"<p>Converts a number or string to its corresponding single-character
29674string representation. If a string parameter is provided, it is first
29675parsed as an integer and then translated into a single-character string.
29676When an array of number or string values is passed in, then an array of
29677single-character strings of the same length is returned.</p>
29678"##]
29679///<h2>Examples</h2>
29680///
29681
29682#[doc=r###"```rust
29683print(char(65)); // "A"
29684print(char('65')); // "A"
29685print(char([65, 66, 67])); // [ "A", "B", "C" ]
29686print(join(char([65, 66, 67]), '')); // "ABC"
29687```"###]
29688/// <h2>Overloads</h2>
29689///
29690#[doc = r##"<code>n</code> value to parse
29691
29692"##]
29693///
29694///
29695/// ---
29696///
29697///
29698#[doc = r##"<code>ns</code> values to parse
29699
29700"##]
29701///
29702///
29703/// ---
29704///
29705
29706pub static char: CharInternalType = CharInternalType;
29707#[doc(hidden)]
29708pub struct CharInternalType;
29709
29710
29711#[wasm_bindgen]
29712extern {
29713    #[wasm_bindgen(js_name = "char")]
29714    fn char2480288696(_ : & str, ) -> String;
29715}
29716
29717#[doc(hidden)]
29718impl FnOnce<(&'_ str,)> for CharInternalType {
29719    type Output = String;
29720    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
29721        char2480288696.call(args)
29722    }
29723}
29724
29725#[doc(hidden)]
29726impl FnMut<(&'_ str,)> for CharInternalType {
29727    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
29728        char2480288696.call(args)
29729    }
29730}
29731
29732#[doc(hidden)]
29733impl Fn<(&'_ str,)> for CharInternalType {
29734    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
29735        char2480288696.call(args)
29736    }
29737}
29738
29739#[wasm_bindgen]
29740extern {
29741    #[wasm_bindgen(js_name = "char")]
29742    fn char2486771194(_ : f64, ) -> String;
29743}
29744
29745#[doc(hidden)]
29746impl FnOnce<(f64,)> for CharInternalType {
29747    type Output = String;
29748    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
29749        char2486771194.call(args)
29750    }
29751}
29752
29753#[doc(hidden)]
29754impl FnMut<(f64,)> for CharInternalType {
29755    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
29756        char2486771194.call(args)
29757    }
29758}
29759
29760#[doc(hidden)]
29761impl Fn<(f64,)> for CharInternalType {
29762    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
29763        char2486771194.call(args)
29764    }
29765}
29766
29767#[wasm_bindgen]
29768extern {
29769    #[wasm_bindgen(js_name = "char")]
29770    fn char2573481464(_ : js_sys::Array, ) ;
29771}
29772
29773#[doc(hidden)]
29774impl FnOnce<(js_sys::Array,)> for CharInternalType {
29775    type Output = ();
29776    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
29777        char2573481464.call(args)
29778    }
29779}
29780
29781#[doc(hidden)]
29782impl FnMut<(js_sys::Array,)> for CharInternalType {
29783    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
29784        char2573481464.call(args)
29785    }
29786}
29787
29788#[doc(hidden)]
29789impl Fn<(js_sys::Array,)> for CharInternalType {
29790    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
29791        char2573481464.call(args)
29792    }
29793}
29794#[doc=r##"<p>Converts a single-character string to its corresponding integer
29795representation. When an array of single-character string values is passed
29796in, then an array of integers of the same length is returned.</p>
29797"##]
29798///<h2>Examples</h2>
29799///
29800
29801#[doc=r###"```rust
29802print(unchar('A')); // 65
29803print(unchar(['A', 'B', 'C'])); // [ 65, 66, 67 ]
29804print(unchar(split('ABC', ''))); // [ 65, 66, 67 ]
29805```"###]
29806/// <h2>Overloads</h2>
29807///
29808#[doc = r##"<code>n</code> value to parse
29809
29810"##]
29811///
29812///
29813/// ---
29814///
29815///
29816#[doc = r##"<code>ns</code> values to parse
29817
29818"##]
29819///
29820///
29821/// ---
29822///
29823
29824pub static unchar: UncharInternalType = UncharInternalType;
29825#[doc(hidden)]
29826pub struct UncharInternalType;
29827
29828
29829#[wasm_bindgen]
29830extern {
29831    #[wasm_bindgen(js_name = "unchar")]
29832    fn unchar2654755076(_ : & str, ) -> f64;
29833}
29834
29835#[doc(hidden)]
29836impl FnOnce<(&'_ str,)> for UncharInternalType {
29837    type Output = f64;
29838    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
29839        unchar2654755076.call(args)
29840    }
29841}
29842
29843#[doc(hidden)]
29844impl FnMut<(&'_ str,)> for UncharInternalType {
29845    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
29846        unchar2654755076.call(args)
29847    }
29848}
29849
29850#[doc(hidden)]
29851impl Fn<(&'_ str,)> for UncharInternalType {
29852    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
29853        unchar2654755076.call(args)
29854    }
29855}
29856
29857#[wasm_bindgen]
29858extern {
29859    #[wasm_bindgen(js_name = "unchar")]
29860    fn unchar3162826292(_ : js_sys::Array, ) ;
29861}
29862
29863#[doc(hidden)]
29864impl FnOnce<(js_sys::Array,)> for UncharInternalType {
29865    type Output = ();
29866    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
29867        unchar3162826292.call(args)
29868    }
29869}
29870
29871#[doc(hidden)]
29872impl FnMut<(js_sys::Array,)> for UncharInternalType {
29873    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
29874        unchar3162826292.call(args)
29875    }
29876}
29877
29878#[doc(hidden)]
29879impl Fn<(js_sys::Array,)> for UncharInternalType {
29880    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
29881        unchar3162826292.call(args)
29882    }
29883}
29884#[doc=r##"<p>Converts a number to a string in its equivalent hexadecimal notation. If a
29885second parameter is passed, it is used to set the number of characters to
29886generate in the hexadecimal notation. When an array is passed in, an
29887array of strings in hexadecimal notation of the same length is returned.</p>
29888"##]
29889///<h2>Examples</h2>
29890///
29891
29892#[doc=r###"```rust
29893print(hex(255)); // "000000FF"
29894print(hex(255, 6)); // "0000FF"
29895print(hex([0, 127, 255], 6)); // [ "000000", "00007F", "0000FF" ]
29896print(Infinity); // "FFFFFFFF"
29897print(-Infinity); // "00000000"
29898```"###]
29899/// <h2>Overloads</h2>
29900///
29901#[doc = r##"<code>n</code> value to parse
29902
29903"##]
29904///
29905///
29906#[doc = r##"<code>digits?</code> 
29907"##]
29908///
29909///
29910/// ---
29911///
29912///
29913#[doc = r##"<code>ns</code> array of values to parse
29914
29915"##]
29916///
29917///
29918#[doc = r##"<code>digits?</code> 
29919"##]
29920///
29921///
29922/// ---
29923///
29924
29925pub static hex: HexInternalType = HexInternalType;
29926#[doc(hidden)]
29927pub struct HexInternalType;
29928
29929
29930#[wasm_bindgen]
29931extern {
29932    #[wasm_bindgen(js_name = "hex")]
29933    fn hex1541739485(_ : f64, _ : f64, ) -> String;
29934}
29935
29936#[doc(hidden)]
29937impl FnOnce<(f64,f64,)> for HexInternalType {
29938    type Output = String;
29939    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
29940        hex1541739485.call(args)
29941    }
29942}
29943
29944#[doc(hidden)]
29945impl FnMut<(f64,f64,)> for HexInternalType {
29946    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
29947        hex1541739485.call(args)
29948    }
29949}
29950
29951#[doc(hidden)]
29952impl Fn<(f64,f64,)> for HexInternalType {
29953    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
29954        hex1541739485.call(args)
29955    }
29956}
29957
29958#[wasm_bindgen]
29959extern {
29960    #[wasm_bindgen(js_name = "hex")]
29961    fn hex3252397222(_ : f64, ) -> String;
29962}
29963
29964#[doc(hidden)]
29965impl FnOnce<(f64,)> for HexInternalType {
29966    type Output = String;
29967    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
29968        hex3252397222.call(args)
29969    }
29970}
29971
29972#[doc(hidden)]
29973impl FnMut<(f64,)> for HexInternalType {
29974    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
29975        hex3252397222.call(args)
29976    }
29977}
29978
29979#[doc(hidden)]
29980impl Fn<(f64,)> for HexInternalType {
29981    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
29982        hex3252397222.call(args)
29983    }
29984}
29985
29986#[wasm_bindgen]
29987extern {
29988    #[wasm_bindgen(js_name = "hex")]
29989    fn hex1200762366(_ : & [f64], _ : f64, ) ;
29990}
29991
29992#[doc(hidden)]
29993impl FnOnce<(&'_ [f64],f64,)> for HexInternalType {
29994    type Output = ();
29995    extern "rust-call" fn call_once(self, args: (&'_ [f64],f64,)) -> Self::Output {
29996        hex1200762366.call(args)
29997    }
29998}
29999
30000#[doc(hidden)]
30001impl FnMut<(&'_ [f64],f64,)> for HexInternalType {
30002    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],f64,)) -> Self::Output {
30003        hex1200762366.call(args)
30004    }
30005}
30006
30007#[doc(hidden)]
30008impl Fn<(&'_ [f64],f64,)> for HexInternalType {
30009    extern "rust-call" fn call(&self, args: (&'_ [f64],f64,)) -> Self::Output {
30010        hex1200762366.call(args)
30011    }
30012}
30013
30014#[wasm_bindgen]
30015extern {
30016    #[wasm_bindgen(js_name = "hex")]
30017    fn hex1339023257(_ : & [f64], ) ;
30018}
30019
30020#[doc(hidden)]
30021impl FnOnce<(&'_ [f64],)> for HexInternalType {
30022    type Output = ();
30023    extern "rust-call" fn call_once(self, args: (&'_ [f64],)) -> Self::Output {
30024        hex1339023257.call(args)
30025    }
30026}
30027
30028#[doc(hidden)]
30029impl FnMut<(&'_ [f64],)> for HexInternalType {
30030    extern "rust-call" fn call_mut(&mut self, args: (&'_ [f64],)) -> Self::Output {
30031        hex1339023257.call(args)
30032    }
30033}
30034
30035#[doc(hidden)]
30036impl Fn<(&'_ [f64],)> for HexInternalType {
30037    extern "rust-call" fn call(&self, args: (&'_ [f64],)) -> Self::Output {
30038        hex1339023257.call(args)
30039    }
30040}
30041#[doc=r##"<p>Converts a string representation of a hexadecimal number to its equivalent
30042integer value. When an array of strings in hexadecimal notation is passed
30043in, an array of integers of the same length is returned.</p>
30044"##]
30045///<h2>Examples</h2>
30046///
30047
30048#[doc=r###"```rust
30049print(unhex('A')); // 10
30050print(unhex('FF')); // 255
30051print(unhex(['FF', 'AA', '00'])); // [ 255, 170, 0 ]
30052```"###]
30053/// <h2>Overloads</h2>
30054///
30055#[doc = r##"<code>n</code> value to parse
30056
30057"##]
30058///
30059///
30060/// ---
30061///
30062///
30063#[doc = r##"<code>ns</code> values to parse
30064
30065"##]
30066///
30067///
30068/// ---
30069///
30070
30071pub static unhex: UnhexInternalType = UnhexInternalType;
30072#[doc(hidden)]
30073pub struct UnhexInternalType;
30074
30075
30076#[wasm_bindgen]
30077extern {
30078    #[wasm_bindgen(js_name = "unhex")]
30079    fn unhex1717453651(_ : & str, ) -> f64;
30080}
30081
30082#[doc(hidden)]
30083impl FnOnce<(&'_ str,)> for UnhexInternalType {
30084    type Output = f64;
30085    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
30086        unhex1717453651.call(args)
30087    }
30088}
30089
30090#[doc(hidden)]
30091impl FnMut<(&'_ str,)> for UnhexInternalType {
30092    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
30093        unhex1717453651.call(args)
30094    }
30095}
30096
30097#[doc(hidden)]
30098impl Fn<(&'_ str,)> for UnhexInternalType {
30099    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
30100        unhex1717453651.call(args)
30101    }
30102}
30103
30104#[wasm_bindgen]
30105extern {
30106    #[wasm_bindgen(js_name = "unhex")]
30107    fn unhex1066496546(_ : js_sys::Array, ) ;
30108}
30109
30110#[doc(hidden)]
30111impl FnOnce<(js_sys::Array,)> for UnhexInternalType {
30112    type Output = ();
30113    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
30114        unhex1066496546.call(args)
30115    }
30116}
30117
30118#[doc(hidden)]
30119impl FnMut<(js_sys::Array,)> for UnhexInternalType {
30120    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
30121        unhex1066496546.call(args)
30122    }
30123}
30124
30125#[doc(hidden)]
30126impl Fn<(js_sys::Array,)> for UnhexInternalType {
30127    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
30128        unhex1066496546.call(args)
30129    }
30130}
30131#[doc=r##"<p>Allows movement around a 3D sketch using a mouse or trackpad.  Left-clicking
30132and dragging will rotate the camera position about the center of the sketch,
30133right-clicking and dragging will pan the camera position without rotation,
30134and using the mouse wheel (scrolling) will move the camera closer or further
30135from the center of the sketch. This function can be called with parameters
30136dictating sensitivity to mouse movement along the X and Y axes.  Calling
30137this function without parameters is equivalent to calling orbitControl(1,1).
30138To reverse direction of movement in either axis, enter a negative number
30139for sensitivity.</p>
30140"##]
30141///<h2>Examples</h2>
30142///
30143
30144#[doc=r###"```rust
30145function setup() {
30146  createCanvas(100, 100, WEBGL);
30147  normalMaterial();
30148}
30149function draw() {
30150  background(200);
30151  orbitControl();
30152  rotateY(0.5);
30153  box(30, 50);
30154}
30155```"###]
30156/// <h2>Parameters</h2>
30157///
30158#[doc = r##"<code>sensitivityX?</code> sensitivity to mouse movement along X axis
30159
30160"##]
30161///
30162///
30163#[doc = r##"<code>sensitivityY?</code> sensitivity to mouse movement along Y axis
30164
30165"##]
30166///
30167///
30168#[doc = r##"<code>sensitivityZ?</code> sensitivity to scroll movement along Z axis
30169
30170"##]
30171///
30172
30173pub static orbitControl: OrbitControlInternalType = OrbitControlInternalType;
30174#[doc(hidden)]
30175pub struct OrbitControlInternalType;
30176
30177
30178#[wasm_bindgen]
30179extern {
30180    #[wasm_bindgen(js_name = "orbitControl")]
30181    fn orbitControl616872769(_ : f64, _ : f64, _ : f64, ) ;
30182}
30183
30184#[doc(hidden)]
30185impl FnOnce<(f64,f64,f64,)> for OrbitControlInternalType {
30186    type Output = ();
30187    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
30188        orbitControl616872769.call(args)
30189    }
30190}
30191
30192#[doc(hidden)]
30193impl FnMut<(f64,f64,f64,)> for OrbitControlInternalType {
30194    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
30195        orbitControl616872769.call(args)
30196    }
30197}
30198
30199#[doc(hidden)]
30200impl Fn<(f64,f64,f64,)> for OrbitControlInternalType {
30201    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
30202        orbitControl616872769.call(args)
30203    }
30204}
30205
30206#[wasm_bindgen]
30207extern {
30208    #[wasm_bindgen(js_name = "orbitControl")]
30209    fn orbitControl1889685749(_ : f64, _ : f64, ) ;
30210}
30211
30212#[doc(hidden)]
30213impl FnOnce<(f64,f64,)> for OrbitControlInternalType {
30214    type Output = ();
30215    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
30216        orbitControl1889685749.call(args)
30217    }
30218}
30219
30220#[doc(hidden)]
30221impl FnMut<(f64,f64,)> for OrbitControlInternalType {
30222    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
30223        orbitControl1889685749.call(args)
30224    }
30225}
30226
30227#[doc(hidden)]
30228impl Fn<(f64,f64,)> for OrbitControlInternalType {
30229    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
30230        orbitControl1889685749.call(args)
30231    }
30232}
30233
30234#[wasm_bindgen]
30235extern {
30236    #[wasm_bindgen(js_name = "orbitControl")]
30237    fn orbitControl3330417010(_ : f64, ) ;
30238}
30239
30240#[doc(hidden)]
30241impl FnOnce<(f64,)> for OrbitControlInternalType {
30242    type Output = ();
30243    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
30244        orbitControl3330417010.call(args)
30245    }
30246}
30247
30248#[doc(hidden)]
30249impl FnMut<(f64,)> for OrbitControlInternalType {
30250    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
30251        orbitControl3330417010.call(args)
30252    }
30253}
30254
30255#[doc(hidden)]
30256impl Fn<(f64,)> for OrbitControlInternalType {
30257    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
30258        orbitControl3330417010.call(args)
30259    }
30260}
30261
30262#[wasm_bindgen]
30263extern {
30264    #[wasm_bindgen(js_name = "orbitControl")]
30265    fn orbitControl3856162103() ;
30266}
30267
30268#[doc(hidden)]
30269impl FnOnce<()> for OrbitControlInternalType {
30270    type Output = ();
30271    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
30272        orbitControl3856162103.call(args)
30273    }
30274}
30275
30276#[doc(hidden)]
30277impl FnMut<()> for OrbitControlInternalType {
30278    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
30279        orbitControl3856162103.call(args)
30280    }
30281}
30282
30283#[doc(hidden)]
30284impl Fn<()> for OrbitControlInternalType {
30285    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
30286        orbitControl3856162103.call(args)
30287    }
30288}
30289#[doc=r##"<p>debugMode() helps visualize 3D space by adding a grid to indicate where the
30290‘ground’ is in a sketch and an axes icon which indicates the +X, +Y, and +Z
30291directions. This function can be called without parameters to create a
30292default grid and axes icon, or it can be called according to the examples
30293above to customize the size and position of the grid and/or axes icon.  The
30294grid is drawn using the most recently set stroke color and weight.  To
30295specify these parameters, add a call to stroke() and strokeWeight()
30296just before the end of the draw() loop.</p>
30297<p>By default, the grid will run through the origin (0,0,0) of the sketch
30298along the XZ plane
30299and the axes icon will be offset from the origin.  Both the grid and axes
30300icon will be sized according to the current canvas size.  Note that because the
30301grid runs parallel to the default camera view, it is often helpful to use
30302debugMode along with orbitControl to allow full view of the grid.</p>
30303"##]
30304///<h2>Examples</h2>
30305///
30306
30307#[doc=r###"```rust
30308function setup() {
30309  createCanvas(100, 100, WEBGL);
30310  camera(0, -30, 100, 0, 0, 0, 0, 1, 0);
30311  normalMaterial();
30312  debugMode();
30313}
30314
30315function draw() {
30316  background(200);
30317  orbitControl();
30318  box(15, 30);
30319  // Press the spacebar to turn debugMode off!
30320  if (keyIsDown(32)) {
30321    noDebugMode();
30322  }
30323}
30324```"###]
30325#[doc=r###"```rust
30326function setup() {
30327  createCanvas(100, 100, WEBGL);
30328  camera(0, -30, 100, 0, 0, 0, 0, 1, 0);
30329  normalMaterial();
30330  debugMode(GRID);
30331}
30332
30333function draw() {
30334  background(200);
30335  orbitControl();
30336  box(15, 30);
30337}
30338```"###]
30339#[doc=r###"```rust
30340function setup() {
30341  createCanvas(100, 100, WEBGL);
30342  camera(0, -30, 100, 0, 0, 0, 0, 1, 0);
30343  normalMaterial();
30344  debugMode(AXES);
30345}
30346
30347function draw() {
30348  background(200);
30349  orbitControl();
30350  box(15, 30);
30351}
30352```"###]
30353#[doc=r###"```rust
30354function setup() {
30355  createCanvas(100, 100, WEBGL);
30356  camera(0, -30, 100, 0, 0, 0, 0, 1, 0);
30357  normalMaterial();
30358  debugMode(GRID, 100, 10, 0, 0, 0);
30359}
30360
30361function draw() {
30362  background(200);
30363  orbitControl();
30364  box(15, 30);
30365}
30366```"###]
30367#[doc=r###"```rust
30368function setup() {
30369  createCanvas(100, 100, WEBGL);
30370  camera(0, -30, 100, 0, 0, 0, 0, 1, 0);
30371  normalMaterial();
30372  debugMode(100, 10, 0, 0, 0, 20, 0, -40, 0);
30373}
30374
30375function draw() {
30376  noStroke();
30377  background(200);
30378  orbitControl();
30379  box(15, 30);
30380  // set the stroke color and weight for the grid!
30381  stroke(255, 0, 150);
30382  strokeWeight(0.8);
30383}
30384```"###]
30385/// <h2>Overloads</h2>
30386///
30387/// ---
30388///
30389///
30390#[doc = r##"<code>mode</code> either GRID or AXES
30391
30392"##]
30393///
30394///
30395/// ---
30396///
30397///
30398#[doc = r##"<code>mode</code> either GRID or AXES
30399
30400"##]
30401///
30402///
30403#[doc = r##"<code>gridSize?</code> size of one side of the grid
30404
30405"##]
30406///
30407///
30408#[doc = r##"<code>gridDivisions?</code> number of divisions in the grid
30409
30410"##]
30411///
30412///
30413#[doc = r##"<code>xOff?</code> X axis offset from origin (0,0,0)
30414
30415"##]
30416///
30417///
30418#[doc = r##"<code>yOff?</code> Y axis offset from origin (0,0,0)
30419
30420"##]
30421///
30422///
30423#[doc = r##"<code>zOff?</code> Z axis offset from origin (0,0,0)
30424
30425"##]
30426///
30427///
30428/// ---
30429///
30430///
30431#[doc = r##"<code>mode</code> either GRID or AXES
30432
30433"##]
30434///
30435///
30436#[doc = r##"<code>axesSize?</code> size of axes icon
30437
30438"##]
30439///
30440///
30441#[doc = r##"<code>xOff?</code> X axis offset from origin (0,0,0)
30442
30443"##]
30444///
30445///
30446#[doc = r##"<code>yOff?</code> Y axis offset from origin (0,0,0)
30447
30448"##]
30449///
30450///
30451#[doc = r##"<code>zOff?</code> Z axis offset from origin (0,0,0)
30452
30453"##]
30454///
30455///
30456/// ---
30457///
30458///
30459#[doc = r##"<code>gridSize?</code> size of one side of the grid
30460
30461"##]
30462///
30463///
30464#[doc = r##"<code>gridDivisions?</code> number of divisions in the grid
30465
30466"##]
30467///
30468///
30469#[doc = r##"<code>gridXOff?</code> 
30470"##]
30471///
30472///
30473#[doc = r##"<code>gridYOff?</code> 
30474"##]
30475///
30476///
30477#[doc = r##"<code>gridZOff?</code> 
30478"##]
30479///
30480///
30481#[doc = r##"<code>axesSize?</code> size of axes icon
30482
30483"##]
30484///
30485///
30486#[doc = r##"<code>axesXOff?</code> 
30487"##]
30488///
30489///
30490#[doc = r##"<code>axesYOff?</code> 
30491"##]
30492///
30493///
30494#[doc = r##"<code>axesZOff?</code> 
30495"##]
30496///
30497///
30498/// ---
30499///
30500
30501pub static debugMode: DebugModeInternalType = DebugModeInternalType;
30502#[doc(hidden)]
30503pub struct DebugModeInternalType;
30504
30505
30506#[wasm_bindgen]
30507extern {
30508    #[wasm_bindgen(js_name = "debugMode")]
30509    fn debugMode2898242943() ;
30510}
30511
30512#[doc(hidden)]
30513impl FnOnce<()> for DebugModeInternalType {
30514    type Output = ();
30515    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
30516        debugMode2898242943.call(args)
30517    }
30518}
30519
30520#[doc(hidden)]
30521impl FnMut<()> for DebugModeInternalType {
30522    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
30523        debugMode2898242943.call(args)
30524    }
30525}
30526
30527#[doc(hidden)]
30528impl Fn<()> for DebugModeInternalType {
30529    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
30530        debugMode2898242943.call(args)
30531    }
30532}
30533
30534#[wasm_bindgen]
30535extern {
30536    #[wasm_bindgen(js_name = "debugMode")]
30537    fn debugMode1923323614(_ : DEBUG_MODE, ) ;
30538}
30539
30540#[doc(hidden)]
30541impl FnOnce<(DEBUG_MODE,)> for DebugModeInternalType {
30542    type Output = ();
30543    extern "rust-call" fn call_once(self, args: (DEBUG_MODE,)) -> Self::Output {
30544        debugMode1923323614.call(args)
30545    }
30546}
30547
30548#[doc(hidden)]
30549impl FnMut<(DEBUG_MODE,)> for DebugModeInternalType {
30550    extern "rust-call" fn call_mut(&mut self, args: (DEBUG_MODE,)) -> Self::Output {
30551        debugMode1923323614.call(args)
30552    }
30553}
30554
30555#[doc(hidden)]
30556impl Fn<(DEBUG_MODE,)> for DebugModeInternalType {
30557    extern "rust-call" fn call(&self, args: (DEBUG_MODE,)) -> Self::Output {
30558        debugMode1923323614.call(args)
30559    }
30560}
30561
30562#[wasm_bindgen]
30563extern {
30564    #[wasm_bindgen(js_name = "debugMode")]
30565    fn debugMode1403789756(_ : Constant, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
30566}
30567
30568#[doc(hidden)]
30569impl FnOnce<(Constant,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30570    type Output = ();
30571    extern "rust-call" fn call_once(self, args: (Constant,f64,f64,f64,f64,f64,)) -> Self::Output {
30572        debugMode1403789756.call(args)
30573    }
30574}
30575
30576#[doc(hidden)]
30577impl FnMut<(Constant,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30578    extern "rust-call" fn call_mut(&mut self, args: (Constant,f64,f64,f64,f64,f64,)) -> Self::Output {
30579        debugMode1403789756.call(args)
30580    }
30581}
30582
30583#[doc(hidden)]
30584impl Fn<(Constant,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30585    extern "rust-call" fn call(&self, args: (Constant,f64,f64,f64,f64,f64,)) -> Self::Output {
30586        debugMode1403789756.call(args)
30587    }
30588}
30589
30590#[wasm_bindgen]
30591extern {
30592    #[wasm_bindgen(js_name = "debugMode")]
30593    fn debugMode545415975(_ : Constant, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
30594}
30595
30596#[doc(hidden)]
30597impl FnOnce<(Constant,f64,f64,f64,f64,)> for DebugModeInternalType {
30598    type Output = ();
30599    extern "rust-call" fn call_once(self, args: (Constant,f64,f64,f64,f64,)) -> Self::Output {
30600        debugMode545415975.call(args)
30601    }
30602}
30603
30604#[doc(hidden)]
30605impl FnMut<(Constant,f64,f64,f64,f64,)> for DebugModeInternalType {
30606    extern "rust-call" fn call_mut(&mut self, args: (Constant,f64,f64,f64,f64,)) -> Self::Output {
30607        debugMode545415975.call(args)
30608    }
30609}
30610
30611#[doc(hidden)]
30612impl Fn<(Constant,f64,f64,f64,f64,)> for DebugModeInternalType {
30613    extern "rust-call" fn call(&self, args: (Constant,f64,f64,f64,f64,)) -> Self::Output {
30614        debugMode545415975.call(args)
30615    }
30616}
30617
30618#[wasm_bindgen]
30619extern {
30620    #[wasm_bindgen(js_name = "debugMode")]
30621    fn debugMode3369882809(_ : Constant, _ : f64, _ : f64, _ : f64, ) ;
30622}
30623
30624#[doc(hidden)]
30625impl FnOnce<(Constant,f64,f64,f64,)> for DebugModeInternalType {
30626    type Output = ();
30627    extern "rust-call" fn call_once(self, args: (Constant,f64,f64,f64,)) -> Self::Output {
30628        debugMode3369882809.call(args)
30629    }
30630}
30631
30632#[doc(hidden)]
30633impl FnMut<(Constant,f64,f64,f64,)> for DebugModeInternalType {
30634    extern "rust-call" fn call_mut(&mut self, args: (Constant,f64,f64,f64,)) -> Self::Output {
30635        debugMode3369882809.call(args)
30636    }
30637}
30638
30639#[doc(hidden)]
30640impl Fn<(Constant,f64,f64,f64,)> for DebugModeInternalType {
30641    extern "rust-call" fn call(&self, args: (Constant,f64,f64,f64,)) -> Self::Output {
30642        debugMode3369882809.call(args)
30643    }
30644}
30645
30646#[wasm_bindgen]
30647extern {
30648    #[wasm_bindgen(js_name = "debugMode")]
30649    fn debugMode3280002228(_ : Constant, _ : f64, _ : f64, ) ;
30650}
30651
30652#[doc(hidden)]
30653impl FnOnce<(Constant,f64,f64,)> for DebugModeInternalType {
30654    type Output = ();
30655    extern "rust-call" fn call_once(self, args: (Constant,f64,f64,)) -> Self::Output {
30656        debugMode3280002228.call(args)
30657    }
30658}
30659
30660#[doc(hidden)]
30661impl FnMut<(Constant,f64,f64,)> for DebugModeInternalType {
30662    extern "rust-call" fn call_mut(&mut self, args: (Constant,f64,f64,)) -> Self::Output {
30663        debugMode3280002228.call(args)
30664    }
30665}
30666
30667#[doc(hidden)]
30668impl Fn<(Constant,f64,f64,)> for DebugModeInternalType {
30669    extern "rust-call" fn call(&self, args: (Constant,f64,f64,)) -> Self::Output {
30670        debugMode3280002228.call(args)
30671    }
30672}
30673
30674#[wasm_bindgen]
30675extern {
30676    #[wasm_bindgen(js_name = "debugMode")]
30677    fn debugMode2915866396(_ : Constant, _ : f64, ) ;
30678}
30679
30680#[doc(hidden)]
30681impl FnOnce<(Constant,f64,)> for DebugModeInternalType {
30682    type Output = ();
30683    extern "rust-call" fn call_once(self, args: (Constant,f64,)) -> Self::Output {
30684        debugMode2915866396.call(args)
30685    }
30686}
30687
30688#[doc(hidden)]
30689impl FnMut<(Constant,f64,)> for DebugModeInternalType {
30690    extern "rust-call" fn call_mut(&mut self, args: (Constant,f64,)) -> Self::Output {
30691        debugMode2915866396.call(args)
30692    }
30693}
30694
30695#[doc(hidden)]
30696impl Fn<(Constant,f64,)> for DebugModeInternalType {
30697    extern "rust-call" fn call(&self, args: (Constant,f64,)) -> Self::Output {
30698        debugMode2915866396.call(args)
30699    }
30700}
30701
30702#[wasm_bindgen]
30703extern {
30704    #[wasm_bindgen(js_name = "debugMode")]
30705    fn debugMode3378809195(_ : Constant, ) ;
30706}
30707
30708#[doc(hidden)]
30709impl FnOnce<(Constant,)> for DebugModeInternalType {
30710    type Output = ();
30711    extern "rust-call" fn call_once(self, args: (Constant,)) -> Self::Output {
30712        debugMode3378809195.call(args)
30713    }
30714}
30715
30716#[doc(hidden)]
30717impl FnMut<(Constant,)> for DebugModeInternalType {
30718    extern "rust-call" fn call_mut(&mut self, args: (Constant,)) -> Self::Output {
30719        debugMode3378809195.call(args)
30720    }
30721}
30722
30723#[doc(hidden)]
30724impl Fn<(Constant,)> for DebugModeInternalType {
30725    extern "rust-call" fn call(&self, args: (Constant,)) -> Self::Output {
30726        debugMode3378809195.call(args)
30727    }
30728}
30729
30730#[wasm_bindgen]
30731extern {
30732    #[wasm_bindgen(js_name = "debugMode")]
30733    fn debugMode431229174(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
30734}
30735
30736#[doc(hidden)]
30737impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30738    type Output = ();
30739    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30740        debugMode431229174.call(args)
30741    }
30742}
30743
30744#[doc(hidden)]
30745impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30746    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30747        debugMode431229174.call(args)
30748    }
30749}
30750
30751#[doc(hidden)]
30752impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30753    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30754        debugMode431229174.call(args)
30755    }
30756}
30757
30758#[wasm_bindgen]
30759extern {
30760    #[wasm_bindgen(js_name = "debugMode")]
30761    fn debugMode3965568682(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
30762}
30763
30764#[doc(hidden)]
30765impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30766    type Output = ();
30767    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30768        debugMode3965568682.call(args)
30769    }
30770}
30771
30772#[doc(hidden)]
30773impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30774    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30775        debugMode3965568682.call(args)
30776    }
30777}
30778
30779#[doc(hidden)]
30780impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30781    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30782        debugMode3965568682.call(args)
30783    }
30784}
30785
30786#[wasm_bindgen]
30787extern {
30788    #[wasm_bindgen(js_name = "debugMode")]
30789    fn debugMode4138248674(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
30790}
30791
30792#[doc(hidden)]
30793impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30794    type Output = ();
30795    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30796        debugMode4138248674.call(args)
30797    }
30798}
30799
30800#[doc(hidden)]
30801impl FnMut<(f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30802    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30803        debugMode4138248674.call(args)
30804    }
30805}
30806
30807#[doc(hidden)]
30808impl Fn<(f64,f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30809    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30810        debugMode4138248674.call(args)
30811    }
30812}
30813
30814#[wasm_bindgen]
30815extern {
30816    #[wasm_bindgen(js_name = "debugMode")]
30817    fn debugMode2344365972(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
30818}
30819
30820#[doc(hidden)]
30821impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30822    type Output = ();
30823    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30824        debugMode2344365972.call(args)
30825    }
30826}
30827
30828#[doc(hidden)]
30829impl FnMut<(f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30830    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30831        debugMode2344365972.call(args)
30832    }
30833}
30834
30835#[doc(hidden)]
30836impl Fn<(f64,f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30837    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
30838        debugMode2344365972.call(args)
30839    }
30840}
30841
30842#[wasm_bindgen]
30843extern {
30844    #[wasm_bindgen(js_name = "debugMode")]
30845    fn debugMode1983586192(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
30846}
30847
30848#[doc(hidden)]
30849impl FnOnce<(f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30850    type Output = ();
30851    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
30852        debugMode1983586192.call(args)
30853    }
30854}
30855
30856#[doc(hidden)]
30857impl FnMut<(f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30858    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
30859        debugMode1983586192.call(args)
30860    }
30861}
30862
30863#[doc(hidden)]
30864impl Fn<(f64,f64,f64,f64,f64,)> for DebugModeInternalType {
30865    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
30866        debugMode1983586192.call(args)
30867    }
30868}
30869
30870#[wasm_bindgen]
30871extern {
30872    #[wasm_bindgen(js_name = "debugMode")]
30873    fn debugMode2686725642(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
30874}
30875
30876#[doc(hidden)]
30877impl FnOnce<(f64,f64,f64,f64,)> for DebugModeInternalType {
30878    type Output = ();
30879    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
30880        debugMode2686725642.call(args)
30881    }
30882}
30883
30884#[doc(hidden)]
30885impl FnMut<(f64,f64,f64,f64,)> for DebugModeInternalType {
30886    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
30887        debugMode2686725642.call(args)
30888    }
30889}
30890
30891#[doc(hidden)]
30892impl Fn<(f64,f64,f64,f64,)> for DebugModeInternalType {
30893    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
30894        debugMode2686725642.call(args)
30895    }
30896}
30897
30898#[wasm_bindgen]
30899extern {
30900    #[wasm_bindgen(js_name = "debugMode")]
30901    fn debugMode128196915(_ : f64, _ : f64, _ : f64, ) ;
30902}
30903
30904#[doc(hidden)]
30905impl FnOnce<(f64,f64,f64,)> for DebugModeInternalType {
30906    type Output = ();
30907    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
30908        debugMode128196915.call(args)
30909    }
30910}
30911
30912#[doc(hidden)]
30913impl FnMut<(f64,f64,f64,)> for DebugModeInternalType {
30914    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
30915        debugMode128196915.call(args)
30916    }
30917}
30918
30919#[doc(hidden)]
30920impl Fn<(f64,f64,f64,)> for DebugModeInternalType {
30921    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
30922        debugMode128196915.call(args)
30923    }
30924}
30925
30926#[wasm_bindgen]
30927extern {
30928    #[wasm_bindgen(js_name = "debugMode")]
30929    fn debugMode2559674909(_ : f64, _ : f64, ) ;
30930}
30931
30932#[doc(hidden)]
30933impl FnOnce<(f64,f64,)> for DebugModeInternalType {
30934    type Output = ();
30935    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
30936        debugMode2559674909.call(args)
30937    }
30938}
30939
30940#[doc(hidden)]
30941impl FnMut<(f64,f64,)> for DebugModeInternalType {
30942    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
30943        debugMode2559674909.call(args)
30944    }
30945}
30946
30947#[doc(hidden)]
30948impl Fn<(f64,f64,)> for DebugModeInternalType {
30949    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
30950        debugMode2559674909.call(args)
30951    }
30952}
30953
30954#[wasm_bindgen]
30955extern {
30956    #[wasm_bindgen(js_name = "debugMode")]
30957    fn debugMode3460375635(_ : f64, ) ;
30958}
30959
30960#[doc(hidden)]
30961impl FnOnce<(f64,)> for DebugModeInternalType {
30962    type Output = ();
30963    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
30964        debugMode3460375635.call(args)
30965    }
30966}
30967
30968#[doc(hidden)]
30969impl FnMut<(f64,)> for DebugModeInternalType {
30970    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
30971        debugMode3460375635.call(args)
30972    }
30973}
30974
30975#[doc(hidden)]
30976impl Fn<(f64,)> for DebugModeInternalType {
30977    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
30978        debugMode3460375635.call(args)
30979    }
30980}
30981#[doc=r##"<p>Turns off debugMode() in a 3D sketch.</p>
30982"##]
30983///<h2>Examples</h2>
30984///
30985
30986#[doc=r###"```rust
30987function setup() {
30988  createCanvas(100, 100, WEBGL);
30989  camera(0, -30, 100, 0, 0, 0, 0, 1, 0);
30990  normalMaterial();
30991  debugMode();
30992}
30993
30994function draw() {
30995  background(200);
30996  orbitControl();
30997  box(15, 30);
30998  // Press the spacebar to turn debugMode off!
30999  if (keyIsDown(32)) {
31000    noDebugMode();
31001  }
31002}
31003```"###]
31004
31005pub static noDebugMode: NoDebugModeInternalType = NoDebugModeInternalType;
31006#[doc(hidden)]
31007pub struct NoDebugModeInternalType;
31008
31009
31010#[wasm_bindgen]
31011extern {
31012    #[wasm_bindgen(js_name = "noDebugMode")]
31013    fn noDebugMode3357251490() ;
31014}
31015
31016#[doc(hidden)]
31017impl FnOnce<()> for NoDebugModeInternalType {
31018    type Output = ();
31019    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
31020        noDebugMode3357251490.call(args)
31021    }
31022}
31023
31024#[doc(hidden)]
31025impl FnMut<()> for NoDebugModeInternalType {
31026    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
31027        noDebugMode3357251490.call(args)
31028    }
31029}
31030
31031#[doc(hidden)]
31032impl Fn<()> for NoDebugModeInternalType {
31033    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
31034        noDebugMode3357251490.call(args)
31035    }
31036}
31037#[doc=r##"<p>Modifies the location from which ellipses are drawn by changing the way in
31038which parameters given to <a href="#/p5/ellipse">ellipse()</a>,
31039<a href="#/p5/circle">circle()</a> and <a href="#/p5/arc">arc()</a> are interpreted.</p>
31040<p>The default mode is CENTER, in which the first two parameters are interpreted
31041as the shape's center point's x and y coordinates respectively, while the third
31042and fourth parameters are its width and height.</p>
31043<p>ellipseMode(RADIUS) also uses the first two parameters as the shape's center
31044point's x and y coordinates, but uses the third and fourth parameters to
31045specify half of the shapes's width and height.</p>
31046<p>ellipseMode(CORNER) interprets the first two parameters as the upper-left
31047corner of the shape, while the third and fourth parameters are its width
31048and height.</p>
31049<p>ellipseMode(CORNERS) interprets the first two parameters as the location of
31050one corner of the ellipse's bounding box, and the third and fourth parameters
31051as the location of the opposite corner.</p>
31052<p>The parameter to this method must be written in ALL CAPS because they are
31053predefined as constants in ALL CAPS and Javascript is a case-sensitive language.</p>
31054"##]
31055///<h2>Examples</h2>
31056///
31057
31058#[doc=r###"```rust
31059// Example showing RADIUS and CENTER ellipsemode with 2 overlaying ellipses
31060ellipseMode(RADIUS);
31061fill(255);
31062ellipse(50, 50, 30, 30); // Outer white ellipse
31063ellipseMode(CENTER);
31064fill(100);
31065ellipse(50, 50, 30, 30); // Inner gray ellipse
31066```"###]
31067#[doc=r###"```rust
31068// Example showing CORNER and CORNERS ellipseMode with 2 overlaying ellipses
31069ellipseMode(CORNER);
31070fill(255);
31071ellipse(25, 25, 50, 50); // Outer white ellipse
31072ellipseMode(CORNERS);
31073fill(100);
31074ellipse(25, 25, 50, 50); // Inner gray ellipse
31075```"###]
31076/// <h2>Parameters</h2>
31077///
31078#[doc = r##"<code>mode</code> either CENTER, RADIUS, CORNER, or CORNERS
31079
31080"##]
31081///
31082
31083pub static ellipseMode: EllipseModeInternalType = EllipseModeInternalType;
31084#[doc(hidden)]
31085pub struct EllipseModeInternalType;
31086
31087
31088#[wasm_bindgen]
31089extern {
31090    #[wasm_bindgen(js_name = "ellipseMode")]
31091    fn ellipseMode1861965515(_ : ELLIPSE_MODE, ) ;
31092}
31093
31094#[doc(hidden)]
31095impl FnOnce<(ELLIPSE_MODE,)> for EllipseModeInternalType {
31096    type Output = ();
31097    extern "rust-call" fn call_once(self, args: (ELLIPSE_MODE,)) -> Self::Output {
31098        ellipseMode1861965515.call(args)
31099    }
31100}
31101
31102#[doc(hidden)]
31103impl FnMut<(ELLIPSE_MODE,)> for EllipseModeInternalType {
31104    extern "rust-call" fn call_mut(&mut self, args: (ELLIPSE_MODE,)) -> Self::Output {
31105        ellipseMode1861965515.call(args)
31106    }
31107}
31108
31109#[doc(hidden)]
31110impl Fn<(ELLIPSE_MODE,)> for EllipseModeInternalType {
31111    extern "rust-call" fn call(&self, args: (ELLIPSE_MODE,)) -> Self::Output {
31112        ellipseMode1861965515.call(args)
31113    }
31114}
31115#[doc=r##"<p>Draws all geometry with jagged (aliased) edges. Note that <a href="#/p5/smooth">smooth()</a> is
31116active by default in 2D mode, so it is necessary to call <a href="#/p5/noSmooth">noSmooth()</a> to disable
31117smoothing of geometry, images, and fonts. In 3D mode, <a href="#/p5/noSmooth">noSmooth()</a> is enabled
31118by default, so it is necessary to call <a href="#/p5/smooth">smooth()</a> if you would like
31119smooth (antialiased) edges on your geometry.</p>
31120"##]
31121///<h2>Examples</h2>
31122///
31123
31124#[doc=r###"```rust
31125background(0);
31126noStroke();
31127smooth();
31128ellipse(30, 48, 36, 36);
31129noSmooth();
31130ellipse(70, 48, 36, 36);
31131```"###]
31132
31133pub static noSmooth: NoSmoothInternalType = NoSmoothInternalType;
31134#[doc(hidden)]
31135pub struct NoSmoothInternalType;
31136
31137
31138#[wasm_bindgen]
31139extern {
31140    #[wasm_bindgen(js_name = "noSmooth")]
31141    fn noSmooth2830739131() ;
31142}
31143
31144#[doc(hidden)]
31145impl FnOnce<()> for NoSmoothInternalType {
31146    type Output = ();
31147    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
31148        noSmooth2830739131.call(args)
31149    }
31150}
31151
31152#[doc(hidden)]
31153impl FnMut<()> for NoSmoothInternalType {
31154    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
31155        noSmooth2830739131.call(args)
31156    }
31157}
31158
31159#[doc(hidden)]
31160impl Fn<()> for NoSmoothInternalType {
31161    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
31162        noSmooth2830739131.call(args)
31163    }
31164}
31165#[doc=r##"<p>Modifies the location from which rectangles are drawn by changing the way
31166in which parameters given to <a href="#/p5/rect">rect()</a> are interpreted.</p>
31167<p>The default mode is CORNER, which interprets the first two parameters as the
31168upper-left corner of the shape, while the third and fourth parameters are its
31169width and height.</p>
31170<p>rectMode(CORNERS) interprets the first two parameters as the location of
31171one of the corners, and the third and fourth parameters as the location of
31172the diagonally opposite corner. Note, the rectangle is drawn between the
31173coordinates, so it is not neccesary that the first corner be the upper left
31174corner.</p>
31175<p>rectMode(CENTER) interprets the first two parameters as the shape's center
31176point, while the third and fourth parameters are its width and height.</p>
31177<p>rectMode(RADIUS) also uses the first two parameters as the shape's center
31178point, but uses the third and fourth parameters to specify half of the shape's
31179width and height respectively.</p>
31180<p>The parameter to this method must be written in ALL CAPS because they are
31181predefined as constants in ALL CAPS and Javascript is a case-sensitive language.</p>
31182"##]
31183///<h2>Examples</h2>
31184///
31185
31186#[doc=r###"```rust
31187rectMode(CORNER);
31188fill(255);
31189rect(25, 25, 50, 50); // Draw white rectangle using CORNER mode
31190
31191rectMode(CORNERS);
31192fill(100);
31193rect(25, 25, 50, 50); // Draw gray rectanle using CORNERS mode
31194```"###]
31195#[doc=r###"```rust
31196rectMode(RADIUS);
31197fill(255);
31198rect(50, 50, 30, 30); // Draw white rectangle using RADIUS mode
31199
31200rectMode(CENTER);
31201fill(100);
31202rect(50, 50, 30, 30); // Draw gray rectangle using CENTER mode
31203```"###]
31204/// <h2>Parameters</h2>
31205///
31206#[doc = r##"<code>mode</code> either CORNER, CORNERS, CENTER, or RADIUS
31207
31208"##]
31209///
31210
31211pub static rectMode: RectModeInternalType = RectModeInternalType;
31212#[doc(hidden)]
31213pub struct RectModeInternalType;
31214
31215
31216#[wasm_bindgen]
31217extern {
31218    #[wasm_bindgen(js_name = "rectMode")]
31219    fn rectMode3641780604(_ : RECT_MODE, ) ;
31220}
31221
31222#[doc(hidden)]
31223impl FnOnce<(RECT_MODE,)> for RectModeInternalType {
31224    type Output = ();
31225    extern "rust-call" fn call_once(self, args: (RECT_MODE,)) -> Self::Output {
31226        rectMode3641780604.call(args)
31227    }
31228}
31229
31230#[doc(hidden)]
31231impl FnMut<(RECT_MODE,)> for RectModeInternalType {
31232    extern "rust-call" fn call_mut(&mut self, args: (RECT_MODE,)) -> Self::Output {
31233        rectMode3641780604.call(args)
31234    }
31235}
31236
31237#[doc(hidden)]
31238impl Fn<(RECT_MODE,)> for RectModeInternalType {
31239    extern "rust-call" fn call(&self, args: (RECT_MODE,)) -> Self::Output {
31240        rectMode3641780604.call(args)
31241    }
31242}
31243#[doc=r##"<p>Draws all geometry with smooth (anti-aliased) edges. <a href="#/p5/smooth">smooth()</a> will also
31244improve image quality of resized images. Note that <a href="#/p5/smooth">smooth()</a> is active by
31245default in 2D mode; <a href="#/p5/noSmooth">noSmooth()</a> can be used to disable smoothing of geometry,
31246images, and fonts. In 3D mode, <a href="#/p5/noSmooth">noSmooth()</a> is enabled
31247by default, so it is necessary to call <a href="#/p5/smooth">smooth()</a> if you would like
31248smooth (antialiased) edges on your geometry.</p>
31249"##]
31250///<h2>Examples</h2>
31251///
31252
31253#[doc=r###"```rust
31254background(0);
31255noStroke();
31256smooth();
31257ellipse(30, 48, 36, 36);
31258noSmooth();
31259ellipse(70, 48, 36, 36);
31260```"###]
31261
31262pub static smooth: SmoothInternalType = SmoothInternalType;
31263#[doc(hidden)]
31264pub struct SmoothInternalType;
31265
31266
31267#[wasm_bindgen]
31268extern {
31269    #[wasm_bindgen(js_name = "smooth")]
31270    fn smooth1712109492() ;
31271}
31272
31273#[doc(hidden)]
31274impl FnOnce<()> for SmoothInternalType {
31275    type Output = ();
31276    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
31277        smooth1712109492.call(args)
31278    }
31279}
31280
31281#[doc(hidden)]
31282impl FnMut<()> for SmoothInternalType {
31283    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
31284        smooth1712109492.call(args)
31285    }
31286}
31287
31288#[doc(hidden)]
31289impl Fn<()> for SmoothInternalType {
31290    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
31291        smooth1712109492.call(args)
31292    }
31293}
31294#[doc=r##"<p>Sets the style for rendering line endings. These ends are either rounded,
31295squared or extended, each of which specified with the corresponding
31296parameters: ROUND, SQUARE and PROJECT. The default cap is ROUND.</p>
31297<p>The parameter to this method must be written in ALL CAPS because they are
31298predefined as constants in ALL CAPS and Javascript is a case-sensitive language.</p>
31299"##]
31300///<h2>Examples</h2>
31301///
31302
31303#[doc=r###"```rust
31304// Example of different strokeCaps
31305strokeWeight(12.0);
31306strokeCap(ROUND);
31307line(20, 30, 80, 30);
31308strokeCap(SQUARE);
31309line(20, 50, 80, 50);
31310strokeCap(PROJECT);
31311line(20, 70, 80, 70);
31312```"###]
31313/// <h2>Parameters</h2>
31314///
31315#[doc = r##"<code>cap</code> either ROUND, SQUARE or PROJECT
31316
31317"##]
31318///
31319
31320pub static strokeCap: StrokeCapInternalType = StrokeCapInternalType;
31321#[doc(hidden)]
31322pub struct StrokeCapInternalType;
31323
31324
31325#[wasm_bindgen]
31326extern {
31327    #[wasm_bindgen(js_name = "strokeCap")]
31328    fn strokeCap2533240632(_ : STROKE_CAP, ) ;
31329}
31330
31331#[doc(hidden)]
31332impl FnOnce<(STROKE_CAP,)> for StrokeCapInternalType {
31333    type Output = ();
31334    extern "rust-call" fn call_once(self, args: (STROKE_CAP,)) -> Self::Output {
31335        strokeCap2533240632.call(args)
31336    }
31337}
31338
31339#[doc(hidden)]
31340impl FnMut<(STROKE_CAP,)> for StrokeCapInternalType {
31341    extern "rust-call" fn call_mut(&mut self, args: (STROKE_CAP,)) -> Self::Output {
31342        strokeCap2533240632.call(args)
31343    }
31344}
31345
31346#[doc(hidden)]
31347impl Fn<(STROKE_CAP,)> for StrokeCapInternalType {
31348    extern "rust-call" fn call(&self, args: (STROKE_CAP,)) -> Self::Output {
31349        strokeCap2533240632.call(args)
31350    }
31351}
31352#[doc=r##"<p>Sets the style of the joints which connect line segments. These joints
31353are either mitered, beveled or rounded and specified with the
31354corresponding parameters MITER, BEVEL and ROUND. The default joint is
31355MITER.</p>
31356<p>The parameter to this method must be written in ALL CAPS because they are
31357predefined as constants in ALL CAPS and Javascript is a case-sensitive language.</p>
31358"##]
31359///<h2>Examples</h2>
31360///
31361
31362#[doc=r###"```rust
31363// Example of MITER type of joints
31364noFill();
31365strokeWeight(10.0);
31366strokeJoin(MITER);
31367beginShape();
31368vertex(35, 20);
31369vertex(65, 50);
31370vertex(35, 80);
31371endShape();
31372```"###]
31373#[doc=r###"```rust
31374// Example of BEVEL type of joints
31375noFill();
31376strokeWeight(10.0);
31377strokeJoin(BEVEL);
31378beginShape();
31379vertex(35, 20);
31380vertex(65, 50);
31381vertex(35, 80);
31382endShape();
31383```"###]
31384#[doc=r###"```rust
31385// Example of ROUND type of joints
31386noFill();
31387strokeWeight(10.0);
31388strokeJoin(ROUND);
31389beginShape();
31390vertex(35, 20);
31391vertex(65, 50);
31392vertex(35, 80);
31393endShape();
31394```"###]
31395/// <h2>Parameters</h2>
31396///
31397#[doc = r##"<code>join</code> either MITER, BEVEL, ROUND
31398
31399"##]
31400///
31401
31402pub static strokeJoin: StrokeJoinInternalType = StrokeJoinInternalType;
31403#[doc(hidden)]
31404pub struct StrokeJoinInternalType;
31405
31406
31407#[wasm_bindgen]
31408extern {
31409    #[wasm_bindgen(js_name = "strokeJoin")]
31410    fn strokeJoin3676005219(_ : STROKE_JOIN, ) ;
31411}
31412
31413#[doc(hidden)]
31414impl FnOnce<(STROKE_JOIN,)> for StrokeJoinInternalType {
31415    type Output = ();
31416    extern "rust-call" fn call_once(self, args: (STROKE_JOIN,)) -> Self::Output {
31417        strokeJoin3676005219.call(args)
31418    }
31419}
31420
31421#[doc(hidden)]
31422impl FnMut<(STROKE_JOIN,)> for StrokeJoinInternalType {
31423    extern "rust-call" fn call_mut(&mut self, args: (STROKE_JOIN,)) -> Self::Output {
31424        strokeJoin3676005219.call(args)
31425    }
31426}
31427
31428#[doc(hidden)]
31429impl Fn<(STROKE_JOIN,)> for StrokeJoinInternalType {
31430    extern "rust-call" fn call(&self, args: (STROKE_JOIN,)) -> Self::Output {
31431        strokeJoin3676005219.call(args)
31432    }
31433}
31434#[doc=r##"<p>Sets the width of the stroke used for lines, points and the border around
31435shapes. All widths are set in units of pixels.</p>
31436"##]
31437///<h2>Examples</h2>
31438///
31439
31440#[doc=r###"```rust
31441// Example of different stroke weights
31442strokeWeight(1); // Default
31443line(20, 20, 80, 20);
31444strokeWeight(4); // Thicker
31445line(20, 40, 80, 40);
31446strokeWeight(10); // Beastly
31447line(20, 70, 80, 70);
31448```"###]
31449/// <h2>Parameters</h2>
31450///
31451#[doc = r##"<code>weight</code> the weight of the stroke (in pixels)
31452
31453"##]
31454///
31455
31456pub static strokeWeight: StrokeWeightInternalType = StrokeWeightInternalType;
31457#[doc(hidden)]
31458pub struct StrokeWeightInternalType;
31459
31460
31461#[wasm_bindgen]
31462extern {
31463    #[wasm_bindgen(js_name = "strokeWeight")]
31464    fn strokeWeight3249474782(_ : f64, ) ;
31465}
31466
31467#[doc(hidden)]
31468impl FnOnce<(f64,)> for StrokeWeightInternalType {
31469    type Output = ();
31470    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
31471        strokeWeight3249474782.call(args)
31472    }
31473}
31474
31475#[doc(hidden)]
31476impl FnMut<(f64,)> for StrokeWeightInternalType {
31477    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
31478        strokeWeight3249474782.call(args)
31479    }
31480}
31481
31482#[doc(hidden)]
31483impl Fn<(f64,)> for StrokeWeightInternalType {
31484    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
31485        strokeWeight3249474782.call(args)
31486    }
31487}
31488#[doc=r##"<p>The <a href="#/p5/setMoveThreshold">setMoveThreshold()</a> function is used to set the movement threshold for
31489the <a href="#/p5/deviceMoved">deviceMoved()</a> function. The default threshold is set to 0.5.</p>
31490"##]
31491///<h2>Examples</h2>
31492///
31493
31494#[doc=r###"```rust
31495// Run this example on a mobile device
31496// You will need to move the device incrementally further
31497// the closer the square's color gets to white in order to change the value.
31498
31499let value = 0;
31500let threshold = 0.5;
31501function setup() {
31502  setMoveThreshold(threshold);
31503}
31504function draw() {
31505  fill(value);
31506  rect(25, 25, 50, 50);
31507}
31508function deviceMoved() {
31509  value = value + 5;
31510  threshold = threshold + 0.1;
31511  if (value > 255) {
31512    value = 0;
31513    threshold = 30;
31514  }
31515  setMoveThreshold(threshold);
31516}
31517```"###]
31518/// <h2>Parameters</h2>
31519///
31520#[doc = r##"<code>value</code> The threshold value
31521
31522"##]
31523///
31524
31525pub static setMoveThreshold: SetMoveThresholdInternalType = SetMoveThresholdInternalType;
31526#[doc(hidden)]
31527pub struct SetMoveThresholdInternalType;
31528
31529
31530#[wasm_bindgen]
31531extern {
31532    #[wasm_bindgen(js_name = "setMoveThreshold")]
31533    fn setMoveThreshold1801969978(_ : f64, ) ;
31534}
31535
31536#[doc(hidden)]
31537impl FnOnce<(f64,)> for SetMoveThresholdInternalType {
31538    type Output = ();
31539    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
31540        setMoveThreshold1801969978.call(args)
31541    }
31542}
31543
31544#[doc(hidden)]
31545impl FnMut<(f64,)> for SetMoveThresholdInternalType {
31546    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
31547        setMoveThreshold1801969978.call(args)
31548    }
31549}
31550
31551#[doc(hidden)]
31552impl Fn<(f64,)> for SetMoveThresholdInternalType {
31553    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
31554        setMoveThreshold1801969978.call(args)
31555    }
31556}
31557#[doc=r##"<p>The <a href="#/p5/setShakeThreshold">setShakeThreshold()</a> function is used to set the movement threshold for
31558the <a href="#/p5/deviceShaken">deviceShaken()</a> function. The default threshold is set to 30.</p>
31559"##]
31560///<h2>Examples</h2>
31561///
31562
31563#[doc=r###"```rust
31564// Run this example on a mobile device
31565// You will need to shake the device more firmly
31566// the closer the box's fill gets to white in order to change the value.
31567
31568let value = 0;
31569let threshold = 30;
31570function setup() {
31571  setShakeThreshold(threshold);
31572}
31573function draw() {
31574  fill(value);
31575  rect(25, 25, 50, 50);
31576}
31577function deviceMoved() {
31578  value = value + 5;
31579  threshold = threshold + 5;
31580  if (value > 255) {
31581    value = 0;
31582    threshold = 30;
31583  }
31584  setShakeThreshold(threshold);
31585}
31586```"###]
31587/// <h2>Parameters</h2>
31588///
31589#[doc = r##"<code>value</code> The threshold value
31590
31591"##]
31592///
31593
31594pub static setShakeThreshold: SetShakeThresholdInternalType = SetShakeThresholdInternalType;
31595#[doc(hidden)]
31596pub struct SetShakeThresholdInternalType;
31597
31598
31599#[wasm_bindgen]
31600extern {
31601    #[wasm_bindgen(js_name = "setShakeThreshold")]
31602    fn setShakeThreshold1764002885(_ : f64, ) ;
31603}
31604
31605#[doc(hidden)]
31606impl FnOnce<(f64,)> for SetShakeThresholdInternalType {
31607    type Output = ();
31608    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
31609        setShakeThreshold1764002885.call(args)
31610    }
31611}
31612
31613#[doc(hidden)]
31614impl FnMut<(f64,)> for SetShakeThresholdInternalType {
31615    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
31616        setShakeThreshold1764002885.call(args)
31617    }
31618}
31619
31620#[doc(hidden)]
31621impl Fn<(f64,)> for SetShakeThresholdInternalType {
31622    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
31623        setShakeThreshold1764002885.call(args)
31624    }
31625}
31626#[doc=r##"<p>The <a href="#/p5/deviceMoved">deviceMoved()</a> function is called when the device is moved by more than
31627the threshold value along X, Y or Z axis. The default threshold is set to 0.5.
31628The threshold value can be changed using <a href="https://p5js.org/reference/#/p5/setMoveThreshold">setMoveThreshold()</a>.</p>
31629"##]
31630///<h2>Examples</h2>
31631///
31632
31633#[doc=r###"```rust
31634// Run this example on a mobile device
31635// Move the device around
31636// to change the value.
31637
31638let value = 0;
31639function draw() {
31640  fill(value);
31641  rect(25, 25, 50, 50);
31642}
31643function deviceMoved() {
31644  value = value + 5;
31645  if (value > 255) {
31646    value = 0;
31647  }
31648}
31649```"###]
31650
31651pub static deviceMoved: DeviceMovedInternalType = DeviceMovedInternalType;
31652#[doc(hidden)]
31653pub struct DeviceMovedInternalType;
31654
31655
31656#[wasm_bindgen]
31657extern {
31658    #[wasm_bindgen(js_name = "deviceMoved")]
31659    fn deviceMoved2559331401() ;
31660}
31661
31662#[doc(hidden)]
31663impl FnOnce<()> for DeviceMovedInternalType {
31664    type Output = ();
31665    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
31666        deviceMoved2559331401.call(args)
31667    }
31668}
31669
31670#[doc(hidden)]
31671impl FnMut<()> for DeviceMovedInternalType {
31672    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
31673        deviceMoved2559331401.call(args)
31674    }
31675}
31676
31677#[doc(hidden)]
31678impl Fn<()> for DeviceMovedInternalType {
31679    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
31680        deviceMoved2559331401.call(args)
31681    }
31682}
31683#[doc=r##"<p>The <a href="#/p5/deviceTurned">deviceTurned()</a> function is called when the device rotates by
31684more than 90 degrees continuously.</p>
31685<p>The axis that triggers the <a href="#/p5/deviceTurned">deviceTurned()</a> method is stored in the turnAxis
31686variable. The <a href="#/p5/deviceTurned">deviceTurned()</a> method can be locked to trigger on any axis:
31687X, Y or Z by comparing the turnAxis variable to 'X', 'Y' or 'Z'.</p>
31688"##]
31689///<h2>Examples</h2>
31690///
31691
31692#[doc=r###"```rust
31693// Run this example on a mobile device
31694// Rotate the device by 90 degrees
31695// to change the value.
31696
31697let value = 0;
31698function draw() {
31699  fill(value);
31700  rect(25, 25, 50, 50);
31701}
31702function deviceTurned() {
31703  if (value === 0) {
31704    value = 255;
31705  } else if (value === 255) {
31706    value = 0;
31707  }
31708}
31709```"###]
31710#[doc=r###"```rust
31711// Run this example on a mobile device
31712// Rotate the device by 90 degrees in the
31713// X-axis to change the value.
31714
31715let value = 0;
31716function draw() {
31717  fill(value);
31718  rect(25, 25, 50, 50);
31719}
31720function deviceTurned() {
31721  if (turnAxis === 'X') {
31722    if (value === 0) {
31723      value = 255;
31724    } else if (value === 255) {
31725      value = 0;
31726    }
31727  }
31728}
31729```"###]
31730
31731pub static deviceTurned: DeviceTurnedInternalType = DeviceTurnedInternalType;
31732#[doc(hidden)]
31733pub struct DeviceTurnedInternalType;
31734
31735
31736#[wasm_bindgen]
31737extern {
31738    #[wasm_bindgen(js_name = "deviceTurned")]
31739    fn deviceTurned1374578179() ;
31740}
31741
31742#[doc(hidden)]
31743impl FnOnce<()> for DeviceTurnedInternalType {
31744    type Output = ();
31745    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
31746        deviceTurned1374578179.call(args)
31747    }
31748}
31749
31750#[doc(hidden)]
31751impl FnMut<()> for DeviceTurnedInternalType {
31752    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
31753        deviceTurned1374578179.call(args)
31754    }
31755}
31756
31757#[doc(hidden)]
31758impl Fn<()> for DeviceTurnedInternalType {
31759    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
31760        deviceTurned1374578179.call(args)
31761    }
31762}
31763#[doc=r##"<p>The <a href="#/p5/deviceShaken">deviceShaken()</a> function is called when the device total acceleration
31764changes of accelerationX and accelerationY values is more than
31765the threshold value. The default threshold is set to 30.
31766The threshold value can be changed using <a href="https://p5js.org/reference/#/p5/setShakeThreshold">setShakeThreshold()</a>.</p>
31767"##]
31768///<h2>Examples</h2>
31769///
31770
31771#[doc=r###"```rust
31772// Run this example on a mobile device
31773// Shake the device to change the value.
31774
31775let value = 0;
31776function draw() {
31777  fill(value);
31778  rect(25, 25, 50, 50);
31779}
31780function deviceShaken() {
31781  value = value + 5;
31782  if (value > 255) {
31783    value = 0;
31784  }
31785}
31786```"###]
31787
31788pub static deviceShaken: DeviceShakenInternalType = DeviceShakenInternalType;
31789#[doc(hidden)]
31790pub struct DeviceShakenInternalType;
31791
31792
31793#[wasm_bindgen]
31794extern {
31795    #[wasm_bindgen(js_name = "deviceShaken")]
31796    fn deviceShaken3614399667() ;
31797}
31798
31799#[doc(hidden)]
31800impl FnOnce<()> for DeviceShakenInternalType {
31801    type Output = ();
31802    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
31803        deviceShaken3614399667.call(args)
31804    }
31805}
31806
31807#[doc(hidden)]
31808impl FnMut<()> for DeviceShakenInternalType {
31809    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
31810        deviceShaken3614399667.call(args)
31811    }
31812}
31813
31814#[doc(hidden)]
31815impl Fn<()> for DeviceShakenInternalType {
31816    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
31817        deviceShaken3614399667.call(args)
31818    }
31819}
31820#[doc=r##"<p>Draws a cubic Bezier curve on the screen. These curves are defined by a
31821series of anchor and control points. The first two parameters specify
31822the first anchor point and the last two parameters specify the other
31823anchor point, which become the first and last points on the curve. The
31824middle parameters specify the two control points which define the shape
31825of the curve. Approximately speaking, control points "pull" the curve
31826towards them.</p>
31827<p>Bezier curves were developed by French automotive engineer Pierre Bezier,
31828and are commonly used in computer graphics to define gently sloping curves.
31829See also <a href="#/p5/curve">curve()</a>.</p>
31830"##]
31831///<h2>Examples</h2>
31832///
31833
31834#[doc=r###"```rust
31835noFill();
31836stroke(255, 102, 0);
31837line(85, 20, 10, 10);
31838line(90, 90, 15, 80);
31839stroke(0, 0, 0);
31840bezier(85, 20, 10, 10, 90, 90, 15, 80);
31841```"###]
31842#[doc=r###"```rust
31843background(0, 0, 0);
31844noFill();
31845stroke(255);
31846bezier(250, 250, 0, 100, 100, 0, 100, 0, 0, 0, 100, 0);
31847```"###]
31848/// <h2>Overloads</h2>
31849///
31850#[doc = r##"<code>x1</code> x-coordinate for the first anchor point
31851
31852"##]
31853///
31854///
31855#[doc = r##"<code>y1</code> y-coordinate for the first anchor point
31856
31857"##]
31858///
31859///
31860#[doc = r##"<code>x2</code> x-coordinate for the first control point
31861
31862"##]
31863///
31864///
31865#[doc = r##"<code>y2</code> y-coordinate for the first control point
31866
31867"##]
31868///
31869///
31870#[doc = r##"<code>x3</code> x-coordinate for the second control point
31871
31872"##]
31873///
31874///
31875#[doc = r##"<code>y3</code> y-coordinate for the second control point
31876
31877"##]
31878///
31879///
31880#[doc = r##"<code>x4</code> x-coordinate for the second anchor point
31881
31882"##]
31883///
31884///
31885#[doc = r##"<code>y4</code> y-coordinate for the second anchor point
31886
31887"##]
31888///
31889///
31890/// ---
31891///
31892///
31893#[doc = r##"<code>x1</code> x-coordinate for the first anchor point
31894
31895"##]
31896///
31897///
31898#[doc = r##"<code>y1</code> y-coordinate for the first anchor point
31899
31900"##]
31901///
31902///
31903#[doc = r##"<code>z1</code> z-coordinate for the first anchor point
31904
31905"##]
31906///
31907///
31908#[doc = r##"<code>x2</code> x-coordinate for the first control point
31909
31910"##]
31911///
31912///
31913#[doc = r##"<code>y2</code> y-coordinate for the first control point
31914
31915"##]
31916///
31917///
31918#[doc = r##"<code>z2</code> z-coordinate for the first control point
31919
31920"##]
31921///
31922///
31923#[doc = r##"<code>x3</code> x-coordinate for the second control point
31924
31925"##]
31926///
31927///
31928#[doc = r##"<code>y3</code> y-coordinate for the second control point
31929
31930"##]
31931///
31932///
31933#[doc = r##"<code>z3</code> z-coordinate for the second control point
31934
31935"##]
31936///
31937///
31938#[doc = r##"<code>x4</code> x-coordinate for the second anchor point
31939
31940"##]
31941///
31942///
31943#[doc = r##"<code>y4</code> y-coordinate for the second anchor point
31944
31945"##]
31946///
31947///
31948#[doc = r##"<code>z4</code> z-coordinate for the second anchor point
31949
31950"##]
31951///
31952///
31953/// ---
31954///
31955
31956pub static bezier: BezierInternalType = BezierInternalType;
31957#[doc(hidden)]
31958pub struct BezierInternalType;
31959
31960
31961#[wasm_bindgen]
31962extern {
31963    #[wasm_bindgen(js_name = "bezier")]
31964    fn bezier4024972507(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
31965}
31966
31967#[doc(hidden)]
31968impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierInternalType {
31969    type Output = ();
31970    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
31971        bezier4024972507.call(args)
31972    }
31973}
31974
31975#[doc(hidden)]
31976impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierInternalType {
31977    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
31978        bezier4024972507.call(args)
31979    }
31980}
31981
31982#[doc(hidden)]
31983impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierInternalType {
31984    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
31985        bezier4024972507.call(args)
31986    }
31987}
31988
31989#[wasm_bindgen]
31990extern {
31991    #[wasm_bindgen(js_name = "bezier")]
31992    fn bezier237465044(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
31993}
31994
31995#[doc(hidden)]
31996impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierInternalType {
31997    type Output = ();
31998    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
31999        bezier237465044.call(args)
32000    }
32001}
32002
32003#[doc(hidden)]
32004impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierInternalType {
32005    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
32006        bezier237465044.call(args)
32007    }
32008}
32009
32010#[doc(hidden)]
32011impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for BezierInternalType {
32012    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
32013        bezier237465044.call(args)
32014    }
32015}
32016#[doc=r##"<p>Sets the resolution at which Bezier's curve is displayed. The default value is 20.</p>
32017<p>Note, This function is only useful when using the WEBGL renderer
32018as the default canvas renderer does not use this information.</p>
32019"##]
32020///<h2>Examples</h2>
32021///
32022
32023#[doc=r###"```rust
32024function setup() {
32025  createCanvas(100, 100, WEBGL);
32026  noFill();
32027  bezierDetail(5);
32028}
32029
32030function draw() {
32031  background(200);
32032  bezier(-40, -40, 0,
32033          90, -40, 0,
32034         -90,  40, 0,
32035          40,  40, 0);
32036}
32037```"###]
32038/// <h2>Parameters</h2>
32039///
32040#[doc = r##"<code>detail</code> resolution of the curves
32041
32042"##]
32043///
32044
32045pub static bezierDetail: BezierDetailInternalType = BezierDetailInternalType;
32046#[doc(hidden)]
32047pub struct BezierDetailInternalType;
32048
32049
32050#[wasm_bindgen]
32051extern {
32052    #[wasm_bindgen(js_name = "bezierDetail")]
32053    fn bezierDetail2184196585(_ : f64, ) ;
32054}
32055
32056#[doc(hidden)]
32057impl FnOnce<(f64,)> for BezierDetailInternalType {
32058    type Output = ();
32059    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
32060        bezierDetail2184196585.call(args)
32061    }
32062}
32063
32064#[doc(hidden)]
32065impl FnMut<(f64,)> for BezierDetailInternalType {
32066    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
32067        bezierDetail2184196585.call(args)
32068    }
32069}
32070
32071#[doc(hidden)]
32072impl Fn<(f64,)> for BezierDetailInternalType {
32073    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
32074        bezierDetail2184196585.call(args)
32075    }
32076}
32077#[doc=r##"<p>Given the x or y co-ordinate values of control and anchor points of a bezier
32078curve, it evaluates the x or y coordinate of the bezier at position t. The
32079parameters a and d are the x or y coordinates of first and last points on the
32080curve while b and c are of the control points.The final parameter t is the
32081position of the resultant point which is given between 0 and 1.
32082This can be done once with the x coordinates and a second time
32083with the y coordinates to get the location of a bezier curve at t.</p>
32084"##]
32085///<h2>Examples</h2>
32086///
32087
32088#[doc=r###"```rust
32089noFill();
32090let x1 = 85,
32091 x2 = 10,
32092 x3 = 90,
32093 x4 = 15;
32094let y1 = 20,
32095 y2 = 10,
32096 y3 = 90,
32097 y4 = 80;
32098bezier(x1, y1, x2, y2, x3, y3, x4, y4);
32099fill(255);
32100let steps = 10;
32101for (let i = 0; i <= steps; i++) {
32102  let t = i / steps;
32103  let x = bezierPoint(x1, x2, x3, x4, t);
32104  let y = bezierPoint(y1, y2, y3, y4, t);
32105  circle(x, y, 5);
32106}
32107```"###]
32108/// <h2>Parameters</h2>
32109///
32110#[doc = r##"<code>a</code> coordinate of first point on the curve
32111
32112"##]
32113///
32114///
32115#[doc = r##"<code>b</code> coordinate of first control point
32116
32117"##]
32118///
32119///
32120#[doc = r##"<code>c</code> coordinate of second control point
32121
32122"##]
32123///
32124///
32125#[doc = r##"<code>d</code> coordinate of second point on the curve
32126
32127"##]
32128///
32129///
32130#[doc = r##"<code>t</code> value between 0 and 1
32131
32132"##]
32133///
32134
32135pub static bezierPoint: BezierPointInternalType = BezierPointInternalType;
32136#[doc(hidden)]
32137pub struct BezierPointInternalType;
32138
32139
32140#[wasm_bindgen]
32141extern {
32142    #[wasm_bindgen(js_name = "bezierPoint")]
32143    fn bezierPoint3751003331(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) -> f64;
32144}
32145
32146#[doc(hidden)]
32147impl FnOnce<(f64,f64,f64,f64,f64,)> for BezierPointInternalType {
32148    type Output = f64;
32149    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32150        bezierPoint3751003331.call(args)
32151    }
32152}
32153
32154#[doc(hidden)]
32155impl FnMut<(f64,f64,f64,f64,f64,)> for BezierPointInternalType {
32156    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32157        bezierPoint3751003331.call(args)
32158    }
32159}
32160
32161#[doc(hidden)]
32162impl Fn<(f64,f64,f64,f64,f64,)> for BezierPointInternalType {
32163    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32164        bezierPoint3751003331.call(args)
32165    }
32166}
32167#[doc=r##"<p>Evaluates the tangent to the Bezier at position t for points a, b, c, d.
32168The parameters a and d are the first and last points
32169on the curve, and b and c are the control points.
32170The final parameter t varies between 0 and 1.</p>
32171"##]
32172///<h2>Examples</h2>
32173///
32174
32175#[doc=r###"```rust
32176noFill();
32177bezier(85, 20, 10, 10, 90, 90, 15, 80);
32178let steps = 6;
32179fill(255);
32180for (let i = 0; i <= steps; i++) {
32181  let t = i / steps;
32182  // Get the location of the point
32183  let x = bezierPoint(85, 10, 90, 15, t);
32184  let y = bezierPoint(20, 10, 90, 80, t);
32185  // Get the tangent points
32186  let tx = bezierTangent(85, 10, 90, 15, t);
32187  let ty = bezierTangent(20, 10, 90, 80, t);
32188  // Calculate an angle from the tangent points
32189  let a = atan2(ty, tx);
32190  a += PI;
32191  stroke(255, 102, 0);
32192  line(x, y, cos(a) * 30 + x, sin(a) * 30 + y);
32193  // The following line of code makes a line
32194  // inverse of the above line
32195  //line(x, y, cos(a)*-30 + x, sin(a)*-30 + y);
32196  stroke(0);
32197  ellipse(x, y, 5, 5);
32198}
32199```"###]
32200#[doc=r###"```rust
32201noFill();
32202bezier(85, 20, 10, 10, 90, 90, 15, 80);
32203stroke(255, 102, 0);
32204let steps = 16;
32205for (let i = 0; i <= steps; i++) {
32206  let t = i / steps;
32207  let x = bezierPoint(85, 10, 90, 15, t);
32208  let y = bezierPoint(20, 10, 90, 80, t);
32209  let tx = bezierTangent(85, 10, 90, 15, t);
32210  let ty = bezierTangent(20, 10, 90, 80, t);
32211  let a = atan2(ty, tx);
32212  a -= HALF_PI;
32213  line(x, y, cos(a) * 8 + x, sin(a) * 8 + y);
32214}
32215```"###]
32216/// <h2>Parameters</h2>
32217///
32218#[doc = r##"<code>a</code> coordinate of first point on the curve
32219
32220"##]
32221///
32222///
32223#[doc = r##"<code>b</code> coordinate of first control point
32224
32225"##]
32226///
32227///
32228#[doc = r##"<code>c</code> coordinate of second control point
32229
32230"##]
32231///
32232///
32233#[doc = r##"<code>d</code> coordinate of second point on the curve
32234
32235"##]
32236///
32237///
32238#[doc = r##"<code>t</code> value between 0 and 1
32239
32240"##]
32241///
32242
32243pub static bezierTangent: BezierTangentInternalType = BezierTangentInternalType;
32244#[doc(hidden)]
32245pub struct BezierTangentInternalType;
32246
32247
32248#[wasm_bindgen]
32249extern {
32250    #[wasm_bindgen(js_name = "bezierTangent")]
32251    fn bezierTangent3322685672(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) -> f64;
32252}
32253
32254#[doc(hidden)]
32255impl FnOnce<(f64,f64,f64,f64,f64,)> for BezierTangentInternalType {
32256    type Output = f64;
32257    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32258        bezierTangent3322685672.call(args)
32259    }
32260}
32261
32262#[doc(hidden)]
32263impl FnMut<(f64,f64,f64,f64,f64,)> for BezierTangentInternalType {
32264    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32265        bezierTangent3322685672.call(args)
32266    }
32267}
32268
32269#[doc(hidden)]
32270impl Fn<(f64,f64,f64,f64,f64,)> for BezierTangentInternalType {
32271    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32272        bezierTangent3322685672.call(args)
32273    }
32274}
32275#[doc=r##"<p>Draws a curved line on the screen between two points, given as the
32276middle four parameters. The first two parameters are a control point, as
32277if the curve came from this point even though it's not drawn. The last
32278two parameters similarly describe the other control point. <br /><br />
32279Longer curves can be created by putting a series of <a href="#/p5/curve">curve()</a> functions
32280together or using <a href="#/p5/curveVertex">curveVertex()</a>. An additional function called
32281<a href="#/p5/curveTightness">curveTightness()</a> provides control for the visual quality of the curve.
32282The <a href="#/p5/curve">curve()</a> function is an implementation of Catmull-Rom splines.</p>
32283"##]
32284///<h2>Examples</h2>
32285///
32286
32287#[doc=r###"```rust
32288noFill();
32289stroke(255, 102, 0);
32290curve(5, 26, 5, 26, 73, 24, 73, 61);
32291stroke(0);
32292curve(5, 26, 73, 24, 73, 61, 15, 65);
32293stroke(255, 102, 0);
32294curve(73, 24, 73, 61, 15, 65, 15, 65);
32295```"###]
32296#[doc=r###"```rust
32297// Define the curve points as JavaScript objects
32298let p1 = { x: 5, y: 26 };
32299let p2 = { x: 73, y: 24 };
32300let p3 = { x: 73, y: 61 };
32301let p4 = { x: 15, y: 65 };
32302noFill();
32303stroke(255, 102, 0);
32304curve(p1.x, p1.y, p1.x, p1.y, p2.x, p2.y, p3.x, p3.y);
32305stroke(0);
32306curve(p1.x, p1.y, p2.x, p2.y, p3.x, p3.y, p4.x, p4.y);
32307stroke(255, 102, 0);
32308curve(p2.x, p2.y, p3.x, p3.y, p4.x, p4.y, p4.x, p4.y);
32309```"###]
32310#[doc=r###"```rust
32311noFill();
32312stroke(255, 102, 0);
32313curve(5, 26, 0, 5, 26, 0, 73, 24, 0, 73, 61, 0);
32314stroke(0);
32315curve(5, 26, 0, 73, 24, 0, 73, 61, 0, 15, 65, 0);
32316stroke(255, 102, 0);
32317curve(73, 24, 0, 73, 61, 0, 15, 65, 0, 15, 65, 0);
32318```"###]
32319/// <h2>Overloads</h2>
32320///
32321#[doc = r##"<code>x1</code> x-coordinate for the beginning control point
32322
32323"##]
32324///
32325///
32326#[doc = r##"<code>y1</code> y-coordinate for the beginning control point
32327
32328"##]
32329///
32330///
32331#[doc = r##"<code>x2</code> x-coordinate for the first point
32332
32333"##]
32334///
32335///
32336#[doc = r##"<code>y2</code> y-coordinate for the first point
32337
32338"##]
32339///
32340///
32341#[doc = r##"<code>x3</code> x-coordinate for the second point
32342
32343"##]
32344///
32345///
32346#[doc = r##"<code>y3</code> y-coordinate for the second point
32347
32348"##]
32349///
32350///
32351#[doc = r##"<code>x4</code> x-coordinate for the ending control point
32352
32353"##]
32354///
32355///
32356#[doc = r##"<code>y4</code> y-coordinate for the ending control point
32357
32358"##]
32359///
32360///
32361/// ---
32362///
32363///
32364#[doc = r##"<code>x1</code> x-coordinate for the beginning control point
32365
32366"##]
32367///
32368///
32369#[doc = r##"<code>y1</code> y-coordinate for the beginning control point
32370
32371"##]
32372///
32373///
32374#[doc = r##"<code>z1</code> z-coordinate for the beginning control point
32375
32376"##]
32377///
32378///
32379#[doc = r##"<code>x2</code> x-coordinate for the first point
32380
32381"##]
32382///
32383///
32384#[doc = r##"<code>y2</code> y-coordinate for the first point
32385
32386"##]
32387///
32388///
32389#[doc = r##"<code>z2</code> z-coordinate for the first point
32390
32391"##]
32392///
32393///
32394#[doc = r##"<code>x3</code> x-coordinate for the second point
32395
32396"##]
32397///
32398///
32399#[doc = r##"<code>y3</code> y-coordinate for the second point
32400
32401"##]
32402///
32403///
32404#[doc = r##"<code>z3</code> z-coordinate for the second point
32405
32406"##]
32407///
32408///
32409#[doc = r##"<code>x4</code> x-coordinate for the ending control point
32410
32411"##]
32412///
32413///
32414#[doc = r##"<code>y4</code> y-coordinate for the ending control point
32415
32416"##]
32417///
32418///
32419#[doc = r##"<code>z4</code> z-coordinate for the ending control point
32420
32421"##]
32422///
32423///
32424/// ---
32425///
32426
32427pub static curve: CurveInternalType = CurveInternalType;
32428#[doc(hidden)]
32429pub struct CurveInternalType;
32430
32431
32432#[wasm_bindgen]
32433extern {
32434    #[wasm_bindgen(js_name = "curve")]
32435    fn curve2281763382(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
32436}
32437
32438#[doc(hidden)]
32439impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,)> for CurveInternalType {
32440    type Output = ();
32441    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
32442        curve2281763382.call(args)
32443    }
32444}
32445
32446#[doc(hidden)]
32447impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,)> for CurveInternalType {
32448    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
32449        curve2281763382.call(args)
32450    }
32451}
32452
32453#[doc(hidden)]
32454impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,)> for CurveInternalType {
32455    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
32456        curve2281763382.call(args)
32457    }
32458}
32459
32460#[wasm_bindgen]
32461extern {
32462    #[wasm_bindgen(js_name = "curve")]
32463    fn curve3542769215(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
32464}
32465
32466#[doc(hidden)]
32467impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for CurveInternalType {
32468    type Output = ();
32469    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
32470        curve3542769215.call(args)
32471    }
32472}
32473
32474#[doc(hidden)]
32475impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for CurveInternalType {
32476    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
32477        curve3542769215.call(args)
32478    }
32479}
32480
32481#[doc(hidden)]
32482impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for CurveInternalType {
32483    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
32484        curve3542769215.call(args)
32485    }
32486}
32487#[doc=r##"<p>Sets the resolution at which curves display. The default value is 20 while
32488the minimum value is 3.</p>
32489<p>This function is only useful when using the WEBGL renderer
32490as the default canvas renderer does not use this
32491information.</p>
32492"##]
32493///<h2>Examples</h2>
32494///
32495
32496#[doc=r###"```rust
32497function setup() {
32498  createCanvas(100, 100, WEBGL);
32499
32500  curveDetail(5);
32501}
32502function draw() {
32503  background(200);
32504
32505  curve(250, 600, 0, -30, 40, 0, 30, 30, 0, -250, 600, 0);
32506}
32507```"###]
32508/// <h2>Parameters</h2>
32509///
32510#[doc = r##"<code>resolution</code> resolution of the curves
32511
32512"##]
32513///
32514
32515pub static curveDetail: CurveDetailInternalType = CurveDetailInternalType;
32516#[doc(hidden)]
32517pub struct CurveDetailInternalType;
32518
32519
32520#[wasm_bindgen]
32521extern {
32522    #[wasm_bindgen(js_name = "curveDetail")]
32523    fn curveDetail1166007069(_ : f64, ) ;
32524}
32525
32526#[doc(hidden)]
32527impl FnOnce<(f64,)> for CurveDetailInternalType {
32528    type Output = ();
32529    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
32530        curveDetail1166007069.call(args)
32531    }
32532}
32533
32534#[doc(hidden)]
32535impl FnMut<(f64,)> for CurveDetailInternalType {
32536    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
32537        curveDetail1166007069.call(args)
32538    }
32539}
32540
32541#[doc(hidden)]
32542impl Fn<(f64,)> for CurveDetailInternalType {
32543    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
32544        curveDetail1166007069.call(args)
32545    }
32546}
32547#[doc=r##"<p>Modifies the quality of forms created with <a href="#/p5/curve">curve()</a>
32548and <a href="#/p5/curveVertex">curveVertex()</a>.The parameter tightness
32549determines how the curve fits to the vertex points. The value 0.0 is the
32550default value for tightness (this value defines the curves to be Catmull-Rom
32551splines) and the value 1.0 connects all the points with straight lines.
32552Values within the range -5.0 and 5.0 will deform the curves but will leave
32553them recognizable and as values increase in magnitude, they will continue to deform.</p>
32554"##]
32555///<h2>Examples</h2>
32556///
32557
32558#[doc=r###"```rust
32559// Move the mouse left and right to see the curve change
32560function setup() {
32561  createCanvas(100, 100);
32562  noFill();
32563}
32564
32565function draw() {
32566  background(204);
32567  let t = map(mouseX, 0, width, -5, 5);
32568  curveTightness(t);
32569  beginShape();
32570  curveVertex(10, 26);
32571  curveVertex(10, 26);
32572  curveVertex(83, 24);
32573  curveVertex(83, 61);
32574  curveVertex(25, 65);
32575  curveVertex(25, 65);
32576  endShape();
32577}
32578```"###]
32579/// <h2>Parameters</h2>
32580///
32581#[doc = r##"<code>amount</code> amount of deformation from the original vertices
32582
32583"##]
32584///
32585
32586pub static curveTightness: CurveTightnessInternalType = CurveTightnessInternalType;
32587#[doc(hidden)]
32588pub struct CurveTightnessInternalType;
32589
32590
32591#[wasm_bindgen]
32592extern {
32593    #[wasm_bindgen(js_name = "curveTightness")]
32594    fn curveTightness891210425(_ : f64, ) ;
32595}
32596
32597#[doc(hidden)]
32598impl FnOnce<(f64,)> for CurveTightnessInternalType {
32599    type Output = ();
32600    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
32601        curveTightness891210425.call(args)
32602    }
32603}
32604
32605#[doc(hidden)]
32606impl FnMut<(f64,)> for CurveTightnessInternalType {
32607    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
32608        curveTightness891210425.call(args)
32609    }
32610}
32611
32612#[doc(hidden)]
32613impl Fn<(f64,)> for CurveTightnessInternalType {
32614    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
32615        curveTightness891210425.call(args)
32616    }
32617}
32618#[doc=r##"<p>Evaluates the curve at position t for points a, b, c, d.
32619The parameter t varies between 0 and 1, a and d are control points
32620of the curve, and b and c are the start and end points of the curve.
32621This can be done once with the x coordinates and a second time
32622with the y coordinates to get the location of a curve at t.</p>
32623"##]
32624///<h2>Examples</h2>
32625///
32626
32627#[doc=r###"```rust
32628noFill();
32629curve(5, 26, 5, 26, 73, 24, 73, 61);
32630curve(5, 26, 73, 24, 73, 61, 15, 65);
32631fill(255);
32632ellipseMode(CENTER);
32633let steps = 6;
32634for (let i = 0; i <= steps; i++) {
32635  let t = i / steps;
32636  let x = curvePoint(5, 5, 73, 73, t);
32637  let y = curvePoint(26, 26, 24, 61, t);
32638  ellipse(x, y, 5, 5);
32639  x = curvePoint(5, 73, 73, 15, t);
32640  y = curvePoint(26, 24, 61, 65, t);
32641  ellipse(x, y, 5, 5);
32642}
32643```"###]
32644/// <h2>Parameters</h2>
32645///
32646#[doc = r##"<code>a</code> coordinate of first control point of the curve
32647
32648"##]
32649///
32650///
32651#[doc = r##"<code>b</code> coordinate of first point
32652
32653"##]
32654///
32655///
32656#[doc = r##"<code>c</code> coordinate of second point
32657
32658"##]
32659///
32660///
32661#[doc = r##"<code>d</code> coordinate of second control point
32662
32663"##]
32664///
32665///
32666#[doc = r##"<code>t</code> value between 0 and 1
32667
32668"##]
32669///
32670
32671pub static curvePoint: CurvePointInternalType = CurvePointInternalType;
32672#[doc(hidden)]
32673pub struct CurvePointInternalType;
32674
32675
32676#[wasm_bindgen]
32677extern {
32678    #[wasm_bindgen(js_name = "curvePoint")]
32679    fn curvePoint419357484(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) -> f64;
32680}
32681
32682#[doc(hidden)]
32683impl FnOnce<(f64,f64,f64,f64,f64,)> for CurvePointInternalType {
32684    type Output = f64;
32685    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32686        curvePoint419357484.call(args)
32687    }
32688}
32689
32690#[doc(hidden)]
32691impl FnMut<(f64,f64,f64,f64,f64,)> for CurvePointInternalType {
32692    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32693        curvePoint419357484.call(args)
32694    }
32695}
32696
32697#[doc(hidden)]
32698impl Fn<(f64,f64,f64,f64,f64,)> for CurvePointInternalType {
32699    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32700        curvePoint419357484.call(args)
32701    }
32702}
32703#[doc=r##"<p>Evaluates the tangent to the curve at position t for points a, b, c, d.
32704The parameter t varies between 0 and 1, a and d are points on the curve,
32705and b and c are the control points.</p>
32706"##]
32707///<h2>Examples</h2>
32708///
32709
32710#[doc=r###"```rust
32711noFill();
32712curve(5, 26, 73, 24, 73, 61, 15, 65);
32713let steps = 6;
32714for (let i = 0; i <= steps; i++) {
32715  let t = i / steps;
32716  let x = curvePoint(5, 73, 73, 15, t);
32717  let y = curvePoint(26, 24, 61, 65, t);
32718  //ellipse(x, y, 5, 5);
32719  let tx = curveTangent(5, 73, 73, 15, t);
32720  let ty = curveTangent(26, 24, 61, 65, t);
32721  let a = atan2(ty, tx);
32722  a -= PI / 2.0;
32723  line(x, y, cos(a) * 8 + x, sin(a) * 8 + y);
32724}
32725```"###]
32726/// <h2>Parameters</h2>
32727///
32728#[doc = r##"<code>a</code> coordinate of first control point
32729
32730"##]
32731///
32732///
32733#[doc = r##"<code>b</code> coordinate of first point on the curve
32734
32735"##]
32736///
32737///
32738#[doc = r##"<code>c</code> coordinate of second point on the curve
32739
32740"##]
32741///
32742///
32743#[doc = r##"<code>d</code> coordinate of second conrol point
32744
32745"##]
32746///
32747///
32748#[doc = r##"<code>t</code> value between 0 and 1
32749
32750"##]
32751///
32752
32753pub static curveTangent: CurveTangentInternalType = CurveTangentInternalType;
32754#[doc(hidden)]
32755pub struct CurveTangentInternalType;
32756
32757
32758#[wasm_bindgen]
32759extern {
32760    #[wasm_bindgen(js_name = "curveTangent")]
32761    fn curveTangent2379488461(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) -> f64;
32762}
32763
32764#[doc(hidden)]
32765impl FnOnce<(f64,f64,f64,f64,f64,)> for CurveTangentInternalType {
32766    type Output = f64;
32767    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32768        curveTangent2379488461.call(args)
32769    }
32770}
32771
32772#[doc(hidden)]
32773impl FnMut<(f64,f64,f64,f64,f64,)> for CurveTangentInternalType {
32774    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32775        curveTangent2379488461.call(args)
32776    }
32777}
32778
32779#[doc(hidden)]
32780impl Fn<(f64,f64,f64,f64,f64,)> for CurveTangentInternalType {
32781    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
32782        curveTangent2379488461.call(args)
32783    }
32784}
32785#[doc=r##"<p>The <a href="#/p5/keyPressed">keyPressed()</a> function is called once every time a key is pressed. The
32786keyCode for the key that was pressed is stored in the <a href="#/p5/keyCode">keyCode</a> variable.</p>
32787<p>For non-ASCII keys, use the keyCode variable. You can check if the keyCode
32788equals BACKSPACE, DELETE, ENTER, RETURN, TAB, ESCAPE, SHIFT, CONTROL,
32789OPTION, ALT, UP_ARROW, DOWN_ARROW, LEFT_ARROW, RIGHT_ARROW.</p>
32790<p>For ASCII keys, the key that was pressed is stored in the key variable. However, it
32791does not distinguish between uppercase and lowercase. For this reason, it
32792is recommended to use <a href="#/p5/keyTyped">keyTyped()</a> to read the key variable, in which the
32793case of the variable will be distinguished.</p>
32794<p>Because of how operating systems handle key repeats, holding down a key
32795may cause multiple calls to <a href="#/p5/keyTyped">keyTyped()</a> (and <a href="#/p5/keyReleased">keyReleased()</a> as well). The
32796rate of repeat is set by the operating system and how each computer is
32797configured.<br><br>
32798Browsers may have different default
32799behaviors attached to various key events. To prevent any default
32800behavior for this event, add "return false" to the end of the method.</p>
32801"##]
32802///<h2>Examples</h2>
32803///
32804
32805#[doc=r###"```rust
32806let value = 0;
32807function draw() {
32808  fill(value);
32809  rect(25, 25, 50, 50);
32810}
32811function keyPressed() {
32812  if (value === 0) {
32813    value = 255;
32814  } else {
32815    value = 0;
32816  }
32817}
32818```"###]
32819#[doc=r###"```rust
32820let value = 0;
32821function draw() {
32822  fill(value);
32823  rect(25, 25, 50, 50);
32824}
32825function keyPressed() {
32826  if (keyCode === LEFT_ARROW) {
32827    value = 255;
32828  } else if (keyCode === RIGHT_ARROW) {
32829    value = 0;
32830  }
32831}
32832```"###]
32833#[doc=r###"```rust
32834function keyPressed() {
32835  // Do something
32836  return false; // prevent any default behaviour
32837}
32838```"###]
32839
32840pub static keyPressed: KeyPressedInternalType = KeyPressedInternalType;
32841#[doc(hidden)]
32842pub struct KeyPressedInternalType;
32843
32844
32845#[wasm_bindgen]
32846extern {
32847    #[wasm_bindgen(js_name = "keyPressed")]
32848    fn keyPressed160435629() ;
32849}
32850
32851#[doc(hidden)]
32852impl FnOnce<()> for KeyPressedInternalType {
32853    type Output = ();
32854    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
32855        keyPressed160435629.call(args)
32856    }
32857}
32858
32859#[doc(hidden)]
32860impl FnMut<()> for KeyPressedInternalType {
32861    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
32862        keyPressed160435629.call(args)
32863    }
32864}
32865
32866#[doc(hidden)]
32867impl Fn<()> for KeyPressedInternalType {
32868    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
32869        keyPressed160435629.call(args)
32870    }
32871}
32872#[doc=r##"<p>The <a href="#/p5/keyReleased">keyReleased()</a> function is called once every time a key is released.
32873See <a href="#/p5/key">key</a> and <a href="#/p5/keyCode">keyCode</a> for more information.<br><br>
32874Browsers may have different default
32875behaviors attached to various key events. To prevent any default
32876behavior for this event, add "return false" to the end of the method.</p>
32877"##]
32878///<h2>Examples</h2>
32879///
32880
32881#[doc=r###"```rust
32882let value = 0;
32883function draw() {
32884  fill(value);
32885  rect(25, 25, 50, 50);
32886}
32887function keyReleased() {
32888  if (value === 0) {
32889    value = 255;
32890  } else {
32891    value = 0;
32892  }
32893  return false; // prevent any default behavior
32894}
32895```"###]
32896
32897pub static keyReleased: KeyReleasedInternalType = KeyReleasedInternalType;
32898#[doc(hidden)]
32899pub struct KeyReleasedInternalType;
32900
32901
32902#[wasm_bindgen]
32903extern {
32904    #[wasm_bindgen(js_name = "keyReleased")]
32905    fn keyReleased915948071() ;
32906}
32907
32908#[doc(hidden)]
32909impl FnOnce<()> for KeyReleasedInternalType {
32910    type Output = ();
32911    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
32912        keyReleased915948071.call(args)
32913    }
32914}
32915
32916#[doc(hidden)]
32917impl FnMut<()> for KeyReleasedInternalType {
32918    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
32919        keyReleased915948071.call(args)
32920    }
32921}
32922
32923#[doc(hidden)]
32924impl Fn<()> for KeyReleasedInternalType {
32925    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
32926        keyReleased915948071.call(args)
32927    }
32928}
32929#[doc=r##"<p>The <a href="#/p5/keyTyped">keyTyped()</a> function is called once every time a key is pressed, but
32930action keys such as Backspace, Delete, Ctrl, Shift, and Alt are ignored. If you are trying to detect
32931a keyCode for one of these keys, use the <a href="#/p5/keyPressed">keyPressed()</a> function instead.
32932The most recent key typed will be stored in the key variable.</p>
32933<p>Because of how operating systems handle key repeats, holding down a key
32934will cause multiple calls to <a href="#/p5/keyTyped">keyTyped()</a> (and <a href="#/p5/keyReleased">keyReleased()</a> as well). The
32935rate of repeat is set by the operating system and how each computer is
32936configured.<br><br>
32937Browsers may have different default behaviors attached to various key
32938events. To prevent any default behavior for this event, add "return false"
32939to the end of the method.</p>
32940"##]
32941///<h2>Examples</h2>
32942///
32943
32944#[doc=r###"```rust
32945let value = 0;
32946function draw() {
32947  fill(value);
32948  rect(25, 25, 50, 50);
32949}
32950function keyTyped() {
32951  if (key === 'a') {
32952    value = 255;
32953  } else if (key === 'b') {
32954    value = 0;
32955  }
32956  // uncomment to prevent any default behavior
32957  // return false;
32958}
32959```"###]
32960
32961pub static keyTyped: KeyTypedInternalType = KeyTypedInternalType;
32962#[doc(hidden)]
32963pub struct KeyTypedInternalType;
32964
32965
32966#[wasm_bindgen]
32967extern {
32968    #[wasm_bindgen(js_name = "keyTyped")]
32969    fn keyTyped861305108() ;
32970}
32971
32972#[doc(hidden)]
32973impl FnOnce<()> for KeyTypedInternalType {
32974    type Output = ();
32975    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
32976        keyTyped861305108.call(args)
32977    }
32978}
32979
32980#[doc(hidden)]
32981impl FnMut<()> for KeyTypedInternalType {
32982    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
32983        keyTyped861305108.call(args)
32984    }
32985}
32986
32987#[doc(hidden)]
32988impl Fn<()> for KeyTypedInternalType {
32989    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
32990        keyTyped861305108.call(args)
32991    }
32992}
32993#[doc=r##"<p>The <a href="#/p5/keyIsDown">keyIsDown()</a> function checks if the key is currently down, i.e. pressed.
32994It can be used if you have an object that moves, and you want several keys
32995to be able to affect its behaviour simultaneously, such as moving a
32996sprite diagonally. You can put in any number representing the keyCode of
32997the key, or use any of the variable <a href="#/p5/keyCode">keyCode</a> names listed
32998<a href="http://p5js.org/reference/#p5/keyCode">here</a>.</p>
32999"##]
33000///<h2>Examples</h2>
33001///
33002
33003#[doc=r###"```rust
33004let x = 100;
33005let y = 100;
33006
33007function setup() {
33008  createCanvas(512, 512);
33009  fill(255, 0, 0);
33010}
33011
33012function draw() {
33013  if (keyIsDown(LEFT_ARROW)) {
33014    x -= 5;
33015  }
33016
33017  if (keyIsDown(RIGHT_ARROW)) {
33018    x += 5;
33019  }
33020
33021  if (keyIsDown(UP_ARROW)) {
33022    y -= 5;
33023  }
33024
33025  if (keyIsDown(DOWN_ARROW)) {
33026    y += 5;
33027  }
33028
33029  clear();
33030  ellipse(x, y, 50, 50);
33031}
33032```"###]
33033#[doc=r###"```rust
33034let diameter = 50;
33035
33036function setup() {
33037  createCanvas(512, 512);
33038}
33039
33040function draw() {
33041  // 107 and 187 are keyCodes for "+"
33042  if (keyIsDown(107) || keyIsDown(187)) {
33043    diameter += 1;
33044  }
33045
33046  // 109 and 189 are keyCodes for "-"
33047  if (keyIsDown(109) || keyIsDown(189)) {
33048    diameter -= 1;
33049  }
33050
33051  clear();
33052  fill(255, 0, 0);
33053  ellipse(50, 50, diameter, diameter);
33054}
33055```"###]
33056/// <h2>Parameters</h2>
33057///
33058#[doc = r##"<code>code</code> The key to check for.
33059
33060"##]
33061///
33062
33063pub static keyIsDown: KeyIsDownInternalType = KeyIsDownInternalType;
33064#[doc(hidden)]
33065pub struct KeyIsDownInternalType;
33066
33067
33068#[wasm_bindgen]
33069extern {
33070    #[wasm_bindgen(js_name = "keyIsDown")]
33071    fn keyIsDown1775458590(_ : f64, ) -> bool;
33072}
33073
33074#[doc(hidden)]
33075impl FnOnce<(f64,)> for KeyIsDownInternalType {
33076    type Output = bool;
33077    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
33078        keyIsDown1775458590.call(args)
33079    }
33080}
33081
33082#[doc(hidden)]
33083impl FnMut<(f64,)> for KeyIsDownInternalType {
33084    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
33085        keyIsDown1775458590.call(args)
33086    }
33087}
33088
33089#[doc(hidden)]
33090impl Fn<(f64,)> for KeyIsDownInternalType {
33091    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
33092        keyIsDown1775458590.call(args)
33093    }
33094}
33095#[doc=r##"<p>Loads a JSON file from a file or a URL, and returns an Object.
33096Note that even if the JSON file contains an Array, an Object will be
33097returned with index numbers as keys.</p>
33098<p>This method is asynchronous, meaning it may not finish before the next
33099line in your sketch is executed. JSONP is supported via a polyfill and you
33100can pass in as the second argument an object with definitions of the json
33101callback following the syntax specified <a href="https://github.com/camsong/
33102fetch-jsonp">here</a>.</p>
33103<p>This method is suitable for fetching files up to size of 64MB.</p>
33104"##]
33105///<h2>Examples</h2>
33106///
33107
33108#[doc=r###"```rust
33109// Examples use USGS Earthquake API:
33110//   https://earthquake.usgs.gov/fdsnws/event/1/#methods
33111let earthquakes;
33112function preload() {
33113  // Get the most recent earthquake in the database
33114  let url =
33115   'https://earthquake.usgs.gov/earthquakes/feed/v1.0/' +
33116    'summary/all_day.geojson';
33117  earthquakes = loadJSON(url);
33118}
33119
33120function setup() {
33121  noLoop();
33122}
33123
33124function draw() {
33125  background(200);
33126  // Get the magnitude and name of the earthquake out of the loaded JSON
33127  let earthquakeMag = earthquakes.features[0].properties.mag;
33128  let earthquakeName = earthquakes.features[0].properties.place;
33129  ellipse(width / 2, height / 2, earthquakeMag * 10, earthquakeMag * 10);
33130  textAlign(CENTER);
33131  text(earthquakeName, 0, height - 30, width, 30);
33132}
33133```"###]
33134#[doc=r###"```rust
33135function setup() {
33136  noLoop();
33137  let url =
33138   'https://earthquake.usgs.gov/earthquakes/feed/v1.0/' +
33139    'summary/all_day.geojson';
33140  loadJSON(url, drawEarthquake);
33141}
33142
33143function draw() {
33144  background(200);
33145}
33146
33147function drawEarthquake(earthquakes) {
33148  // Get the magnitude and name of the earthquake out of the loaded JSON
33149  let earthquakeMag = earthquakes.features[0].properties.mag;
33150  let earthquakeName = earthquakes.features[0].properties.place;
33151  ellipse(width / 2, height / 2, earthquakeMag * 10, earthquakeMag * 10);
33152  textAlign(CENTER);
33153  text(earthquakeName, 0, height - 30, width, 30);
33154}
33155```"###]
33156/// <h2>Overloads</h2>
33157///
33158#[doc = r##"<code>path</code> name of the file or url to load
33159
33160"##]
33161///
33162///
33163#[doc = r##"<code>jsonpOptions?</code> options object for jsonp related settings
33164
33165"##]
33166///
33167///
33168#[doc = r##"<code>datatype?</code> "json" or "jsonp"
33169
33170"##]
33171///
33172///
33173#[doc = r##"<code>callback?</code> function to be executed after
33174                                   loadJSON() completes, data is passed
33175                                   in as first argument
33176
33177"##]
33178///
33179///
33180#[doc = r##"<code>errorCallback?</code> function to be executed if
33181                                   there is an error, response is passed
33182                                   in as first argument
33183
33184"##]
33185///
33186///
33187/// ---
33188///
33189///
33190#[doc = r##"<code>path</code> name of the file or url to load
33191
33192"##]
33193///
33194///
33195#[doc = r##"<code>datatype</code> "json" or "jsonp"
33196
33197"##]
33198///
33199///
33200#[doc = r##"<code>callback?</code> function to be executed after
33201                                   loadJSON() completes, data is passed
33202                                   in as first argument
33203
33204"##]
33205///
33206///
33207#[doc = r##"<code>errorCallback?</code> function to be executed if
33208                                   there is an error, response is passed
33209                                   in as first argument
33210
33211"##]
33212///
33213///
33214/// ---
33215///
33216///
33217#[doc = r##"<code>path</code> name of the file or url to load
33218
33219"##]
33220///
33221///
33222#[doc = r##"<code>callback</code> function to be executed after
33223                                   loadJSON() completes, data is passed
33224                                   in as first argument
33225
33226"##]
33227///
33228///
33229#[doc = r##"<code>errorCallback?</code> function to be executed if
33230                                   there is an error, response is passed
33231                                   in as first argument
33232
33233"##]
33234///
33235///
33236/// ---
33237///
33238
33239pub static loadJSON: LoadJsonInternalType = LoadJsonInternalType;
33240#[doc(hidden)]
33241pub struct LoadJsonInternalType;
33242
33243
33244#[wasm_bindgen]
33245extern {
33246    #[wasm_bindgen(js_name = "loadJSON")]
33247    fn loadJSON3821504875(_ : & str, _ : JsValue, _ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Object;
33248}
33249
33250#[doc(hidden)]
33251impl FnOnce<(&'_ str,JsValue,&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33252    type Output = js_sys::Object;
33253    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33254        loadJSON3821504875.call(args)
33255    }
33256}
33257
33258#[doc(hidden)]
33259impl FnMut<(&'_ str,JsValue,&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33260    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33261        loadJSON3821504875.call(args)
33262    }
33263}
33264
33265#[doc(hidden)]
33266impl Fn<(&'_ str,JsValue,&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33267    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33268        loadJSON3821504875.call(args)
33269    }
33270}
33271
33272#[wasm_bindgen]
33273extern {
33274    #[wasm_bindgen(js_name = "loadJSON")]
33275    fn loadJSON521465445(_ : & str, _ : JsValue, _ : & str, _ : js_sys::Function, ) -> js_sys::Object;
33276}
33277
33278#[doc(hidden)]
33279impl FnOnce<(&'_ str,JsValue,&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33280    type Output = js_sys::Object;
33281    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,&'_ str,js_sys::Function,)) -> Self::Output {
33282        loadJSON521465445.call(args)
33283    }
33284}
33285
33286#[doc(hidden)]
33287impl FnMut<(&'_ str,JsValue,&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33288    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,&'_ str,js_sys::Function,)) -> Self::Output {
33289        loadJSON521465445.call(args)
33290    }
33291}
33292
33293#[doc(hidden)]
33294impl Fn<(&'_ str,JsValue,&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33295    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,&'_ str,js_sys::Function,)) -> Self::Output {
33296        loadJSON521465445.call(args)
33297    }
33298}
33299
33300#[wasm_bindgen]
33301extern {
33302    #[wasm_bindgen(js_name = "loadJSON")]
33303    fn loadJSON1949232515(_ : & str, _ : JsValue, _ : & str, ) -> js_sys::Object;
33304}
33305
33306#[doc(hidden)]
33307impl FnOnce<(&'_ str,JsValue,&'_ str,)> for LoadJsonInternalType {
33308    type Output = js_sys::Object;
33309    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,&'_ str,)) -> Self::Output {
33310        loadJSON1949232515.call(args)
33311    }
33312}
33313
33314#[doc(hidden)]
33315impl FnMut<(&'_ str,JsValue,&'_ str,)> for LoadJsonInternalType {
33316    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,&'_ str,)) -> Self::Output {
33317        loadJSON1949232515.call(args)
33318    }
33319}
33320
33321#[doc(hidden)]
33322impl Fn<(&'_ str,JsValue,&'_ str,)> for LoadJsonInternalType {
33323    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,&'_ str,)) -> Self::Output {
33324        loadJSON1949232515.call(args)
33325    }
33326}
33327
33328#[wasm_bindgen]
33329extern {
33330    #[wasm_bindgen(js_name = "loadJSON")]
33331    fn loadJSON2155205768(_ : & str, _ : JsValue, ) -> js_sys::Object;
33332}
33333
33334#[doc(hidden)]
33335impl FnOnce<(&'_ str,JsValue,)> for LoadJsonInternalType {
33336    type Output = js_sys::Object;
33337    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,)) -> Self::Output {
33338        loadJSON2155205768.call(args)
33339    }
33340}
33341
33342#[doc(hidden)]
33343impl FnMut<(&'_ str,JsValue,)> for LoadJsonInternalType {
33344    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,)) -> Self::Output {
33345        loadJSON2155205768.call(args)
33346    }
33347}
33348
33349#[doc(hidden)]
33350impl Fn<(&'_ str,JsValue,)> for LoadJsonInternalType {
33351    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,)) -> Self::Output {
33352        loadJSON2155205768.call(args)
33353    }
33354}
33355
33356#[wasm_bindgen]
33357extern {
33358    #[wasm_bindgen(js_name = "loadJSON")]
33359    fn loadJSON486731804(_ : & str, ) -> js_sys::Object;
33360}
33361
33362#[doc(hidden)]
33363impl FnOnce<(&'_ str,)> for LoadJsonInternalType {
33364    type Output = js_sys::Object;
33365    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
33366        loadJSON486731804.call(args)
33367    }
33368}
33369
33370#[doc(hidden)]
33371impl FnMut<(&'_ str,)> for LoadJsonInternalType {
33372    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
33373        loadJSON486731804.call(args)
33374    }
33375}
33376
33377#[doc(hidden)]
33378impl Fn<(&'_ str,)> for LoadJsonInternalType {
33379    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
33380        loadJSON486731804.call(args)
33381    }
33382}
33383
33384#[wasm_bindgen]
33385extern {
33386    #[wasm_bindgen(js_name = "loadJSON")]
33387    fn loadJSON2960559718(_ : & str, _ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Object;
33388}
33389
33390#[doc(hidden)]
33391impl FnOnce<(&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33392    type Output = js_sys::Object;
33393    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33394        loadJSON2960559718.call(args)
33395    }
33396}
33397
33398#[doc(hidden)]
33399impl FnMut<(&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33400    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33401        loadJSON2960559718.call(args)
33402    }
33403}
33404
33405#[doc(hidden)]
33406impl Fn<(&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33407    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33408        loadJSON2960559718.call(args)
33409    }
33410}
33411
33412#[wasm_bindgen]
33413extern {
33414    #[wasm_bindgen(js_name = "loadJSON")]
33415    fn loadJSON729990816(_ : & str, _ : & str, _ : js_sys::Function, ) -> js_sys::Object;
33416}
33417
33418#[doc(hidden)]
33419impl FnOnce<(&'_ str,&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33420    type Output = js_sys::Object;
33421    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
33422        loadJSON729990816.call(args)
33423    }
33424}
33425
33426#[doc(hidden)]
33427impl FnMut<(&'_ str,&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33428    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
33429        loadJSON729990816.call(args)
33430    }
33431}
33432
33433#[doc(hidden)]
33434impl Fn<(&'_ str,&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33435    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
33436        loadJSON729990816.call(args)
33437    }
33438}
33439
33440#[wasm_bindgen]
33441extern {
33442    #[wasm_bindgen(js_name = "loadJSON")]
33443    fn loadJSON2503003795(_ : & str, _ : & str, ) -> js_sys::Object;
33444}
33445
33446#[doc(hidden)]
33447impl FnOnce<(&'_ str,&'_ str,)> for LoadJsonInternalType {
33448    type Output = js_sys::Object;
33449    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
33450        loadJSON2503003795.call(args)
33451    }
33452}
33453
33454#[doc(hidden)]
33455impl FnMut<(&'_ str,&'_ str,)> for LoadJsonInternalType {
33456    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
33457        loadJSON2503003795.call(args)
33458    }
33459}
33460
33461#[doc(hidden)]
33462impl Fn<(&'_ str,&'_ str,)> for LoadJsonInternalType {
33463    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
33464        loadJSON2503003795.call(args)
33465    }
33466}
33467
33468#[wasm_bindgen]
33469extern {
33470    #[wasm_bindgen(js_name = "loadJSON")]
33471    fn loadJSON2328940690(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Object;
33472}
33473
33474#[doc(hidden)]
33475impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33476    type Output = js_sys::Object;
33477    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33478        loadJSON2328940690.call(args)
33479    }
33480}
33481
33482#[doc(hidden)]
33483impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33484    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33485        loadJSON2328940690.call(args)
33486    }
33487}
33488
33489#[doc(hidden)]
33490impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadJsonInternalType {
33491    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33492        loadJSON2328940690.call(args)
33493    }
33494}
33495
33496#[wasm_bindgen]
33497extern {
33498    #[wasm_bindgen(js_name = "loadJSON")]
33499    fn loadJSON310329974(_ : & str, _ : js_sys::Function, ) -> js_sys::Object;
33500}
33501
33502#[doc(hidden)]
33503impl FnOnce<(&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33504    type Output = js_sys::Object;
33505    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
33506        loadJSON310329974.call(args)
33507    }
33508}
33509
33510#[doc(hidden)]
33511impl FnMut<(&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33512    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
33513        loadJSON310329974.call(args)
33514    }
33515}
33516
33517#[doc(hidden)]
33518impl Fn<(&'_ str,js_sys::Function,)> for LoadJsonInternalType {
33519    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
33520        loadJSON310329974.call(args)
33521    }
33522}
33523#[doc=r##"<p>Reads the contents of a file and creates a String array of its individual
33524lines. If the name of the file is used as the parameter, as in the above
33525example, the file must be located in the sketch directory/folder.</p>
33526<p>Alternatively, the file maybe be loaded from anywhere on the local
33527computer using an absolute path (something that starts with / on Unix and
33528Linux, or a drive letter on Windows), or the filename parameter can be a
33529URL for a file found on a network.</p>
33530<p>This method is asynchronous, meaning it may not finish before the next
33531line in your sketch is executed.</p>
33532<p>This method is suitable for fetching files up to size of 64MB.</p>
33533"##]
33534///<h2>Examples</h2>
33535///
33536
33537#[doc=r###"```rust
33538let result;
33539function preload() {
33540  result = loadStrings('assets/test.txt');
33541}
33542
33543function setup() {
33544  background(200);
33545  text(random(result), 10, 10, 80, 80);
33546}
33547```"###]
33548#[doc=r###"```rust
33549function setup() {
33550  loadStrings('assets/test.txt', pickString);
33551}
33552
33553function pickString(result) {
33554  background(200);
33555  text(random(result), 10, 10, 80, 80);
33556}
33557```"###]
33558/// <h2>Parameters</h2>
33559///
33560#[doc = r##"<code>filename</code> name of the file or url to load
33561
33562"##]
33563///
33564///
33565#[doc = r##"<code>callback?</code> function to be executed after loadStrings()
33566                              completes, Array is passed in as first
33567                              argument
33568
33569"##]
33570///
33571///
33572#[doc = r##"<code>errorCallback?</code> function to be executed if
33573                              there is an error, response is passed
33574                              in as first argument
33575
33576"##]
33577///
33578
33579pub static loadStrings: LoadStringsInternalType = LoadStringsInternalType;
33580#[doc(hidden)]
33581pub struct LoadStringsInternalType;
33582
33583
33584#[wasm_bindgen]
33585extern {
33586    #[wasm_bindgen(js_name = "loadStrings")]
33587    fn loadStrings924857752(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) ;
33588}
33589
33590#[doc(hidden)]
33591impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadStringsInternalType {
33592    type Output = ();
33593    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33594        loadStrings924857752.call(args)
33595    }
33596}
33597
33598#[doc(hidden)]
33599impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadStringsInternalType {
33600    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33601        loadStrings924857752.call(args)
33602    }
33603}
33604
33605#[doc(hidden)]
33606impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadStringsInternalType {
33607    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33608        loadStrings924857752.call(args)
33609    }
33610}
33611
33612#[wasm_bindgen]
33613extern {
33614    #[wasm_bindgen(js_name = "loadStrings")]
33615    fn loadStrings1838297068(_ : & str, _ : js_sys::Function, ) ;
33616}
33617
33618#[doc(hidden)]
33619impl FnOnce<(&'_ str,js_sys::Function,)> for LoadStringsInternalType {
33620    type Output = ();
33621    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
33622        loadStrings1838297068.call(args)
33623    }
33624}
33625
33626#[doc(hidden)]
33627impl FnMut<(&'_ str,js_sys::Function,)> for LoadStringsInternalType {
33628    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
33629        loadStrings1838297068.call(args)
33630    }
33631}
33632
33633#[doc(hidden)]
33634impl Fn<(&'_ str,js_sys::Function,)> for LoadStringsInternalType {
33635    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
33636        loadStrings1838297068.call(args)
33637    }
33638}
33639
33640#[wasm_bindgen]
33641extern {
33642    #[wasm_bindgen(js_name = "loadStrings")]
33643    fn loadStrings13108207(_ : & str, ) ;
33644}
33645
33646#[doc(hidden)]
33647impl FnOnce<(&'_ str,)> for LoadStringsInternalType {
33648    type Output = ();
33649    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
33650        loadStrings13108207.call(args)
33651    }
33652}
33653
33654#[doc(hidden)]
33655impl FnMut<(&'_ str,)> for LoadStringsInternalType {
33656    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
33657        loadStrings13108207.call(args)
33658    }
33659}
33660
33661#[doc(hidden)]
33662impl Fn<(&'_ str,)> for LoadStringsInternalType {
33663    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
33664        loadStrings13108207.call(args)
33665    }
33666}
33667#[doc=r##"<p>Reads the contents of a file or URL and creates a <a href="#/p5.Table">p5.Table</a> object with
33668its values. If a file is specified, it must be located in the sketch's
33669"data" folder. The filename parameter can also be a URL to a file found
33670online. By default, the file is assumed to be comma-separated (in CSV
33671format). Table only looks for a header row if the 'header' option is
33672included.</p>
33673<p>This method is asynchronous, meaning it may not finish before the next
33674line in your sketch is executed. Calling <a href="#/p5/loadTable">loadTable()</a> inside <a href="#/p5/preload">preload()</a>
33675guarantees to complete the operation before <a href="#/p5/setup">setup()</a> and <a href="#/p5/draw">draw()</a> are called.
33676Outside of <a href="#/p5/preload">preload()</a>, you may supply a callback function to handle the
33677object:</p>
33678<p>All files loaded and saved use UTF-8 encoding. This method is suitable for fetching files up to size of 64MB.</p>
33679"##]
33680///<h2>Examples</h2>
33681///
33682
33683#[doc=r###"```rust
33684// Given the following CSV file called "mammals.csv"
33685// located in the project's "assets" folder:
33686//
33687// id,species,name
33688// 0,Capra hircus,Goat
33689// 1,Panthera pardus,Leopard
33690// 2,Equus zebra,Zebra
33691
33692let table;
33693
33694function preload() {
33695  //my table is comma separated value "csv"
33696  //and has a header specifying the columns labels
33697  table = loadTable('assets/mammals.csv', 'csv', 'header');
33698  //the file can be remote
33699  //table = loadTable("http://p5js.org/reference/assets/mammals.csv",
33700  //                  "csv", "header");
33701}
33702
33703function setup() {
33704  //count the columns
33705  print(table.getRowCount() + ' total rows in table');
33706  print(table.getColumnCount() + ' total columns in table');
33707
33708  print(table.getColumn('name'));
33709  //["Goat", "Leopard", "Zebra"]
33710
33711  //cycle through the table
33712  for (let r = 0; r < table.getRowCount(); r++)
33713    for (let c = 0; c < table.getColumnCount(); c++) {
33714      print(table.getString(r, c));
33715    }
33716}
33717```"###]
33718/// <h2>Parameters</h2>
33719///
33720#[doc = r##"<code>filename</code> name of the file or URL to load
33721
33722"##]
33723///
33724///
33725#[doc = r##"<code>extension?</code> parse the table by comma-separated values "csv", semicolon-separated
33726                                     values "ssv", or tab-separated values "tsv"
33727
33728"##]
33729///
33730///
33731#[doc = r##"<code>header?</code> "header" to indicate table has header row
33732
33733"##]
33734///
33735///
33736#[doc = r##"<code>callback?</code> function to be executed after
33737                                     loadTable() completes. On success, the
33738                                     Table object is passed in as the
33739                                     first argument.
33740
33741"##]
33742///
33743///
33744#[doc = r##"<code>errorCallback?</code> function to be executed if
33745                                     there is an error, response is passed
33746                                     in as first argument
33747
33748"##]
33749///
33750
33751pub static loadTable: LoadTableInternalType = LoadTableInternalType;
33752#[doc(hidden)]
33753pub struct LoadTableInternalType;
33754
33755
33756#[wasm_bindgen]
33757extern {
33758    #[wasm_bindgen(js_name = "loadTable")]
33759    fn loadTable3473586981(_ : & str, _ : & str, _ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Object;
33760}
33761
33762#[doc(hidden)]
33763impl FnOnce<(&'_ str,&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadTableInternalType {
33764    type Output = js_sys::Object;
33765    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33766        loadTable3473586981.call(args)
33767    }
33768}
33769
33770#[doc(hidden)]
33771impl FnMut<(&'_ str,&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadTableInternalType {
33772    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33773        loadTable3473586981.call(args)
33774    }
33775}
33776
33777#[doc(hidden)]
33778impl Fn<(&'_ str,&'_ str,&'_ str,js_sys::Function,js_sys::Function,)> for LoadTableInternalType {
33779    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33780        loadTable3473586981.call(args)
33781    }
33782}
33783
33784#[wasm_bindgen]
33785extern {
33786    #[wasm_bindgen(js_name = "loadTable")]
33787    fn loadTable2650630685(_ : & str, _ : & str, _ : & str, _ : js_sys::Function, ) -> js_sys::Object;
33788}
33789
33790#[doc(hidden)]
33791impl FnOnce<(&'_ str,&'_ str,&'_ str,js_sys::Function,)> for LoadTableInternalType {
33792    type Output = js_sys::Object;
33793    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
33794        loadTable2650630685.call(args)
33795    }
33796}
33797
33798#[doc(hidden)]
33799impl FnMut<(&'_ str,&'_ str,&'_ str,js_sys::Function,)> for LoadTableInternalType {
33800    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
33801        loadTable2650630685.call(args)
33802    }
33803}
33804
33805#[doc(hidden)]
33806impl Fn<(&'_ str,&'_ str,&'_ str,js_sys::Function,)> for LoadTableInternalType {
33807    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,js_sys::Function,)) -> Self::Output {
33808        loadTable2650630685.call(args)
33809    }
33810}
33811
33812#[wasm_bindgen]
33813extern {
33814    #[wasm_bindgen(js_name = "loadTable")]
33815    fn loadTable761886391(_ : & str, _ : & str, _ : & str, ) -> js_sys::Object;
33816}
33817
33818#[doc(hidden)]
33819impl FnOnce<(&'_ str,&'_ str,&'_ str,)> for LoadTableInternalType {
33820    type Output = js_sys::Object;
33821    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
33822        loadTable761886391.call(args)
33823    }
33824}
33825
33826#[doc(hidden)]
33827impl FnMut<(&'_ str,&'_ str,&'_ str,)> for LoadTableInternalType {
33828    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
33829        loadTable761886391.call(args)
33830    }
33831}
33832
33833#[doc(hidden)]
33834impl Fn<(&'_ str,&'_ str,&'_ str,)> for LoadTableInternalType {
33835    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
33836        loadTable761886391.call(args)
33837    }
33838}
33839
33840#[wasm_bindgen]
33841extern {
33842    #[wasm_bindgen(js_name = "loadTable")]
33843    fn loadTable209300687(_ : & str, _ : & str, ) -> js_sys::Object;
33844}
33845
33846#[doc(hidden)]
33847impl FnOnce<(&'_ str,&'_ str,)> for LoadTableInternalType {
33848    type Output = js_sys::Object;
33849    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
33850        loadTable209300687.call(args)
33851    }
33852}
33853
33854#[doc(hidden)]
33855impl FnMut<(&'_ str,&'_ str,)> for LoadTableInternalType {
33856    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
33857        loadTable209300687.call(args)
33858    }
33859}
33860
33861#[doc(hidden)]
33862impl Fn<(&'_ str,&'_ str,)> for LoadTableInternalType {
33863    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
33864        loadTable209300687.call(args)
33865    }
33866}
33867
33868#[wasm_bindgen]
33869extern {
33870    #[wasm_bindgen(js_name = "loadTable")]
33871    fn loadTable1007926902(_ : & str, ) -> js_sys::Object;
33872}
33873
33874#[doc(hidden)]
33875impl FnOnce<(&'_ str,)> for LoadTableInternalType {
33876    type Output = js_sys::Object;
33877    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
33878        loadTable1007926902.call(args)
33879    }
33880}
33881
33882#[doc(hidden)]
33883impl FnMut<(&'_ str,)> for LoadTableInternalType {
33884    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
33885        loadTable1007926902.call(args)
33886    }
33887}
33888
33889#[doc(hidden)]
33890impl Fn<(&'_ str,)> for LoadTableInternalType {
33891    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
33892        loadTable1007926902.call(args)
33893    }
33894}
33895#[doc=r##"<p>Reads the contents of a file and creates an XML object with its values.
33896If the name of the file is used as the parameter, as in the above example,
33897the file must be located in the sketch directory/folder.</p>
33898<p>Alternatively, the file maybe be loaded from anywhere on the local
33899computer using an absolute path (something that starts with / on Unix and
33900Linux, or a drive letter on Windows), or the filename parameter can be a
33901URL for a file found on a network.</p>
33902<p>This method is asynchronous, meaning it may not finish before the next
33903line in your sketch is executed. Calling <a href="#/p5/loadXML">loadXML()</a> inside <a href="#/p5/preload">preload()</a>
33904guarantees to complete the operation before <a href="#/p5/setup">setup()</a> and <a href="#/p5/draw">draw()</a> are called.</p>
33905<p>Outside of <a href="#/p5/preload">preload()</a>, you may supply a callback function to handle the
33906object.</p>
33907<p>This method is suitable for fetching files up to size of 64MB.</p>
33908"##]
33909///<h2>Examples</h2>
33910///
33911
33912#[doc=r###"```rust
33913// The following short XML file called "mammals.xml" is parsed
33914// in the code below.
33915//
33916// 
33917// <mammals>
33918//   <animal id="0" species="Capra hircus">Goat</animal>
33919//   <animal id="1" species="Panthera pardus">Leopard</animal>
33920//   <animal id="2" species="Equus zebra">Zebra</animal>
33921// </mammals>
33922
33923let xml;
33924
33925function preload() {
33926  xml = loadXML('assets/mammals.xml');
33927}
33928
33929function setup() {
33930  let children = xml.getChildren('animal');
33931
33932  for (let i = 0; i < children.length; i++) {
33933    let id = children[i].getNum('id');
33934    let coloring = children[i].getString('species');
33935    let name = children[i].getContent();
33936    print(id + ', ' + coloring + ', ' + name);
33937  }
33938}
33939
33940// Sketch prints:
33941// 0, Capra hircus, Goat
33942// 1, Panthera pardus, Leopard
33943// 2, Equus zebra, Zebra
33944```"###]
33945/// <h2>Parameters</h2>
33946///
33947#[doc = r##"<code>filename</code> name of the file or URL to load
33948
33949"##]
33950///
33951///
33952#[doc = r##"<code>callback?</code> function to be executed after loadXML()
33953                              completes, XML object is passed in as
33954                              first argument
33955
33956"##]
33957///
33958///
33959#[doc = r##"<code>errorCallback?</code> function to be executed if
33960                              there is an error, response is passed
33961                              in as first argument
33962
33963"##]
33964///
33965
33966pub static loadXML: LoadXmlInternalType = LoadXmlInternalType;
33967#[doc(hidden)]
33968pub struct LoadXmlInternalType;
33969
33970
33971#[wasm_bindgen]
33972extern {
33973    #[wasm_bindgen(js_name = "loadXML")]
33974    fn loadXML3449664474(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Object;
33975}
33976
33977#[doc(hidden)]
33978impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadXmlInternalType {
33979    type Output = js_sys::Object;
33980    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33981        loadXML3449664474.call(args)
33982    }
33983}
33984
33985#[doc(hidden)]
33986impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadXmlInternalType {
33987    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33988        loadXML3449664474.call(args)
33989    }
33990}
33991
33992#[doc(hidden)]
33993impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadXmlInternalType {
33994    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
33995        loadXML3449664474.call(args)
33996    }
33997}
33998
33999#[wasm_bindgen]
34000extern {
34001    #[wasm_bindgen(js_name = "loadXML")]
34002    fn loadXML2621228502(_ : & str, _ : js_sys::Function, ) -> js_sys::Object;
34003}
34004
34005#[doc(hidden)]
34006impl FnOnce<(&'_ str,js_sys::Function,)> for LoadXmlInternalType {
34007    type Output = js_sys::Object;
34008    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34009        loadXML2621228502.call(args)
34010    }
34011}
34012
34013#[doc(hidden)]
34014impl FnMut<(&'_ str,js_sys::Function,)> for LoadXmlInternalType {
34015    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34016        loadXML2621228502.call(args)
34017    }
34018}
34019
34020#[doc(hidden)]
34021impl Fn<(&'_ str,js_sys::Function,)> for LoadXmlInternalType {
34022    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34023        loadXML2621228502.call(args)
34024    }
34025}
34026
34027#[wasm_bindgen]
34028extern {
34029    #[wasm_bindgen(js_name = "loadXML")]
34030    fn loadXML3170479037(_ : & str, ) -> js_sys::Object;
34031}
34032
34033#[doc(hidden)]
34034impl FnOnce<(&'_ str,)> for LoadXmlInternalType {
34035    type Output = js_sys::Object;
34036    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
34037        loadXML3170479037.call(args)
34038    }
34039}
34040
34041#[doc(hidden)]
34042impl FnMut<(&'_ str,)> for LoadXmlInternalType {
34043    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
34044        loadXML3170479037.call(args)
34045    }
34046}
34047
34048#[doc(hidden)]
34049impl Fn<(&'_ str,)> for LoadXmlInternalType {
34050    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
34051        loadXML3170479037.call(args)
34052    }
34053}
34054#[doc=r##"<p>This method is suitable for fetching files up to size of 64MB.</p>
34055"##]
34056///<h2>Examples</h2>
34057///
34058
34059#[doc=r###"```rust
34060let data;
34061
34062function preload() {
34063  data = loadBytes('assets/mammals.xml');
34064}
34065
34066function setup() {
34067  for (let i = 0; i < 5; i++) {
34068    console.log(data.bytes[i].toString(16));
34069  }
34070}
34071```"###]
34072/// <h2>Parameters</h2>
34073///
34074#[doc = r##"<code>file</code> name of the file or URL to load
34075
34076"##]
34077///
34078///
34079#[doc = r##"<code>callback?</code> function to be executed after loadBytes()
34080                                   completes
34081
34082"##]
34083///
34084///
34085#[doc = r##"<code>errorCallback?</code> function to be executed if there
34086                                   is an error
34087
34088"##]
34089///
34090
34091pub static loadBytes: LoadBytesInternalType = LoadBytesInternalType;
34092#[doc(hidden)]
34093pub struct LoadBytesInternalType;
34094
34095
34096#[wasm_bindgen]
34097extern {
34098    #[wasm_bindgen(js_name = "loadBytes")]
34099    fn loadBytes1145197542(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Object;
34100}
34101
34102#[doc(hidden)]
34103impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadBytesInternalType {
34104    type Output = js_sys::Object;
34105    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
34106        loadBytes1145197542.call(args)
34107    }
34108}
34109
34110#[doc(hidden)]
34111impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadBytesInternalType {
34112    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
34113        loadBytes1145197542.call(args)
34114    }
34115}
34116
34117#[doc(hidden)]
34118impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadBytesInternalType {
34119    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
34120        loadBytes1145197542.call(args)
34121    }
34122}
34123
34124#[wasm_bindgen]
34125extern {
34126    #[wasm_bindgen(js_name = "loadBytes")]
34127    fn loadBytes143850068(_ : & str, _ : js_sys::Function, ) -> js_sys::Object;
34128}
34129
34130#[doc(hidden)]
34131impl FnOnce<(&'_ str,js_sys::Function,)> for LoadBytesInternalType {
34132    type Output = js_sys::Object;
34133    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34134        loadBytes143850068.call(args)
34135    }
34136}
34137
34138#[doc(hidden)]
34139impl FnMut<(&'_ str,js_sys::Function,)> for LoadBytesInternalType {
34140    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34141        loadBytes143850068.call(args)
34142    }
34143}
34144
34145#[doc(hidden)]
34146impl Fn<(&'_ str,js_sys::Function,)> for LoadBytesInternalType {
34147    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34148        loadBytes143850068.call(args)
34149    }
34150}
34151
34152#[wasm_bindgen]
34153extern {
34154    #[wasm_bindgen(js_name = "loadBytes")]
34155    fn loadBytes111771256(_ : & str, ) -> js_sys::Object;
34156}
34157
34158#[doc(hidden)]
34159impl FnOnce<(&'_ str,)> for LoadBytesInternalType {
34160    type Output = js_sys::Object;
34161    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
34162        loadBytes111771256.call(args)
34163    }
34164}
34165
34166#[doc(hidden)]
34167impl FnMut<(&'_ str,)> for LoadBytesInternalType {
34168    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
34169        loadBytes111771256.call(args)
34170    }
34171}
34172
34173#[doc(hidden)]
34174impl Fn<(&'_ str,)> for LoadBytesInternalType {
34175    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
34176        loadBytes111771256.call(args)
34177    }
34178}
34179#[doc=r##"<p>Method for executing an HTTP GET request. If data type is not specified,
34180p5 will try to guess based on the URL, defaulting to text. This is equivalent to
34181calling <code>httpDo(path, 'GET')</code>. The 'binary' datatype will return
34182a Blob object, and the 'arrayBuffer' datatype will return an ArrayBuffer
34183which can be used to initialize typed arrays (such as Uint8Array).</p>
34184"##]
34185///<h2>Examples</h2>
34186///
34187
34188#[doc=r###"```rust
34189// Examples use USGS Earthquake API:
34190//   https://earthquake.usgs.gov/fdsnws/event/1/#methods
34191let earthquakes;
34192function preload() {
34193  // Get the most recent earthquake in the database
34194  let url =
34195   'https://earthquake.usgs.gov/fdsnws/event/1/query?' +
34196    'format=geojson&limit=1&orderby=time';
34197  httpGet(url, 'jsonp', false, function(response) {
34198    // when the HTTP request completes, populate the variable that holds the
34199    // earthquake data used in the visualization.
34200    earthquakes = response;
34201  });
34202}
34203
34204function draw() {
34205  if (!earthquakes) {
34206    // Wait until the earthquake data has loaded before drawing.
34207    return;
34208  }
34209  background(200);
34210  // Get the magnitude and name of the earthquake out of the loaded JSON
34211  let earthquakeMag = earthquakes.features[0].properties.mag;
34212  let earthquakeName = earthquakes.features[0].properties.place;
34213  ellipse(width / 2, height / 2, earthquakeMag * 10, earthquakeMag * 10);
34214  textAlign(CENTER);
34215  text(earthquakeName, 0, height - 30, width, 30);
34216  noLoop();
34217}
34218```"###]
34219/// <h2>Overloads</h2>
34220///
34221#[doc = r##"<code>path</code> name of the file or url to load
34222
34223"##]
34224///
34225///
34226#[doc = r##"<code>datatype?</code> "json", "jsonp", "binary", "arrayBuffer",
34227                                   "xml", or "text"
34228
34229"##]
34230///
34231///
34232#[doc = r##"<code>data?</code> param data passed sent with request
34233
34234"##]
34235///
34236///
34237#[doc = r##"<code>callback?</code> function to be executed after
34238                                   httpGet() completes, data is passed in
34239                                   as first argument
34240
34241"##]
34242///
34243///
34244#[doc = r##"<code>errorCallback?</code> function to be executed if
34245                                   there is an error, response is passed
34246                                   in as first argument
34247
34248"##]
34249///
34250///
34251/// ---
34252///
34253///
34254#[doc = r##"<code>path</code> name of the file or url to load
34255
34256"##]
34257///
34258///
34259#[doc = r##"<code>data</code> param data passed sent with request
34260
34261"##]
34262///
34263///
34264#[doc = r##"<code>callback?</code> function to be executed after
34265                                   httpGet() completes, data is passed in
34266                                   as first argument
34267
34268"##]
34269///
34270///
34271#[doc = r##"<code>errorCallback?</code> function to be executed if
34272                                   there is an error, response is passed
34273                                   in as first argument
34274
34275"##]
34276///
34277///
34278/// ---
34279///
34280///
34281#[doc = r##"<code>path</code> name of the file or url to load
34282
34283"##]
34284///
34285///
34286#[doc = r##"<code>callback</code> function to be executed after
34287                                   httpGet() completes, data is passed in
34288                                   as first argument
34289
34290"##]
34291///
34292///
34293#[doc = r##"<code>errorCallback?</code> function to be executed if
34294                                   there is an error, response is passed
34295                                   in as first argument
34296
34297"##]
34298///
34299///
34300/// ---
34301///
34302
34303pub static httpGet: HttpGetInternalType = HttpGetInternalType;
34304#[doc(hidden)]
34305pub struct HttpGetInternalType;
34306
34307
34308#[wasm_bindgen]
34309extern {
34310    #[wasm_bindgen(js_name = "httpGet")]
34311    fn httpGet538500630(_ : & str, _ : & str, _ : JsValue, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
34312}
34313
34314#[doc(hidden)]
34315impl FnOnce<(&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34316    type Output = js_sys::Promise;
34317    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34318        httpGet538500630.call(args)
34319    }
34320}
34321
34322#[doc(hidden)]
34323impl FnMut<(&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34324    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34325        httpGet538500630.call(args)
34326    }
34327}
34328
34329#[doc(hidden)]
34330impl Fn<(&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34331    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34332        httpGet538500630.call(args)
34333    }
34334}
34335
34336#[wasm_bindgen]
34337extern {
34338    #[wasm_bindgen(js_name = "httpGet")]
34339    fn httpGet4027022194(_ : & str, _ : & str, _ : JsValue, _ : js_sys::Function, ) -> js_sys::Promise;
34340}
34341
34342#[doc(hidden)]
34343impl FnOnce<(&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpGetInternalType {
34344    type Output = js_sys::Promise;
34345    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34346        httpGet4027022194.call(args)
34347    }
34348}
34349
34350#[doc(hidden)]
34351impl FnMut<(&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpGetInternalType {
34352    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34353        httpGet4027022194.call(args)
34354    }
34355}
34356
34357#[doc(hidden)]
34358impl Fn<(&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpGetInternalType {
34359    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34360        httpGet4027022194.call(args)
34361    }
34362}
34363
34364#[wasm_bindgen]
34365extern {
34366    #[wasm_bindgen(js_name = "httpGet")]
34367    fn httpGet2403898149(_ : & str, _ : & str, _ : JsValue, ) -> js_sys::Promise;
34368}
34369
34370#[doc(hidden)]
34371impl FnOnce<(&'_ str,&'_ str,JsValue,)> for HttpGetInternalType {
34372    type Output = js_sys::Promise;
34373    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,JsValue,)) -> Self::Output {
34374        httpGet2403898149.call(args)
34375    }
34376}
34377
34378#[doc(hidden)]
34379impl FnMut<(&'_ str,&'_ str,JsValue,)> for HttpGetInternalType {
34380    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,JsValue,)) -> Self::Output {
34381        httpGet2403898149.call(args)
34382    }
34383}
34384
34385#[doc(hidden)]
34386impl Fn<(&'_ str,&'_ str,JsValue,)> for HttpGetInternalType {
34387    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,JsValue,)) -> Self::Output {
34388        httpGet2403898149.call(args)
34389    }
34390}
34391
34392#[wasm_bindgen]
34393extern {
34394    #[wasm_bindgen(js_name = "httpGet")]
34395    fn httpGet3019183323(_ : & str, _ : & str, _ : bool, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
34396}
34397
34398#[doc(hidden)]
34399impl FnOnce<(&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34400    type Output = js_sys::Promise;
34401    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
34402        httpGet3019183323.call(args)
34403    }
34404}
34405
34406#[doc(hidden)]
34407impl FnMut<(&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34408    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
34409        httpGet3019183323.call(args)
34410    }
34411}
34412
34413#[doc(hidden)]
34414impl Fn<(&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34415    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
34416        httpGet3019183323.call(args)
34417    }
34418}
34419
34420#[wasm_bindgen]
34421extern {
34422    #[wasm_bindgen(js_name = "httpGet")]
34423    fn httpGet2494177976(_ : & str, _ : & str, _ : bool, _ : js_sys::Function, ) -> js_sys::Promise;
34424}
34425
34426#[doc(hidden)]
34427impl FnOnce<(&'_ str,&'_ str,bool,js_sys::Function,)> for HttpGetInternalType {
34428    type Output = js_sys::Promise;
34429    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,bool,js_sys::Function,)) -> Self::Output {
34430        httpGet2494177976.call(args)
34431    }
34432}
34433
34434#[doc(hidden)]
34435impl FnMut<(&'_ str,&'_ str,bool,js_sys::Function,)> for HttpGetInternalType {
34436    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,bool,js_sys::Function,)) -> Self::Output {
34437        httpGet2494177976.call(args)
34438    }
34439}
34440
34441#[doc(hidden)]
34442impl Fn<(&'_ str,&'_ str,bool,js_sys::Function,)> for HttpGetInternalType {
34443    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,bool,js_sys::Function,)) -> Self::Output {
34444        httpGet2494177976.call(args)
34445    }
34446}
34447
34448#[wasm_bindgen]
34449extern {
34450    #[wasm_bindgen(js_name = "httpGet")]
34451    fn httpGet772318715(_ : & str, _ : & str, _ : bool, ) -> js_sys::Promise;
34452}
34453
34454#[doc(hidden)]
34455impl FnOnce<(&'_ str,&'_ str,bool,)> for HttpGetInternalType {
34456    type Output = js_sys::Promise;
34457    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
34458        httpGet772318715.call(args)
34459    }
34460}
34461
34462#[doc(hidden)]
34463impl FnMut<(&'_ str,&'_ str,bool,)> for HttpGetInternalType {
34464    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
34465        httpGet772318715.call(args)
34466    }
34467}
34468
34469#[doc(hidden)]
34470impl Fn<(&'_ str,&'_ str,bool,)> for HttpGetInternalType {
34471    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
34472        httpGet772318715.call(args)
34473    }
34474}
34475
34476#[wasm_bindgen]
34477extern {
34478    #[wasm_bindgen(js_name = "httpGet")]
34479    fn httpGet1004234822(_ : & str, _ : & str, ) -> js_sys::Promise;
34480}
34481
34482#[doc(hidden)]
34483impl FnOnce<(&'_ str,&'_ str,)> for HttpGetInternalType {
34484    type Output = js_sys::Promise;
34485    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
34486        httpGet1004234822.call(args)
34487    }
34488}
34489
34490#[doc(hidden)]
34491impl FnMut<(&'_ str,&'_ str,)> for HttpGetInternalType {
34492    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
34493        httpGet1004234822.call(args)
34494    }
34495}
34496
34497#[doc(hidden)]
34498impl Fn<(&'_ str,&'_ str,)> for HttpGetInternalType {
34499    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
34500        httpGet1004234822.call(args)
34501    }
34502}
34503
34504#[wasm_bindgen]
34505extern {
34506    #[wasm_bindgen(js_name = "httpGet")]
34507    fn httpGet3890602830(_ : & str, ) -> js_sys::Promise;
34508}
34509
34510#[doc(hidden)]
34511impl FnOnce<(&'_ str,)> for HttpGetInternalType {
34512    type Output = js_sys::Promise;
34513    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
34514        httpGet3890602830.call(args)
34515    }
34516}
34517
34518#[doc(hidden)]
34519impl FnMut<(&'_ str,)> for HttpGetInternalType {
34520    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
34521        httpGet3890602830.call(args)
34522    }
34523}
34524
34525#[doc(hidden)]
34526impl Fn<(&'_ str,)> for HttpGetInternalType {
34527    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
34528        httpGet3890602830.call(args)
34529    }
34530}
34531
34532#[wasm_bindgen]
34533extern {
34534    #[wasm_bindgen(js_name = "httpGet")]
34535    fn httpGet3415041175(_ : & str, _ : JsValue, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
34536}
34537
34538#[doc(hidden)]
34539impl FnOnce<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34540    type Output = js_sys::Promise;
34541    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34542        httpGet3415041175.call(args)
34543    }
34544}
34545
34546#[doc(hidden)]
34547impl FnMut<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34548    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34549        httpGet3415041175.call(args)
34550    }
34551}
34552
34553#[doc(hidden)]
34554impl Fn<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34555    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34556        httpGet3415041175.call(args)
34557    }
34558}
34559
34560#[wasm_bindgen]
34561extern {
34562    #[wasm_bindgen(js_name = "httpGet")]
34563    fn httpGet852440075(_ : & str, _ : JsValue, _ : js_sys::Function, ) -> js_sys::Promise;
34564}
34565
34566#[doc(hidden)]
34567impl FnOnce<(&'_ str,JsValue,js_sys::Function,)> for HttpGetInternalType {
34568    type Output = js_sys::Promise;
34569    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34570        httpGet852440075.call(args)
34571    }
34572}
34573
34574#[doc(hidden)]
34575impl FnMut<(&'_ str,JsValue,js_sys::Function,)> for HttpGetInternalType {
34576    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34577        httpGet852440075.call(args)
34578    }
34579}
34580
34581#[doc(hidden)]
34582impl Fn<(&'_ str,JsValue,js_sys::Function,)> for HttpGetInternalType {
34583    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34584        httpGet852440075.call(args)
34585    }
34586}
34587
34588#[wasm_bindgen]
34589extern {
34590    #[wasm_bindgen(js_name = "httpGet")]
34591    fn httpGet3011383747(_ : & str, _ : JsValue, ) -> js_sys::Promise;
34592}
34593
34594#[doc(hidden)]
34595impl FnOnce<(&'_ str,JsValue,)> for HttpGetInternalType {
34596    type Output = js_sys::Promise;
34597    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,)) -> Self::Output {
34598        httpGet3011383747.call(args)
34599    }
34600}
34601
34602#[doc(hidden)]
34603impl FnMut<(&'_ str,JsValue,)> for HttpGetInternalType {
34604    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,)) -> Self::Output {
34605        httpGet3011383747.call(args)
34606    }
34607}
34608
34609#[doc(hidden)]
34610impl Fn<(&'_ str,JsValue,)> for HttpGetInternalType {
34611    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,)) -> Self::Output {
34612        httpGet3011383747.call(args)
34613    }
34614}
34615
34616#[wasm_bindgen]
34617extern {
34618    #[wasm_bindgen(js_name = "httpGet")]
34619    fn httpGet1000130468(_ : & str, _ : bool, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
34620}
34621
34622#[doc(hidden)]
34623impl FnOnce<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34624    type Output = js_sys::Promise;
34625    extern "rust-call" fn call_once(self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
34626        httpGet1000130468.call(args)
34627    }
34628}
34629
34630#[doc(hidden)]
34631impl FnMut<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34632    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
34633        httpGet1000130468.call(args)
34634    }
34635}
34636
34637#[doc(hidden)]
34638impl Fn<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34639    extern "rust-call" fn call(&self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
34640        httpGet1000130468.call(args)
34641    }
34642}
34643
34644#[wasm_bindgen]
34645extern {
34646    #[wasm_bindgen(js_name = "httpGet")]
34647    fn httpGet1692424169(_ : & str, _ : bool, _ : js_sys::Function, ) -> js_sys::Promise;
34648}
34649
34650#[doc(hidden)]
34651impl FnOnce<(&'_ str,bool,js_sys::Function,)> for HttpGetInternalType {
34652    type Output = js_sys::Promise;
34653    extern "rust-call" fn call_once(self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
34654        httpGet1692424169.call(args)
34655    }
34656}
34657
34658#[doc(hidden)]
34659impl FnMut<(&'_ str,bool,js_sys::Function,)> for HttpGetInternalType {
34660    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
34661        httpGet1692424169.call(args)
34662    }
34663}
34664
34665#[doc(hidden)]
34666impl Fn<(&'_ str,bool,js_sys::Function,)> for HttpGetInternalType {
34667    extern "rust-call" fn call(&self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
34668        httpGet1692424169.call(args)
34669    }
34670}
34671
34672#[wasm_bindgen]
34673extern {
34674    #[wasm_bindgen(js_name = "httpGet")]
34675    fn httpGet1032328672(_ : & str, _ : bool, ) -> js_sys::Promise;
34676}
34677
34678#[doc(hidden)]
34679impl FnOnce<(&'_ str,bool,)> for HttpGetInternalType {
34680    type Output = js_sys::Promise;
34681    extern "rust-call" fn call_once(self, args: (&'_ str,bool,)) -> Self::Output {
34682        httpGet1032328672.call(args)
34683    }
34684}
34685
34686#[doc(hidden)]
34687impl FnMut<(&'_ str,bool,)> for HttpGetInternalType {
34688    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,)) -> Self::Output {
34689        httpGet1032328672.call(args)
34690    }
34691}
34692
34693#[doc(hidden)]
34694impl Fn<(&'_ str,bool,)> for HttpGetInternalType {
34695    extern "rust-call" fn call(&self, args: (&'_ str,bool,)) -> Self::Output {
34696        httpGet1032328672.call(args)
34697    }
34698}
34699
34700#[wasm_bindgen]
34701extern {
34702    #[wasm_bindgen(js_name = "httpGet")]
34703    fn httpGet779788063(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
34704}
34705
34706#[doc(hidden)]
34707impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34708    type Output = js_sys::Promise;
34709    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
34710        httpGet779788063.call(args)
34711    }
34712}
34713
34714#[doc(hidden)]
34715impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34716    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
34717        httpGet779788063.call(args)
34718    }
34719}
34720
34721#[doc(hidden)]
34722impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for HttpGetInternalType {
34723    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
34724        httpGet779788063.call(args)
34725    }
34726}
34727
34728#[wasm_bindgen]
34729extern {
34730    #[wasm_bindgen(js_name = "httpGet")]
34731    fn httpGet2703064936(_ : & str, _ : js_sys::Function, ) -> js_sys::Promise;
34732}
34733
34734#[doc(hidden)]
34735impl FnOnce<(&'_ str,js_sys::Function,)> for HttpGetInternalType {
34736    type Output = js_sys::Promise;
34737    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34738        httpGet2703064936.call(args)
34739    }
34740}
34741
34742#[doc(hidden)]
34743impl FnMut<(&'_ str,js_sys::Function,)> for HttpGetInternalType {
34744    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34745        httpGet2703064936.call(args)
34746    }
34747}
34748
34749#[doc(hidden)]
34750impl Fn<(&'_ str,js_sys::Function,)> for HttpGetInternalType {
34751    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
34752        httpGet2703064936.call(args)
34753    }
34754}
34755#[doc=r##"<p>Method for executing an HTTP POST request. If data type is not specified,
34756p5 will try to guess based on the URL, defaulting to text. This is equivalent to
34757calling <code>httpDo(path, 'POST')</code>.</p>
34758"##]
34759///<h2>Examples</h2>
34760///
34761
34762#[doc=r###"```rust
34763// Examples use jsonplaceholder.typicode.com for a Mock Data API
34764
34765let url = 'https://jsonplaceholder.typicode.com/posts';
34766let postData = { userId: 1, title: 'p5 Clicked!', body: 'p5.js is way cool.' };
34767
34768function setup() {
34769  createCanvas(800, 800);
34770}
34771
34772function mousePressed() {
34773  // Pick new random color values
34774  let r = random(255);
34775  let g = random(255);
34776  let b = random(255);
34777
34778  httpPost(url, 'json', postData, function(result) {
34779    strokeWeight(2);
34780    stroke(r, g, b);
34781    fill(r, g, b, 127);
34782    ellipse(mouseX, mouseY, 200, 200);
34783    text(result.body, mouseX, mouseY);
34784  });
34785}
34786```"###]
34787#[doc=r###"```rust
34788let url = 'ttps://invalidURL'; // A bad URL that will cause errors
34789let postData = { title: 'p5 Clicked!', body: 'p5.js is way cool.' };
34790
34791function setup() {
34792  createCanvas(800, 800);
34793}
34794
34795function mousePressed() {
34796  // Pick new random color values
34797  let r = random(255);
34798  let g = random(255);
34799  let b = random(255);
34800
34801  httpPost(
34802    url,
34803    'json',
34804    postData,
34805    function(result) {
34806      // ... won't be called
34807    },
34808    function(error) {
34809      strokeWeight(2);
34810      stroke(r, g, b);
34811      fill(r, g, b, 127);
34812      text(error.toString(), mouseX, mouseY);
34813    }
34814  );
34815}
34816```"###]
34817/// <h2>Overloads</h2>
34818///
34819#[doc = r##"<code>path</code> name of the file or url to load
34820
34821"##]
34822///
34823///
34824#[doc = r##"<code>datatype?</code> "json", "jsonp", "xml", or "text".
34825                                   If omitted, httpPost() will guess.
34826
34827"##]
34828///
34829///
34830#[doc = r##"<code>data?</code> param data passed sent with request
34831
34832"##]
34833///
34834///
34835#[doc = r##"<code>callback?</code> function to be executed after
34836                                   httpPost() completes, data is passed in
34837                                   as first argument
34838
34839"##]
34840///
34841///
34842#[doc = r##"<code>errorCallback?</code> function to be executed if
34843                                   there is an error, response is passed
34844                                   in as first argument
34845
34846"##]
34847///
34848///
34849/// ---
34850///
34851///
34852#[doc = r##"<code>path</code> name of the file or url to load
34853
34854"##]
34855///
34856///
34857#[doc = r##"<code>data</code> param data passed sent with request
34858
34859"##]
34860///
34861///
34862#[doc = r##"<code>callback?</code> function to be executed after
34863                                   httpPost() completes, data is passed in
34864                                   as first argument
34865
34866"##]
34867///
34868///
34869#[doc = r##"<code>errorCallback?</code> function to be executed if
34870                                   there is an error, response is passed
34871                                   in as first argument
34872
34873"##]
34874///
34875///
34876/// ---
34877///
34878///
34879#[doc = r##"<code>path</code> name of the file or url to load
34880
34881"##]
34882///
34883///
34884#[doc = r##"<code>callback</code> function to be executed after
34885                                   httpPost() completes, data is passed in
34886                                   as first argument
34887
34888"##]
34889///
34890///
34891#[doc = r##"<code>errorCallback?</code> function to be executed if
34892                                   there is an error, response is passed
34893                                   in as first argument
34894
34895"##]
34896///
34897///
34898/// ---
34899///
34900
34901pub static httpPost: HttpPostInternalType = HttpPostInternalType;
34902#[doc(hidden)]
34903pub struct HttpPostInternalType;
34904
34905
34906#[wasm_bindgen]
34907extern {
34908    #[wasm_bindgen(js_name = "httpPost")]
34909    fn httpPost3740323388(_ : & str, _ : & str, _ : JsValue, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
34910}
34911
34912#[doc(hidden)]
34913impl FnOnce<(&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
34914    type Output = js_sys::Promise;
34915    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34916        httpPost3740323388.call(args)
34917    }
34918}
34919
34920#[doc(hidden)]
34921impl FnMut<(&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
34922    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34923        httpPost3740323388.call(args)
34924    }
34925}
34926
34927#[doc(hidden)]
34928impl Fn<(&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
34929    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
34930        httpPost3740323388.call(args)
34931    }
34932}
34933
34934#[wasm_bindgen]
34935extern {
34936    #[wasm_bindgen(js_name = "httpPost")]
34937    fn httpPost1230666065(_ : & str, _ : & str, _ : JsValue, _ : js_sys::Function, ) -> js_sys::Promise;
34938}
34939
34940#[doc(hidden)]
34941impl FnOnce<(&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpPostInternalType {
34942    type Output = js_sys::Promise;
34943    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34944        httpPost1230666065.call(args)
34945    }
34946}
34947
34948#[doc(hidden)]
34949impl FnMut<(&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpPostInternalType {
34950    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34951        httpPost1230666065.call(args)
34952    }
34953}
34954
34955#[doc(hidden)]
34956impl Fn<(&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpPostInternalType {
34957    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
34958        httpPost1230666065.call(args)
34959    }
34960}
34961
34962#[wasm_bindgen]
34963extern {
34964    #[wasm_bindgen(js_name = "httpPost")]
34965    fn httpPost3016011239(_ : & str, _ : & str, _ : JsValue, ) -> js_sys::Promise;
34966}
34967
34968#[doc(hidden)]
34969impl FnOnce<(&'_ str,&'_ str,JsValue,)> for HttpPostInternalType {
34970    type Output = js_sys::Promise;
34971    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,JsValue,)) -> Self::Output {
34972        httpPost3016011239.call(args)
34973    }
34974}
34975
34976#[doc(hidden)]
34977impl FnMut<(&'_ str,&'_ str,JsValue,)> for HttpPostInternalType {
34978    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,JsValue,)) -> Self::Output {
34979        httpPost3016011239.call(args)
34980    }
34981}
34982
34983#[doc(hidden)]
34984impl Fn<(&'_ str,&'_ str,JsValue,)> for HttpPostInternalType {
34985    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,JsValue,)) -> Self::Output {
34986        httpPost3016011239.call(args)
34987    }
34988}
34989
34990#[wasm_bindgen]
34991extern {
34992    #[wasm_bindgen(js_name = "httpPost")]
34993    fn httpPost1159124800(_ : & str, _ : & str, _ : bool, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
34994}
34995
34996#[doc(hidden)]
34997impl FnOnce<(&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
34998    type Output = js_sys::Promise;
34999    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
35000        httpPost1159124800.call(args)
35001    }
35002}
35003
35004#[doc(hidden)]
35005impl FnMut<(&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35006    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
35007        httpPost1159124800.call(args)
35008    }
35009}
35010
35011#[doc(hidden)]
35012impl Fn<(&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35013    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
35014        httpPost1159124800.call(args)
35015    }
35016}
35017
35018#[wasm_bindgen]
35019extern {
35020    #[wasm_bindgen(js_name = "httpPost")]
35021    fn httpPost1555616831(_ : & str, _ : & str, _ : bool, _ : js_sys::Function, ) -> js_sys::Promise;
35022}
35023
35024#[doc(hidden)]
35025impl FnOnce<(&'_ str,&'_ str,bool,js_sys::Function,)> for HttpPostInternalType {
35026    type Output = js_sys::Promise;
35027    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,bool,js_sys::Function,)) -> Self::Output {
35028        httpPost1555616831.call(args)
35029    }
35030}
35031
35032#[doc(hidden)]
35033impl FnMut<(&'_ str,&'_ str,bool,js_sys::Function,)> for HttpPostInternalType {
35034    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,bool,js_sys::Function,)) -> Self::Output {
35035        httpPost1555616831.call(args)
35036    }
35037}
35038
35039#[doc(hidden)]
35040impl Fn<(&'_ str,&'_ str,bool,js_sys::Function,)> for HttpPostInternalType {
35041    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,bool,js_sys::Function,)) -> Self::Output {
35042        httpPost1555616831.call(args)
35043    }
35044}
35045
35046#[wasm_bindgen]
35047extern {
35048    #[wasm_bindgen(js_name = "httpPost")]
35049    fn httpPost1203661100(_ : & str, _ : & str, _ : bool, ) -> js_sys::Promise;
35050}
35051
35052#[doc(hidden)]
35053impl FnOnce<(&'_ str,&'_ str,bool,)> for HttpPostInternalType {
35054    type Output = js_sys::Promise;
35055    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
35056        httpPost1203661100.call(args)
35057    }
35058}
35059
35060#[doc(hidden)]
35061impl FnMut<(&'_ str,&'_ str,bool,)> for HttpPostInternalType {
35062    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
35063        httpPost1203661100.call(args)
35064    }
35065}
35066
35067#[doc(hidden)]
35068impl Fn<(&'_ str,&'_ str,bool,)> for HttpPostInternalType {
35069    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
35070        httpPost1203661100.call(args)
35071    }
35072}
35073
35074#[wasm_bindgen]
35075extern {
35076    #[wasm_bindgen(js_name = "httpPost")]
35077    fn httpPost3627556571(_ : & str, _ : & str, ) -> js_sys::Promise;
35078}
35079
35080#[doc(hidden)]
35081impl FnOnce<(&'_ str,&'_ str,)> for HttpPostInternalType {
35082    type Output = js_sys::Promise;
35083    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
35084        httpPost3627556571.call(args)
35085    }
35086}
35087
35088#[doc(hidden)]
35089impl FnMut<(&'_ str,&'_ str,)> for HttpPostInternalType {
35090    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
35091        httpPost3627556571.call(args)
35092    }
35093}
35094
35095#[doc(hidden)]
35096impl Fn<(&'_ str,&'_ str,)> for HttpPostInternalType {
35097    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
35098        httpPost3627556571.call(args)
35099    }
35100}
35101
35102#[wasm_bindgen]
35103extern {
35104    #[wasm_bindgen(js_name = "httpPost")]
35105    fn httpPost3271733409(_ : & str, ) -> js_sys::Promise;
35106}
35107
35108#[doc(hidden)]
35109impl FnOnce<(&'_ str,)> for HttpPostInternalType {
35110    type Output = js_sys::Promise;
35111    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
35112        httpPost3271733409.call(args)
35113    }
35114}
35115
35116#[doc(hidden)]
35117impl FnMut<(&'_ str,)> for HttpPostInternalType {
35118    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
35119        httpPost3271733409.call(args)
35120    }
35121}
35122
35123#[doc(hidden)]
35124impl Fn<(&'_ str,)> for HttpPostInternalType {
35125    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
35126        httpPost3271733409.call(args)
35127    }
35128}
35129
35130#[wasm_bindgen]
35131extern {
35132    #[wasm_bindgen(js_name = "httpPost")]
35133    fn httpPost658927319(_ : & str, _ : JsValue, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
35134}
35135
35136#[doc(hidden)]
35137impl FnOnce<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35138    type Output = js_sys::Promise;
35139    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35140        httpPost658927319.call(args)
35141    }
35142}
35143
35144#[doc(hidden)]
35145impl FnMut<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35146    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35147        httpPost658927319.call(args)
35148    }
35149}
35150
35151#[doc(hidden)]
35152impl Fn<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35153    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35154        httpPost658927319.call(args)
35155    }
35156}
35157
35158#[wasm_bindgen]
35159extern {
35160    #[wasm_bindgen(js_name = "httpPost")]
35161    fn httpPost2340551199(_ : & str, _ : JsValue, _ : js_sys::Function, ) -> js_sys::Promise;
35162}
35163
35164#[doc(hidden)]
35165impl FnOnce<(&'_ str,JsValue,js_sys::Function,)> for HttpPostInternalType {
35166    type Output = js_sys::Promise;
35167    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35168        httpPost2340551199.call(args)
35169    }
35170}
35171
35172#[doc(hidden)]
35173impl FnMut<(&'_ str,JsValue,js_sys::Function,)> for HttpPostInternalType {
35174    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35175        httpPost2340551199.call(args)
35176    }
35177}
35178
35179#[doc(hidden)]
35180impl Fn<(&'_ str,JsValue,js_sys::Function,)> for HttpPostInternalType {
35181    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35182        httpPost2340551199.call(args)
35183    }
35184}
35185
35186#[wasm_bindgen]
35187extern {
35188    #[wasm_bindgen(js_name = "httpPost")]
35189    fn httpPost2070591007(_ : & str, _ : JsValue, ) -> js_sys::Promise;
35190}
35191
35192#[doc(hidden)]
35193impl FnOnce<(&'_ str,JsValue,)> for HttpPostInternalType {
35194    type Output = js_sys::Promise;
35195    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,)) -> Self::Output {
35196        httpPost2070591007.call(args)
35197    }
35198}
35199
35200#[doc(hidden)]
35201impl FnMut<(&'_ str,JsValue,)> for HttpPostInternalType {
35202    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,)) -> Self::Output {
35203        httpPost2070591007.call(args)
35204    }
35205}
35206
35207#[doc(hidden)]
35208impl Fn<(&'_ str,JsValue,)> for HttpPostInternalType {
35209    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,)) -> Self::Output {
35210        httpPost2070591007.call(args)
35211    }
35212}
35213
35214#[wasm_bindgen]
35215extern {
35216    #[wasm_bindgen(js_name = "httpPost")]
35217    fn httpPost2125653400(_ : & str, _ : bool, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
35218}
35219
35220#[doc(hidden)]
35221impl FnOnce<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35222    type Output = js_sys::Promise;
35223    extern "rust-call" fn call_once(self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
35224        httpPost2125653400.call(args)
35225    }
35226}
35227
35228#[doc(hidden)]
35229impl FnMut<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35230    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
35231        httpPost2125653400.call(args)
35232    }
35233}
35234
35235#[doc(hidden)]
35236impl Fn<(&'_ str,bool,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35237    extern "rust-call" fn call(&self, args: (&'_ str,bool,js_sys::Function,js_sys::Function,)) -> Self::Output {
35238        httpPost2125653400.call(args)
35239    }
35240}
35241
35242#[wasm_bindgen]
35243extern {
35244    #[wasm_bindgen(js_name = "httpPost")]
35245    fn httpPost2610742569(_ : & str, _ : bool, _ : js_sys::Function, ) -> js_sys::Promise;
35246}
35247
35248#[doc(hidden)]
35249impl FnOnce<(&'_ str,bool,js_sys::Function,)> for HttpPostInternalType {
35250    type Output = js_sys::Promise;
35251    extern "rust-call" fn call_once(self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
35252        httpPost2610742569.call(args)
35253    }
35254}
35255
35256#[doc(hidden)]
35257impl FnMut<(&'_ str,bool,js_sys::Function,)> for HttpPostInternalType {
35258    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
35259        httpPost2610742569.call(args)
35260    }
35261}
35262
35263#[doc(hidden)]
35264impl Fn<(&'_ str,bool,js_sys::Function,)> for HttpPostInternalType {
35265    extern "rust-call" fn call(&self, args: (&'_ str,bool,js_sys::Function,)) -> Self::Output {
35266        httpPost2610742569.call(args)
35267    }
35268}
35269
35270#[wasm_bindgen]
35271extern {
35272    #[wasm_bindgen(js_name = "httpPost")]
35273    fn httpPost1816569678(_ : & str, _ : bool, ) -> js_sys::Promise;
35274}
35275
35276#[doc(hidden)]
35277impl FnOnce<(&'_ str,bool,)> for HttpPostInternalType {
35278    type Output = js_sys::Promise;
35279    extern "rust-call" fn call_once(self, args: (&'_ str,bool,)) -> Self::Output {
35280        httpPost1816569678.call(args)
35281    }
35282}
35283
35284#[doc(hidden)]
35285impl FnMut<(&'_ str,bool,)> for HttpPostInternalType {
35286    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,bool,)) -> Self::Output {
35287        httpPost1816569678.call(args)
35288    }
35289}
35290
35291#[doc(hidden)]
35292impl Fn<(&'_ str,bool,)> for HttpPostInternalType {
35293    extern "rust-call" fn call(&self, args: (&'_ str,bool,)) -> Self::Output {
35294        httpPost1816569678.call(args)
35295    }
35296}
35297
35298#[wasm_bindgen]
35299extern {
35300    #[wasm_bindgen(js_name = "httpPost")]
35301    fn httpPost1714891768(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
35302}
35303
35304#[doc(hidden)]
35305impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35306    type Output = js_sys::Promise;
35307    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
35308        httpPost1714891768.call(args)
35309    }
35310}
35311
35312#[doc(hidden)]
35313impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35314    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
35315        httpPost1714891768.call(args)
35316    }
35317}
35318
35319#[doc(hidden)]
35320impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for HttpPostInternalType {
35321    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
35322        httpPost1714891768.call(args)
35323    }
35324}
35325
35326#[wasm_bindgen]
35327extern {
35328    #[wasm_bindgen(js_name = "httpPost")]
35329    fn httpPost4080875965(_ : & str, _ : js_sys::Function, ) -> js_sys::Promise;
35330}
35331
35332#[doc(hidden)]
35333impl FnOnce<(&'_ str,js_sys::Function,)> for HttpPostInternalType {
35334    type Output = js_sys::Promise;
35335    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
35336        httpPost4080875965.call(args)
35337    }
35338}
35339
35340#[doc(hidden)]
35341impl FnMut<(&'_ str,js_sys::Function,)> for HttpPostInternalType {
35342    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
35343        httpPost4080875965.call(args)
35344    }
35345}
35346
35347#[doc(hidden)]
35348impl Fn<(&'_ str,js_sys::Function,)> for HttpPostInternalType {
35349    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
35350        httpPost4080875965.call(args)
35351    }
35352}
35353#[doc=r##"<p>Method for executing an HTTP request. If data type is not specified,
35354p5 will try to guess based on the URL, defaulting to text.<br><br>
35355For more advanced use, you may also pass in the path as the first argument
35356and a object as the second argument, the signature follows the one specified
35357in the Fetch API specification.
35358This method is suitable for fetching files up to size of 64MB when "GET" is used.</p>
35359"##]
35360///<h2>Examples</h2>
35361///
35362
35363#[doc=r###"```rust
35364// Examples use USGS Earthquake API:
35365// https://earthquake.usgs.gov/fdsnws/event/1/#methods
35366
35367// displays an animation of all USGS earthquakes
35368let earthquakes;
35369let eqFeatureIndex = 0;
35370
35371function preload() {
35372  let url = 'https://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson';
35373  httpDo(
35374    url,
35375    {
35376      method: 'GET',
35377      // Other Request options, like special headers for apis
35378      headers: { authorization: 'Bearer secretKey' }
35379    },
35380    function(res) {
35381      earthquakes = res;
35382    }
35383  );
35384}
35385
35386function draw() {
35387  // wait until the data is loaded
35388  if (!earthquakes || !earthquakes.features[eqFeatureIndex]) {
35389    return;
35390  }
35391  clear();
35392
35393  let feature = earthquakes.features[eqFeatureIndex];
35394  let mag = feature.properties.mag;
35395  let rad = mag / 11 * ((width + height) / 2);
35396  fill(255, 0, 0, 100);
35397  ellipse(width / 2 + random(-2, 2), height / 2 + random(-2, 2), rad, rad);
35398
35399  if (eqFeatureIndex >= earthquakes.features.length) {
35400    eqFeatureIndex = 0;
35401  } else {
35402    eqFeatureIndex += 1;
35403  }
35404}
35405```"###]
35406/// <h2>Overloads</h2>
35407///
35408#[doc = r##"<code>path</code> name of the file or url to load
35409
35410"##]
35411///
35412///
35413#[doc = r##"<code>method?</code> either "GET", "POST", or "PUT",
35414                                   defaults to "GET"
35415
35416"##]
35417///
35418///
35419#[doc = r##"<code>datatype?</code> "json", "jsonp", "xml", or "text"
35420
35421"##]
35422///
35423///
35424#[doc = r##"<code>data?</code> param data passed sent with request
35425
35426"##]
35427///
35428///
35429#[doc = r##"<code>callback?</code> function to be executed after
35430                                   httpGet() completes, data is passed in
35431                                   as first argument
35432
35433"##]
35434///
35435///
35436#[doc = r##"<code>errorCallback?</code> function to be executed if
35437                                   there is an error, response is passed
35438                                   in as first argument
35439
35440"##]
35441///
35442///
35443/// ---
35444///
35445///
35446#[doc = r##"<code>path</code> name of the file or url to load
35447
35448"##]
35449///
35450///
35451#[doc = r##"<code>options</code> Request object options as documented in the
35452                                   "fetch" API
35453reference
35454
35455"##]
35456///
35457///
35458#[doc = r##"<code>callback?</code> function to be executed after
35459                                   httpGet() completes, data is passed in
35460                                   as first argument
35461
35462"##]
35463///
35464///
35465#[doc = r##"<code>errorCallback?</code> function to be executed if
35466                                   there is an error, response is passed
35467                                   in as first argument
35468
35469"##]
35470///
35471///
35472/// ---
35473///
35474
35475pub static httpDo: HttpDoInternalType = HttpDoInternalType;
35476#[doc(hidden)]
35477pub struct HttpDoInternalType;
35478
35479
35480#[wasm_bindgen]
35481extern {
35482    #[wasm_bindgen(js_name = "httpDo")]
35483    fn httpDo3566303959(_ : & str, _ : & str, _ : & str, _ : JsValue, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
35484}
35485
35486#[doc(hidden)]
35487impl FnOnce<(&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpDoInternalType {
35488    type Output = js_sys::Promise;
35489    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35490        httpDo3566303959.call(args)
35491    }
35492}
35493
35494#[doc(hidden)]
35495impl FnMut<(&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpDoInternalType {
35496    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35497        httpDo3566303959.call(args)
35498    }
35499}
35500
35501#[doc(hidden)]
35502impl Fn<(&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpDoInternalType {
35503    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35504        httpDo3566303959.call(args)
35505    }
35506}
35507
35508#[wasm_bindgen]
35509extern {
35510    #[wasm_bindgen(js_name = "httpDo")]
35511    fn httpDo3010166900(_ : & str, _ : & str, _ : & str, _ : JsValue, _ : js_sys::Function, ) -> js_sys::Promise;
35512}
35513
35514#[doc(hidden)]
35515impl FnOnce<(&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpDoInternalType {
35516    type Output = js_sys::Promise;
35517    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35518        httpDo3010166900.call(args)
35519    }
35520}
35521
35522#[doc(hidden)]
35523impl FnMut<(&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpDoInternalType {
35524    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35525        httpDo3010166900.call(args)
35526    }
35527}
35528
35529#[doc(hidden)]
35530impl Fn<(&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,)> for HttpDoInternalType {
35531    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35532        httpDo3010166900.call(args)
35533    }
35534}
35535
35536#[wasm_bindgen]
35537extern {
35538    #[wasm_bindgen(js_name = "httpDo")]
35539    fn httpDo382985505(_ : & str, _ : & str, _ : & str, _ : JsValue, ) -> js_sys::Promise;
35540}
35541
35542#[doc(hidden)]
35543impl FnOnce<(&'_ str,&'_ str,&'_ str,JsValue,)> for HttpDoInternalType {
35544    type Output = js_sys::Promise;
35545    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,JsValue,)) -> Self::Output {
35546        httpDo382985505.call(args)
35547    }
35548}
35549
35550#[doc(hidden)]
35551impl FnMut<(&'_ str,&'_ str,&'_ str,JsValue,)> for HttpDoInternalType {
35552    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,JsValue,)) -> Self::Output {
35553        httpDo382985505.call(args)
35554    }
35555}
35556
35557#[doc(hidden)]
35558impl Fn<(&'_ str,&'_ str,&'_ str,JsValue,)> for HttpDoInternalType {
35559    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,JsValue,)) -> Self::Output {
35560        httpDo382985505.call(args)
35561    }
35562}
35563
35564#[wasm_bindgen]
35565extern {
35566    #[wasm_bindgen(js_name = "httpDo")]
35567    fn httpDo3139326005(_ : & str, _ : & str, _ : & str, ) -> js_sys::Promise;
35568}
35569
35570#[doc(hidden)]
35571impl FnOnce<(&'_ str,&'_ str,&'_ str,)> for HttpDoInternalType {
35572    type Output = js_sys::Promise;
35573    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
35574        httpDo3139326005.call(args)
35575    }
35576}
35577
35578#[doc(hidden)]
35579impl FnMut<(&'_ str,&'_ str,&'_ str,)> for HttpDoInternalType {
35580    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
35581        httpDo3139326005.call(args)
35582    }
35583}
35584
35585#[doc(hidden)]
35586impl Fn<(&'_ str,&'_ str,&'_ str,)> for HttpDoInternalType {
35587    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
35588        httpDo3139326005.call(args)
35589    }
35590}
35591
35592#[wasm_bindgen]
35593extern {
35594    #[wasm_bindgen(js_name = "httpDo")]
35595    fn httpDo2958022713(_ : & str, _ : & str, ) -> js_sys::Promise;
35596}
35597
35598#[doc(hidden)]
35599impl FnOnce<(&'_ str,&'_ str,)> for HttpDoInternalType {
35600    type Output = js_sys::Promise;
35601    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
35602        httpDo2958022713.call(args)
35603    }
35604}
35605
35606#[doc(hidden)]
35607impl FnMut<(&'_ str,&'_ str,)> for HttpDoInternalType {
35608    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
35609        httpDo2958022713.call(args)
35610    }
35611}
35612
35613#[doc(hidden)]
35614impl Fn<(&'_ str,&'_ str,)> for HttpDoInternalType {
35615    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
35616        httpDo2958022713.call(args)
35617    }
35618}
35619
35620#[wasm_bindgen]
35621extern {
35622    #[wasm_bindgen(js_name = "httpDo")]
35623    fn httpDo185026388(_ : & str, ) -> js_sys::Promise;
35624}
35625
35626#[doc(hidden)]
35627impl FnOnce<(&'_ str,)> for HttpDoInternalType {
35628    type Output = js_sys::Promise;
35629    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
35630        httpDo185026388.call(args)
35631    }
35632}
35633
35634#[doc(hidden)]
35635impl FnMut<(&'_ str,)> for HttpDoInternalType {
35636    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
35637        httpDo185026388.call(args)
35638    }
35639}
35640
35641#[doc(hidden)]
35642impl Fn<(&'_ str,)> for HttpDoInternalType {
35643    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
35644        httpDo185026388.call(args)
35645    }
35646}
35647
35648#[wasm_bindgen]
35649extern {
35650    #[wasm_bindgen(js_name = "httpDo")]
35651    fn httpDo3848020651(_ : & str, _ : JsValue, _ : js_sys::Function, _ : js_sys::Function, ) -> js_sys::Promise;
35652}
35653
35654#[doc(hidden)]
35655impl FnOnce<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpDoInternalType {
35656    type Output = js_sys::Promise;
35657    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35658        httpDo3848020651.call(args)
35659    }
35660}
35661
35662#[doc(hidden)]
35663impl FnMut<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpDoInternalType {
35664    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35665        httpDo3848020651.call(args)
35666    }
35667}
35668
35669#[doc(hidden)]
35670impl Fn<(&'_ str,JsValue,js_sys::Function,js_sys::Function,)> for HttpDoInternalType {
35671    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,js_sys::Function,js_sys::Function,)) -> Self::Output {
35672        httpDo3848020651.call(args)
35673    }
35674}
35675
35676#[wasm_bindgen]
35677extern {
35678    #[wasm_bindgen(js_name = "httpDo")]
35679    fn httpDo1112124800(_ : & str, _ : JsValue, _ : js_sys::Function, ) -> js_sys::Promise;
35680}
35681
35682#[doc(hidden)]
35683impl FnOnce<(&'_ str,JsValue,js_sys::Function,)> for HttpDoInternalType {
35684    type Output = js_sys::Promise;
35685    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35686        httpDo1112124800.call(args)
35687    }
35688}
35689
35690#[doc(hidden)]
35691impl FnMut<(&'_ str,JsValue,js_sys::Function,)> for HttpDoInternalType {
35692    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35693        httpDo1112124800.call(args)
35694    }
35695}
35696
35697#[doc(hidden)]
35698impl Fn<(&'_ str,JsValue,js_sys::Function,)> for HttpDoInternalType {
35699    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,js_sys::Function,)) -> Self::Output {
35700        httpDo1112124800.call(args)
35701    }
35702}
35703
35704#[wasm_bindgen]
35705extern {
35706    #[wasm_bindgen(js_name = "httpDo")]
35707    fn httpDo1393396467(_ : & str, _ : JsValue, ) -> js_sys::Promise;
35708}
35709
35710#[doc(hidden)]
35711impl FnOnce<(&'_ str,JsValue,)> for HttpDoInternalType {
35712    type Output = js_sys::Promise;
35713    extern "rust-call" fn call_once(self, args: (&'_ str,JsValue,)) -> Self::Output {
35714        httpDo1393396467.call(args)
35715    }
35716}
35717
35718#[doc(hidden)]
35719impl FnMut<(&'_ str,JsValue,)> for HttpDoInternalType {
35720    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,JsValue,)) -> Self::Output {
35721        httpDo1393396467.call(args)
35722    }
35723}
35724
35725#[doc(hidden)]
35726impl Fn<(&'_ str,JsValue,)> for HttpDoInternalType {
35727    extern "rust-call" fn call(&self, args: (&'_ str,JsValue,)) -> Self::Output {
35728        httpDo1393396467.call(args)
35729    }
35730}
35731/// No description available
35732
35733///<h2>Examples</h2>
35734///
35735
35736#[doc=r###"```rust
35737function setup() {
35738  createCanvas(100, 100);
35739  background(200);
35740  text('click here to save', 10, 10, 70, 80);
35741}
35742
35743function mousePressed() {
35744  if (mouseX > 0 && mouseX < width && mouseY > 0 && mouseY < height) {
35745    const writer = createWriter('squares.txt');
35746    for (let i = 0; i < 10; i++) {
35747      writer.print(i * i);
35748    }
35749    writer.close();
35750    writer.clear();
35751  }
35752}
35753```"###]
35754/// <h2>Parameters</h2>
35755///
35756#[doc = r##"<code>name</code> name of the file to be created
35757
35758"##]
35759///
35760///
35761#[doc = r##"<code>extension?</code> 
35762"##]
35763///
35764
35765pub static createWriter: CreateWriterInternalType = CreateWriterInternalType;
35766#[doc(hidden)]
35767pub struct CreateWriterInternalType;
35768
35769
35770#[wasm_bindgen]
35771extern {
35772    #[wasm_bindgen(js_name = "createWriter")]
35773    fn createWriter1572387715(_ : & str, _ : & str, ) ->  PrintWriter;
35774}
35775
35776#[doc(hidden)]
35777impl FnOnce<(&'_ str,&'_ str,)> for CreateWriterInternalType {
35778    type Output =  PrintWriter;
35779    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
35780        createWriter1572387715.call(args)
35781    }
35782}
35783
35784#[doc(hidden)]
35785impl FnMut<(&'_ str,&'_ str,)> for CreateWriterInternalType {
35786    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
35787        createWriter1572387715.call(args)
35788    }
35789}
35790
35791#[doc(hidden)]
35792impl Fn<(&'_ str,&'_ str,)> for CreateWriterInternalType {
35793    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
35794        createWriter1572387715.call(args)
35795    }
35796}
35797
35798#[wasm_bindgen]
35799extern {
35800    #[wasm_bindgen(js_name = "createWriter")]
35801    fn createWriter543306631(_ : & str, ) ->  PrintWriter;
35802}
35803
35804#[doc(hidden)]
35805impl FnOnce<(&'_ str,)> for CreateWriterInternalType {
35806    type Output =  PrintWriter;
35807    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
35808        createWriter543306631.call(args)
35809    }
35810}
35811
35812#[doc(hidden)]
35813impl FnMut<(&'_ str,)> for CreateWriterInternalType {
35814    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
35815        createWriter543306631.call(args)
35816    }
35817}
35818
35819#[doc(hidden)]
35820impl Fn<(&'_ str,)> for CreateWriterInternalType {
35821    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
35822        createWriter543306631.call(args)
35823    }
35824}
35825#[doc=r##"<p>Saves a given element(image, text, json, csv, wav, or html) to the client's
35826computer. The first parameter can be a pointer to element we want to save.
35827The element can be one of <a href="#/p5.Element">p5.Element</a>,an Array of
35828Strings, an Array of JSON, a JSON object, a <a href="#/p5.Table">p5.Table
35829</a>, a <a href="#/p5.Image">p5.Image</a>, or a p5.SoundFile (requires
35830p5.sound). The second parameter is a filename (including extension).The
35831third parameter is for options specific to this type of object. This method
35832will save a file that fits the given parameters.
35833If it is called without specifying an element, by default it will save the
35834whole canvas as an image file. You can optionally specify a filename as
35835the first parameter in such a case.
35836<strong>Note that it is not recommended to
35837call this method within draw, as it will open a new save dialog on every
35838render.</strong></p>
35839"##]
35840///<h2>Examples</h2>
35841///
35842
35843#[doc=r###"```rust
35844 // Saves the canvas as an image
35845 cnv = createCanvas(300, 300);
35846 save(cnv, 'myCanvas.jpg');
35847
35848 // Saves the canvas as an image by default
35849 save('myCanvas.jpg');
35850 ```"###]
35851#[doc=r###"```rust
35852 // Saves p5.Image as an image
35853 img = createImage(10, 10);
35854 save(img, 'myImage.png');
35855 ```"###]
35856#[doc=r###"```rust
35857 // Saves p5.Renderer object as an image
35858 obj = createGraphics(100, 100);
35859 save(obj, 'myObject.png');
35860 ```"###]
35861#[doc=r###"```rust
35862 let myTable = new p5.Table();
35863 // Saves table as html file
35864 save(myTable, 'myTable.html');
35865
35866 // Comma Separated Values
35867 save(myTable, 'myTable.csv');
35868
35869 // Tab Separated Values
35870 save(myTable, 'myTable.tsv');
35871 ```"###]
35872#[doc=r###"```rust
35873 let myJSON = { a: 1, b: true };
35874
35875 // Saves pretty JSON
35876 save(myJSON, 'my.json');
35877
35878 // Optimizes JSON filesize
35879 save(myJSON, 'my.json', true);
35880 ```"###]
35881#[doc=r###"```rust
35882 // Saves array of strings to text file with line breaks after each item
35883 let arrayOfStrings = ['a', 'b'];
35884 save(arrayOfStrings, 'my.txt');
35885 ```"###]
35886/// <h2>Parameters</h2>
35887///
35888#[doc = r##"<code>objectOrFilename?</code> If filename is provided, will
35889                                           save canvas as an image with
35890                                           either png or jpg extension
35891                                           depending on the filename.
35892                                           If object is provided, will
35893                                           save depending on the object
35894                                           and filename (see examples
35895                                           above).
35896
35897"##]
35898///
35899///
35900#[doc = r##"<code>filename?</code> If an object is provided as the first
35901                             parameter, then the second parameter
35902                             indicates the filename,
35903                             and should include an appropriate
35904                             file extension (see examples above).
35905
35906"##]
35907///
35908///
35909#[doc = r##"<code>options?</code> Additional options depend on
35910                          filetype. For example, when saving JSON,
35911                          true indicates that the
35912                          output will be optimized for filesize,
35913                          rather than readability.
35914
35915"##]
35916///
35917
35918pub static save: SaveInternalType = SaveInternalType;
35919#[doc(hidden)]
35920pub struct SaveInternalType;
35921
35922
35923#[wasm_bindgen]
35924extern {
35925    #[wasm_bindgen(js_name = "save")]
35926    fn save2680295680(_ : JsValue, _ : & str, _ : bool, ) ;
35927}
35928
35929#[doc(hidden)]
35930impl FnOnce<(JsValue,&'_ str,bool,)> for SaveInternalType {
35931    type Output = ();
35932    extern "rust-call" fn call_once(self, args: (JsValue,&'_ str,bool,)) -> Self::Output {
35933        save2680295680.call(args)
35934    }
35935}
35936
35937#[doc(hidden)]
35938impl FnMut<(JsValue,&'_ str,bool,)> for SaveInternalType {
35939    extern "rust-call" fn call_mut(&mut self, args: (JsValue,&'_ str,bool,)) -> Self::Output {
35940        save2680295680.call(args)
35941    }
35942}
35943
35944#[doc(hidden)]
35945impl Fn<(JsValue,&'_ str,bool,)> for SaveInternalType {
35946    extern "rust-call" fn call(&self, args: (JsValue,&'_ str,bool,)) -> Self::Output {
35947        save2680295680.call(args)
35948    }
35949}
35950
35951#[wasm_bindgen]
35952extern {
35953    #[wasm_bindgen(js_name = "save")]
35954    fn save3326729834(_ : JsValue, _ : & str, _ : & str, ) ;
35955}
35956
35957#[doc(hidden)]
35958impl FnOnce<(JsValue,&'_ str,&'_ str,)> for SaveInternalType {
35959    type Output = ();
35960    extern "rust-call" fn call_once(self, args: (JsValue,&'_ str,&'_ str,)) -> Self::Output {
35961        save3326729834.call(args)
35962    }
35963}
35964
35965#[doc(hidden)]
35966impl FnMut<(JsValue,&'_ str,&'_ str,)> for SaveInternalType {
35967    extern "rust-call" fn call_mut(&mut self, args: (JsValue,&'_ str,&'_ str,)) -> Self::Output {
35968        save3326729834.call(args)
35969    }
35970}
35971
35972#[doc(hidden)]
35973impl Fn<(JsValue,&'_ str,&'_ str,)> for SaveInternalType {
35974    extern "rust-call" fn call(&self, args: (JsValue,&'_ str,&'_ str,)) -> Self::Output {
35975        save3326729834.call(args)
35976    }
35977}
35978
35979#[wasm_bindgen]
35980extern {
35981    #[wasm_bindgen(js_name = "save")]
35982    fn save2230704792(_ : JsValue, _ : & str, ) ;
35983}
35984
35985#[doc(hidden)]
35986impl FnOnce<(JsValue,&'_ str,)> for SaveInternalType {
35987    type Output = ();
35988    extern "rust-call" fn call_once(self, args: (JsValue,&'_ str,)) -> Self::Output {
35989        save2230704792.call(args)
35990    }
35991}
35992
35993#[doc(hidden)]
35994impl FnMut<(JsValue,&'_ str,)> for SaveInternalType {
35995    extern "rust-call" fn call_mut(&mut self, args: (JsValue,&'_ str,)) -> Self::Output {
35996        save2230704792.call(args)
35997    }
35998}
35999
36000#[doc(hidden)]
36001impl Fn<(JsValue,&'_ str,)> for SaveInternalType {
36002    extern "rust-call" fn call(&self, args: (JsValue,&'_ str,)) -> Self::Output {
36003        save2230704792.call(args)
36004    }
36005}
36006
36007#[wasm_bindgen]
36008extern {
36009    #[wasm_bindgen(js_name = "save")]
36010    fn save2651846913(_ : JsValue, ) ;
36011}
36012
36013#[doc(hidden)]
36014impl FnOnce<(JsValue,)> for SaveInternalType {
36015    type Output = ();
36016    extern "rust-call" fn call_once(self, args: (JsValue,)) -> Self::Output {
36017        save2651846913.call(args)
36018    }
36019}
36020
36021#[doc(hidden)]
36022impl FnMut<(JsValue,)> for SaveInternalType {
36023    extern "rust-call" fn call_mut(&mut self, args: (JsValue,)) -> Self::Output {
36024        save2651846913.call(args)
36025    }
36026}
36027
36028#[doc(hidden)]
36029impl Fn<(JsValue,)> for SaveInternalType {
36030    extern "rust-call" fn call(&self, args: (JsValue,)) -> Self::Output {
36031        save2651846913.call(args)
36032    }
36033}
36034
36035#[wasm_bindgen]
36036extern {
36037    #[wasm_bindgen(js_name = "save")]
36038    fn save2112178144(_ : & str, _ : & str, _ : bool, ) ;
36039}
36040
36041#[doc(hidden)]
36042impl FnOnce<(&'_ str,&'_ str,bool,)> for SaveInternalType {
36043    type Output = ();
36044    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
36045        save2112178144.call(args)
36046    }
36047}
36048
36049#[doc(hidden)]
36050impl FnMut<(&'_ str,&'_ str,bool,)> for SaveInternalType {
36051    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
36052        save2112178144.call(args)
36053    }
36054}
36055
36056#[doc(hidden)]
36057impl Fn<(&'_ str,&'_ str,bool,)> for SaveInternalType {
36058    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,bool,)) -> Self::Output {
36059        save2112178144.call(args)
36060    }
36061}
36062
36063#[wasm_bindgen]
36064extern {
36065    #[wasm_bindgen(js_name = "save")]
36066    fn save3998918152(_ : & str, _ : & str, _ : & str, ) ;
36067}
36068
36069#[doc(hidden)]
36070impl FnOnce<(&'_ str,&'_ str,&'_ str,)> for SaveInternalType {
36071    type Output = ();
36072    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
36073        save3998918152.call(args)
36074    }
36075}
36076
36077#[doc(hidden)]
36078impl FnMut<(&'_ str,&'_ str,&'_ str,)> for SaveInternalType {
36079    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
36080        save3998918152.call(args)
36081    }
36082}
36083
36084#[doc(hidden)]
36085impl Fn<(&'_ str,&'_ str,&'_ str,)> for SaveInternalType {
36086    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,&'_ str,)) -> Self::Output {
36087        save3998918152.call(args)
36088    }
36089}
36090
36091#[wasm_bindgen]
36092extern {
36093    #[wasm_bindgen(js_name = "save")]
36094    fn save3522320965(_ : & str, _ : & str, ) ;
36095}
36096
36097#[doc(hidden)]
36098impl FnOnce<(&'_ str,&'_ str,)> for SaveInternalType {
36099    type Output = ();
36100    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
36101        save3522320965.call(args)
36102    }
36103}
36104
36105#[doc(hidden)]
36106impl FnMut<(&'_ str,&'_ str,)> for SaveInternalType {
36107    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
36108        save3522320965.call(args)
36109    }
36110}
36111
36112#[doc(hidden)]
36113impl Fn<(&'_ str,&'_ str,)> for SaveInternalType {
36114    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
36115        save3522320965.call(args)
36116    }
36117}
36118
36119#[wasm_bindgen]
36120extern {
36121    #[wasm_bindgen(js_name = "save")]
36122    fn save4267564376(_ : & str, ) ;
36123}
36124
36125#[doc(hidden)]
36126impl FnOnce<(&'_ str,)> for SaveInternalType {
36127    type Output = ();
36128    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
36129        save4267564376.call(args)
36130    }
36131}
36132
36133#[doc(hidden)]
36134impl FnMut<(&'_ str,)> for SaveInternalType {
36135    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
36136        save4267564376.call(args)
36137    }
36138}
36139
36140#[doc(hidden)]
36141impl Fn<(&'_ str,)> for SaveInternalType {
36142    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
36143        save4267564376.call(args)
36144    }
36145}
36146
36147#[wasm_bindgen]
36148extern {
36149    #[wasm_bindgen(js_name = "save")]
36150    fn save2473877019() ;
36151}
36152
36153#[doc(hidden)]
36154impl FnOnce<()> for SaveInternalType {
36155    type Output = ();
36156    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
36157        save2473877019.call(args)
36158    }
36159}
36160
36161#[doc(hidden)]
36162impl FnMut<()> for SaveInternalType {
36163    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
36164        save2473877019.call(args)
36165    }
36166}
36167
36168#[doc(hidden)]
36169impl Fn<()> for SaveInternalType {
36170    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
36171        save2473877019.call(args)
36172    }
36173}
36174#[doc=r##"<p>Writes the contents of an Array or a JSON object to a .json file.
36175The file saving process and location of the saved file will
36176vary between web browsers.</p>
36177"##]
36178///<h2>Examples</h2>
36179///
36180
36181#[doc=r###"```rust
36182 let json = {}; // new  JSON Object
36183
36184 json.id = 0;
36185 json.species = 'Panthera leo';
36186 json.name = 'Lion';
36187
36188 function setup() {
36189 createCanvas(100, 100);
36190 background(200);
36191 text('click here to save', 10, 10, 70, 80);
36192 }
36193
36194 function mousePressed() {
36195 if (mouseX > 0 && mouseX < width && mouseY > 0 && mouseY < height) {
36196   saveJSON(json, 'lion.json');
36197 }
36198 }
36199
36200 // saves the following to a file called "lion.json":
36201 // {
36202 //   "id": 0,
36203 //   "species": "Panthera leo",
36204 //   "name": "Lion"
36205 // }
36206 ```"###]
36207/// <h2>Parameters</h2>
36208///
36209#[doc = r##"<code>json</code> 
36210"##]
36211///
36212///
36213#[doc = r##"<code>filename</code> 
36214"##]
36215///
36216///
36217#[doc = r##"<code>optimize?</code> If true, removes line breaks
36218                               and spaces from the output
36219                               file to optimize filesize
36220                               (but not readability).
36221
36222"##]
36223///
36224
36225pub static saveJSON: SaveJsonInternalType = SaveJsonInternalType;
36226#[doc(hidden)]
36227pub struct SaveJsonInternalType;
36228
36229
36230#[wasm_bindgen]
36231extern {
36232    #[wasm_bindgen(js_name = "saveJSON")]
36233    fn saveJSON549021301(_ : js_sys::Array, _ : & str, _ : bool, ) ;
36234}
36235
36236#[doc(hidden)]
36237impl FnOnce<(js_sys::Array,&'_ str,bool,)> for SaveJsonInternalType {
36238    type Output = ();
36239    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,bool,)) -> Self::Output {
36240        saveJSON549021301.call(args)
36241    }
36242}
36243
36244#[doc(hidden)]
36245impl FnMut<(js_sys::Array,&'_ str,bool,)> for SaveJsonInternalType {
36246    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,bool,)) -> Self::Output {
36247        saveJSON549021301.call(args)
36248    }
36249}
36250
36251#[doc(hidden)]
36252impl Fn<(js_sys::Array,&'_ str,bool,)> for SaveJsonInternalType {
36253    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,bool,)) -> Self::Output {
36254        saveJSON549021301.call(args)
36255    }
36256}
36257
36258#[wasm_bindgen]
36259extern {
36260    #[wasm_bindgen(js_name = "saveJSON")]
36261    fn saveJSON791113174(_ : js_sys::Array, _ : & str, ) ;
36262}
36263
36264#[doc(hidden)]
36265impl FnOnce<(js_sys::Array,&'_ str,)> for SaveJsonInternalType {
36266    type Output = ();
36267    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
36268        saveJSON791113174.call(args)
36269    }
36270}
36271
36272#[doc(hidden)]
36273impl FnMut<(js_sys::Array,&'_ str,)> for SaveJsonInternalType {
36274    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
36275        saveJSON791113174.call(args)
36276    }
36277}
36278
36279#[doc(hidden)]
36280impl Fn<(js_sys::Array,&'_ str,)> for SaveJsonInternalType {
36281    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
36282        saveJSON791113174.call(args)
36283    }
36284}
36285
36286#[wasm_bindgen]
36287extern {
36288    #[wasm_bindgen(js_name = "saveJSON")]
36289    fn saveJSON753564954(_ : JsValue, _ : & str, _ : bool, ) ;
36290}
36291
36292#[doc(hidden)]
36293impl FnOnce<(JsValue,&'_ str,bool,)> for SaveJsonInternalType {
36294    type Output = ();
36295    extern "rust-call" fn call_once(self, args: (JsValue,&'_ str,bool,)) -> Self::Output {
36296        saveJSON753564954.call(args)
36297    }
36298}
36299
36300#[doc(hidden)]
36301impl FnMut<(JsValue,&'_ str,bool,)> for SaveJsonInternalType {
36302    extern "rust-call" fn call_mut(&mut self, args: (JsValue,&'_ str,bool,)) -> Self::Output {
36303        saveJSON753564954.call(args)
36304    }
36305}
36306
36307#[doc(hidden)]
36308impl Fn<(JsValue,&'_ str,bool,)> for SaveJsonInternalType {
36309    extern "rust-call" fn call(&self, args: (JsValue,&'_ str,bool,)) -> Self::Output {
36310        saveJSON753564954.call(args)
36311    }
36312}
36313
36314#[wasm_bindgen]
36315extern {
36316    #[wasm_bindgen(js_name = "saveJSON")]
36317    fn saveJSON3900948025(_ : JsValue, _ : & str, ) ;
36318}
36319
36320#[doc(hidden)]
36321impl FnOnce<(JsValue,&'_ str,)> for SaveJsonInternalType {
36322    type Output = ();
36323    extern "rust-call" fn call_once(self, args: (JsValue,&'_ str,)) -> Self::Output {
36324        saveJSON3900948025.call(args)
36325    }
36326}
36327
36328#[doc(hidden)]
36329impl FnMut<(JsValue,&'_ str,)> for SaveJsonInternalType {
36330    extern "rust-call" fn call_mut(&mut self, args: (JsValue,&'_ str,)) -> Self::Output {
36331        saveJSON3900948025.call(args)
36332    }
36333}
36334
36335#[doc(hidden)]
36336impl Fn<(JsValue,&'_ str,)> for SaveJsonInternalType {
36337    extern "rust-call" fn call(&self, args: (JsValue,&'_ str,)) -> Self::Output {
36338        saveJSON3900948025.call(args)
36339    }
36340}
36341#[doc=r##"<p>Writes an array of Strings to a text file, one line per String.
36342The file saving process and location of the saved file will
36343vary between web browsers.</p>
36344"##]
36345///<h2>Examples</h2>
36346///
36347
36348#[doc=r###"```rust
36349 let words = 'apple bear cat dog';
36350
36351 // .split() outputs an Array
36352 let list = split(words, ' ');
36353
36354 function setup() {
36355 createCanvas(100, 100);
36356 background(200);
36357 text('click here to save', 10, 10, 70, 80);
36358 }
36359
36360 function mousePressed() {
36361 if (mouseX > 0 && mouseX < width && mouseY > 0 && mouseY < height) {
36362   saveStrings(list, 'nouns.txt');
36363 }
36364 }
36365
36366 // Saves the following to a file called 'nouns.txt':
36367 //
36368 // apple
36369 // bear
36370 // cat
36371 // dog
36372 ```"###]
36373/// <h2>Parameters</h2>
36374///
36375#[doc = r##"<code>list</code> string array to be written
36376
36377"##]
36378///
36379///
36380#[doc = r##"<code>filename</code> filename for output
36381
36382"##]
36383///
36384///
36385#[doc = r##"<code>extension?</code> the filename's extension
36386
36387"##]
36388///
36389///
36390#[doc = r##"<code>isCRLF?</code> if true, change line-break to CRLF
36391
36392"##]
36393///
36394
36395pub static saveStrings: SaveStringsInternalType = SaveStringsInternalType;
36396#[doc(hidden)]
36397pub struct SaveStringsInternalType;
36398
36399
36400#[wasm_bindgen]
36401extern {
36402    #[wasm_bindgen(js_name = "saveStrings")]
36403    fn saveStrings2912981391(_ : js_sys::Array, _ : & str, _ : & str, _ : bool, ) ;
36404}
36405
36406#[doc(hidden)]
36407impl FnOnce<(js_sys::Array,&'_ str,&'_ str,bool,)> for SaveStringsInternalType {
36408    type Output = ();
36409    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,&'_ str,bool,)) -> Self::Output {
36410        saveStrings2912981391.call(args)
36411    }
36412}
36413
36414#[doc(hidden)]
36415impl FnMut<(js_sys::Array,&'_ str,&'_ str,bool,)> for SaveStringsInternalType {
36416    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,&'_ str,bool,)) -> Self::Output {
36417        saveStrings2912981391.call(args)
36418    }
36419}
36420
36421#[doc(hidden)]
36422impl Fn<(js_sys::Array,&'_ str,&'_ str,bool,)> for SaveStringsInternalType {
36423    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,&'_ str,bool,)) -> Self::Output {
36424        saveStrings2912981391.call(args)
36425    }
36426}
36427
36428#[wasm_bindgen]
36429extern {
36430    #[wasm_bindgen(js_name = "saveStrings")]
36431    fn saveStrings797083405(_ : js_sys::Array, _ : & str, _ : & str, ) ;
36432}
36433
36434#[doc(hidden)]
36435impl FnOnce<(js_sys::Array,&'_ str,&'_ str,)> for SaveStringsInternalType {
36436    type Output = ();
36437    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,&'_ str,)) -> Self::Output {
36438        saveStrings797083405.call(args)
36439    }
36440}
36441
36442#[doc(hidden)]
36443impl FnMut<(js_sys::Array,&'_ str,&'_ str,)> for SaveStringsInternalType {
36444    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,&'_ str,)) -> Self::Output {
36445        saveStrings797083405.call(args)
36446    }
36447}
36448
36449#[doc(hidden)]
36450impl Fn<(js_sys::Array,&'_ str,&'_ str,)> for SaveStringsInternalType {
36451    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,&'_ str,)) -> Self::Output {
36452        saveStrings797083405.call(args)
36453    }
36454}
36455
36456#[wasm_bindgen]
36457extern {
36458    #[wasm_bindgen(js_name = "saveStrings")]
36459    fn saveStrings934674721(_ : js_sys::Array, _ : & str, ) ;
36460}
36461
36462#[doc(hidden)]
36463impl FnOnce<(js_sys::Array,&'_ str,)> for SaveStringsInternalType {
36464    type Output = ();
36465    extern "rust-call" fn call_once(self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
36466        saveStrings934674721.call(args)
36467    }
36468}
36469
36470#[doc(hidden)]
36471impl FnMut<(js_sys::Array,&'_ str,)> for SaveStringsInternalType {
36472    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
36473        saveStrings934674721.call(args)
36474    }
36475}
36476
36477#[doc(hidden)]
36478impl Fn<(js_sys::Array,&'_ str,)> for SaveStringsInternalType {
36479    extern "rust-call" fn call(&self, args: (js_sys::Array,&'_ str,)) -> Self::Output {
36480        saveStrings934674721.call(args)
36481    }
36482}
36483#[doc=r##"<p>Writes the contents of a <a href="#/p5.Table">Table</a> object to a file. Defaults to a
36484text file with comma-separated-values ('csv') but can also
36485use tab separation ('tsv'), or generate an HTML table ('html').
36486The file saving process and location of the saved file will
36487vary between web browsers.</p>
36488"##]
36489///<h2>Examples</h2>
36490///
36491
36492#[doc=r###"```rust
36493 let table;
36494
36495 function setup() {
36496 table = new p5.Table();
36497
36498 table.addColumn('id');
36499 table.addColumn('species');
36500 table.addColumn('name');
36501
36502 let newRow = table.addRow();
36503 newRow.setNum('id', table.getRowCount() - 1);
36504 newRow.setString('species', 'Panthera leo');
36505 newRow.setString('name', 'Lion');
36506
36507 // To save, un-comment next line then click 'run'
36508 // saveTable(table, 'new.csv');
36509 }
36510
36511 // Saves the following to a file called 'new.csv':
36512 // id,species,name
36513 // 0,Panthera leo,Lion
36514 ```"###]
36515/// <h2>Parameters</h2>
36516///
36517#[doc = r##"<code>Table</code> the Table object to save to a file
36518
36519"##]
36520///
36521///
36522#[doc = r##"<code>filename</code> the filename to which the Table should be saved
36523
36524"##]
36525///
36526///
36527#[doc = r##"<code>options?</code> can be one of "tsv", "csv", or "html"
36528
36529"##]
36530///
36531
36532pub static saveTable: SaveTableInternalType = SaveTableInternalType;
36533#[doc(hidden)]
36534pub struct SaveTableInternalType;
36535
36536
36537#[wasm_bindgen]
36538extern {
36539    #[wasm_bindgen(js_name = "saveTable")]
36540    fn saveTable3617999184(_ : & Table, _ : & str, _ : & str, ) ;
36541}
36542
36543#[doc(hidden)]
36544impl FnOnce<(&'_ Table,&'_ str,&'_ str,)> for SaveTableInternalType {
36545    type Output = ();
36546    extern "rust-call" fn call_once(self, args: (&'_ Table,&'_ str,&'_ str,)) -> Self::Output {
36547        saveTable3617999184.call(args)
36548    }
36549}
36550
36551#[doc(hidden)]
36552impl FnMut<(&'_ Table,&'_ str,&'_ str,)> for SaveTableInternalType {
36553    extern "rust-call" fn call_mut(&mut self, args: (&'_ Table,&'_ str,&'_ str,)) -> Self::Output {
36554        saveTable3617999184.call(args)
36555    }
36556}
36557
36558#[doc(hidden)]
36559impl Fn<(&'_ Table,&'_ str,&'_ str,)> for SaveTableInternalType {
36560    extern "rust-call" fn call(&self, args: (&'_ Table,&'_ str,&'_ str,)) -> Self::Output {
36561        saveTable3617999184.call(args)
36562    }
36563}
36564
36565#[wasm_bindgen]
36566extern {
36567    #[wasm_bindgen(js_name = "saveTable")]
36568    fn saveTable3970021730(_ : & Table, _ : & str, ) ;
36569}
36570
36571#[doc(hidden)]
36572impl FnOnce<(&'_ Table,&'_ str,)> for SaveTableInternalType {
36573    type Output = ();
36574    extern "rust-call" fn call_once(self, args: (&'_ Table,&'_ str,)) -> Self::Output {
36575        saveTable3970021730.call(args)
36576    }
36577}
36578
36579#[doc(hidden)]
36580impl FnMut<(&'_ Table,&'_ str,)> for SaveTableInternalType {
36581    extern "rust-call" fn call_mut(&mut self, args: (&'_ Table,&'_ str,)) -> Self::Output {
36582        saveTable3970021730.call(args)
36583    }
36584}
36585
36586#[doc(hidden)]
36587impl Fn<(&'_ Table,&'_ str,)> for SaveTableInternalType {
36588    extern "rust-call" fn call(&self, args: (&'_ Table,&'_ str,)) -> Self::Output {
36589        saveTable3970021730.call(args)
36590    }
36591}
36592#[doc=r##"<p>Adds a value to the end of an array. Extends the length of
36593the array by one. Maps to Array.push().</p>
36594"##]
36595///<h2>Examples</h2>
36596///
36597
36598#[doc=r###"```rust
36599function setup() {
36600  let myArray = ['Mango', 'Apple', 'Papaya'];
36601  print(myArray); // ['Mango', 'Apple', 'Papaya']
36602
36603  append(myArray, 'Peach');
36604  print(myArray); // ['Mango', 'Apple', 'Papaya', 'Peach']
36605}
36606```"###]
36607/// <h2>Parameters</h2>
36608///
36609#[doc = r##"<code>array</code> Array to append
36610
36611"##]
36612///
36613///
36614#[doc = r##"<code>value</code> to be added to the Array
36615
36616"##]
36617///
36618
36619pub static append: AppendInternalType = AppendInternalType;
36620#[doc(hidden)]
36621pub struct AppendInternalType;
36622
36623
36624#[wasm_bindgen]
36625extern {
36626    #[wasm_bindgen(js_name = "append")]
36627    fn append518383231(_ : js_sys::Array, _ : JsValue, ) -> js_sys::Array;
36628}
36629
36630#[doc(hidden)]
36631impl FnOnce<(js_sys::Array,JsValue,)> for AppendInternalType {
36632    type Output = js_sys::Array;
36633    extern "rust-call" fn call_once(self, args: (js_sys::Array,JsValue,)) -> Self::Output {
36634        append518383231.call(args)
36635    }
36636}
36637
36638#[doc(hidden)]
36639impl FnMut<(js_sys::Array,JsValue,)> for AppendInternalType {
36640    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,JsValue,)) -> Self::Output {
36641        append518383231.call(args)
36642    }
36643}
36644
36645#[doc(hidden)]
36646impl Fn<(js_sys::Array,JsValue,)> for AppendInternalType {
36647    extern "rust-call" fn call(&self, args: (js_sys::Array,JsValue,)) -> Self::Output {
36648        append518383231.call(args)
36649    }
36650}
36651#[doc=r##"<p>Copies an array (or part of an array) to another array. The src array is
36652copied to the dst array, beginning at the position specified by
36653srcPosition and into the position specified by dstPosition. The number of
36654elements to copy is determined by length. Note that copying values
36655overwrites existing values in the destination array. To append values
36656instead of overwriting them, use <a href="#/p5/concat">concat()</a>.</p>
36657<p>The simplified version with only two arguments, arrayCopy(src, dst),
36658copies an entire array to another of the same size. It is equivalent to
36659arrayCopy(src, 0, dst, 0, src.length).</p>
36660<p>Using this function is far more efficient for copying array data than
36661iterating through a for() loop and copying each element individually.</p>
36662"##]
36663///<h2>Examples</h2>
36664///
36665
36666#[doc=r###"```rust
36667let src = ['A', 'B', 'C'];
36668let dst = [1, 2, 3];
36669let srcPosition = 1;
36670let dstPosition = 0;
36671let length = 2;
36672
36673print(src); // ['A', 'B', 'C']
36674print(dst); // [ 1 ,  2 ,  3 ]
36675
36676arrayCopy(src, srcPosition, dst, dstPosition, length);
36677print(dst); // ['B', 'C', 3]
36678```"###]
36679/// <h2>Overloads</h2>
36680///
36681#[doc = r##"<code>src</code> the source Array
36682
36683"##]
36684///
36685///
36686#[doc = r##"<code>srcPosition</code> starting position in the source Array
36687
36688"##]
36689///
36690///
36691#[doc = r##"<code>dst</code> the destination Array
36692
36693"##]
36694///
36695///
36696#[doc = r##"<code>dstPosition</code> starting position in the destination Array
36697
36698"##]
36699///
36700///
36701#[doc = r##"<code>length</code> number of Array elements to be copied
36702
36703"##]
36704///
36705///
36706/// ---
36707///
36708///
36709#[doc = r##"<code>src</code> the source Array
36710
36711"##]
36712///
36713///
36714#[doc = r##"<code>dst</code> the destination Array
36715
36716"##]
36717///
36718///
36719#[doc = r##"<code>length?</code> number of Array elements to be copied
36720
36721"##]
36722///
36723///
36724/// ---
36725///
36726
36727pub static arrayCopy: ArrayCopyInternalType = ArrayCopyInternalType;
36728#[doc(hidden)]
36729pub struct ArrayCopyInternalType;
36730
36731
36732#[wasm_bindgen]
36733extern {
36734    #[wasm_bindgen(js_name = "arrayCopy")]
36735    fn arrayCopy3673153524(_ : js_sys::Array, _ : i32, _ : js_sys::Array, _ : i32, _ : i32, ) ;
36736}
36737
36738#[doc(hidden)]
36739impl FnOnce<(js_sys::Array,i32,js_sys::Array,i32,i32,)> for ArrayCopyInternalType {
36740    type Output = ();
36741    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,js_sys::Array,i32,i32,)) -> Self::Output {
36742        arrayCopy3673153524.call(args)
36743    }
36744}
36745
36746#[doc(hidden)]
36747impl FnMut<(js_sys::Array,i32,js_sys::Array,i32,i32,)> for ArrayCopyInternalType {
36748    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,js_sys::Array,i32,i32,)) -> Self::Output {
36749        arrayCopy3673153524.call(args)
36750    }
36751}
36752
36753#[doc(hidden)]
36754impl Fn<(js_sys::Array,i32,js_sys::Array,i32,i32,)> for ArrayCopyInternalType {
36755    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,js_sys::Array,i32,i32,)) -> Self::Output {
36756        arrayCopy3673153524.call(args)
36757    }
36758}
36759
36760#[wasm_bindgen]
36761extern {
36762    #[wasm_bindgen(js_name = "arrayCopy")]
36763    fn arrayCopy2477520722(_ : js_sys::Array, _ : js_sys::Array, _ : i32, ) ;
36764}
36765
36766#[doc(hidden)]
36767impl FnOnce<(js_sys::Array,js_sys::Array,i32,)> for ArrayCopyInternalType {
36768    type Output = ();
36769    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Array,i32,)) -> Self::Output {
36770        arrayCopy2477520722.call(args)
36771    }
36772}
36773
36774#[doc(hidden)]
36775impl FnMut<(js_sys::Array,js_sys::Array,i32,)> for ArrayCopyInternalType {
36776    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Array,i32,)) -> Self::Output {
36777        arrayCopy2477520722.call(args)
36778    }
36779}
36780
36781#[doc(hidden)]
36782impl Fn<(js_sys::Array,js_sys::Array,i32,)> for ArrayCopyInternalType {
36783    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Array,i32,)) -> Self::Output {
36784        arrayCopy2477520722.call(args)
36785    }
36786}
36787
36788#[wasm_bindgen]
36789extern {
36790    #[wasm_bindgen(js_name = "arrayCopy")]
36791    fn arrayCopy3659982786(_ : js_sys::Array, _ : js_sys::Array, ) ;
36792}
36793
36794#[doc(hidden)]
36795impl FnOnce<(js_sys::Array,js_sys::Array,)> for ArrayCopyInternalType {
36796    type Output = ();
36797    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Array,)) -> Self::Output {
36798        arrayCopy3659982786.call(args)
36799    }
36800}
36801
36802#[doc(hidden)]
36803impl FnMut<(js_sys::Array,js_sys::Array,)> for ArrayCopyInternalType {
36804    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Array,)) -> Self::Output {
36805        arrayCopy3659982786.call(args)
36806    }
36807}
36808
36809#[doc(hidden)]
36810impl Fn<(js_sys::Array,js_sys::Array,)> for ArrayCopyInternalType {
36811    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Array,)) -> Self::Output {
36812        arrayCopy3659982786.call(args)
36813    }
36814}
36815#[doc=r##"<p>Concatenates two arrays, maps to Array.concat(). Does not modify the
36816input arrays.</p>
36817"##]
36818///<h2>Examples</h2>
36819///
36820
36821#[doc=r###"```rust
36822function setup() {
36823  let arr1 = ['A', 'B', 'C'];
36824  let arr2 = [1, 2, 3];
36825
36826  print(arr1); // ['A','B','C']
36827  print(arr2); // [1,2,3]
36828
36829  let arr3 = concat(arr1, arr2);
36830
36831  print(arr1); // ['A','B','C']
36832  print(arr2); // [1, 2, 3]
36833  print(arr3); // ['A','B','C', 1, 2, 3]
36834}
36835```"###]
36836/// <h2>Parameters</h2>
36837///
36838#[doc = r##"<code>a</code> first Array to concatenate
36839
36840"##]
36841///
36842///
36843#[doc = r##"<code>b</code> second Array to concatenate
36844
36845"##]
36846///
36847
36848pub static concat: ConcatInternalType = ConcatInternalType;
36849#[doc(hidden)]
36850pub struct ConcatInternalType;
36851
36852
36853#[wasm_bindgen]
36854extern {
36855    #[wasm_bindgen(js_name = "concat")]
36856    fn concat487831388(_ : js_sys::Array, _ : js_sys::Array, ) -> js_sys::Array;
36857}
36858
36859#[doc(hidden)]
36860impl FnOnce<(js_sys::Array,js_sys::Array,)> for ConcatInternalType {
36861    type Output = js_sys::Array;
36862    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Array,)) -> Self::Output {
36863        concat487831388.call(args)
36864    }
36865}
36866
36867#[doc(hidden)]
36868impl FnMut<(js_sys::Array,js_sys::Array,)> for ConcatInternalType {
36869    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Array,)) -> Self::Output {
36870        concat487831388.call(args)
36871    }
36872}
36873
36874#[doc(hidden)]
36875impl Fn<(js_sys::Array,js_sys::Array,)> for ConcatInternalType {
36876    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Array,)) -> Self::Output {
36877        concat487831388.call(args)
36878    }
36879}
36880#[doc=r##"<p>Reverses the order of an array, maps to Array.reverse()</p>
36881"##]
36882///<h2>Examples</h2>
36883///
36884
36885#[doc=r###"```rust
36886function setup() {
36887  let myArray = ['A', 'B', 'C'];
36888  print(myArray); // ['A','B','C']
36889
36890  reverse(myArray);
36891  print(myArray); // ['C','B','A']
36892}
36893```"###]
36894/// <h2>Parameters</h2>
36895///
36896#[doc = r##"<code>list</code> Array to reverse
36897
36898"##]
36899///
36900
36901pub static reverse: ReverseInternalType = ReverseInternalType;
36902#[doc(hidden)]
36903pub struct ReverseInternalType;
36904
36905
36906#[wasm_bindgen]
36907extern {
36908    #[wasm_bindgen(js_name = "reverse")]
36909    fn reverse2346010962(_ : js_sys::Array, ) -> js_sys::Array;
36910}
36911
36912#[doc(hidden)]
36913impl FnOnce<(js_sys::Array,)> for ReverseInternalType {
36914    type Output = js_sys::Array;
36915    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
36916        reverse2346010962.call(args)
36917    }
36918}
36919
36920#[doc(hidden)]
36921impl FnMut<(js_sys::Array,)> for ReverseInternalType {
36922    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
36923        reverse2346010962.call(args)
36924    }
36925}
36926
36927#[doc(hidden)]
36928impl Fn<(js_sys::Array,)> for ReverseInternalType {
36929    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
36930        reverse2346010962.call(args)
36931    }
36932}
36933#[doc=r##"<p>Decreases an array by one element and returns the shortened array,
36934maps to Array.pop().</p>
36935"##]
36936///<h2>Examples</h2>
36937///
36938
36939#[doc=r###"```rust
36940function setup() {
36941  let myArray = ['A', 'B', 'C'];
36942  print(myArray); // ['A', 'B', 'C']
36943  let newArray = shorten(myArray);
36944  print(myArray); // ['A','B','C']
36945  print(newArray); // ['A','B']
36946}
36947```"###]
36948/// <h2>Parameters</h2>
36949///
36950#[doc = r##"<code>list</code> Array to shorten
36951
36952"##]
36953///
36954
36955pub static shorten: ShortenInternalType = ShortenInternalType;
36956#[doc(hidden)]
36957pub struct ShortenInternalType;
36958
36959
36960#[wasm_bindgen]
36961extern {
36962    #[wasm_bindgen(js_name = "shorten")]
36963    fn shorten3698192937(_ : js_sys::Array, ) -> js_sys::Array;
36964}
36965
36966#[doc(hidden)]
36967impl FnOnce<(js_sys::Array,)> for ShortenInternalType {
36968    type Output = js_sys::Array;
36969    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
36970        shorten3698192937.call(args)
36971    }
36972}
36973
36974#[doc(hidden)]
36975impl FnMut<(js_sys::Array,)> for ShortenInternalType {
36976    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
36977        shorten3698192937.call(args)
36978    }
36979}
36980
36981#[doc(hidden)]
36982impl Fn<(js_sys::Array,)> for ShortenInternalType {
36983    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
36984        shorten3698192937.call(args)
36985    }
36986}
36987#[doc=r##"<p>Randomizes the order of the elements of an array. Implements
36988<a href='http://Bost.Ocks.org/mike/shuffle/' target=_blank>
36989Fisher-Yates Shuffle Algorithm</a>.</p>
36990"##]
36991///<h2>Examples</h2>
36992///
36993
36994#[doc=r###"```rust
36995function setup() {
36996  let regularArr = ['ABC', 'def', createVector(), TAU, Math.E];
36997  print(regularArr);
36998  shuffle(regularArr, true); // force modifications to passed array
36999  print(regularArr);
37000
37001  // By default shuffle() returns a shuffled cloned array:
37002  let newArr = shuffle(regularArr);
37003  print(regularArr);
37004  print(newArr);
37005}
37006```"###]
37007/// <h2>Parameters</h2>
37008///
37009#[doc = r##"<code>array</code> Array to shuffle
37010
37011"##]
37012///
37013///
37014#[doc = r##"<code>bool?</code> modify passed array
37015
37016"##]
37017///
37018
37019pub static shuffle: ShuffleInternalType = ShuffleInternalType;
37020#[doc(hidden)]
37021pub struct ShuffleInternalType;
37022
37023
37024#[wasm_bindgen]
37025extern {
37026    #[wasm_bindgen(js_name = "shuffle")]
37027    fn shuffle2156651590(_ : js_sys::Array, _ : bool, ) -> js_sys::Array;
37028}
37029
37030#[doc(hidden)]
37031impl FnOnce<(js_sys::Array,bool,)> for ShuffleInternalType {
37032    type Output = js_sys::Array;
37033    extern "rust-call" fn call_once(self, args: (js_sys::Array,bool,)) -> Self::Output {
37034        shuffle2156651590.call(args)
37035    }
37036}
37037
37038#[doc(hidden)]
37039impl FnMut<(js_sys::Array,bool,)> for ShuffleInternalType {
37040    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,bool,)) -> Self::Output {
37041        shuffle2156651590.call(args)
37042    }
37043}
37044
37045#[doc(hidden)]
37046impl Fn<(js_sys::Array,bool,)> for ShuffleInternalType {
37047    extern "rust-call" fn call(&self, args: (js_sys::Array,bool,)) -> Self::Output {
37048        shuffle2156651590.call(args)
37049    }
37050}
37051
37052#[wasm_bindgen]
37053extern {
37054    #[wasm_bindgen(js_name = "shuffle")]
37055    fn shuffle3507977306(_ : js_sys::Array, ) -> js_sys::Array;
37056}
37057
37058#[doc(hidden)]
37059impl FnOnce<(js_sys::Array,)> for ShuffleInternalType {
37060    type Output = js_sys::Array;
37061    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
37062        shuffle3507977306.call(args)
37063    }
37064}
37065
37066#[doc(hidden)]
37067impl FnMut<(js_sys::Array,)> for ShuffleInternalType {
37068    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
37069        shuffle3507977306.call(args)
37070    }
37071}
37072
37073#[doc(hidden)]
37074impl Fn<(js_sys::Array,)> for ShuffleInternalType {
37075    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
37076        shuffle3507977306.call(args)
37077    }
37078}
37079#[doc=r##"<p>Sorts an array of numbers from smallest to largest, or puts an array of
37080words in alphabetical order. The original array is not modified; a
37081re-ordered array is returned. The count parameter states the number of
37082elements to sort. For example, if there are 12 elements in an array and
37083count is set to 5, only the first 5 elements in the array will be sorted.</p>
37084"##]
37085///<h2>Examples</h2>
37086///
37087
37088#[doc=r###"```rust
37089function setup() {
37090  let words = ['banana', 'apple', 'pear', 'lime'];
37091  print(words); // ['banana', 'apple', 'pear', 'lime']
37092  let count = 4; // length of array
37093
37094  words = sort(words, count);
37095  print(words); // ['apple', 'banana', 'lime', 'pear']
37096}
37097```"###]
37098#[doc=r###"```rust
37099function setup() {
37100  let numbers = [2, 6, 1, 5, 14, 9, 8, 12];
37101  print(numbers); // [2, 6, 1, 5, 14, 9, 8, 12]
37102  let count = 5; // Less than the length of the array
37103
37104  numbers = sort(numbers, count);
37105  print(numbers); // [1,2,5,6,14,9,8,12]
37106}
37107```"###]
37108/// <h2>Parameters</h2>
37109///
37110#[doc = r##"<code>list</code> Array to sort
37111
37112"##]
37113///
37114///
37115#[doc = r##"<code>count?</code> number of elements to sort, starting from 0
37116
37117"##]
37118///
37119
37120pub static sort: SortInternalType = SortInternalType;
37121#[doc(hidden)]
37122pub struct SortInternalType;
37123
37124
37125#[wasm_bindgen]
37126extern {
37127    #[wasm_bindgen(js_name = "sort")]
37128    fn sort544457332(_ : js_sys::Array, _ : i32, ) -> js_sys::Array;
37129}
37130
37131#[doc(hidden)]
37132impl FnOnce<(js_sys::Array,i32,)> for SortInternalType {
37133    type Output = js_sys::Array;
37134    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,)) -> Self::Output {
37135        sort544457332.call(args)
37136    }
37137}
37138
37139#[doc(hidden)]
37140impl FnMut<(js_sys::Array,i32,)> for SortInternalType {
37141    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,)) -> Self::Output {
37142        sort544457332.call(args)
37143    }
37144}
37145
37146#[doc(hidden)]
37147impl Fn<(js_sys::Array,i32,)> for SortInternalType {
37148    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,)) -> Self::Output {
37149        sort544457332.call(args)
37150    }
37151}
37152
37153#[wasm_bindgen]
37154extern {
37155    #[wasm_bindgen(js_name = "sort")]
37156    fn sort2543696511(_ : js_sys::Array, ) -> js_sys::Array;
37157}
37158
37159#[doc(hidden)]
37160impl FnOnce<(js_sys::Array,)> for SortInternalType {
37161    type Output = js_sys::Array;
37162    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
37163        sort2543696511.call(args)
37164    }
37165}
37166
37167#[doc(hidden)]
37168impl FnMut<(js_sys::Array,)> for SortInternalType {
37169    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
37170        sort2543696511.call(args)
37171    }
37172}
37173
37174#[doc(hidden)]
37175impl Fn<(js_sys::Array,)> for SortInternalType {
37176    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
37177        sort2543696511.call(args)
37178    }
37179}
37180#[doc=r##"<p>Inserts a value or an array of values into an existing array. The first
37181parameter specifies the initial array to be modified, and the second
37182parameter defines the data to be inserted. The third parameter is an index
37183value which specifies the array position from which to insert data.
37184(Remember that array index numbering starts at zero, so the first position
37185is 0, the second position is 1, and so on.)</p>
37186"##]
37187///<h2>Examples</h2>
37188///
37189
37190#[doc=r###"```rust
37191function setup() {
37192  let myArray = [0, 1, 2, 3, 4];
37193  let insArray = ['A', 'B', 'C'];
37194  print(myArray); // [0, 1, 2, 3, 4]
37195  print(insArray); // ['A','B','C']
37196
37197  splice(myArray, insArray, 3);
37198  print(myArray); // [0,1,2,'A','B','C',3,4]
37199}
37200```"###]
37201/// <h2>Parameters</h2>
37202///
37203#[doc = r##"<code>list</code> Array to splice into
37204
37205"##]
37206///
37207///
37208#[doc = r##"<code>value</code> value to be spliced in
37209
37210"##]
37211///
37212///
37213#[doc = r##"<code>position</code> in the array from which to insert data
37214
37215"##]
37216///
37217
37218pub static splice: SpliceInternalType = SpliceInternalType;
37219#[doc(hidden)]
37220pub struct SpliceInternalType;
37221
37222
37223#[wasm_bindgen]
37224extern {
37225    #[wasm_bindgen(js_name = "splice")]
37226    fn splice4113154429(_ : js_sys::Array, _ : JsValue, _ : i32, ) -> js_sys::Array;
37227}
37228
37229#[doc(hidden)]
37230impl FnOnce<(js_sys::Array,JsValue,i32,)> for SpliceInternalType {
37231    type Output = js_sys::Array;
37232    extern "rust-call" fn call_once(self, args: (js_sys::Array,JsValue,i32,)) -> Self::Output {
37233        splice4113154429.call(args)
37234    }
37235}
37236
37237#[doc(hidden)]
37238impl FnMut<(js_sys::Array,JsValue,i32,)> for SpliceInternalType {
37239    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,JsValue,i32,)) -> Self::Output {
37240        splice4113154429.call(args)
37241    }
37242}
37243
37244#[doc(hidden)]
37245impl Fn<(js_sys::Array,JsValue,i32,)> for SpliceInternalType {
37246    extern "rust-call" fn call(&self, args: (js_sys::Array,JsValue,i32,)) -> Self::Output {
37247        splice4113154429.call(args)
37248    }
37249}
37250#[doc=r##"<p>Extracts an array of elements from an existing array. The list parameter
37251defines the array from which the elements will be copied, and the start
37252and count parameters specify which elements to extract. If no count is
37253given, elements will be extracted from the start to the end of the array.
37254When specifying the start, remember that the first array element is 0.
37255This function does not change the source array.</p>
37256"##]
37257///<h2>Examples</h2>
37258///
37259
37260#[doc=r###"```rust
37261function setup() {
37262  let myArray = [1, 2, 3, 4, 5];
37263  print(myArray); // [1, 2, 3, 4, 5]
37264
37265  let sub1 = subset(myArray, 0, 3);
37266  let sub2 = subset(myArray, 2, 2);
37267  print(sub1); // [1,2,3]
37268  print(sub2); // [3,4]
37269}
37270```"###]
37271/// <h2>Parameters</h2>
37272///
37273#[doc = r##"<code>list</code> Array to extract from
37274
37275"##]
37276///
37277///
37278#[doc = r##"<code>start</code> position to begin
37279
37280"##]
37281///
37282///
37283#[doc = r##"<code>count?</code> number of values to extract
37284
37285"##]
37286///
37287
37288pub static subset: SubsetInternalType = SubsetInternalType;
37289#[doc(hidden)]
37290pub struct SubsetInternalType;
37291
37292
37293#[wasm_bindgen]
37294extern {
37295    #[wasm_bindgen(js_name = "subset")]
37296    fn subset2937050010(_ : js_sys::Array, _ : i32, _ : i32, ) -> js_sys::Array;
37297}
37298
37299#[doc(hidden)]
37300impl FnOnce<(js_sys::Array,i32,i32,)> for SubsetInternalType {
37301    type Output = js_sys::Array;
37302    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
37303        subset2937050010.call(args)
37304    }
37305}
37306
37307#[doc(hidden)]
37308impl FnMut<(js_sys::Array,i32,i32,)> for SubsetInternalType {
37309    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
37310        subset2937050010.call(args)
37311    }
37312}
37313
37314#[doc(hidden)]
37315impl Fn<(js_sys::Array,i32,i32,)> for SubsetInternalType {
37316    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,i32,)) -> Self::Output {
37317        subset2937050010.call(args)
37318    }
37319}
37320
37321#[wasm_bindgen]
37322extern {
37323    #[wasm_bindgen(js_name = "subset")]
37324    fn subset3388893379(_ : js_sys::Array, _ : i32, ) -> js_sys::Array;
37325}
37326
37327#[doc(hidden)]
37328impl FnOnce<(js_sys::Array,i32,)> for SubsetInternalType {
37329    type Output = js_sys::Array;
37330    extern "rust-call" fn call_once(self, args: (js_sys::Array,i32,)) -> Self::Output {
37331        subset3388893379.call(args)
37332    }
37333}
37334
37335#[doc(hidden)]
37336impl FnMut<(js_sys::Array,i32,)> for SubsetInternalType {
37337    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,i32,)) -> Self::Output {
37338        subset3388893379.call(args)
37339    }
37340}
37341
37342#[doc(hidden)]
37343impl Fn<(js_sys::Array,i32,)> for SubsetInternalType {
37344    extern "rust-call" fn call(&self, args: (js_sys::Array,i32,)) -> Self::Output {
37345        subset3388893379.call(args)
37346    }
37347}
37348#[doc=r##"<p>Creates a new <a href="#/p5.Image">p5.Image</a> (the datatype for storing images). This provides a
37349fresh buffer of pixels to play with. Set the size of the buffer with the
37350width and height parameters.</p>
37351<p>.<a href="#/p5.Image/pixels">pixels</a> gives access to an array containing the values for all the pixels
37352in the display window.
37353These values are numbers. This array is the size (including an appropriate
37354factor for the <a href="#/p5/pixelDensity">pixelDensity</a>) of the display window x4,
37355representing the R, G, B, A values in order for each pixel, moving from
37356left to right across each row, then down each column. See .<a href="#/p5.Image/pixels">pixels</a> for
37357more info. It may also be simpler to use <a href="#/p5.Image/set">set()</a> or <a href="#/p5.Image/get">get()</a>.</p>
37358<p>Before accessing the pixels of an image, the data must loaded with the
37359<a href="#/p5.Image/loadPixels">loadPixels()</a> function. After the array data has been modified, the
37360<a href="#/p5.Image/updatePixels">updatePixels()</a> function must be run to update the changes.</p>
37361"##]
37362///<h2>Examples</h2>
37363///
37364
37365#[doc=r###"```rust
37366let img = createImage(66, 66);
37367img.loadPixels();
37368for (let i = 0; i < img.width; i++) {
37369  for (let j = 0; j < img.height; j++) {
37370    img.set(i, j, color(0, 90, 102));
37371  }
37372}
37373img.updatePixels();
37374image(img, 17, 17);
37375```"###]
37376#[doc=r###"```rust
37377let img = createImage(66, 66);
37378img.loadPixels();
37379for (let i = 0; i < img.width; i++) {
37380  for (let j = 0; j < img.height; j++) {
37381    img.set(i, j, color(0, 90, 102, (i % img.width) * 2));
37382  }
37383}
37384img.updatePixels();
37385image(img, 17, 17);
37386image(img, 34, 34);
37387```"###]
37388#[doc=r###"```rust
37389let pink = color(255, 102, 204);
37390let img = createImage(66, 66);
37391img.loadPixels();
37392let d = pixelDensity();
37393let halfImage = 4 * (img.width * d) * (img.height / 2 * d);
37394for (let i = 0; i < halfImage; i += 4) {
37395  img.pixels[i] = red(pink);
37396  img.pixels[i + 1] = green(pink);
37397  img.pixels[i + 2] = blue(pink);
37398  img.pixels[i + 3] = alpha(pink);
37399}
37400img.updatePixels();
37401image(img, 17, 17);
37402```"###]
37403/// <h2>Parameters</h2>
37404///
37405#[doc = r##"<code>width</code> width in pixels
37406
37407"##]
37408///
37409///
37410#[doc = r##"<code>height</code> height in pixels
37411
37412"##]
37413///
37414
37415pub static createImage: CreateImageInternalType = CreateImageInternalType;
37416#[doc(hidden)]
37417pub struct CreateImageInternalType;
37418
37419
37420#[wasm_bindgen]
37421extern {
37422    #[wasm_bindgen(js_name = "createImage")]
37423    fn createImage2559448072(_ : i32, _ : i32, ) ->  Image;
37424}
37425
37426#[doc(hidden)]
37427impl FnOnce<(i32,i32,)> for CreateImageInternalType {
37428    type Output =  Image;
37429    extern "rust-call" fn call_once(self, args: (i32,i32,)) -> Self::Output {
37430        createImage2559448072.call(args)
37431    }
37432}
37433
37434#[doc(hidden)]
37435impl FnMut<(i32,i32,)> for CreateImageInternalType {
37436    extern "rust-call" fn call_mut(&mut self, args: (i32,i32,)) -> Self::Output {
37437        createImage2559448072.call(args)
37438    }
37439}
37440
37441#[doc(hidden)]
37442impl Fn<(i32,i32,)> for CreateImageInternalType {
37443    extern "rust-call" fn call(&self, args: (i32,i32,)) -> Self::Output {
37444        createImage2559448072.call(args)
37445    }
37446}
37447#[doc=r##"<p>Save the current canvas as an image. The browser will either save the
37448file immediately, or prompt the user with a dialogue window.</p>
37449"##]
37450///<h2>Examples</h2>
37451///
37452
37453#[doc=r###"```rust
37454 function setup() {
37455 let c = createCanvas(100, 100);
37456 background(255, 0, 0);
37457 saveCanvas(c, 'myCanvas', 'jpg');
37458 }
37459 ```"###]
37460#[doc=r###"```rust
37461 // note that this example has the same result as above
37462 // if no canvas is specified, defaults to main canvas
37463 function setup() {
37464 let c = createCanvas(100, 100);
37465 background(255, 0, 0);
37466 saveCanvas('myCanvas', 'jpg');
37467
37468 // all of the following are valid
37469 saveCanvas(c, 'myCanvas', 'jpg');
37470 saveCanvas(c, 'myCanvas.jpg');
37471 saveCanvas(c, 'myCanvas');
37472 saveCanvas(c);
37473 saveCanvas('myCanvas', 'png');
37474 saveCanvas('myCanvas');
37475 saveCanvas();
37476 }
37477 ```"###]
37478/// <h2>Overloads</h2>
37479///
37480#[doc = r##"<code>selectedCanvas</code> a variable
37481                                representing a specific html5 canvas (optional)
37482
37483"##]
37484///
37485///
37486#[doc = r##"<code>filename?</code> 
37487"##]
37488///
37489///
37490#[doc = r##"<code>extension?</code> 'jpg' or 'png'
37491
37492"##]
37493///
37494///
37495/// ---
37496///
37497///
37498#[doc = r##"<code>filename?</code> 
37499"##]
37500///
37501///
37502#[doc = r##"<code>extension?</code> 'jpg' or 'png'
37503
37504"##]
37505///
37506///
37507/// ---
37508///
37509
37510pub static saveCanvas: SaveCanvasInternalType = SaveCanvasInternalType;
37511#[doc(hidden)]
37512pub struct SaveCanvasInternalType;
37513
37514
37515#[wasm_bindgen]
37516extern {
37517    #[wasm_bindgen(js_name = "saveCanvas")]
37518    fn saveCanvas1517594658(_ : & Element, _ : & str, _ : & str, ) ;
37519}
37520
37521#[doc(hidden)]
37522impl FnOnce<(&'_ Element,&'_ str,&'_ str,)> for SaveCanvasInternalType {
37523    type Output = ();
37524    extern "rust-call" fn call_once(self, args: (&'_ Element,&'_ str,&'_ str,)) -> Self::Output {
37525        saveCanvas1517594658.call(args)
37526    }
37527}
37528
37529#[doc(hidden)]
37530impl FnMut<(&'_ Element,&'_ str,&'_ str,)> for SaveCanvasInternalType {
37531    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,&'_ str,&'_ str,)) -> Self::Output {
37532        saveCanvas1517594658.call(args)
37533    }
37534}
37535
37536#[doc(hidden)]
37537impl Fn<(&'_ Element,&'_ str,&'_ str,)> for SaveCanvasInternalType {
37538    extern "rust-call" fn call(&self, args: (&'_ Element,&'_ str,&'_ str,)) -> Self::Output {
37539        saveCanvas1517594658.call(args)
37540    }
37541}
37542
37543#[wasm_bindgen]
37544extern {
37545    #[wasm_bindgen(js_name = "saveCanvas")]
37546    fn saveCanvas1267909474(_ : & Element, _ : & str, ) ;
37547}
37548
37549#[doc(hidden)]
37550impl FnOnce<(&'_ Element,&'_ str,)> for SaveCanvasInternalType {
37551    type Output = ();
37552    extern "rust-call" fn call_once(self, args: (&'_ Element,&'_ str,)) -> Self::Output {
37553        saveCanvas1267909474.call(args)
37554    }
37555}
37556
37557#[doc(hidden)]
37558impl FnMut<(&'_ Element,&'_ str,)> for SaveCanvasInternalType {
37559    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,&'_ str,)) -> Self::Output {
37560        saveCanvas1267909474.call(args)
37561    }
37562}
37563
37564#[doc(hidden)]
37565impl Fn<(&'_ Element,&'_ str,)> for SaveCanvasInternalType {
37566    extern "rust-call" fn call(&self, args: (&'_ Element,&'_ str,)) -> Self::Output {
37567        saveCanvas1267909474.call(args)
37568    }
37569}
37570
37571#[wasm_bindgen]
37572extern {
37573    #[wasm_bindgen(js_name = "saveCanvas")]
37574    fn saveCanvas663379273(_ : & Element, ) ;
37575}
37576
37577#[doc(hidden)]
37578impl FnOnce<(&'_ Element,)> for SaveCanvasInternalType {
37579    type Output = ();
37580    extern "rust-call" fn call_once(self, args: (&'_ Element,)) -> Self::Output {
37581        saveCanvas663379273.call(args)
37582    }
37583}
37584
37585#[doc(hidden)]
37586impl FnMut<(&'_ Element,)> for SaveCanvasInternalType {
37587    extern "rust-call" fn call_mut(&mut self, args: (&'_ Element,)) -> Self::Output {
37588        saveCanvas663379273.call(args)
37589    }
37590}
37591
37592#[doc(hidden)]
37593impl Fn<(&'_ Element,)> for SaveCanvasInternalType {
37594    extern "rust-call" fn call(&self, args: (&'_ Element,)) -> Self::Output {
37595        saveCanvas663379273.call(args)
37596    }
37597}
37598
37599#[wasm_bindgen]
37600extern {
37601    #[wasm_bindgen(js_name = "saveCanvas")]
37602    fn saveCanvas3400503945(_ : HTMLCanvasElement, _ : & str, _ : & str, ) ;
37603}
37604
37605#[doc(hidden)]
37606impl FnOnce<(HTMLCanvasElement,&'_ str,&'_ str,)> for SaveCanvasInternalType {
37607    type Output = ();
37608    extern "rust-call" fn call_once(self, args: (HTMLCanvasElement,&'_ str,&'_ str,)) -> Self::Output {
37609        saveCanvas3400503945.call(args)
37610    }
37611}
37612
37613#[doc(hidden)]
37614impl FnMut<(HTMLCanvasElement,&'_ str,&'_ str,)> for SaveCanvasInternalType {
37615    extern "rust-call" fn call_mut(&mut self, args: (HTMLCanvasElement,&'_ str,&'_ str,)) -> Self::Output {
37616        saveCanvas3400503945.call(args)
37617    }
37618}
37619
37620#[doc(hidden)]
37621impl Fn<(HTMLCanvasElement,&'_ str,&'_ str,)> for SaveCanvasInternalType {
37622    extern "rust-call" fn call(&self, args: (HTMLCanvasElement,&'_ str,&'_ str,)) -> Self::Output {
37623        saveCanvas3400503945.call(args)
37624    }
37625}
37626
37627#[wasm_bindgen]
37628extern {
37629    #[wasm_bindgen(js_name = "saveCanvas")]
37630    fn saveCanvas2597786788(_ : HTMLCanvasElement, _ : & str, ) ;
37631}
37632
37633#[doc(hidden)]
37634impl FnOnce<(HTMLCanvasElement,&'_ str,)> for SaveCanvasInternalType {
37635    type Output = ();
37636    extern "rust-call" fn call_once(self, args: (HTMLCanvasElement,&'_ str,)) -> Self::Output {
37637        saveCanvas2597786788.call(args)
37638    }
37639}
37640
37641#[doc(hidden)]
37642impl FnMut<(HTMLCanvasElement,&'_ str,)> for SaveCanvasInternalType {
37643    extern "rust-call" fn call_mut(&mut self, args: (HTMLCanvasElement,&'_ str,)) -> Self::Output {
37644        saveCanvas2597786788.call(args)
37645    }
37646}
37647
37648#[doc(hidden)]
37649impl Fn<(HTMLCanvasElement,&'_ str,)> for SaveCanvasInternalType {
37650    extern "rust-call" fn call(&self, args: (HTMLCanvasElement,&'_ str,)) -> Self::Output {
37651        saveCanvas2597786788.call(args)
37652    }
37653}
37654
37655#[wasm_bindgen]
37656extern {
37657    #[wasm_bindgen(js_name = "saveCanvas")]
37658    fn saveCanvas2513720672(_ : HTMLCanvasElement, ) ;
37659}
37660
37661#[doc(hidden)]
37662impl FnOnce<(HTMLCanvasElement,)> for SaveCanvasInternalType {
37663    type Output = ();
37664    extern "rust-call" fn call_once(self, args: (HTMLCanvasElement,)) -> Self::Output {
37665        saveCanvas2513720672.call(args)
37666    }
37667}
37668
37669#[doc(hidden)]
37670impl FnMut<(HTMLCanvasElement,)> for SaveCanvasInternalType {
37671    extern "rust-call" fn call_mut(&mut self, args: (HTMLCanvasElement,)) -> Self::Output {
37672        saveCanvas2513720672.call(args)
37673    }
37674}
37675
37676#[doc(hidden)]
37677impl Fn<(HTMLCanvasElement,)> for SaveCanvasInternalType {
37678    extern "rust-call" fn call(&self, args: (HTMLCanvasElement,)) -> Self::Output {
37679        saveCanvas2513720672.call(args)
37680    }
37681}
37682
37683#[wasm_bindgen]
37684extern {
37685    #[wasm_bindgen(js_name = "saveCanvas")]
37686    fn saveCanvas2811927246(_ : & str, _ : & str, ) ;
37687}
37688
37689#[doc(hidden)]
37690impl FnOnce<(&'_ str,&'_ str,)> for SaveCanvasInternalType {
37691    type Output = ();
37692    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,)) -> Self::Output {
37693        saveCanvas2811927246.call(args)
37694    }
37695}
37696
37697#[doc(hidden)]
37698impl FnMut<(&'_ str,&'_ str,)> for SaveCanvasInternalType {
37699    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,)) -> Self::Output {
37700        saveCanvas2811927246.call(args)
37701    }
37702}
37703
37704#[doc(hidden)]
37705impl Fn<(&'_ str,&'_ str,)> for SaveCanvasInternalType {
37706    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,)) -> Self::Output {
37707        saveCanvas2811927246.call(args)
37708    }
37709}
37710
37711#[wasm_bindgen]
37712extern {
37713    #[wasm_bindgen(js_name = "saveCanvas")]
37714    fn saveCanvas2664072050(_ : & str, ) ;
37715}
37716
37717#[doc(hidden)]
37718impl FnOnce<(&'_ str,)> for SaveCanvasInternalType {
37719    type Output = ();
37720    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
37721        saveCanvas2664072050.call(args)
37722    }
37723}
37724
37725#[doc(hidden)]
37726impl FnMut<(&'_ str,)> for SaveCanvasInternalType {
37727    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
37728        saveCanvas2664072050.call(args)
37729    }
37730}
37731
37732#[doc(hidden)]
37733impl Fn<(&'_ str,)> for SaveCanvasInternalType {
37734    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
37735        saveCanvas2664072050.call(args)
37736    }
37737}
37738
37739#[wasm_bindgen]
37740extern {
37741    #[wasm_bindgen(js_name = "saveCanvas")]
37742    fn saveCanvas2961206942() ;
37743}
37744
37745#[doc(hidden)]
37746impl FnOnce<()> for SaveCanvasInternalType {
37747    type Output = ();
37748    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
37749        saveCanvas2961206942.call(args)
37750    }
37751}
37752
37753#[doc(hidden)]
37754impl FnMut<()> for SaveCanvasInternalType {
37755    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
37756        saveCanvas2961206942.call(args)
37757    }
37758}
37759
37760#[doc(hidden)]
37761impl Fn<()> for SaveCanvasInternalType {
37762    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
37763        saveCanvas2961206942.call(args)
37764    }
37765}
37766#[doc=r##"<p>Capture a sequence of frames that can be used to create a movie.
37767Accepts a callback. For example, you may wish to send the frames
37768to a server where they can be stored or converted into a movie.
37769If no callback is provided, the browser will pop up save dialogues in an
37770attempt to download all of the images that have just been created. With the
37771callback provided the image data isn't saved by default but instead passed
37772as an argument to the callback function as an array of objects, with the
37773size of array equal to the total number of frames.</p>
37774<p>Note that <a href="#/p5.Image/saveFrames">saveFrames()</a> will only save the first 15 frames of an animation.
37775To export longer animations, you might look into a library like
37776<a href="https://github.com/spite/ccapture.js/">ccapture.js</a>.</p>
37777"##]
37778///<h2>Examples</h2>
37779///
37780
37781#[doc=r###"```rust
37782 function draw() {
37783 background(mouseX);
37784 }
37785
37786 function mousePressed() {
37787 saveFrames('out', 'png', 1, 25, data => {
37788   print(data);
37789 });
37790 }
37791```"###]
37792/// <h2>Parameters</h2>
37793///
37794#[doc = r##"<code>filename</code> 
37795"##]
37796///
37797///
37798#[doc = r##"<code>extension</code> 'jpg' or 'png'
37799
37800"##]
37801///
37802///
37803#[doc = r##"<code>duration</code> Duration in seconds to save the frames for.
37804
37805"##]
37806///
37807///
37808#[doc = r##"<code>framerate</code> Framerate to save the frames in.
37809
37810"##]
37811///
37812///
37813#[doc = r##"<code>callback?</code> A callback function that will be executed
37814                                to handle the image data. This function
37815                                should accept an array as argument. The
37816                                array will contain the specified number of
37817                                frames of objects. Each object has three
37818                                properties: imageData - an
37819                                image/octet-stream, filename and extension.
37820
37821"##]
37822///
37823
37824pub static saveFrames: SaveFramesInternalType = SaveFramesInternalType;
37825#[doc(hidden)]
37826pub struct SaveFramesInternalType;
37827
37828
37829#[wasm_bindgen]
37830extern {
37831    #[wasm_bindgen(js_name = "saveFrames")]
37832    fn saveFrames3201956655(_ : & str, _ : & str, _ : f64, _ : f64, _ : js_sys::Function, ) ;
37833}
37834
37835#[doc(hidden)]
37836impl FnOnce<(&'_ str,&'_ str,f64,f64,js_sys::Function,)> for SaveFramesInternalType {
37837    type Output = ();
37838    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,f64,f64,js_sys::Function,)) -> Self::Output {
37839        saveFrames3201956655.call(args)
37840    }
37841}
37842
37843#[doc(hidden)]
37844impl FnMut<(&'_ str,&'_ str,f64,f64,js_sys::Function,)> for SaveFramesInternalType {
37845    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,f64,f64,js_sys::Function,)) -> Self::Output {
37846        saveFrames3201956655.call(args)
37847    }
37848}
37849
37850#[doc(hidden)]
37851impl Fn<(&'_ str,&'_ str,f64,f64,js_sys::Function,)> for SaveFramesInternalType {
37852    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,f64,f64,js_sys::Function,)) -> Self::Output {
37853        saveFrames3201956655.call(args)
37854    }
37855}
37856
37857#[wasm_bindgen]
37858extern {
37859    #[wasm_bindgen(js_name = "saveFrames")]
37860    fn saveFrames1289093036(_ : & str, _ : & str, _ : f64, _ : f64, ) ;
37861}
37862
37863#[doc(hidden)]
37864impl FnOnce<(&'_ str,&'_ str,f64,f64,)> for SaveFramesInternalType {
37865    type Output = ();
37866    extern "rust-call" fn call_once(self, args: (&'_ str,&'_ str,f64,f64,)) -> Self::Output {
37867        saveFrames1289093036.call(args)
37868    }
37869}
37870
37871#[doc(hidden)]
37872impl FnMut<(&'_ str,&'_ str,f64,f64,)> for SaveFramesInternalType {
37873    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,&'_ str,f64,f64,)) -> Self::Output {
37874        saveFrames1289093036.call(args)
37875    }
37876}
37877
37878#[doc(hidden)]
37879impl Fn<(&'_ str,&'_ str,f64,f64,)> for SaveFramesInternalType {
37880    extern "rust-call" fn call(&self, args: (&'_ str,&'_ str,f64,f64,)) -> Self::Output {
37881        saveFrames1289093036.call(args)
37882    }
37883}
37884#[doc=r##"<p>Creates a canvas element in the document, and sets the dimensions of it
37885in pixels. This method should be called only once at the start of setup.
37886Calling <a href="#/p5/createCanvas">createCanvas</a> more than once in a
37887sketch will result in very unpredictable behavior. If you want more than
37888one drawing canvas you could use <a href="#/p5/createGraphics">createGraphics</a>
37889(hidden by default but it can be shown).</p>
37890<p>The system variables width and height are set by the parameters passed to this
37891function. If <a href="#/p5/createCanvas">createCanvas()</a> is not used, the
37892window will be given a default size of 100x100 pixels.</p>
37893<p>For more ways to position the canvas, see the
37894<a href='https://github.com/processing/p5.js/wiki/Positioning-your-canvas'>
37895positioning the canvas</a> wiki page.</p>
37896"##]
37897///<h2>Examples</h2>
37898///
37899
37900#[doc=r###"```rust
37901function setup() {
37902  createCanvas(100, 50);
37903  background(153);
37904  line(0, 0, width, height);
37905}
37906```"###]
37907/// <h2>Parameters</h2>
37908///
37909#[doc = r##"<code>w</code> width of the canvas
37910
37911"##]
37912///
37913///
37914#[doc = r##"<code>h</code> height of the canvas
37915
37916"##]
37917///
37918///
37919#[doc = r##"<code>renderer?</code> either P2D or WEBGL
37920
37921"##]
37922///
37923
37924pub static createCanvas: CreateCanvasInternalType = CreateCanvasInternalType;
37925#[doc(hidden)]
37926pub struct CreateCanvasInternalType;
37927
37928
37929#[wasm_bindgen]
37930extern {
37931    #[wasm_bindgen(js_name = "createCanvas")]
37932    fn createCanvas1551900665(_ : f64, _ : f64, _ : RENDERER, ) ->  Renderer;
37933}
37934
37935#[doc(hidden)]
37936impl FnOnce<(f64,f64,RENDERER,)> for CreateCanvasInternalType {
37937    type Output =  Renderer;
37938    extern "rust-call" fn call_once(self, args: (f64,f64,RENDERER,)) -> Self::Output {
37939        createCanvas1551900665.call(args)
37940    }
37941}
37942
37943#[doc(hidden)]
37944impl FnMut<(f64,f64,RENDERER,)> for CreateCanvasInternalType {
37945    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,RENDERER,)) -> Self::Output {
37946        createCanvas1551900665.call(args)
37947    }
37948}
37949
37950#[doc(hidden)]
37951impl Fn<(f64,f64,RENDERER,)> for CreateCanvasInternalType {
37952    extern "rust-call" fn call(&self, args: (f64,f64,RENDERER,)) -> Self::Output {
37953        createCanvas1551900665.call(args)
37954    }
37955}
37956
37957#[wasm_bindgen]
37958extern {
37959    #[wasm_bindgen(js_name = "createCanvas")]
37960    fn createCanvas1607719848(_ : f64, _ : f64, ) ->  Renderer;
37961}
37962
37963#[doc(hidden)]
37964impl FnOnce<(f64,f64,)> for CreateCanvasInternalType {
37965    type Output =  Renderer;
37966    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
37967        createCanvas1607719848.call(args)
37968    }
37969}
37970
37971#[doc(hidden)]
37972impl FnMut<(f64,f64,)> for CreateCanvasInternalType {
37973    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
37974        createCanvas1607719848.call(args)
37975    }
37976}
37977
37978#[doc(hidden)]
37979impl Fn<(f64,f64,)> for CreateCanvasInternalType {
37980    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
37981        createCanvas1607719848.call(args)
37982    }
37983}
37984#[doc=r##"<p>Resizes the canvas to given width and height. The canvas will be cleared
37985and draw will be called immediately, allowing the sketch to re-render itself
37986in the resized canvas.</p>
37987"##]
37988///<h2>Examples</h2>
37989///
37990
37991#[doc=r###"```rust
37992function setup() {
37993  createCanvas(windowWidth, windowHeight);
37994}
37995
37996function draw() {
37997  background(0, 100, 200);
37998}
37999
38000function windowResized() {
38001  resizeCanvas(windowWidth, windowHeight);
38002}
38003```"###]
38004/// <h2>Parameters</h2>
38005///
38006#[doc = r##"<code>w</code> width of the canvas
38007
38008"##]
38009///
38010///
38011#[doc = r##"<code>h</code> height of the canvas
38012
38013"##]
38014///
38015///
38016#[doc = r##"<code>noRedraw?</code> don't redraw the canvas immediately
38017
38018"##]
38019///
38020
38021pub static resizeCanvas: ResizeCanvasInternalType = ResizeCanvasInternalType;
38022#[doc(hidden)]
38023pub struct ResizeCanvasInternalType;
38024
38025
38026#[wasm_bindgen]
38027extern {
38028    #[wasm_bindgen(js_name = "resizeCanvas")]
38029    fn resizeCanvas255296542(_ : f64, _ : f64, _ : bool, ) ;
38030}
38031
38032#[doc(hidden)]
38033impl FnOnce<(f64,f64,bool,)> for ResizeCanvasInternalType {
38034    type Output = ();
38035    extern "rust-call" fn call_once(self, args: (f64,f64,bool,)) -> Self::Output {
38036        resizeCanvas255296542.call(args)
38037    }
38038}
38039
38040#[doc(hidden)]
38041impl FnMut<(f64,f64,bool,)> for ResizeCanvasInternalType {
38042    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,bool,)) -> Self::Output {
38043        resizeCanvas255296542.call(args)
38044    }
38045}
38046
38047#[doc(hidden)]
38048impl Fn<(f64,f64,bool,)> for ResizeCanvasInternalType {
38049    extern "rust-call" fn call(&self, args: (f64,f64,bool,)) -> Self::Output {
38050        resizeCanvas255296542.call(args)
38051    }
38052}
38053
38054#[wasm_bindgen]
38055extern {
38056    #[wasm_bindgen(js_name = "resizeCanvas")]
38057    fn resizeCanvas3245381178(_ : f64, _ : f64, ) ;
38058}
38059
38060#[doc(hidden)]
38061impl FnOnce<(f64,f64,)> for ResizeCanvasInternalType {
38062    type Output = ();
38063    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
38064        resizeCanvas3245381178.call(args)
38065    }
38066}
38067
38068#[doc(hidden)]
38069impl FnMut<(f64,f64,)> for ResizeCanvasInternalType {
38070    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
38071        resizeCanvas3245381178.call(args)
38072    }
38073}
38074
38075#[doc(hidden)]
38076impl Fn<(f64,f64,)> for ResizeCanvasInternalType {
38077    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
38078        resizeCanvas3245381178.call(args)
38079    }
38080}
38081#[doc=r##"<p>Removes the default canvas for a p5 sketch that doesn't require a canvas</p>
38082"##]
38083///<h2>Examples</h2>
38084///
38085
38086#[doc=r###"```rust
38087function setup() {
38088  noCanvas();
38089}
38090```"###]
38091
38092pub static noCanvas: NoCanvasInternalType = NoCanvasInternalType;
38093#[doc(hidden)]
38094pub struct NoCanvasInternalType;
38095
38096
38097#[wasm_bindgen]
38098extern {
38099    #[wasm_bindgen(js_name = "noCanvas")]
38100    fn noCanvas2362607088() ;
38101}
38102
38103#[doc(hidden)]
38104impl FnOnce<()> for NoCanvasInternalType {
38105    type Output = ();
38106    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
38107        noCanvas2362607088.call(args)
38108    }
38109}
38110
38111#[doc(hidden)]
38112impl FnMut<()> for NoCanvasInternalType {
38113    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
38114        noCanvas2362607088.call(args)
38115    }
38116}
38117
38118#[doc(hidden)]
38119impl Fn<()> for NoCanvasInternalType {
38120    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
38121        noCanvas2362607088.call(args)
38122    }
38123}
38124#[doc=r##"<p>Creates and returns a new p5.Renderer object. Use this class if you need
38125to draw into an off-screen graphics buffer. The two parameters define the
38126width and height in pixels.</p>
38127"##]
38128///<h2>Examples</h2>
38129///
38130
38131#[doc=r###"```rust
38132let pg;
38133function setup() {
38134  createCanvas(100, 100);
38135  pg = createGraphics(100, 100);
38136}
38137
38138function draw() {
38139  background(200);
38140  pg.background(100);
38141  pg.noStroke();
38142  pg.ellipse(pg.width / 2, pg.height / 2, 50, 50);
38143  image(pg, 50, 50);
38144  image(pg, 0, 0, 50, 50);
38145}
38146```"###]
38147/// <h2>Parameters</h2>
38148///
38149#[doc = r##"<code>w</code> width of the offscreen graphics buffer
38150
38151"##]
38152///
38153///
38154#[doc = r##"<code>h</code> height of the offscreen graphics buffer
38155
38156"##]
38157///
38158///
38159#[doc = r##"<code>renderer?</code> either P2D or WEBGL
38160                              undefined defaults to p2d
38161
38162"##]
38163///
38164
38165pub static createGraphics: CreateGraphicsInternalType = CreateGraphicsInternalType;
38166#[doc(hidden)]
38167pub struct CreateGraphicsInternalType;
38168
38169
38170#[wasm_bindgen]
38171extern {
38172    #[wasm_bindgen(js_name = "createGraphics")]
38173    fn createGraphics532217601(_ : f64, _ : f64, _ : RENDERER, ) ->  Graphics;
38174}
38175
38176#[doc(hidden)]
38177impl FnOnce<(f64,f64,RENDERER,)> for CreateGraphicsInternalType {
38178    type Output =  Graphics;
38179    extern "rust-call" fn call_once(self, args: (f64,f64,RENDERER,)) -> Self::Output {
38180        createGraphics532217601.call(args)
38181    }
38182}
38183
38184#[doc(hidden)]
38185impl FnMut<(f64,f64,RENDERER,)> for CreateGraphicsInternalType {
38186    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,RENDERER,)) -> Self::Output {
38187        createGraphics532217601.call(args)
38188    }
38189}
38190
38191#[doc(hidden)]
38192impl Fn<(f64,f64,RENDERER,)> for CreateGraphicsInternalType {
38193    extern "rust-call" fn call(&self, args: (f64,f64,RENDERER,)) -> Self::Output {
38194        createGraphics532217601.call(args)
38195    }
38196}
38197
38198#[wasm_bindgen]
38199extern {
38200    #[wasm_bindgen(js_name = "createGraphics")]
38201    fn createGraphics771491789(_ : f64, _ : f64, ) ->  Graphics;
38202}
38203
38204#[doc(hidden)]
38205impl FnOnce<(f64,f64,)> for CreateGraphicsInternalType {
38206    type Output =  Graphics;
38207    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
38208        createGraphics771491789.call(args)
38209    }
38210}
38211
38212#[doc(hidden)]
38213impl FnMut<(f64,f64,)> for CreateGraphicsInternalType {
38214    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
38215        createGraphics771491789.call(args)
38216    }
38217}
38218
38219#[doc(hidden)]
38220impl Fn<(f64,f64,)> for CreateGraphicsInternalType {
38221    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
38222        createGraphics771491789.call(args)
38223    }
38224}
38225#[doc=r##"<p>Blends the pixels in the display window according to the defined mode.
38226There is a choice of the following modes to blend the source pixels (A)
38227with the ones of pixels already in the display window (B):</p>
38228<ul>
38229<li><code>BLEND</code> - linear interpolation of colours: C =
38230A\*factor + B. <b>This is the default blending mode.</b></li>
38231<li><code>ADD</code> - sum of A and B</li>
38232<li><code>DARKEST</code> - only the darkest colour succeeds: C =
38233min(A\*factor, B).</li>
38234<li><code>LIGHTEST</code> - only the lightest colour succeeds: C =
38235max(A\*factor, B).</li>
38236<li><code>DIFFERENCE</code> - subtract colors from underlying image.</li>
38237<li><code>EXCLUSION</code> - similar to <code>DIFFERENCE</code>, but less
38238extreme.</li>
38239<li><code>MULTIPLY</code> - multiply the colors, result will always be
38240darker.</li>
38241<li><code>SCREEN</code> - opposite multiply, uses inverse values of the
38242colors.</li>
38243<li><code>REPLACE</code> - the pixels entirely replace the others and
38244don't utilize alpha (transparency) values.</li>
38245<li><code>REMOVE</code> - removes pixels from B with the alpha strength of A.</li>
38246<li><code>OVERLAY</code> - mix of <code>MULTIPLY</code> and <code>SCREEN
38247</code>. Multiplies dark values, and screens light values. <em>(2D)</em></li>
38248<li><code>HARD_LIGHT</code> - <code>SCREEN</code> when greater than 50%
38249gray, <code>MULTIPLY</code> when lower. <em>(2D)</em></li>
38250<li><code>SOFT_LIGHT</code> - mix of <code>DARKEST</code> and
38251<code>LIGHTEST</code>. Works like <code>OVERLAY</code>, but not as harsh. <em>(2D)</em>
38252</li>
38253<li><code>DODGE</code> - lightens light tones and increases contrast,
38254ignores darks. <em>(2D)</em></li>
38255<li><code>BURN</code> - darker areas are applied, increasing contrast,
38256ignores lights. <em>(2D)</em></li>
38257<li><code>SUBTRACT</code> - remainder of A and B <em>(3D)</em></li>
38258</ul>
38259
38260<p><em>(2D)</em> indicates that this blend mode <b>only</b> works in the 2D renderer.<br>
38261<em>(3D)</em> indicates that this blend mode <b>only</b> works in the WEBGL renderer.</p>
38262"##]
38263///<h2>Examples</h2>
38264///
38265
38266#[doc=r###"```rust
38267blendMode(LIGHTEST);
38268strokeWeight(30);
38269stroke(80, 150, 255);
38270line(25, 25, 75, 75);
38271stroke(255, 50, 50);
38272line(75, 25, 25, 75);
38273```"###]
38274#[doc=r###"```rust
38275blendMode(MULTIPLY);
38276strokeWeight(30);
38277stroke(80, 150, 255);
38278line(25, 25, 75, 75);
38279stroke(255, 50, 50);
38280line(75, 25, 25, 75);
38281```"###]
38282/// <h2>Parameters</h2>
38283///
38284#[doc = r##"<code>mode</code> blend mode to set for canvas.
38285               either BLEND, DARKEST, LIGHTEST, DIFFERENCE, MULTIPLY,
38286               EXCLUSION, SCREEN, REPLACE, OVERLAY, HARD_LIGHT,
38287               SOFT_LIGHT, DODGE, BURN, ADD, REMOVE or SUBTRACT
38288
38289"##]
38290///
38291
38292pub static blendMode: BlendModeInternalType = BlendModeInternalType;
38293#[doc(hidden)]
38294pub struct BlendModeInternalType;
38295
38296
38297#[wasm_bindgen]
38298extern {
38299    #[wasm_bindgen(js_name = "blendMode")]
38300    fn blendMode2494644583(_ : BLEND_MODE, ) ;
38301}
38302
38303#[doc(hidden)]
38304impl FnOnce<(BLEND_MODE,)> for BlendModeInternalType {
38305    type Output = ();
38306    extern "rust-call" fn call_once(self, args: (BLEND_MODE,)) -> Self::Output {
38307        blendMode2494644583.call(args)
38308    }
38309}
38310
38311#[doc(hidden)]
38312impl FnMut<(BLEND_MODE,)> for BlendModeInternalType {
38313    extern "rust-call" fn call_mut(&mut self, args: (BLEND_MODE,)) -> Self::Output {
38314        blendMode2494644583.call(args)
38315    }
38316}
38317
38318#[doc(hidden)]
38319impl Fn<(BLEND_MODE,)> for BlendModeInternalType {
38320    extern "rust-call" fn call(&self, args: (BLEND_MODE,)) -> Self::Output {
38321        blendMode2494644583.call(args)
38322    }
38323}
38324#[doc=r##"<p>Draw an arc to the screen. If called with only x, y, w, h, start and stop,
38325the arc will be drawn and filled as an open pie segment. If a mode parameter
38326is provided, the arc will be filled like an open semi-circle (OPEN), a closed
38327semi-circle (CHORD), or as a closed pie segment (PIE). The origin may be changed
38328with the <a href="#/p5/ellipseMode">ellipseMode()</a> function.</p>
38329<p>The arc is always drawn clockwise from wherever start falls to wherever stop
38330falls on the ellipse.Adding or subtracting TWO_PI to either angle does not
38331change where they fall. If both start and stop fall at the same place, a full
38332ellipse will be drawn. Be aware that the y-axis increases in the downward
38333direction, therefore angles are measured clockwise from the positive
38334x-direction ("3 o'clock").</p>
38335"##]
38336///<h2>Examples</h2>
38337///
38338
38339#[doc=r###"```rust
38340arc(50, 55, 50, 50, 0, HALF_PI);
38341noFill();
38342arc(50, 55, 60, 60, HALF_PI, PI);
38343arc(50, 55, 70, 70, PI, PI + QUARTER_PI);
38344arc(50, 55, 80, 80, PI + QUARTER_PI, TWO_PI);
38345```"###]
38346#[doc=r###"```rust
38347arc(50, 50, 80, 80, 0, PI + QUARTER_PI);
38348```"###]
38349#[doc=r###"```rust
38350arc(50, 50, 80, 80, 0, PI + QUARTER_PI, OPEN);
38351```"###]
38352#[doc=r###"```rust
38353arc(50, 50, 80, 80, 0, PI + QUARTER_PI, CHORD);
38354```"###]
38355#[doc=r###"```rust
38356arc(50, 50, 80, 80, 0, PI + QUARTER_PI, PIE);
38357```"###]
38358/// <h2>Parameters</h2>
38359///
38360#[doc = r##"<code>x</code> x-coordinate of the arc's ellipse
38361
38362"##]
38363///
38364///
38365#[doc = r##"<code>y</code> y-coordinate of the arc's ellipse
38366
38367"##]
38368///
38369///
38370#[doc = r##"<code>w</code> width of the arc's ellipse by default
38371
38372"##]
38373///
38374///
38375#[doc = r##"<code>h</code> height of the arc's ellipse by default
38376
38377"##]
38378///
38379///
38380#[doc = r##"<code>start</code> angle to start the arc, specified in radians
38381
38382"##]
38383///
38384///
38385#[doc = r##"<code>stop</code> angle to stop the arc, specified in radians
38386
38387"##]
38388///
38389///
38390#[doc = r##"<code>mode?</code> optional parameter to determine the way of drawing
38391                        the arc. either CHORD, PIE or OPEN
38392
38393"##]
38394///
38395///
38396#[doc = r##"<code>detail?</code> optional parameter for WebGL mode only. This is to
38397                        specify the number of vertices that makes up the
38398                        perimeter of the arc. Default value is 25.
38399
38400"##]
38401///
38402
38403pub static arc: ArcInternalType = ArcInternalType;
38404#[doc(hidden)]
38405pub struct ArcInternalType;
38406
38407
38408#[wasm_bindgen]
38409extern {
38410    #[wasm_bindgen(js_name = "arc")]
38411    fn arc412375453(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : ARC_MODE, _ : f64, ) ;
38412}
38413
38414#[doc(hidden)]
38415impl FnOnce<(f64,f64,f64,f64,f64,f64,ARC_MODE,f64,)> for ArcInternalType {
38416    type Output = ();
38417    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,ARC_MODE,f64,)) -> Self::Output {
38418        arc412375453.call(args)
38419    }
38420}
38421
38422#[doc(hidden)]
38423impl FnMut<(f64,f64,f64,f64,f64,f64,ARC_MODE,f64,)> for ArcInternalType {
38424    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,ARC_MODE,f64,)) -> Self::Output {
38425        arc412375453.call(args)
38426    }
38427}
38428
38429#[doc(hidden)]
38430impl Fn<(f64,f64,f64,f64,f64,f64,ARC_MODE,f64,)> for ArcInternalType {
38431    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,ARC_MODE,f64,)) -> Self::Output {
38432        arc412375453.call(args)
38433    }
38434}
38435
38436#[wasm_bindgen]
38437extern {
38438    #[wasm_bindgen(js_name = "arc")]
38439    fn arc3700468091(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : ARC_MODE, ) ;
38440}
38441
38442#[doc(hidden)]
38443impl FnOnce<(f64,f64,f64,f64,f64,f64,ARC_MODE,)> for ArcInternalType {
38444    type Output = ();
38445    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,ARC_MODE,)) -> Self::Output {
38446        arc3700468091.call(args)
38447    }
38448}
38449
38450#[doc(hidden)]
38451impl FnMut<(f64,f64,f64,f64,f64,f64,ARC_MODE,)> for ArcInternalType {
38452    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,ARC_MODE,)) -> Self::Output {
38453        arc3700468091.call(args)
38454    }
38455}
38456
38457#[doc(hidden)]
38458impl Fn<(f64,f64,f64,f64,f64,f64,ARC_MODE,)> for ArcInternalType {
38459    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,ARC_MODE,)) -> Self::Output {
38460        arc3700468091.call(args)
38461    }
38462}
38463
38464#[wasm_bindgen]
38465extern {
38466    #[wasm_bindgen(js_name = "arc")]
38467    fn arc1050641993(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
38468}
38469
38470#[doc(hidden)]
38471impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for ArcInternalType {
38472    type Output = ();
38473    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
38474        arc1050641993.call(args)
38475    }
38476}
38477
38478#[doc(hidden)]
38479impl FnMut<(f64,f64,f64,f64,f64,f64,)> for ArcInternalType {
38480    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
38481        arc1050641993.call(args)
38482    }
38483}
38484
38485#[doc(hidden)]
38486impl Fn<(f64,f64,f64,f64,f64,f64,)> for ArcInternalType {
38487    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
38488        arc1050641993.call(args)
38489    }
38490}
38491#[doc=r##"<p>Draws an ellipse (oval) to the screen. By default, the first two parameters
38492set the location of the center of the ellipse, and the third and fourth
38493parameters set the shape's width and height. If no height is specified, the
38494value of width is used for both the width and height. If a negative height or
38495width is specified, the absolute value is taken.</p>
38496<p>An ellipse with equal width and height is a circle.The origin may be changed
38497with the <a href="#/p5/ellipseMode">ellipseMode()</a> function.</p>
38498"##]
38499///<h2>Examples</h2>
38500///
38501
38502#[doc=r###"```rust
38503ellipse(56, 46, 55, 55);
38504```"###]
38505/// <h2>Overloads</h2>
38506///
38507#[doc = r##"<code>x</code> x-coordinate of the center of ellipse.
38508
38509"##]
38510///
38511///
38512#[doc = r##"<code>y</code> y-coordinate of the center of ellipse.
38513
38514"##]
38515///
38516///
38517#[doc = r##"<code>w</code> width of the ellipse.
38518
38519"##]
38520///
38521///
38522#[doc = r##"<code>h?</code> height of the ellipse.
38523
38524"##]
38525///
38526///
38527/// ---
38528///
38529///
38530#[doc = r##"<code>x</code> x-coordinate of the center of ellipse.
38531
38532"##]
38533///
38534///
38535#[doc = r##"<code>y</code> y-coordinate of the center of ellipse.
38536
38537"##]
38538///
38539///
38540#[doc = r##"<code>w</code> width of the ellipse.
38541
38542"##]
38543///
38544///
38545#[doc = r##"<code>h</code> height of the ellipse.
38546
38547"##]
38548///
38549///
38550#[doc = r##"<code>detail</code> number of radial sectors to draw (for WebGL mode)
38551
38552"##]
38553///
38554///
38555/// ---
38556///
38557
38558pub static ellipse: EllipseInternalType = EllipseInternalType;
38559#[doc(hidden)]
38560pub struct EllipseInternalType;
38561
38562
38563#[wasm_bindgen]
38564extern {
38565    #[wasm_bindgen(js_name = "ellipse")]
38566    fn ellipse1995177982(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
38567}
38568
38569#[doc(hidden)]
38570impl FnOnce<(f64,f64,f64,f64,)> for EllipseInternalType {
38571    type Output = ();
38572    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
38573        ellipse1995177982.call(args)
38574    }
38575}
38576
38577#[doc(hidden)]
38578impl FnMut<(f64,f64,f64,f64,)> for EllipseInternalType {
38579    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
38580        ellipse1995177982.call(args)
38581    }
38582}
38583
38584#[doc(hidden)]
38585impl Fn<(f64,f64,f64,f64,)> for EllipseInternalType {
38586    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
38587        ellipse1995177982.call(args)
38588    }
38589}
38590
38591#[wasm_bindgen]
38592extern {
38593    #[wasm_bindgen(js_name = "ellipse")]
38594    fn ellipse203566185(_ : f64, _ : f64, _ : f64, ) ;
38595}
38596
38597#[doc(hidden)]
38598impl FnOnce<(f64,f64,f64,)> for EllipseInternalType {
38599    type Output = ();
38600    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
38601        ellipse203566185.call(args)
38602    }
38603}
38604
38605#[doc(hidden)]
38606impl FnMut<(f64,f64,f64,)> for EllipseInternalType {
38607    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
38608        ellipse203566185.call(args)
38609    }
38610}
38611
38612#[doc(hidden)]
38613impl Fn<(f64,f64,f64,)> for EllipseInternalType {
38614    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
38615        ellipse203566185.call(args)
38616    }
38617}
38618
38619#[wasm_bindgen]
38620extern {
38621    #[wasm_bindgen(js_name = "ellipse")]
38622    fn ellipse1565000243(_ : f64, _ : f64, _ : f64, _ : f64, _ : i32, ) ;
38623}
38624
38625#[doc(hidden)]
38626impl FnOnce<(f64,f64,f64,f64,i32,)> for EllipseInternalType {
38627    type Output = ();
38628    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,i32,)) -> Self::Output {
38629        ellipse1565000243.call(args)
38630    }
38631}
38632
38633#[doc(hidden)]
38634impl FnMut<(f64,f64,f64,f64,i32,)> for EllipseInternalType {
38635    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,i32,)) -> Self::Output {
38636        ellipse1565000243.call(args)
38637    }
38638}
38639
38640#[doc(hidden)]
38641impl Fn<(f64,f64,f64,f64,i32,)> for EllipseInternalType {
38642    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,i32,)) -> Self::Output {
38643        ellipse1565000243.call(args)
38644    }
38645}
38646#[doc=r##"<p>Draws a circle to the screen. A circle is a simple closed shape.It is the set
38647of all points in a plane that are at a given distance from a given point,
38648the centre.This function is a special case of the ellipse() function, where
38649the width and height of the ellipse are the same. Height and width of the
38650ellipse correspond to the diameter of the circle. By default, the first two
38651parameters set the location of the centre of the circle, the third sets the
38652diameter of the circle.</p>
38653"##]
38654///<h2>Examples</h2>
38655///
38656
38657#[doc=r###"```rust
38658// Draw a circle at location (30, 30) with a diameter of 20.
38659circle(30, 30, 20);
38660```"###]
38661/// <h2>Parameters</h2>
38662///
38663#[doc = r##"<code>x</code> x-coordinate of the centre of the circle.
38664
38665"##]
38666///
38667///
38668#[doc = r##"<code>y</code> y-coordinate of the centre of the circle.
38669
38670"##]
38671///
38672///
38673#[doc = r##"<code>d</code> diameter of the circle.
38674
38675"##]
38676///
38677
38678pub static circle: CircleInternalType = CircleInternalType;
38679#[doc(hidden)]
38680pub struct CircleInternalType;
38681
38682
38683#[wasm_bindgen]
38684extern {
38685    #[wasm_bindgen(js_name = "circle")]
38686    fn circle1208773174(_ : f64, _ : f64, _ : f64, ) ;
38687}
38688
38689#[doc(hidden)]
38690impl FnOnce<(f64,f64,f64,)> for CircleInternalType {
38691    type Output = ();
38692    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
38693        circle1208773174.call(args)
38694    }
38695}
38696
38697#[doc(hidden)]
38698impl FnMut<(f64,f64,f64,)> for CircleInternalType {
38699    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
38700        circle1208773174.call(args)
38701    }
38702}
38703
38704#[doc(hidden)]
38705impl Fn<(f64,f64,f64,)> for CircleInternalType {
38706    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
38707        circle1208773174.call(args)
38708    }
38709}
38710#[doc=r##"<p>Draws a line (a direct path between two points) to the screen. If called with
38711only 4 parameters, it will draw a line in 2D with a default width of 1 pixel.
38712This width can be modified by using the <a href="#/p5/strokeWeight">
38713strokeWeight()</a> function. A line cannot be filled, therefore the <a
38714href="#/p5/fill">fill()</a> function will not affect the color of a line. So to
38715color a line, use the <a href="#/p5/stroke">stroke()</a> function.</p>
38716"##]
38717///<h2>Examples</h2>
38718///
38719
38720#[doc=r###"```rust
38721line(30, 20, 85, 75);
38722```"###]
38723#[doc=r###"```rust
38724line(30, 20, 85, 20);
38725stroke(126);
38726line(85, 20, 85, 75);
38727stroke(255);
38728line(85, 75, 30, 75);
38729```"###]
38730/// <h2>Overloads</h2>
38731///
38732#[doc = r##"<code>x1</code> the x-coordinate of the first point
38733
38734"##]
38735///
38736///
38737#[doc = r##"<code>y1</code> the y-coordinate of the first point
38738
38739"##]
38740///
38741///
38742#[doc = r##"<code>x2</code> the x-coordinate of the second point
38743
38744"##]
38745///
38746///
38747#[doc = r##"<code>y2</code> the y-coordinate of the second point
38748
38749"##]
38750///
38751///
38752/// ---
38753///
38754///
38755#[doc = r##"<code>x1</code> the x-coordinate of the first point
38756
38757"##]
38758///
38759///
38760#[doc = r##"<code>y1</code> the y-coordinate of the first point
38761
38762"##]
38763///
38764///
38765#[doc = r##"<code>z1</code> the z-coordinate of the first point
38766
38767"##]
38768///
38769///
38770#[doc = r##"<code>x2</code> the x-coordinate of the second point
38771
38772"##]
38773///
38774///
38775#[doc = r##"<code>y2</code> the y-coordinate of the second point
38776
38777"##]
38778///
38779///
38780#[doc = r##"<code>z2</code> the z-coordinate of the second point
38781
38782"##]
38783///
38784///
38785/// ---
38786///
38787
38788pub static line: LineInternalType = LineInternalType;
38789#[doc(hidden)]
38790pub struct LineInternalType;
38791
38792
38793#[wasm_bindgen]
38794extern {
38795    #[wasm_bindgen(js_name = "line")]
38796    fn line3166434936(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
38797}
38798
38799#[doc(hidden)]
38800impl FnOnce<(f64,f64,f64,f64,)> for LineInternalType {
38801    type Output = ();
38802    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
38803        line3166434936.call(args)
38804    }
38805}
38806
38807#[doc(hidden)]
38808impl FnMut<(f64,f64,f64,f64,)> for LineInternalType {
38809    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
38810        line3166434936.call(args)
38811    }
38812}
38813
38814#[doc(hidden)]
38815impl Fn<(f64,f64,f64,f64,)> for LineInternalType {
38816    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
38817        line3166434936.call(args)
38818    }
38819}
38820
38821#[wasm_bindgen]
38822extern {
38823    #[wasm_bindgen(js_name = "line")]
38824    fn line490776168(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
38825}
38826
38827#[doc(hidden)]
38828impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for LineInternalType {
38829    type Output = ();
38830    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
38831        line490776168.call(args)
38832    }
38833}
38834
38835#[doc(hidden)]
38836impl FnMut<(f64,f64,f64,f64,f64,f64,)> for LineInternalType {
38837    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
38838        line490776168.call(args)
38839    }
38840}
38841
38842#[doc(hidden)]
38843impl Fn<(f64,f64,f64,f64,f64,f64,)> for LineInternalType {
38844    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
38845        line490776168.call(args)
38846    }
38847}
38848#[doc=r##"<p>Draws a point, a coordinate in space at the dimension of one pixel.
38849The first parameter is the horizontal value for the point, the second
38850param is the vertical value for the point. The color of the point is
38851changed with the <a href="#/p5/stroke">stroke()</a> function. The size of the point
38852can be changed with the <a href="#/p5/strokeWeight">strokeWeight()</a> function.</p>
38853"##]
38854///<h2>Examples</h2>
38855///
38856
38857#[doc=r###"```rust
38858point(30, 20);
38859point(85, 20);
38860point(85, 75);
38861point(30, 75);
38862```"###]
38863#[doc=r###"```rust
38864point(30, 20);
38865point(85, 20);
38866stroke('purple'); // Change the color
38867strokeWeight(10); // Make the points 10 pixels in size
38868point(85, 75);
38869point(30, 75);
38870```"###]
38871#[doc=r###"```rust
38872let a = createVector(10, 10);
38873point(a);
38874let b = createVector(10, 20);
38875point(b);
38876point(createVector(20, 10));
38877point(createVector(20, 20));
38878```"###]
38879/// <h2>Overloads</h2>
38880///
38881#[doc = r##"<code>x</code> the x-coordinate
38882
38883"##]
38884///
38885///
38886#[doc = r##"<code>y</code> the y-coordinate
38887
38888"##]
38889///
38890///
38891#[doc = r##"<code>z?</code> the z-coordinate (for WebGL mode)
38892
38893"##]
38894///
38895///
38896/// ---
38897///
38898///
38899#[doc = r##"<code>coordinate_vector</code> the coordinate vector
38900
38901"##]
38902///
38903///
38904/// ---
38905///
38906
38907pub static point: PointInternalType = PointInternalType;
38908#[doc(hidden)]
38909pub struct PointInternalType;
38910
38911
38912#[wasm_bindgen]
38913extern {
38914    #[wasm_bindgen(js_name = "point")]
38915    fn point3341411576(_ : f64, _ : f64, _ : f64, ) ;
38916}
38917
38918#[doc(hidden)]
38919impl FnOnce<(f64,f64,f64,)> for PointInternalType {
38920    type Output = ();
38921    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
38922        point3341411576.call(args)
38923    }
38924}
38925
38926#[doc(hidden)]
38927impl FnMut<(f64,f64,f64,)> for PointInternalType {
38928    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
38929        point3341411576.call(args)
38930    }
38931}
38932
38933#[doc(hidden)]
38934impl Fn<(f64,f64,f64,)> for PointInternalType {
38935    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
38936        point3341411576.call(args)
38937    }
38938}
38939
38940#[wasm_bindgen]
38941extern {
38942    #[wasm_bindgen(js_name = "point")]
38943    fn point542910630(_ : f64, _ : f64, ) ;
38944}
38945
38946#[doc(hidden)]
38947impl FnOnce<(f64,f64,)> for PointInternalType {
38948    type Output = ();
38949    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
38950        point542910630.call(args)
38951    }
38952}
38953
38954#[doc(hidden)]
38955impl FnMut<(f64,f64,)> for PointInternalType {
38956    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
38957        point542910630.call(args)
38958    }
38959}
38960
38961#[doc(hidden)]
38962impl Fn<(f64,f64,)> for PointInternalType {
38963    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
38964        point542910630.call(args)
38965    }
38966}
38967
38968#[wasm_bindgen]
38969extern {
38970    #[wasm_bindgen(js_name = "point")]
38971    fn point3454532124(_ : & Vector, ) ;
38972}
38973
38974#[doc(hidden)]
38975impl FnOnce<(&'_ Vector,)> for PointInternalType {
38976    type Output = ();
38977    extern "rust-call" fn call_once(self, args: (&'_ Vector,)) -> Self::Output {
38978        point3454532124.call(args)
38979    }
38980}
38981
38982#[doc(hidden)]
38983impl FnMut<(&'_ Vector,)> for PointInternalType {
38984    extern "rust-call" fn call_mut(&mut self, args: (&'_ Vector,)) -> Self::Output {
38985        point3454532124.call(args)
38986    }
38987}
38988
38989#[doc(hidden)]
38990impl Fn<(&'_ Vector,)> for PointInternalType {
38991    extern "rust-call" fn call(&self, args: (&'_ Vector,)) -> Self::Output {
38992        point3454532124.call(args)
38993    }
38994}
38995#[doc=r##"<p>Draws a quad on the canvas. A quad is a quadrilateral, a four sided polygon. It is
38996similar to a rectangle, but the angles between its edges are not
38997constrained to ninety degrees. The first pair of parameters (x1,y1)
38998sets the first vertex and the subsequent pairs should proceed
38999clockwise or counter-clockwise around the defined shape.
39000z-arguments only work when quad() is used in WEBGL mode.</p>
39001"##]
39002///<h2>Examples</h2>
39003///
39004
39005#[doc=r###"```rust
39006quad(38, 31, 86, 20, 69, 63, 30, 76);
39007```"###]
39008/// <h2>Overloads</h2>
39009///
39010#[doc = r##"<code>x1</code> the x-coordinate of the first point
39011
39012"##]
39013///
39014///
39015#[doc = r##"<code>y1</code> the y-coordinate of the first point
39016
39017"##]
39018///
39019///
39020#[doc = r##"<code>x2</code> the x-coordinate of the second point
39021
39022"##]
39023///
39024///
39025#[doc = r##"<code>y2</code> the y-coordinate of the second point
39026
39027"##]
39028///
39029///
39030#[doc = r##"<code>x3</code> the x-coordinate of the third point
39031
39032"##]
39033///
39034///
39035#[doc = r##"<code>y3</code> the y-coordinate of the third point
39036
39037"##]
39038///
39039///
39040#[doc = r##"<code>x4</code> the x-coordinate of the fourth point
39041
39042"##]
39043///
39044///
39045#[doc = r##"<code>y4</code> the y-coordinate of the fourth point
39046
39047"##]
39048///
39049///
39050/// ---
39051///
39052///
39053#[doc = r##"<code>x1</code> the x-coordinate of the first point
39054
39055"##]
39056///
39057///
39058#[doc = r##"<code>y1</code> the y-coordinate of the first point
39059
39060"##]
39061///
39062///
39063#[doc = r##"<code>z1</code> the z-coordinate of the first point
39064
39065"##]
39066///
39067///
39068#[doc = r##"<code>x2</code> the x-coordinate of the second point
39069
39070"##]
39071///
39072///
39073#[doc = r##"<code>y2</code> the y-coordinate of the second point
39074
39075"##]
39076///
39077///
39078#[doc = r##"<code>z2</code> the z-coordinate of the second point
39079
39080"##]
39081///
39082///
39083#[doc = r##"<code>x3</code> the x-coordinate of the third point
39084
39085"##]
39086///
39087///
39088#[doc = r##"<code>y3</code> the y-coordinate of the third point
39089
39090"##]
39091///
39092///
39093#[doc = r##"<code>z3</code> the z-coordinate of the third point
39094
39095"##]
39096///
39097///
39098#[doc = r##"<code>x4</code> the x-coordinate of the fourth point
39099
39100"##]
39101///
39102///
39103#[doc = r##"<code>y4</code> the y-coordinate of the fourth point
39104
39105"##]
39106///
39107///
39108#[doc = r##"<code>z4</code> the z-coordinate of the fourth point
39109
39110"##]
39111///
39112///
39113/// ---
39114///
39115
39116pub static quad: QuadInternalType = QuadInternalType;
39117#[doc(hidden)]
39118pub struct QuadInternalType;
39119
39120
39121#[wasm_bindgen]
39122extern {
39123    #[wasm_bindgen(js_name = "quad")]
39124    fn quad1936088507(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39125}
39126
39127#[doc(hidden)]
39128impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,)> for QuadInternalType {
39129    type Output = ();
39130    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39131        quad1936088507.call(args)
39132    }
39133}
39134
39135#[doc(hidden)]
39136impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,)> for QuadInternalType {
39137    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39138        quad1936088507.call(args)
39139    }
39140}
39141
39142#[doc(hidden)]
39143impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,)> for QuadInternalType {
39144    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39145        quad1936088507.call(args)
39146    }
39147}
39148
39149#[wasm_bindgen]
39150extern {
39151    #[wasm_bindgen(js_name = "quad")]
39152    fn quad444962873(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39153}
39154
39155#[doc(hidden)]
39156impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for QuadInternalType {
39157    type Output = ();
39158    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39159        quad444962873.call(args)
39160    }
39161}
39162
39163#[doc(hidden)]
39164impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for QuadInternalType {
39165    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39166        quad444962873.call(args)
39167    }
39168}
39169
39170#[doc(hidden)]
39171impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)> for QuadInternalType {
39172    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39173        quad444962873.call(args)
39174    }
39175}
39176#[doc=r##"<p>Draws a rectangle on the canvas. A rectangle is a four-sided closed shape with
39177every angle at ninety degrees. By default, the first two parameters set
39178the location of the upper-left corner, the third sets the width, and the
39179fourth sets the height. The way these parameters are interpreted, may be
39180changed with the <a href="#/p5/rectMode">rectMode()</a> function.</p>
39181<p>The fifth, sixth, seventh and eighth parameters, if specified,
39182determine corner radius for the top-left, top-right, lower-right and
39183lower-left corners, respectively. An omitted corner radius parameter is set
39184to the value of the previously specified radius value in the parameter list.</p>
39185"##]
39186///<h2>Examples</h2>
39187///
39188
39189#[doc=r###"```rust
39190// Draw a rectangle at location (30, 20) with a width and height of 55.
39191rect(30, 20, 55, 55);
39192```"###]
39193#[doc=r###"```rust
39194// Draw a rectangle with rounded corners, each having a radius of 20.
39195rect(30, 20, 55, 55, 20);
39196```"###]
39197#[doc=r###"```rust
39198// Draw a rectangle with rounded corners having the following radii:
39199// top-left = 20, top-right = 15, bottom-right = 10, bottom-left = 5.
39200rect(30, 20, 55, 55, 20, 15, 10, 5);
39201```"###]
39202/// <h2>Overloads</h2>
39203///
39204#[doc = r##"<code>x</code> x-coordinate of the rectangle.
39205
39206"##]
39207///
39208///
39209#[doc = r##"<code>y</code> y-coordinate of the rectangle.
39210
39211"##]
39212///
39213///
39214#[doc = r##"<code>w</code> width of the rectangle.
39215
39216"##]
39217///
39218///
39219#[doc = r##"<code>h?</code> height of the rectangle.
39220
39221"##]
39222///
39223///
39224#[doc = r##"<code>tl?</code> optional radius of top-left corner.
39225
39226"##]
39227///
39228///
39229#[doc = r##"<code>tr?</code> optional radius of top-right corner.
39230
39231"##]
39232///
39233///
39234#[doc = r##"<code>br?</code> optional radius of bottom-right corner.
39235
39236"##]
39237///
39238///
39239#[doc = r##"<code>bl?</code> optional radius of bottom-left corner.
39240
39241"##]
39242///
39243///
39244/// ---
39245///
39246///
39247#[doc = r##"<code>x</code> x-coordinate of the rectangle.
39248
39249"##]
39250///
39251///
39252#[doc = r##"<code>y</code> y-coordinate of the rectangle.
39253
39254"##]
39255///
39256///
39257#[doc = r##"<code>w</code> width of the rectangle.
39258
39259"##]
39260///
39261///
39262#[doc = r##"<code>h</code> height of the rectangle.
39263
39264"##]
39265///
39266///
39267#[doc = r##"<code>detailX?</code> number of segments in the x-direction (for WebGL mode)
39268
39269"##]
39270///
39271///
39272#[doc = r##"<code>detailY?</code> number of segments in the y-direction (for WebGL mode)
39273
39274"##]
39275///
39276///
39277/// ---
39278///
39279
39280pub static rect: RectInternalType = RectInternalType;
39281#[doc(hidden)]
39282pub struct RectInternalType;
39283
39284
39285#[wasm_bindgen]
39286extern {
39287    #[wasm_bindgen(js_name = "rect")]
39288    fn rect2914994143(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39289}
39290
39291#[doc(hidden)]
39292impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39293    type Output = ();
39294    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39295        rect2914994143.call(args)
39296    }
39297}
39298
39299#[doc(hidden)]
39300impl FnMut<(f64,f64,f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39301    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39302        rect2914994143.call(args)
39303    }
39304}
39305
39306#[doc(hidden)]
39307impl Fn<(f64,f64,f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39308    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39309        rect2914994143.call(args)
39310    }
39311}
39312
39313#[wasm_bindgen]
39314extern {
39315    #[wasm_bindgen(js_name = "rect")]
39316    fn rect1103866144(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39317}
39318
39319#[doc(hidden)]
39320impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39321    type Output = ();
39322    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39323        rect1103866144.call(args)
39324    }
39325}
39326
39327#[doc(hidden)]
39328impl FnMut<(f64,f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39329    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39330        rect1103866144.call(args)
39331    }
39332}
39333
39334#[doc(hidden)]
39335impl Fn<(f64,f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39336    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39337        rect1103866144.call(args)
39338    }
39339}
39340
39341#[wasm_bindgen]
39342extern {
39343    #[wasm_bindgen(js_name = "rect")]
39344    fn rect242051174(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39345}
39346
39347#[doc(hidden)]
39348impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39349    type Output = ();
39350    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39351        rect242051174.call(args)
39352    }
39353}
39354
39355#[doc(hidden)]
39356impl FnMut<(f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39357    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39358        rect242051174.call(args)
39359    }
39360}
39361
39362#[doc(hidden)]
39363impl Fn<(f64,f64,f64,f64,f64,f64,)> for RectInternalType {
39364    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39365        rect242051174.call(args)
39366    }
39367}
39368
39369#[wasm_bindgen]
39370extern {
39371    #[wasm_bindgen(js_name = "rect")]
39372    fn rect2282570(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39373}
39374
39375#[doc(hidden)]
39376impl FnOnce<(f64,f64,f64,f64,f64,)> for RectInternalType {
39377    type Output = ();
39378    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
39379        rect2282570.call(args)
39380    }
39381}
39382
39383#[doc(hidden)]
39384impl FnMut<(f64,f64,f64,f64,f64,)> for RectInternalType {
39385    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
39386        rect2282570.call(args)
39387    }
39388}
39389
39390#[doc(hidden)]
39391impl Fn<(f64,f64,f64,f64,f64,)> for RectInternalType {
39392    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
39393        rect2282570.call(args)
39394    }
39395}
39396
39397#[wasm_bindgen]
39398extern {
39399    #[wasm_bindgen(js_name = "rect")]
39400    fn rect410910268(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
39401}
39402
39403#[doc(hidden)]
39404impl FnOnce<(f64,f64,f64,f64,)> for RectInternalType {
39405    type Output = ();
39406    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
39407        rect410910268.call(args)
39408    }
39409}
39410
39411#[doc(hidden)]
39412impl FnMut<(f64,f64,f64,f64,)> for RectInternalType {
39413    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
39414        rect410910268.call(args)
39415    }
39416}
39417
39418#[doc(hidden)]
39419impl Fn<(f64,f64,f64,f64,)> for RectInternalType {
39420    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
39421        rect410910268.call(args)
39422    }
39423}
39424
39425#[wasm_bindgen]
39426extern {
39427    #[wasm_bindgen(js_name = "rect")]
39428    fn rect2009438349(_ : f64, _ : f64, _ : f64, ) ;
39429}
39430
39431#[doc(hidden)]
39432impl FnOnce<(f64,f64,f64,)> for RectInternalType {
39433    type Output = ();
39434    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
39435        rect2009438349.call(args)
39436    }
39437}
39438
39439#[doc(hidden)]
39440impl FnMut<(f64,f64,f64,)> for RectInternalType {
39441    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
39442        rect2009438349.call(args)
39443    }
39444}
39445
39446#[doc(hidden)]
39447impl Fn<(f64,f64,f64,)> for RectInternalType {
39448    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
39449        rect2009438349.call(args)
39450    }
39451}
39452
39453#[wasm_bindgen]
39454extern {
39455    #[wasm_bindgen(js_name = "rect")]
39456    fn rect589332503(_ : f64, _ : f64, _ : f64, _ : f64, _ : i32, _ : i32, ) ;
39457}
39458
39459#[doc(hidden)]
39460impl FnOnce<(f64,f64,f64,f64,i32,i32,)> for RectInternalType {
39461    type Output = ();
39462    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,i32,i32,)) -> Self::Output {
39463        rect589332503.call(args)
39464    }
39465}
39466
39467#[doc(hidden)]
39468impl FnMut<(f64,f64,f64,f64,i32,i32,)> for RectInternalType {
39469    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,i32,i32,)) -> Self::Output {
39470        rect589332503.call(args)
39471    }
39472}
39473
39474#[doc(hidden)]
39475impl Fn<(f64,f64,f64,f64,i32,i32,)> for RectInternalType {
39476    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,i32,i32,)) -> Self::Output {
39477        rect589332503.call(args)
39478    }
39479}
39480
39481#[wasm_bindgen]
39482extern {
39483    #[wasm_bindgen(js_name = "rect")]
39484    fn rect4079609484(_ : f64, _ : f64, _ : f64, _ : f64, _ : i32, ) ;
39485}
39486
39487#[doc(hidden)]
39488impl FnOnce<(f64,f64,f64,f64,i32,)> for RectInternalType {
39489    type Output = ();
39490    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,i32,)) -> Self::Output {
39491        rect4079609484.call(args)
39492    }
39493}
39494
39495#[doc(hidden)]
39496impl FnMut<(f64,f64,f64,f64,i32,)> for RectInternalType {
39497    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,i32,)) -> Self::Output {
39498        rect4079609484.call(args)
39499    }
39500}
39501
39502#[doc(hidden)]
39503impl Fn<(f64,f64,f64,f64,i32,)> for RectInternalType {
39504    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,i32,)) -> Self::Output {
39505        rect4079609484.call(args)
39506    }
39507}
39508#[doc=r##"<p>Draws a square to the screen. A square is a four-sided shape with every angle
39509at ninety degrees, and equal side size. This function is a special case of the
39510rect() function, where the width and height are the same, and the parameter
39511is called "s" for side size. By default, the first two parameters set the
39512location of the upper-left corner, the third sets the side size of the square.
39513The way these parameters are interpreted, may be changed with the <a
39514href="#/p5/rectMode">rectMode()</a> function.</p>
39515<p>The fourth, fifth, sixth and seventh parameters, if specified,
39516determine corner radius for the top-left, top-right, lower-right and
39517lower-left corners, respectively. An omitted corner radius parameter is set
39518to the value of the previously specified radius value in the parameter list.</p>
39519"##]
39520///<h2>Examples</h2>
39521///
39522
39523#[doc=r###"```rust
39524// Draw a square at location (30, 20) with a side size of 55.
39525square(30, 20, 55);
39526```"###]
39527#[doc=r###"```rust
39528// Draw a square with rounded corners, each having a radius of 20.
39529square(30, 20, 55, 20);
39530```"###]
39531#[doc=r###"```rust
39532// Draw a square with rounded corners having the following radii:
39533// top-left = 20, top-right = 15, bottom-right = 10, bottom-left = 5.
39534square(30, 20, 55, 20, 15, 10, 5);
39535```"###]
39536/// <h2>Parameters</h2>
39537///
39538#[doc = r##"<code>x</code> x-coordinate of the square.
39539
39540"##]
39541///
39542///
39543#[doc = r##"<code>y</code> y-coordinate of the square.
39544
39545"##]
39546///
39547///
39548#[doc = r##"<code>s</code> side size of the square.
39549
39550"##]
39551///
39552///
39553#[doc = r##"<code>tl?</code> optional radius of top-left corner.
39554
39555"##]
39556///
39557///
39558#[doc = r##"<code>tr?</code> optional radius of top-right corner.
39559
39560"##]
39561///
39562///
39563#[doc = r##"<code>br?</code> optional radius of bottom-right corner.
39564
39565"##]
39566///
39567///
39568#[doc = r##"<code>bl?</code> optional radius of bottom-left corner.
39569
39570"##]
39571///
39572
39573pub static square: SquareInternalType = SquareInternalType;
39574#[doc(hidden)]
39575pub struct SquareInternalType;
39576
39577
39578#[wasm_bindgen]
39579extern {
39580    #[wasm_bindgen(js_name = "square")]
39581    fn square444361886(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39582}
39583
39584#[doc(hidden)]
39585impl FnOnce<(f64,f64,f64,f64,f64,f64,f64,)> for SquareInternalType {
39586    type Output = ();
39587    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39588        square444361886.call(args)
39589    }
39590}
39591
39592#[doc(hidden)]
39593impl FnMut<(f64,f64,f64,f64,f64,f64,f64,)> for SquareInternalType {
39594    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39595        square444361886.call(args)
39596    }
39597}
39598
39599#[doc(hidden)]
39600impl Fn<(f64,f64,f64,f64,f64,f64,f64,)> for SquareInternalType {
39601    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39602        square444361886.call(args)
39603    }
39604}
39605
39606#[wasm_bindgen]
39607extern {
39608    #[wasm_bindgen(js_name = "square")]
39609    fn square2436205877(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39610}
39611
39612#[doc(hidden)]
39613impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for SquareInternalType {
39614    type Output = ();
39615    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39616        square2436205877.call(args)
39617    }
39618}
39619
39620#[doc(hidden)]
39621impl FnMut<(f64,f64,f64,f64,f64,f64,)> for SquareInternalType {
39622    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39623        square2436205877.call(args)
39624    }
39625}
39626
39627#[doc(hidden)]
39628impl Fn<(f64,f64,f64,f64,f64,f64,)> for SquareInternalType {
39629    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39630        square2436205877.call(args)
39631    }
39632}
39633
39634#[wasm_bindgen]
39635extern {
39636    #[wasm_bindgen(js_name = "square")]
39637    fn square4138111933(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39638}
39639
39640#[doc(hidden)]
39641impl FnOnce<(f64,f64,f64,f64,f64,)> for SquareInternalType {
39642    type Output = ();
39643    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
39644        square4138111933.call(args)
39645    }
39646}
39647
39648#[doc(hidden)]
39649impl FnMut<(f64,f64,f64,f64,f64,)> for SquareInternalType {
39650    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
39651        square4138111933.call(args)
39652    }
39653}
39654
39655#[doc(hidden)]
39656impl Fn<(f64,f64,f64,f64,f64,)> for SquareInternalType {
39657    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,)) -> Self::Output {
39658        square4138111933.call(args)
39659    }
39660}
39661
39662#[wasm_bindgen]
39663extern {
39664    #[wasm_bindgen(js_name = "square")]
39665    fn square858205311(_ : f64, _ : f64, _ : f64, _ : f64, ) ;
39666}
39667
39668#[doc(hidden)]
39669impl FnOnce<(f64,f64,f64,f64,)> for SquareInternalType {
39670    type Output = ();
39671    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,)) -> Self::Output {
39672        square858205311.call(args)
39673    }
39674}
39675
39676#[doc(hidden)]
39677impl FnMut<(f64,f64,f64,f64,)> for SquareInternalType {
39678    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,)) -> Self::Output {
39679        square858205311.call(args)
39680    }
39681}
39682
39683#[doc(hidden)]
39684impl Fn<(f64,f64,f64,f64,)> for SquareInternalType {
39685    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,)) -> Self::Output {
39686        square858205311.call(args)
39687    }
39688}
39689
39690#[wasm_bindgen]
39691extern {
39692    #[wasm_bindgen(js_name = "square")]
39693    fn square2809854041(_ : f64, _ : f64, _ : f64, ) ;
39694}
39695
39696#[doc(hidden)]
39697impl FnOnce<(f64,f64,f64,)> for SquareInternalType {
39698    type Output = ();
39699    extern "rust-call" fn call_once(self, args: (f64,f64,f64,)) -> Self::Output {
39700        square2809854041.call(args)
39701    }
39702}
39703
39704#[doc(hidden)]
39705impl FnMut<(f64,f64,f64,)> for SquareInternalType {
39706    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,)) -> Self::Output {
39707        square2809854041.call(args)
39708    }
39709}
39710
39711#[doc(hidden)]
39712impl Fn<(f64,f64,f64,)> for SquareInternalType {
39713    extern "rust-call" fn call(&self, args: (f64,f64,f64,)) -> Self::Output {
39714        square2809854041.call(args)
39715    }
39716}
39717#[doc=r##"<p>Draws a triangle to the canvas. A triangle is a plane created by connecting
39718three points. The first two arguments specify the first point, the middle two
39719arguments specify the second point, and the last two arguments specify the
39720third point.</p>
39721"##]
39722///<h2>Examples</h2>
39723///
39724
39725#[doc=r###"```rust
39726triangle(30, 75, 58, 20, 86, 75);
39727```"###]
39728/// <h2>Parameters</h2>
39729///
39730#[doc = r##"<code>x1</code> x-coordinate of the first point
39731
39732"##]
39733///
39734///
39735#[doc = r##"<code>y1</code> y-coordinate of the first point
39736
39737"##]
39738///
39739///
39740#[doc = r##"<code>x2</code> x-coordinate of the second point
39741
39742"##]
39743///
39744///
39745#[doc = r##"<code>y2</code> y-coordinate of the second point
39746
39747"##]
39748///
39749///
39750#[doc = r##"<code>x3</code> x-coordinate of the third point
39751
39752"##]
39753///
39754///
39755#[doc = r##"<code>y3</code> y-coordinate of the third point
39756
39757"##]
39758///
39759
39760pub static triangle: TriangleInternalType = TriangleInternalType;
39761#[doc(hidden)]
39762pub struct TriangleInternalType;
39763
39764
39765#[wasm_bindgen]
39766extern {
39767    #[wasm_bindgen(js_name = "triangle")]
39768    fn triangle716599839(_ : f64, _ : f64, _ : f64, _ : f64, _ : f64, _ : f64, ) ;
39769}
39770
39771#[doc(hidden)]
39772impl FnOnce<(f64,f64,f64,f64,f64,f64,)> for TriangleInternalType {
39773    type Output = ();
39774    extern "rust-call" fn call_once(self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39775        triangle716599839.call(args)
39776    }
39777}
39778
39779#[doc(hidden)]
39780impl FnMut<(f64,f64,f64,f64,f64,f64,)> for TriangleInternalType {
39781    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39782        triangle716599839.call(args)
39783    }
39784}
39785
39786#[doc(hidden)]
39787impl Fn<(f64,f64,f64,f64,f64,f64,)> for TriangleInternalType {
39788    extern "rust-call" fn call(&self, args: (f64,f64,f64,f64,f64,f64,)) -> Self::Output {
39789        triangle716599839.call(args)
39790    }
39791}
39792#[doc=r##"<p>Returns a number representing the sample rate, in samples per second,
39793of all sound objects in this audio context. It is determined by the
39794sampling rate of your operating system's sound card, and it is not
39795currently possile to change.
39796It is often 44100, or twice the range of human hearing.</p>
39797"##]
39798
39799pub static sampleRate: SampleRateInternalType = SampleRateInternalType;
39800#[doc(hidden)]
39801pub struct SampleRateInternalType;
39802
39803
39804#[wasm_bindgen]
39805extern {
39806    #[wasm_bindgen(js_name = "sampleRate")]
39807    fn sampleRate2545078820() -> f64;
39808}
39809
39810#[doc(hidden)]
39811impl FnOnce<()> for SampleRateInternalType {
39812    type Output = f64;
39813    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
39814        sampleRate2545078820.call(args)
39815    }
39816}
39817
39818#[doc(hidden)]
39819impl FnMut<()> for SampleRateInternalType {
39820    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
39821        sampleRate2545078820.call(args)
39822    }
39823}
39824
39825#[doc(hidden)]
39826impl Fn<()> for SampleRateInternalType {
39827    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
39828        sampleRate2545078820.call(args)
39829    }
39830}
39831#[doc=r##"<p>Returns the closest MIDI note value for
39832a given frequency.</p>
39833"##]
39834/// <h2>Parameters</h2>
39835///
39836#[doc = r##"<code>frequency</code> A freqeuncy, for example, the "A"
39837                           above Middle C is 440Hz
39838
39839"##]
39840///
39841
39842pub static freqToMidi: FreqToMidiInternalType = FreqToMidiInternalType;
39843#[doc(hidden)]
39844pub struct FreqToMidiInternalType;
39845
39846
39847#[wasm_bindgen]
39848extern {
39849    #[wasm_bindgen(js_name = "freqToMidi")]
39850    fn freqToMidi321757596(_ : f64, ) -> f64;
39851}
39852
39853#[doc(hidden)]
39854impl FnOnce<(f64,)> for FreqToMidiInternalType {
39855    type Output = f64;
39856    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
39857        freqToMidi321757596.call(args)
39858    }
39859}
39860
39861#[doc(hidden)]
39862impl FnMut<(f64,)> for FreqToMidiInternalType {
39863    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
39864        freqToMidi321757596.call(args)
39865    }
39866}
39867
39868#[doc(hidden)]
39869impl Fn<(f64,)> for FreqToMidiInternalType {
39870    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
39871        freqToMidi321757596.call(args)
39872    }
39873}
39874#[doc=r##"<p>Returns the frequency value of a MIDI note value.
39875General MIDI treats notes as integers where middle C
39876is 60, C# is 61, D is 62 etc. Useful for generating
39877musical frequencies with oscillators.</p>
39878"##]
39879///<h2>Examples</h2>
39880///
39881
39882#[doc=r###"```rust
39883let midiNotes = [60, 64, 67, 72];
39884let noteIndex = 0;
39885let midiVal, freq;
39886
39887function setup() {
39888  let cnv = createCanvas(100, 100);
39889  cnv.mousePressed(startSound);
39890  osc = new p5.TriOsc();
39891  env = new p5.Envelope();
39892}
39893
39894function draw() {
39895  background(220);
39896  text('tap to play', 10, 20);
39897  if (midiVal) {
39898    text('MIDI: ' + midiVal, 10, 40);
39899    text('Freq: ' + freq, 10, 60);
39900  }
39901}
39902
39903function startSound() {
39904  // see also: userStartAudio();
39905  osc.start();
39906
39907  midiVal = midiNotes[noteIndex % midiNotes.length];
39908  freq = midiToFreq(midiVal);
39909  osc.freq(freq);
39910  env.ramp(osc, 0, 1.0, 0);
39911
39912  noteIndex++;
39913}
39914```"###]
39915/// <h2>Parameters</h2>
39916///
39917#[doc = r##"<code>midiNote</code> The number of a MIDI note
39918
39919"##]
39920///
39921
39922pub static midiToFreq: MidiToFreqInternalType = MidiToFreqInternalType;
39923#[doc(hidden)]
39924pub struct MidiToFreqInternalType;
39925
39926
39927#[wasm_bindgen]
39928extern {
39929    #[wasm_bindgen(js_name = "midiToFreq")]
39930    fn midiToFreq2189369377(_ : f64, ) -> f64;
39931}
39932
39933#[doc(hidden)]
39934impl FnOnce<(f64,)> for MidiToFreqInternalType {
39935    type Output = f64;
39936    extern "rust-call" fn call_once(self, args: (f64,)) -> Self::Output {
39937        midiToFreq2189369377.call(args)
39938    }
39939}
39940
39941#[doc(hidden)]
39942impl FnMut<(f64,)> for MidiToFreqInternalType {
39943    extern "rust-call" fn call_mut(&mut self, args: (f64,)) -> Self::Output {
39944        midiToFreq2189369377.call(args)
39945    }
39946}
39947
39948#[doc(hidden)]
39949impl Fn<(f64,)> for MidiToFreqInternalType {
39950    extern "rust-call" fn call(&self, args: (f64,)) -> Self::Output {
39951        midiToFreq2189369377.call(args)
39952    }
39953}
39954#[doc=r##"<p>List the SoundFile formats that you will include. LoadSound
39955will search your directory for these extensions, and will pick
39956a format that is compatable with the client's web browser.
39957<a href="http://media.io/">Here</a> is a free online file
39958converter.</p>
39959"##]
39960///<h2>Examples</h2>
39961///
39962
39963#[doc=r###"```rust
39964function preload() {
39965  // set the global sound formats
39966  soundFormats('mp3', 'ogg');
39967
39968  // load either beatbox.mp3, or .ogg, depending on browser
39969  mySound = loadSound('assets/beatbox.mp3');
39970}
39971
39972function setup() {
39973     let cnv = createCanvas(100, 100);
39974     background(220);
39975     text('sound loaded! tap to play', 10, 20, width - 20);
39976     cnv.mousePressed(function() {
39977       mySound.play();
39978     });
39979   }
39980```"###]
39981/// <h2>Parameters</h2>
39982///
39983#[doc = r##"<code>formats?</code> i.e. 'mp3', 'wav', 'ogg'
39984
39985"##]
39986///
39987
39988pub static soundFormats: SoundFormatsInternalType = SoundFormatsInternalType;
39989#[doc(hidden)]
39990pub struct SoundFormatsInternalType;
39991
39992
39993#[wasm_bindgen]
39994extern {
39995    #[wasm_bindgen(js_name = "soundFormats")]
39996    fn soundFormats3927415894(_ : & str, ) ;
39997}
39998
39999#[doc(hidden)]
40000impl FnOnce<(&'_ str,)> for SoundFormatsInternalType {
40001    type Output = ();
40002    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
40003        soundFormats3927415894.call(args)
40004    }
40005}
40006
40007#[doc(hidden)]
40008impl FnMut<(&'_ str,)> for SoundFormatsInternalType {
40009    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
40010        soundFormats3927415894.call(args)
40011    }
40012}
40013
40014#[doc(hidden)]
40015impl Fn<(&'_ str,)> for SoundFormatsInternalType {
40016    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
40017        soundFormats3927415894.call(args)
40018    }
40019}
40020
40021#[wasm_bindgen]
40022extern {
40023    #[wasm_bindgen(js_name = "soundFormats")]
40024    fn soundFormats1620856449() ;
40025}
40026
40027#[doc(hidden)]
40028impl FnOnce<()> for SoundFormatsInternalType {
40029    type Output = ();
40030    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
40031        soundFormats1620856449.call(args)
40032    }
40033}
40034
40035#[doc(hidden)]
40036impl FnMut<()> for SoundFormatsInternalType {
40037    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
40038        soundFormats1620856449.call(args)
40039    }
40040}
40041
40042#[doc(hidden)]
40043impl Fn<()> for SoundFormatsInternalType {
40044    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
40045        soundFormats1620856449.call(args)
40046    }
40047}
40048#[doc=r##"<p>Returns the Audio Context for this sketch. Useful for users
40049who would like to dig deeper into the <a target='_blank' href=
40050'http://webaudio.github.io/web-audio-api/'>Web Audio API
40051</a>.</p>
40052
40053<p>Some browsers require users to startAudioContext
40054with a user gesture, such as touchStarted in the example below.</p>"##]
40055///<h2>Examples</h2>
40056///
40057
40058#[doc=r###"```rust
40059 function draw() {
40060   background(255);
40061   textAlign(CENTER);
40062
40063   if (getAudioContext().state !== 'running') {
40064     text('click to start audio', width/2, height/2);
40065   } else {
40066     text('audio is enabled', width/2, height/2);
40067   }
40068 }
40069
40070 function touchStarted() {
40071   if (getAudioContext().state !== 'running') {
40072     getAudioContext().resume();
40073   }
40074   var synth = new p5.MonoSynth();
40075   synth.play('A4', 0.5, 0, 0.2);
40076 }
40077
40078```"###]
40079
40080pub static getAudioContext: GetAudioContextInternalType = GetAudioContextInternalType;
40081#[doc(hidden)]
40082pub struct GetAudioContextInternalType;
40083
40084
40085#[wasm_bindgen]
40086extern {
40087    #[wasm_bindgen(js_name = "getAudioContext")]
40088    fn getAudioContext3504342823() -> js_sys::Object;
40089}
40090
40091#[doc(hidden)]
40092impl FnOnce<()> for GetAudioContextInternalType {
40093    type Output = js_sys::Object;
40094    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
40095        getAudioContext3504342823.call(args)
40096    }
40097}
40098
40099#[doc(hidden)]
40100impl FnMut<()> for GetAudioContextInternalType {
40101    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
40102        getAudioContext3504342823.call(args)
40103    }
40104}
40105
40106#[doc(hidden)]
40107impl Fn<()> for GetAudioContextInternalType {
40108    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
40109        getAudioContext3504342823.call(args)
40110    }
40111}
40112#[doc=r##"<p>It is not only a good practice to give users control over starting
40113audio. This policy is enforced by many web browsers, including iOS and
40114<a href="https://goo.gl/7K7WLu" title="Google Chrome's autoplay
40115policy">Google Chrome</a>, which create the Web Audio API's
40116<a href="https://developer.mozilla.org/en-US/docs/Web/API/AudioContext"
40117title="Audio Context @ MDN">Audio Context</a>
40118in a suspended state.</p>
40119
40120<p>In these browser-specific policies, sound will not play until a user
40121interaction event (i.e. <code>mousePressed()</code>) explicitly resumes
40122the AudioContext, or starts an audio node. This can be accomplished by
40123calling <code>start()</code> on a <code>p5.Oscillator</code>,
40124<code> play()</code> on a <code>p5.SoundFile</code>, or simply
40125<code>userStartAudio()</code>.</p>
40126
40127<p><code>userStartAudio()</code> starts the AudioContext on a user
40128gesture. The default behavior will enable audio on any
40129mouseUp or touchEnd event. It can also be placed in a specific
40130interaction function, such as <code>mousePressed()</code> as in the
40131example below. This method utilizes
40132<a href="https://github.com/tambien/StartAudioContext">StartAudioContext
40133</a>, a library by Yotam Mann (MIT Licence, 2016).</p>"##]
40134///<h2>Examples</h2>
40135///
40136
40137#[doc=r###"```rust
40138function setup() {
40139  // mimics the autoplay policy
40140  getAudioContext().suspend();
40141
40142  let mySynth = new p5.MonoSynth();
40143
40144  // This won't play until the context has resumed
40145  mySynth.play('A6');
40146}
40147function draw() {
40148  background(220);
40149  textAlign(CENTER, CENTER);
40150  text(getAudioContext().state, width/2, height/2);
40151}
40152function mousePressed() {
40153  userStartAudio();
40154}
40155```"###]
40156/// <h2>Parameters</h2>
40157///
40158#[doc = r##"<code>element(s)?</code> This argument can be an Element,
40159                              Selector String, NodeList, p5.Element,
40160                              jQuery Element, or an Array of any of those.
40161
40162"##]
40163///
40164///
40165#[doc = r##"<code>callback?</code> Callback to invoke when the AudioContext
40166                              has started
40167
40168"##]
40169///
40170
40171pub static userStartAudio: UserStartAudioInternalType = UserStartAudioInternalType;
40172#[doc(hidden)]
40173pub struct UserStartAudioInternalType;
40174
40175
40176#[wasm_bindgen]
40177extern {
40178    #[wasm_bindgen(js_name = "userStartAudio")]
40179    fn userStartAudio3967934551(_ : Element, _ : js_sys::Function, ) -> js_sys::Promise;
40180}
40181
40182#[doc(hidden)]
40183impl FnOnce<(Element,js_sys::Function,)> for UserStartAudioInternalType {
40184    type Output = js_sys::Promise;
40185    extern "rust-call" fn call_once(self, args: (Element,js_sys::Function,)) -> Self::Output {
40186        userStartAudio3967934551.call(args)
40187    }
40188}
40189
40190#[doc(hidden)]
40191impl FnMut<(Element,js_sys::Function,)> for UserStartAudioInternalType {
40192    extern "rust-call" fn call_mut(&mut self, args: (Element,js_sys::Function,)) -> Self::Output {
40193        userStartAudio3967934551.call(args)
40194    }
40195}
40196
40197#[doc(hidden)]
40198impl Fn<(Element,js_sys::Function,)> for UserStartAudioInternalType {
40199    extern "rust-call" fn call(&self, args: (Element,js_sys::Function,)) -> Self::Output {
40200        userStartAudio3967934551.call(args)
40201    }
40202}
40203
40204#[wasm_bindgen]
40205extern {
40206    #[wasm_bindgen(js_name = "userStartAudio")]
40207    fn userStartAudio3753034640(_ : Element, ) -> js_sys::Promise;
40208}
40209
40210#[doc(hidden)]
40211impl FnOnce<(Element,)> for UserStartAudioInternalType {
40212    type Output = js_sys::Promise;
40213    extern "rust-call" fn call_once(self, args: (Element,)) -> Self::Output {
40214        userStartAudio3753034640.call(args)
40215    }
40216}
40217
40218#[doc(hidden)]
40219impl FnMut<(Element,)> for UserStartAudioInternalType {
40220    extern "rust-call" fn call_mut(&mut self, args: (Element,)) -> Self::Output {
40221        userStartAudio3753034640.call(args)
40222    }
40223}
40224
40225#[doc(hidden)]
40226impl Fn<(Element,)> for UserStartAudioInternalType {
40227    extern "rust-call" fn call(&self, args: (Element,)) -> Self::Output {
40228        userStartAudio3753034640.call(args)
40229    }
40230}
40231
40232#[wasm_bindgen]
40233extern {
40234    #[wasm_bindgen(js_name = "userStartAudio")]
40235    fn userStartAudio2320024123(_ : js_sys::Array, _ : js_sys::Function, ) -> js_sys::Promise;
40236}
40237
40238#[doc(hidden)]
40239impl FnOnce<(js_sys::Array,js_sys::Function,)> for UserStartAudioInternalType {
40240    type Output = js_sys::Promise;
40241    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
40242        userStartAudio2320024123.call(args)
40243    }
40244}
40245
40246#[doc(hidden)]
40247impl FnMut<(js_sys::Array,js_sys::Function,)> for UserStartAudioInternalType {
40248    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
40249        userStartAudio2320024123.call(args)
40250    }
40251}
40252
40253#[doc(hidden)]
40254impl Fn<(js_sys::Array,js_sys::Function,)> for UserStartAudioInternalType {
40255    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
40256        userStartAudio2320024123.call(args)
40257    }
40258}
40259
40260#[wasm_bindgen]
40261extern {
40262    #[wasm_bindgen(js_name = "userStartAudio")]
40263    fn userStartAudio1256898469(_ : js_sys::Array, ) -> js_sys::Promise;
40264}
40265
40266#[doc(hidden)]
40267impl FnOnce<(js_sys::Array,)> for UserStartAudioInternalType {
40268    type Output = js_sys::Promise;
40269    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
40270        userStartAudio1256898469.call(args)
40271    }
40272}
40273
40274#[doc(hidden)]
40275impl FnMut<(js_sys::Array,)> for UserStartAudioInternalType {
40276    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
40277        userStartAudio1256898469.call(args)
40278    }
40279}
40280
40281#[doc(hidden)]
40282impl Fn<(js_sys::Array,)> for UserStartAudioInternalType {
40283    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
40284        userStartAudio1256898469.call(args)
40285    }
40286}
40287
40288#[wasm_bindgen]
40289extern {
40290    #[wasm_bindgen(js_name = "userStartAudio")]
40291    fn userStartAudio3438994153() -> js_sys::Promise;
40292}
40293
40294#[doc(hidden)]
40295impl FnOnce<()> for UserStartAudioInternalType {
40296    type Output = js_sys::Promise;
40297    extern "rust-call" fn call_once(self, args: ()) -> Self::Output {
40298        userStartAudio3438994153.call(args)
40299    }
40300}
40301
40302#[doc(hidden)]
40303impl FnMut<()> for UserStartAudioInternalType {
40304    extern "rust-call" fn call_mut(&mut self, args: ()) -> Self::Output {
40305        userStartAudio3438994153.call(args)
40306    }
40307}
40308
40309#[doc(hidden)]
40310impl Fn<()> for UserStartAudioInternalType {
40311    extern "rust-call" fn call(&self, args: ()) -> Self::Output {
40312        userStartAudio3438994153.call(args)
40313    }
40314}
40315#[doc=r##"<p>loadSound() returns a new p5.SoundFile from a specified
40316path. If called during preload(), the p5.SoundFile will be ready
40317to play in time for setup() and draw(). If called outside of
40318preload, the p5.SoundFile will not be ready immediately, so
40319loadSound accepts a callback as the second parameter. Using a
40320<a href="https://github.com/processing/p5.js/wiki/Local-server">
40321local server</a> is recommended when loading external files.</p>
40322"##]
40323///<h2>Examples</h2>
40324///
40325
40326#[doc=r###"```rust
40327let mySound;
40328function preload() {
40329  soundFormats('mp3', 'ogg');
40330  mySound = loadSound('assets/doorbell');
40331}
40332
40333function setup() {
40334  let cnv = createCanvas(100, 100);
40335  cnv.mousePressed(canvasPressed);
40336  background(220);
40337  text('tap here to play', 10, 20);
40338}
40339
40340function canvasPressed() {
40341  // playing a sound file on a user gesture
40342  // is equivalent to `userStartAudio()`
40343  mySound.play();
40344}
40345```"###]
40346/// <h2>Parameters</h2>
40347///
40348#[doc = r##"<code>path</code> Path to the sound file, or an array with
40349                                  paths to soundfiles in multiple formats
40350                                  i.e. ['sound.ogg', 'sound.mp3'].
40351                                  Alternately, accepts an object: either
40352                                  from the HTML5 File API, or a p5.File.
40353
40354"##]
40355///
40356///
40357#[doc = r##"<code>successCallback?</code> Name of a function to call once file loads
40358
40359"##]
40360///
40361///
40362#[doc = r##"<code>errorCallback?</code> Name of a function to call if there is
40363                                    an error loading the file.
40364
40365"##]
40366///
40367///
40368#[doc = r##"<code>whileLoading?</code> Name of a function to call while file is loading.
40369                               This function will receive the percentage loaded
40370                               so far, from 0.0 to 1.0.
40371
40372"##]
40373///
40374
40375pub static loadSound: LoadSoundInternalType = LoadSoundInternalType;
40376#[doc(hidden)]
40377pub struct LoadSoundInternalType;
40378
40379
40380#[wasm_bindgen]
40381extern {
40382    #[wasm_bindgen(js_name = "loadSound")]
40383    fn loadSound2559371408(_ : & str, _ : js_sys::Function, _ : js_sys::Function, _ : js_sys::Function, ) -> SoundFile;
40384}
40385
40386#[doc(hidden)]
40387impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40388    type Output = SoundFile;
40389    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,js_sys::Function,)) -> Self::Output {
40390        loadSound2559371408.call(args)
40391    }
40392}
40393
40394#[doc(hidden)]
40395impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40396    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,js_sys::Function,)) -> Self::Output {
40397        loadSound2559371408.call(args)
40398    }
40399}
40400
40401#[doc(hidden)]
40402impl Fn<(&'_ str,js_sys::Function,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40403    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,js_sys::Function,)) -> Self::Output {
40404        loadSound2559371408.call(args)
40405    }
40406}
40407
40408#[wasm_bindgen]
40409extern {
40410    #[wasm_bindgen(js_name = "loadSound")]
40411    fn loadSound1331435645(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) -> SoundFile;
40412}
40413
40414#[doc(hidden)]
40415impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40416    type Output = SoundFile;
40417    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
40418        loadSound1331435645.call(args)
40419    }
40420}
40421
40422#[doc(hidden)]
40423impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40424    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
40425        loadSound1331435645.call(args)
40426    }
40427}
40428
40429#[doc(hidden)]
40430impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40431    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
40432        loadSound1331435645.call(args)
40433    }
40434}
40435
40436#[wasm_bindgen]
40437extern {
40438    #[wasm_bindgen(js_name = "loadSound")]
40439    fn loadSound1217364925(_ : & str, _ : js_sys::Function, ) -> SoundFile;
40440}
40441
40442#[doc(hidden)]
40443impl FnOnce<(&'_ str,js_sys::Function,)> for LoadSoundInternalType {
40444    type Output = SoundFile;
40445    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
40446        loadSound1217364925.call(args)
40447    }
40448}
40449
40450#[doc(hidden)]
40451impl FnMut<(&'_ str,js_sys::Function,)> for LoadSoundInternalType {
40452    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
40453        loadSound1217364925.call(args)
40454    }
40455}
40456
40457#[doc(hidden)]
40458impl Fn<(&'_ str,js_sys::Function,)> for LoadSoundInternalType {
40459    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
40460        loadSound1217364925.call(args)
40461    }
40462}
40463
40464#[wasm_bindgen]
40465extern {
40466    #[wasm_bindgen(js_name = "loadSound")]
40467    fn loadSound1053369601(_ : & str, ) -> SoundFile;
40468}
40469
40470#[doc(hidden)]
40471impl FnOnce<(&'_ str,)> for LoadSoundInternalType {
40472    type Output = SoundFile;
40473    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
40474        loadSound1053369601.call(args)
40475    }
40476}
40477
40478#[doc(hidden)]
40479impl FnMut<(&'_ str,)> for LoadSoundInternalType {
40480    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
40481        loadSound1053369601.call(args)
40482    }
40483}
40484
40485#[doc(hidden)]
40486impl Fn<(&'_ str,)> for LoadSoundInternalType {
40487    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
40488        loadSound1053369601.call(args)
40489    }
40490}
40491
40492#[wasm_bindgen]
40493extern {
40494    #[wasm_bindgen(js_name = "loadSound")]
40495    fn loadSound3911800949(_ : js_sys::Array, _ : js_sys::Function, _ : js_sys::Function, _ : js_sys::Function, ) -> SoundFile;
40496}
40497
40498#[doc(hidden)]
40499impl FnOnce<(js_sys::Array,js_sys::Function,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40500    type Output = SoundFile;
40501    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Function,js_sys::Function,js_sys::Function,)) -> Self::Output {
40502        loadSound3911800949.call(args)
40503    }
40504}
40505
40506#[doc(hidden)]
40507impl FnMut<(js_sys::Array,js_sys::Function,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40508    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Function,js_sys::Function,js_sys::Function,)) -> Self::Output {
40509        loadSound3911800949.call(args)
40510    }
40511}
40512
40513#[doc(hidden)]
40514impl Fn<(js_sys::Array,js_sys::Function,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40515    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Function,js_sys::Function,js_sys::Function,)) -> Self::Output {
40516        loadSound3911800949.call(args)
40517    }
40518}
40519
40520#[wasm_bindgen]
40521extern {
40522    #[wasm_bindgen(js_name = "loadSound")]
40523    fn loadSound1178574901(_ : js_sys::Array, _ : js_sys::Function, _ : js_sys::Function, ) -> SoundFile;
40524}
40525
40526#[doc(hidden)]
40527impl FnOnce<(js_sys::Array,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40528    type Output = SoundFile;
40529    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Function,js_sys::Function,)) -> Self::Output {
40530        loadSound1178574901.call(args)
40531    }
40532}
40533
40534#[doc(hidden)]
40535impl FnMut<(js_sys::Array,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40536    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Function,js_sys::Function,)) -> Self::Output {
40537        loadSound1178574901.call(args)
40538    }
40539}
40540
40541#[doc(hidden)]
40542impl Fn<(js_sys::Array,js_sys::Function,js_sys::Function,)> for LoadSoundInternalType {
40543    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Function,js_sys::Function,)) -> Self::Output {
40544        loadSound1178574901.call(args)
40545    }
40546}
40547
40548#[wasm_bindgen]
40549extern {
40550    #[wasm_bindgen(js_name = "loadSound")]
40551    fn loadSound264203851(_ : js_sys::Array, _ : js_sys::Function, ) -> SoundFile;
40552}
40553
40554#[doc(hidden)]
40555impl FnOnce<(js_sys::Array,js_sys::Function,)> for LoadSoundInternalType {
40556    type Output = SoundFile;
40557    extern "rust-call" fn call_once(self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
40558        loadSound264203851.call(args)
40559    }
40560}
40561
40562#[doc(hidden)]
40563impl FnMut<(js_sys::Array,js_sys::Function,)> for LoadSoundInternalType {
40564    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
40565        loadSound264203851.call(args)
40566    }
40567}
40568
40569#[doc(hidden)]
40570impl Fn<(js_sys::Array,js_sys::Function,)> for LoadSoundInternalType {
40571    extern "rust-call" fn call(&self, args: (js_sys::Array,js_sys::Function,)) -> Self::Output {
40572        loadSound264203851.call(args)
40573    }
40574}
40575
40576#[wasm_bindgen]
40577extern {
40578    #[wasm_bindgen(js_name = "loadSound")]
40579    fn loadSound2839452996(_ : js_sys::Array, ) -> SoundFile;
40580}
40581
40582#[doc(hidden)]
40583impl FnOnce<(js_sys::Array,)> for LoadSoundInternalType {
40584    type Output = SoundFile;
40585    extern "rust-call" fn call_once(self, args: (js_sys::Array,)) -> Self::Output {
40586        loadSound2839452996.call(args)
40587    }
40588}
40589
40590#[doc(hidden)]
40591impl FnMut<(js_sys::Array,)> for LoadSoundInternalType {
40592    extern "rust-call" fn call_mut(&mut self, args: (js_sys::Array,)) -> Self::Output {
40593        loadSound2839452996.call(args)
40594    }
40595}
40596
40597#[doc(hidden)]
40598impl Fn<(js_sys::Array,)> for LoadSoundInternalType {
40599    extern "rust-call" fn call(&self, args: (js_sys::Array,)) -> Self::Output {
40600        loadSound2839452996.call(args)
40601    }
40602}
40603#[doc=r##"<p>Create a p5.Convolver. Accepts a path to a soundfile
40604that will be used to generate an impulse response.</p>
40605"##]
40606///<h2>Examples</h2>
40607///
40608
40609#[doc=r###"```rust
40610let cVerb, sound;
40611function preload() {
40612  // We have both MP3 and OGG versions of all sound assets
40613  soundFormats('ogg', 'mp3');
40614
40615  // Try replacing 'bx-spring' with other soundfiles like
40616  // 'concrete-tunnel' 'small-plate' 'drum' 'beatbox'
40617  cVerb = createConvolver('assets/bx-spring.mp3');
40618
40619  // Try replacing 'Damscray_DancingTiger' with
40620  // 'beat', 'doorbell', lucky_dragons_-_power_melody'
40621  sound = loadSound('assets/Damscray_DancingTiger.mp3');
40622}
40623
40624function setup() {
40625  let cnv = createCanvas(100, 100);
40626  cnv.mousePressed(playSound);
40627  background(220);
40628  text('tap to play', 20, 20);
40629
40630  // disconnect from master output...
40631  sound.disconnect();
40632
40633  // ...and process with cVerb
40634  // so that we only hear the convolution
40635  cVerb.process(sound);
40636}
40637
40638function playSound() {
40639  sound.play();
40640}
40641```"###]
40642/// <h2>Parameters</h2>
40643///
40644#[doc = r##"<code>path</code> path to a sound file
40645
40646"##]
40647///
40648///
40649#[doc = r##"<code>callback?</code> function to call if loading is successful.
40650                              The object will be passed in as the argument
40651                              to the callback function.
40652
40653"##]
40654///
40655///
40656#[doc = r##"<code>errorCallback?</code> function to call if loading is not successful.
40657                              A custom error will be passed in as the argument
40658                              to the callback function.
40659
40660"##]
40661///
40662
40663pub static createConvolver: CreateConvolverInternalType = CreateConvolverInternalType;
40664#[doc(hidden)]
40665pub struct CreateConvolverInternalType;
40666
40667
40668#[wasm_bindgen]
40669extern {
40670    #[wasm_bindgen(js_name = "createConvolver")]
40671    fn createConvolver1030770569(_ : & str, _ : js_sys::Function, _ : js_sys::Function, ) ->  Convolver;
40672}
40673
40674#[doc(hidden)]
40675impl FnOnce<(&'_ str,js_sys::Function,js_sys::Function,)> for CreateConvolverInternalType {
40676    type Output =  Convolver;
40677    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
40678        createConvolver1030770569.call(args)
40679    }
40680}
40681
40682#[doc(hidden)]
40683impl FnMut<(&'_ str,js_sys::Function,js_sys::Function,)> for CreateConvolverInternalType {
40684    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
40685        createConvolver1030770569.call(args)
40686    }
40687}
40688
40689#[doc(hidden)]
40690impl Fn<(&'_ str,js_sys::Function,js_sys::Function,)> for CreateConvolverInternalType {
40691    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,js_sys::Function,)) -> Self::Output {
40692        createConvolver1030770569.call(args)
40693    }
40694}
40695
40696#[wasm_bindgen]
40697extern {
40698    #[wasm_bindgen(js_name = "createConvolver")]
40699    fn createConvolver3104791378(_ : & str, _ : js_sys::Function, ) ->  Convolver;
40700}
40701
40702#[doc(hidden)]
40703impl FnOnce<(&'_ str,js_sys::Function,)> for CreateConvolverInternalType {
40704    type Output =  Convolver;
40705    extern "rust-call" fn call_once(self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
40706        createConvolver3104791378.call(args)
40707    }
40708}
40709
40710#[doc(hidden)]
40711impl FnMut<(&'_ str,js_sys::Function,)> for CreateConvolverInternalType {
40712    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
40713        createConvolver3104791378.call(args)
40714    }
40715}
40716
40717#[doc(hidden)]
40718impl Fn<(&'_ str,js_sys::Function,)> for CreateConvolverInternalType {
40719    extern "rust-call" fn call(&self, args: (&'_ str,js_sys::Function,)) -> Self::Output {
40720        createConvolver3104791378.call(args)
40721    }
40722}
40723
40724#[wasm_bindgen]
40725extern {
40726    #[wasm_bindgen(js_name = "createConvolver")]
40727    fn createConvolver3354559638(_ : & str, ) ->  Convolver;
40728}
40729
40730#[doc(hidden)]
40731impl FnOnce<(&'_ str,)> for CreateConvolverInternalType {
40732    type Output =  Convolver;
40733    extern "rust-call" fn call_once(self, args: (&'_ str,)) -> Self::Output {
40734        createConvolver3354559638.call(args)
40735    }
40736}
40737
40738#[doc(hidden)]
40739impl FnMut<(&'_ str,)> for CreateConvolverInternalType {
40740    extern "rust-call" fn call_mut(&mut self, args: (&'_ str,)) -> Self::Output {
40741        createConvolver3354559638.call(args)
40742    }
40743}
40744
40745#[doc(hidden)]
40746impl Fn<(&'_ str,)> for CreateConvolverInternalType {
40747    extern "rust-call" fn call(&self, args: (&'_ str,)) -> Self::Output {
40748        createConvolver3354559638.call(args)
40749    }
40750}
40751#[doc=r##"<p>Set the global tempo, in beats per minute, for all
40752p5.Parts. This method will impact all active p5.Parts.</p>
40753"##]
40754/// <h2>Parameters</h2>
40755///
40756#[doc = r##"<code>BPM</code> Beats Per Minute
40757
40758"##]
40759///
40760///
40761#[doc = r##"<code>rampTime</code> Seconds from now
40762
40763"##]
40764///
40765
40766pub static setBPM: SetBpmInternalType = SetBpmInternalType;
40767#[doc(hidden)]
40768pub struct SetBpmInternalType;
40769
40770
40771#[wasm_bindgen]
40772extern {
40773    #[wasm_bindgen(js_name = "setBPM")]
40774    fn setBPM397978099(_ : f64, _ : f64, ) ;
40775}
40776
40777#[doc(hidden)]
40778impl FnOnce<(f64,f64,)> for SetBpmInternalType {
40779    type Output = ();
40780    extern "rust-call" fn call_once(self, args: (f64,f64,)) -> Self::Output {
40781        setBPM397978099.call(args)
40782    }
40783}
40784
40785#[doc(hidden)]
40786impl FnMut<(f64,f64,)> for SetBpmInternalType {
40787    extern "rust-call" fn call_mut(&mut self, args: (f64,f64,)) -> Self::Output {
40788        setBPM397978099.call(args)
40789    }
40790}
40791
40792#[doc(hidden)]
40793impl Fn<(f64,f64,)> for SetBpmInternalType {
40794    extern "rust-call" fn call(&self, args: (f64,f64,)) -> Self::Output {
40795        setBPM397978099.call(args)
40796    }
40797}
40798#[doc=r##"<p>Save a p5.SoundFile as a .wav file. The browser will prompt the user
40799to download the file to their device.
40800For uploading audio to a server, use
40801<a href="/docs/reference/#/p5.SoundFile/saveBlob"><code>p5.SoundFile.saveBlob</code></a>.</p>
40802"##]
40803/// <h2>Parameters</h2>
40804///
40805#[doc = r##"<code>soundFile</code> p5.SoundFile that you wish to save
40806
40807"##]
40808///
40809///
40810#[doc = r##"<code>fileName</code> name of the resulting .wav file.
40811
40812"##]
40813///
40814
40815pub static saveSound: SaveSoundInternalType = SaveSoundInternalType;
40816#[doc(hidden)]
40817pub struct SaveSoundInternalType;
40818
40819
40820#[wasm_bindgen]
40821extern {
40822    #[wasm_bindgen(js_name = "saveSound")]
40823    fn saveSound2661146352(_ : & SoundFile, _ : & str, ) ;
40824}
40825
40826#[doc(hidden)]
40827impl FnOnce<(&'_ SoundFile,&'_ str,)> for SaveSoundInternalType {
40828    type Output = ();
40829    extern "rust-call" fn call_once(self, args: (&'_ SoundFile,&'_ str,)) -> Self::Output {
40830        saveSound2661146352.call(args)
40831    }
40832}
40833
40834#[doc(hidden)]
40835impl FnMut<(&'_ SoundFile,&'_ str,)> for SaveSoundInternalType {
40836    extern "rust-call" fn call_mut(&mut self, args: (&'_ SoundFile,&'_ str,)) -> Self::Output {
40837        saveSound2661146352.call(args)
40838    }
40839}
40840
40841#[doc(hidden)]
40842impl Fn<(&'_ SoundFile,&'_ str,)> for SaveSoundInternalType {
40843    extern "rust-call" fn call(&self, args: (&'_ SoundFile,&'_ str,)) -> Self::Output {
40844        saveSound2661146352.call(args)
40845    }
40846}