html/generated/
h1.rs

1pub mod element {
2    /// The HTML `<h1>` element
3    ///
4    /// [MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h1)
5    #[doc(alias = "h1")]
6    #[non_exhaustive]
7    #[derive(PartialEq, Clone, Default)]
8    pub struct Heading1 {
9        sys: html_sys::sections::Heading1,
10        children: Vec<super::child::Heading1Child>,
11    }
12    impl Heading1 {
13        /// Create a new builder
14        pub fn builder() -> super::builder::Heading1Builder {
15            super::builder::Heading1Builder::new(Default::default())
16        }
17    }
18    impl Heading1 {
19        /// Access the element's `data-*` properties
20        pub fn data_map(&self) -> &html_sys::DataMap {
21            &self.sys.data_map
22        }
23        /// Mutably access the element's `data-*` properties
24        pub fn data_map_mut(&mut self) -> &mut html_sys::DataMap {
25            &mut self.sys.data_map
26        }
27    }
28    impl Heading1 {
29        /// Get the value of the `role` attribute
30        pub fn role(&self) -> std::option::Option<&str> {
31            self.sys.role.as_deref()
32        }
33        /// Set the value of the `role` attribute
34        pub fn set_role(
35            &mut self,
36            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
37        ) {
38            self.sys.role = value.map(|v| v.into());
39        }
40        /// Get the value of the `aria-atomic` attribute
41        pub fn aria_atomic(&self) -> bool {
42            self.sys.aria_atomic
43        }
44        /// Set the value of the `aria-atomic` attribute
45        pub fn set_aria_atomic(&mut self, value: bool) {
46            self.sys.aria_atomic = value;
47        }
48        /// Get the value of the `aria-braillelabel` attribute
49        pub fn aria_braille_label(&self) -> std::option::Option<&str> {
50            self.sys.aria_braille_label.as_deref()
51        }
52        /// Set the value of the `aria-braillelabel` attribute
53        pub fn set_aria_braille_label(
54            &mut self,
55            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
56        ) {
57            self.sys.aria_braille_label = value.map(|v| v.into());
58        }
59        /// Get the value of the `aria-brailleroledescription` attribute
60        pub fn aria_braille_role_description(&self) -> std::option::Option<&str> {
61            self.sys.aria_braille_role_description.as_deref()
62        }
63        /// Set the value of the `aria-brailleroledescription` attribute
64        pub fn set_aria_braille_role_description(
65            &mut self,
66            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
67        ) {
68            self.sys.aria_braille_role_description = value.map(|v| v.into());
69        }
70        /// Get the value of the `aria-busy` attribute
71        pub fn aria_busy(&self) -> bool {
72            self.sys.aria_busy
73        }
74        /// Set the value of the `aria-busy` attribute
75        pub fn set_aria_busy(&mut self, value: bool) {
76            self.sys.aria_busy = value;
77        }
78        /// Get the value of the `aria-controls` attribute
79        pub fn aria_controls_elements(&self) -> std::option::Option<&str> {
80            self.sys.aria_controls_elements.as_deref()
81        }
82        /// Set the value of the `aria-controls` attribute
83        pub fn set_aria_controls_elements(
84            &mut self,
85            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
86        ) {
87            self.sys.aria_controls_elements = value.map(|v| v.into());
88        }
89        /// Get the value of the `aria-current` attribute
90        pub fn aria_current(&self) -> std::option::Option<&str> {
91            self.sys.aria_current.as_deref()
92        }
93        /// Set the value of the `aria-current` attribute
94        pub fn set_aria_current(
95            &mut self,
96            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
97        ) {
98            self.sys.aria_current = value.map(|v| v.into());
99        }
100        /// Get the value of the `aria-describedby` attribute
101        pub fn aria_described_by_elements(&self) -> std::option::Option<&str> {
102            self.sys.aria_described_by_elements.as_deref()
103        }
104        /// Set the value of the `aria-describedby` attribute
105        pub fn set_aria_described_by_elements(
106            &mut self,
107            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
108        ) {
109            self.sys.aria_described_by_elements = value.map(|v| v.into());
110        }
111        /// Get the value of the `aria-description` attribute
112        pub fn aria_description(&self) -> std::option::Option<&str> {
113            self.sys.aria_description.as_deref()
114        }
115        /// Set the value of the `aria-description` attribute
116        pub fn set_aria_description(
117            &mut self,
118            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
119        ) {
120            self.sys.aria_description = value.map(|v| v.into());
121        }
122        /// Get the value of the `aria-details` attribute
123        pub fn aria_details_elements(&self) -> std::option::Option<&str> {
124            self.sys.aria_details_elements.as_deref()
125        }
126        /// Set the value of the `aria-details` attribute
127        pub fn set_aria_details_elements(
128            &mut self,
129            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
130        ) {
131            self.sys.aria_details_elements = value.map(|v| v.into());
132        }
133        /// Get the value of the `aria-disabled` attribute
134        pub fn aria_disabled(&self) -> bool {
135            self.sys.aria_disabled
136        }
137        /// Set the value of the `aria-disabled` attribute
138        pub fn set_aria_disabled(&mut self, value: bool) {
139            self.sys.aria_disabled = value;
140        }
141        /// Get the value of the `aria-dropeffect` attribute
142        pub fn aria_drop_effect(&self) -> std::option::Option<&str> {
143            self.sys.aria_drop_effect.as_deref()
144        }
145        /// Set the value of the `aria-dropeffect` attribute
146        pub fn set_aria_drop_effect(
147            &mut self,
148            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
149        ) {
150            self.sys.aria_drop_effect = value.map(|v| v.into());
151        }
152        /// Get the value of the `aria-errormessage` attribute
153        pub fn aria_error_message_elements(&self) -> std::option::Option<&str> {
154            self.sys.aria_error_message_elements.as_deref()
155        }
156        /// Set the value of the `aria-errormessage` attribute
157        pub fn set_aria_error_message_elements(
158            &mut self,
159            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
160        ) {
161            self.sys.aria_error_message_elements = value.map(|v| v.into());
162        }
163        /// Get the value of the `aria-expanded` attribute
164        pub fn aria_expanded(&self) -> bool {
165            self.sys.aria_expanded
166        }
167        /// Set the value of the `aria-expanded` attribute
168        pub fn set_aria_expanded(&mut self, value: bool) {
169            self.sys.aria_expanded = value;
170        }
171        /// Get the value of the `aria-flowto` attribute
172        pub fn aria_flow_to_elements(&self) -> std::option::Option<&str> {
173            self.sys.aria_flow_to_elements.as_deref()
174        }
175        /// Set the value of the `aria-flowto` attribute
176        pub fn set_aria_flow_to_elements(
177            &mut self,
178            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
179        ) {
180            self.sys.aria_flow_to_elements = value.map(|v| v.into());
181        }
182        /// Get the value of the `aria-grabbed` attribute
183        pub fn aria_grabbed(&self) -> bool {
184            self.sys.aria_grabbed
185        }
186        /// Set the value of the `aria-grabbed` attribute
187        pub fn set_aria_grabbed(&mut self, value: bool) {
188            self.sys.aria_grabbed = value;
189        }
190        /// Get the value of the `aria-haspopup` attribute
191        pub fn aria_has_popup(&self) -> std::option::Option<&str> {
192            self.sys.aria_has_popup.as_deref()
193        }
194        /// Set the value of the `aria-haspopup` attribute
195        pub fn set_aria_has_popup(
196            &mut self,
197            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
198        ) {
199            self.sys.aria_has_popup = value.map(|v| v.into());
200        }
201        /// Get the value of the `aria-hidden` attribute
202        pub fn aria_hidden(&self) -> bool {
203            self.sys.aria_hidden
204        }
205        /// Set the value of the `aria-hidden` attribute
206        pub fn set_aria_hidden(&mut self, value: bool) {
207            self.sys.aria_hidden = value;
208        }
209        /// Get the value of the `aria-invalid` attribute
210        pub fn aria_invalid(&self) -> std::option::Option<&str> {
211            self.sys.aria_invalid.as_deref()
212        }
213        /// Set the value of the `aria-invalid` attribute
214        pub fn set_aria_invalid(
215            &mut self,
216            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
217        ) {
218            self.sys.aria_invalid = value.map(|v| v.into());
219        }
220        /// Get the value of the `aria-keyshortcuts` attribute
221        pub fn aria_key_shortcuts(&self) -> std::option::Option<&str> {
222            self.sys.aria_key_shortcuts.as_deref()
223        }
224        /// Set the value of the `aria-keyshortcuts` attribute
225        pub fn set_aria_key_shortcuts(
226            &mut self,
227            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
228        ) {
229            self.sys.aria_key_shortcuts = value.map(|v| v.into());
230        }
231        /// Get the value of the `aria-label` attribute
232        pub fn aria_label(&self) -> std::option::Option<&str> {
233            self.sys.aria_label.as_deref()
234        }
235        /// Set the value of the `aria-label` attribute
236        pub fn set_aria_label(
237            &mut self,
238            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
239        ) {
240            self.sys.aria_label = value.map(|v| v.into());
241        }
242        /// Get the value of the `aria-labelledby` attribute
243        pub fn aria_labelled_by_elements(&self) -> std::option::Option<&str> {
244            self.sys.aria_labelled_by_elements.as_deref()
245        }
246        /// Set the value of the `aria-labelledby` attribute
247        pub fn set_aria_labelled_by_elements(
248            &mut self,
249            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
250        ) {
251            self.sys.aria_labelled_by_elements = value.map(|v| v.into());
252        }
253        /// Get the value of the `aria-live` attribute
254        pub fn aria_live(&self) -> std::option::Option<&str> {
255            self.sys.aria_live.as_deref()
256        }
257        /// Set the value of the `aria-live` attribute
258        pub fn set_aria_live(
259            &mut self,
260            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
261        ) {
262            self.sys.aria_live = value.map(|v| v.into());
263        }
264        /// Get the value of the `aria-owns` attribute
265        pub fn aria_owns_elements(&self) -> std::option::Option<&str> {
266            self.sys.aria_owns_elements.as_deref()
267        }
268        /// Set the value of the `aria-owns` attribute
269        pub fn set_aria_owns_elements(
270            &mut self,
271            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
272        ) {
273            self.sys.aria_owns_elements = value.map(|v| v.into());
274        }
275        /// Get the value of the `aria-posinset` attribute
276        pub fn aria_pos_in_set(&self) -> std::option::Option<i64> {
277            self.sys.aria_pos_in_set
278        }
279        /// Set the value of the `aria-posinset` attribute
280        pub fn set_aria_pos_in_set(&mut self, value: std::option::Option<i64>) {
281            self.sys.aria_pos_in_set = value;
282        }
283        /// Get the value of the `aria-relevant` attribute
284        pub fn aria_relevant(&self) -> std::option::Option<&str> {
285            self.sys.aria_relevant.as_deref()
286        }
287        /// Set the value of the `aria-relevant` attribute
288        pub fn set_aria_relevant(
289            &mut self,
290            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
291        ) {
292            self.sys.aria_relevant = value.map(|v| v.into());
293        }
294        /// Get the value of the `aria-roledescription` attribute
295        pub fn aria_role_description(&self) -> std::option::Option<&str> {
296            self.sys.aria_role_description.as_deref()
297        }
298        /// Set the value of the `aria-roledescription` attribute
299        pub fn set_aria_role_description(
300            &mut self,
301            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
302        ) {
303            self.sys.aria_role_description = value.map(|v| v.into());
304        }
305        /// Get the value of the `aria-selected` attribute
306        pub fn aria_selected(&self) -> bool {
307            self.sys.aria_selected
308        }
309        /// Set the value of the `aria-selected` attribute
310        pub fn set_aria_selected(&mut self, value: bool) {
311            self.sys.aria_selected = value;
312        }
313        /// Get the value of the `aria-setsize` attribute
314        pub fn aria_set_size(&self) -> std::option::Option<i64> {
315            self.sys.aria_set_size
316        }
317        /// Set the value of the `aria-setsize` attribute
318        pub fn set_aria_set_size(&mut self, value: std::option::Option<i64>) {
319            self.sys.aria_set_size = value;
320        }
321        /// Get the value of the `accesskey` attribute
322        pub fn access_key(&self) -> std::option::Option<&str> {
323            self.sys.access_key.as_deref()
324        }
325        /// Set the value of the `accesskey` attribute
326        pub fn set_access_key(
327            &mut self,
328            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
329        ) {
330            self.sys.access_key = value.map(|v| v.into());
331        }
332        /// Get the value of the `autocapitalize` attribute
333        pub fn auto_capitalize(&self) -> std::option::Option<&str> {
334            self.sys.auto_capitalize.as_deref()
335        }
336        /// Set the value of the `autocapitalize` attribute
337        pub fn set_auto_capitalize(
338            &mut self,
339            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
340        ) {
341            self.sys.auto_capitalize = value.map(|v| v.into());
342        }
343        /// Get the value of the `autofocus` attribute
344        pub fn autofocus(&self) -> bool {
345            self.sys.autofocus
346        }
347        /// Set the value of the `autofocus` attribute
348        pub fn set_autofocus(&mut self, value: bool) {
349            self.sys.autofocus = value;
350        }
351        /// Get the value of the `class` attribute
352        pub fn class(&self) -> std::option::Option<&str> {
353            self.sys.class.as_deref()
354        }
355        /// Set the value of the `class` attribute
356        pub fn set_class(
357            &mut self,
358            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
359        ) {
360            self.sys.class = value.map(|v| v.into());
361        }
362        /// Get the value of the `contenteditable` attribute
363        pub fn content_editable(&self) -> std::option::Option<&str> {
364            self.sys.content_editable.as_deref()
365        }
366        /// Set the value of the `contenteditable` attribute
367        pub fn set_content_editable(
368            &mut self,
369            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
370        ) {
371            self.sys.content_editable = value.map(|v| v.into());
372        }
373        /// Get the value of the `dir` attribute
374        pub fn direction(&self) -> std::option::Option<&str> {
375            self.sys.direction.as_deref()
376        }
377        /// Set the value of the `dir` attribute
378        pub fn set_direction(
379            &mut self,
380            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
381        ) {
382            self.sys.direction = value.map(|v| v.into());
383        }
384        /// Get the value of the `draggable` attribute
385        pub fn draggable(&self) -> bool {
386            self.sys.draggable
387        }
388        /// Set the value of the `draggable` attribute
389        pub fn set_draggable(&mut self, value: bool) {
390            self.sys.draggable = value;
391        }
392        /// Get the value of the `enterkeyhint` attribute
393        pub fn enter_key_hint(&self) -> std::option::Option<&str> {
394            self.sys.enter_key_hint.as_deref()
395        }
396        /// Set the value of the `enterkeyhint` attribute
397        pub fn set_enter_key_hint(
398            &mut self,
399            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
400        ) {
401            self.sys.enter_key_hint = value.map(|v| v.into());
402        }
403        /// Get the value of the `exportparts` attribute
404        pub fn export_parts(&self) -> std::option::Option<&str> {
405            self.sys.export_parts.as_deref()
406        }
407        /// Set the value of the `exportparts` attribute
408        pub fn set_export_parts(
409            &mut self,
410            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
411        ) {
412            self.sys.export_parts = value.map(|v| v.into());
413        }
414        /// Get the value of the `hidden` attribute
415        pub fn hidden(&self) -> std::option::Option<&str> {
416            self.sys.hidden.as_deref()
417        }
418        /// Set the value of the `hidden` attribute
419        pub fn set_hidden(
420            &mut self,
421            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
422        ) {
423            self.sys.hidden = value.map(|v| v.into());
424        }
425        /// Get the value of the `id` attribute
426        pub fn id(&self) -> std::option::Option<&str> {
427            self.sys.id.as_deref()
428        }
429        /// Set the value of the `id` attribute
430        pub fn set_id(
431            &mut self,
432            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
433        ) {
434            self.sys.id = value.map(|v| v.into());
435        }
436        /// Get the value of the `inert` attribute
437        pub fn inert(&self) -> bool {
438            self.sys.inert
439        }
440        /// Set the value of the `inert` attribute
441        pub fn set_inert(&mut self, value: bool) {
442            self.sys.inert = value;
443        }
444        /// Get the value of the `inputmode` attribute
445        pub fn input_mode(&self) -> std::option::Option<&str> {
446            self.sys.input_mode.as_deref()
447        }
448        /// Set the value of the `inputmode` attribute
449        pub fn set_input_mode(
450            &mut self,
451            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
452        ) {
453            self.sys.input_mode = value.map(|v| v.into());
454        }
455        /// Get the value of the `is` attribute
456        pub fn is_(&self) -> std::option::Option<&str> {
457            self.sys.is_.as_deref()
458        }
459        /// Set the value of the `is` attribute
460        pub fn set_is_(
461            &mut self,
462            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
463        ) {
464            self.sys.is_ = value.map(|v| v.into());
465        }
466        /// Get the value of the `itemid` attribute
467        pub fn item_id(&self) -> std::option::Option<&str> {
468            self.sys.item_id.as_deref()
469        }
470        /// Set the value of the `itemid` attribute
471        pub fn set_item_id(
472            &mut self,
473            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
474        ) {
475            self.sys.item_id = value.map(|v| v.into());
476        }
477        /// Get the value of the `itemprop` attribute
478        pub fn item_prop(&self) -> std::option::Option<&str> {
479            self.sys.item_prop.as_deref()
480        }
481        /// Set the value of the `itemprop` attribute
482        pub fn set_item_prop(
483            &mut self,
484            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
485        ) {
486            self.sys.item_prop = value.map(|v| v.into());
487        }
488        /// Get the value of the `itemref` attribute
489        pub fn item_ref(&self) -> std::option::Option<&str> {
490            self.sys.item_ref.as_deref()
491        }
492        /// Set the value of the `itemref` attribute
493        pub fn set_item_ref(
494            &mut self,
495            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
496        ) {
497            self.sys.item_ref = value.map(|v| v.into());
498        }
499        /// Get the value of the `itemscope` attribute
500        pub fn item_scope(&self) -> std::option::Option<&str> {
501            self.sys.item_scope.as_deref()
502        }
503        /// Set the value of the `itemscope` attribute
504        pub fn set_item_scope(
505            &mut self,
506            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
507        ) {
508            self.sys.item_scope = value.map(|v| v.into());
509        }
510        /// Get the value of the `itemtype` attribute
511        pub fn item_type(&self) -> std::option::Option<&str> {
512            self.sys.item_type.as_deref()
513        }
514        /// Set the value of the `itemtype` attribute
515        pub fn set_item_type(
516            &mut self,
517            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
518        ) {
519            self.sys.item_type = value.map(|v| v.into());
520        }
521        /// Get the value of the `lang` attribute
522        pub fn lang(&self) -> std::option::Option<&str> {
523            self.sys.lang.as_deref()
524        }
525        /// Set the value of the `lang` attribute
526        pub fn set_lang(
527            &mut self,
528            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
529        ) {
530            self.sys.lang = value.map(|v| v.into());
531        }
532        /// Get the value of the `nonce` attribute
533        pub fn nonce(&self) -> std::option::Option<&str> {
534            self.sys.nonce.as_deref()
535        }
536        /// Set the value of the `nonce` attribute
537        pub fn set_nonce(
538            &mut self,
539            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
540        ) {
541            self.sys.nonce = value.map(|v| v.into());
542        }
543        /// Get the value of the `part` attribute
544        pub fn part(&self) -> std::option::Option<&str> {
545            self.sys.part.as_deref()
546        }
547        /// Set the value of the `part` attribute
548        pub fn set_part(
549            &mut self,
550            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
551        ) {
552            self.sys.part = value.map(|v| v.into());
553        }
554        /// Get the value of the `slot` attribute
555        pub fn slot(&self) -> std::option::Option<&str> {
556            self.sys.slot.as_deref()
557        }
558        /// Set the value of the `slot` attribute
559        pub fn set_slot(
560            &mut self,
561            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
562        ) {
563            self.sys.slot = value.map(|v| v.into());
564        }
565        /// Get the value of the `spellcheck` attribute
566        pub fn spellcheck(&self) -> std::option::Option<&str> {
567            self.sys.spellcheck.as_deref()
568        }
569        /// Set the value of the `spellcheck` attribute
570        pub fn set_spellcheck(
571            &mut self,
572            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
573        ) {
574            self.sys.spellcheck = value.map(|v| v.into());
575        }
576        /// Get the value of the `style` attribute
577        pub fn style(&self) -> std::option::Option<&str> {
578            self.sys.style.as_deref()
579        }
580        /// Set the value of the `style` attribute
581        pub fn set_style(
582            &mut self,
583            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
584        ) {
585            self.sys.style = value.map(|v| v.into());
586        }
587        /// Get the value of the `tabindex` attribute
588        pub fn tab_index(&self) -> std::option::Option<i64> {
589            self.sys.tab_index
590        }
591        /// Set the value of the `tabindex` attribute
592        pub fn set_tab_index(&mut self, value: std::option::Option<i64>) {
593            self.sys.tab_index = value;
594        }
595        /// Get the value of the `title` attribute
596        pub fn title(&self) -> std::option::Option<&str> {
597            self.sys.title.as_deref()
598        }
599        /// Set the value of the `title` attribute
600        pub fn set_title(
601            &mut self,
602            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
603        ) {
604            self.sys.title = value.map(|v| v.into());
605        }
606        /// Get the value of the `translate` attribute
607        pub fn translate(&self) -> bool {
608            self.sys.translate
609        }
610        /// Set the value of the `translate` attribute
611        pub fn set_translate(&mut self, value: bool) {
612            self.sys.translate = value;
613        }
614    }
615    impl Heading1 {
616        /// Access the element's children
617        pub fn children(&self) -> &[super::child::Heading1Child] {
618            self.children.as_ref()
619        }
620        /// Mutably access the element's children
621        pub fn children_mut(&mut self) -> &mut Vec<super::child::Heading1Child> {
622            &mut self.children
623        }
624    }
625    impl crate::Render for Heading1 {
626        fn render(
627            &self,
628            f: &mut std::fmt::Formatter<'_>,
629            depth: usize,
630        ) -> std::fmt::Result {
631            write!(f, "{:level$}", "", level = depth * 4)?;
632            html_sys::RenderElement::write_opening_tag(&self.sys, f)?;
633            if !self.children.is_empty() {
634                write!(f, "\n")?;
635            }
636            for el in &self.children {
637                crate::Render::render(&el, f, depth)?;
638                write!(f, "\n")?;
639            }
640            write!(f, "{:level$}", "", level = depth * 4)?;
641            html_sys::RenderElement::write_closing_tag(&self.sys, f)?;
642            Ok(())
643        }
644    }
645    impl std::fmt::Debug for Heading1 {
646        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
647            crate::Render::render(self, f, 0)?;
648            Ok(())
649        }
650    }
651    impl std::fmt::Display for Heading1 {
652        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
653            html_sys::RenderElement::write_opening_tag(&self.sys, f)?;
654            for el in &self.children {
655                write!(f, "{el}")?;
656            }
657            html_sys::RenderElement::write_closing_tag(&self.sys, f)?;
658            Ok(())
659        }
660    }
661    impl crate::HtmlElement for Heading1 {}
662    impl crate::FlowContent for Heading1 {}
663    impl crate::HeadingContent for Heading1 {}
664    impl crate::PalpableContent for Heading1 {}
665    impl std::convert::Into<html_sys::sections::Heading1> for Heading1 {
666        fn into(self) -> html_sys::sections::Heading1 {
667            self.sys
668        }
669    }
670    impl From<html_sys::sections::Heading1> for Heading1 {
671        fn from(sys: html_sys::sections::Heading1) -> Self {
672            Self { sys, children: vec![] }
673        }
674    }
675}
676pub mod child {
677    /// The permitted child items for the `Heading1` element
678    #[derive(PartialEq, Clone)]
679    pub enum Heading1Child {
680        /// The Abbreviation element
681        Abbreviation(crate::generated::all::Abbreviation),
682        /// The Anchor element
683        Anchor(crate::generated::all::Anchor),
684        /// The Audio element
685        Audio(crate::generated::all::Audio),
686        /// The BidirectionalIsolate element
687        BidirectionalIsolate(crate::generated::all::BidirectionalIsolate),
688        /// The BidirectionalTextOverride element
689        BidirectionalTextOverride(crate::generated::all::BidirectionalTextOverride),
690        /// The Bold element
691        Bold(crate::generated::all::Bold),
692        /// The Button element
693        Button(crate::generated::all::Button),
694        /// The Canvas element
695        Canvas(crate::generated::all::Canvas),
696        /// The Cite element
697        Cite(crate::generated::all::Cite),
698        /// The Code element
699        Code(crate::generated::all::Code),
700        /// The Data element
701        Data(crate::generated::all::Data),
702        /// The DataList element
703        DataList(crate::generated::all::DataList),
704        /// The Definition element
705        Definition(crate::generated::all::Definition),
706        /// The DeletedText element
707        DeletedText(crate::generated::all::DeletedText),
708        /// The Embed element
709        Embed(crate::generated::all::Embed),
710        /// The Emphasis element
711        Emphasis(crate::generated::all::Emphasis),
712        /// The Iframe element
713        Iframe(crate::generated::all::Iframe),
714        /// The Image element
715        Image(crate::generated::all::Image),
716        /// The ImageMap element
717        ImageMap(crate::generated::all::ImageMap),
718        /// The ImageMapArea element
719        ImageMapArea(crate::generated::all::ImageMapArea),
720        /// The Input element
721        Input(crate::generated::all::Input),
722        /// The InsertedText element
723        InsertedText(crate::generated::all::InsertedText),
724        /// The Italic element
725        Italic(crate::generated::all::Italic),
726        /// The KeyboardInput element
727        KeyboardInput(crate::generated::all::KeyboardInput),
728        /// The Label element
729        Label(crate::generated::all::Label),
730        /// The LineBreak element
731        LineBreak(crate::generated::all::LineBreak),
732        /// The LineBreakOpportunity element
733        LineBreakOpportunity(crate::generated::all::LineBreakOpportunity),
734        /// The Link element
735        Link(crate::generated::all::Link),
736        /// The MarkText element
737        MarkText(crate::generated::all::MarkText),
738        /// The Meta element
739        Meta(crate::generated::all::Meta),
740        /// The Meter element
741        Meter(crate::generated::all::Meter),
742        /// The NoScript element
743        NoScript(crate::generated::all::NoScript),
744        /// The Object element
745        Object(crate::generated::all::Object),
746        /// The Output element
747        Output(crate::generated::all::Output),
748        /// The Picture element
749        Picture(crate::generated::all::Picture),
750        /// The Progress element
751        Progress(crate::generated::all::Progress),
752        /// The Quotation element
753        Quotation(crate::generated::all::Quotation),
754        /// The RubyAnnotation element
755        RubyAnnotation(crate::generated::all::RubyAnnotation),
756        /// The SampleOutput element
757        SampleOutput(crate::generated::all::SampleOutput),
758        /// The Script element
759        Script(crate::generated::all::Script),
760        /// The Select element
761        Select(crate::generated::all::Select),
762        /// The SideComment element
763        SideComment(crate::generated::all::SideComment),
764        /// The Slot element
765        Slot(crate::generated::all::Slot),
766        /// The Span element
767        Span(crate::generated::all::Span),
768        /// The StrikeThrough element
769        StrikeThrough(crate::generated::all::StrikeThrough),
770        /// The Strong element
771        Strong(crate::generated::all::Strong),
772        /// The SubScript element
773        SubScript(crate::generated::all::SubScript),
774        /// The SuperScript element
775        SuperScript(crate::generated::all::SuperScript),
776        /// The Template element
777        Template(crate::generated::all::Template),
778        /// The Text element
779        Text(std::borrow::Cow<'static, str>),
780        /// The TextArea element
781        TextArea(crate::generated::all::TextArea),
782        /// The Time element
783        Time(crate::generated::all::Time),
784        /// The Underline element
785        Underline(crate::generated::all::Underline),
786        /// The Variable element
787        Variable(crate::generated::all::Variable),
788        /// The Video element
789        Video(crate::generated::all::Video),
790    }
791    impl std::convert::From<crate::generated::all::Abbreviation> for Heading1Child {
792        fn from(value: crate::generated::all::Abbreviation) -> Self {
793            Self::Abbreviation(value)
794        }
795    }
796    impl std::convert::From<crate::generated::all::Anchor> for Heading1Child {
797        fn from(value: crate::generated::all::Anchor) -> Self {
798            Self::Anchor(value)
799        }
800    }
801    impl std::convert::From<crate::generated::all::Audio> for Heading1Child {
802        fn from(value: crate::generated::all::Audio) -> Self {
803            Self::Audio(value)
804        }
805    }
806    impl std::convert::From<crate::generated::all::BidirectionalIsolate>
807    for Heading1Child {
808        fn from(value: crate::generated::all::BidirectionalIsolate) -> Self {
809            Self::BidirectionalIsolate(value)
810        }
811    }
812    impl std::convert::From<crate::generated::all::BidirectionalTextOverride>
813    for Heading1Child {
814        fn from(value: crate::generated::all::BidirectionalTextOverride) -> Self {
815            Self::BidirectionalTextOverride(value)
816        }
817    }
818    impl std::convert::From<crate::generated::all::Bold> for Heading1Child {
819        fn from(value: crate::generated::all::Bold) -> Self {
820            Self::Bold(value)
821        }
822    }
823    impl std::convert::From<crate::generated::all::Button> for Heading1Child {
824        fn from(value: crate::generated::all::Button) -> Self {
825            Self::Button(value)
826        }
827    }
828    impl std::convert::From<crate::generated::all::Canvas> for Heading1Child {
829        fn from(value: crate::generated::all::Canvas) -> Self {
830            Self::Canvas(value)
831        }
832    }
833    impl std::convert::From<crate::generated::all::Cite> for Heading1Child {
834        fn from(value: crate::generated::all::Cite) -> Self {
835            Self::Cite(value)
836        }
837    }
838    impl std::convert::From<crate::generated::all::Code> for Heading1Child {
839        fn from(value: crate::generated::all::Code) -> Self {
840            Self::Code(value)
841        }
842    }
843    impl std::convert::From<crate::generated::all::Data> for Heading1Child {
844        fn from(value: crate::generated::all::Data) -> Self {
845            Self::Data(value)
846        }
847    }
848    impl std::convert::From<crate::generated::all::DataList> for Heading1Child {
849        fn from(value: crate::generated::all::DataList) -> Self {
850            Self::DataList(value)
851        }
852    }
853    impl std::convert::From<crate::generated::all::Definition> for Heading1Child {
854        fn from(value: crate::generated::all::Definition) -> Self {
855            Self::Definition(value)
856        }
857    }
858    impl std::convert::From<crate::generated::all::DeletedText> for Heading1Child {
859        fn from(value: crate::generated::all::DeletedText) -> Self {
860            Self::DeletedText(value)
861        }
862    }
863    impl std::convert::From<crate::generated::all::Embed> for Heading1Child {
864        fn from(value: crate::generated::all::Embed) -> Self {
865            Self::Embed(value)
866        }
867    }
868    impl std::convert::From<crate::generated::all::Emphasis> for Heading1Child {
869        fn from(value: crate::generated::all::Emphasis) -> Self {
870            Self::Emphasis(value)
871        }
872    }
873    impl std::convert::From<crate::generated::all::Iframe> for Heading1Child {
874        fn from(value: crate::generated::all::Iframe) -> Self {
875            Self::Iframe(value)
876        }
877    }
878    impl std::convert::From<crate::generated::all::Image> for Heading1Child {
879        fn from(value: crate::generated::all::Image) -> Self {
880            Self::Image(value)
881        }
882    }
883    impl std::convert::From<crate::generated::all::ImageMap> for Heading1Child {
884        fn from(value: crate::generated::all::ImageMap) -> Self {
885            Self::ImageMap(value)
886        }
887    }
888    impl std::convert::From<crate::generated::all::ImageMapArea> for Heading1Child {
889        fn from(value: crate::generated::all::ImageMapArea) -> Self {
890            Self::ImageMapArea(value)
891        }
892    }
893    impl std::convert::From<crate::generated::all::Input> for Heading1Child {
894        fn from(value: crate::generated::all::Input) -> Self {
895            Self::Input(value)
896        }
897    }
898    impl std::convert::From<crate::generated::all::InsertedText> for Heading1Child {
899        fn from(value: crate::generated::all::InsertedText) -> Self {
900            Self::InsertedText(value)
901        }
902    }
903    impl std::convert::From<crate::generated::all::Italic> for Heading1Child {
904        fn from(value: crate::generated::all::Italic) -> Self {
905            Self::Italic(value)
906        }
907    }
908    impl std::convert::From<crate::generated::all::KeyboardInput> for Heading1Child {
909        fn from(value: crate::generated::all::KeyboardInput) -> Self {
910            Self::KeyboardInput(value)
911        }
912    }
913    impl std::convert::From<crate::generated::all::Label> for Heading1Child {
914        fn from(value: crate::generated::all::Label) -> Self {
915            Self::Label(value)
916        }
917    }
918    impl std::convert::From<crate::generated::all::LineBreak> for Heading1Child {
919        fn from(value: crate::generated::all::LineBreak) -> Self {
920            Self::LineBreak(value)
921        }
922    }
923    impl std::convert::From<crate::generated::all::LineBreakOpportunity>
924    for Heading1Child {
925        fn from(value: crate::generated::all::LineBreakOpportunity) -> Self {
926            Self::LineBreakOpportunity(value)
927        }
928    }
929    impl std::convert::From<crate::generated::all::Link> for Heading1Child {
930        fn from(value: crate::generated::all::Link) -> Self {
931            Self::Link(value)
932        }
933    }
934    impl std::convert::From<crate::generated::all::MarkText> for Heading1Child {
935        fn from(value: crate::generated::all::MarkText) -> Self {
936            Self::MarkText(value)
937        }
938    }
939    impl std::convert::From<crate::generated::all::Meta> for Heading1Child {
940        fn from(value: crate::generated::all::Meta) -> Self {
941            Self::Meta(value)
942        }
943    }
944    impl std::convert::From<crate::generated::all::Meter> for Heading1Child {
945        fn from(value: crate::generated::all::Meter) -> Self {
946            Self::Meter(value)
947        }
948    }
949    impl std::convert::From<crate::generated::all::NoScript> for Heading1Child {
950        fn from(value: crate::generated::all::NoScript) -> Self {
951            Self::NoScript(value)
952        }
953    }
954    impl std::convert::From<crate::generated::all::Object> for Heading1Child {
955        fn from(value: crate::generated::all::Object) -> Self {
956            Self::Object(value)
957        }
958    }
959    impl std::convert::From<crate::generated::all::Output> for Heading1Child {
960        fn from(value: crate::generated::all::Output) -> Self {
961            Self::Output(value)
962        }
963    }
964    impl std::convert::From<crate::generated::all::Picture> for Heading1Child {
965        fn from(value: crate::generated::all::Picture) -> Self {
966            Self::Picture(value)
967        }
968    }
969    impl std::convert::From<crate::generated::all::Progress> for Heading1Child {
970        fn from(value: crate::generated::all::Progress) -> Self {
971            Self::Progress(value)
972        }
973    }
974    impl std::convert::From<crate::generated::all::Quotation> for Heading1Child {
975        fn from(value: crate::generated::all::Quotation) -> Self {
976            Self::Quotation(value)
977        }
978    }
979    impl std::convert::From<crate::generated::all::RubyAnnotation> for Heading1Child {
980        fn from(value: crate::generated::all::RubyAnnotation) -> Self {
981            Self::RubyAnnotation(value)
982        }
983    }
984    impl std::convert::From<crate::generated::all::SampleOutput> for Heading1Child {
985        fn from(value: crate::generated::all::SampleOutput) -> Self {
986            Self::SampleOutput(value)
987        }
988    }
989    impl std::convert::From<crate::generated::all::Script> for Heading1Child {
990        fn from(value: crate::generated::all::Script) -> Self {
991            Self::Script(value)
992        }
993    }
994    impl std::convert::From<crate::generated::all::Select> for Heading1Child {
995        fn from(value: crate::generated::all::Select) -> Self {
996            Self::Select(value)
997        }
998    }
999    impl std::convert::From<crate::generated::all::SideComment> for Heading1Child {
1000        fn from(value: crate::generated::all::SideComment) -> Self {
1001            Self::SideComment(value)
1002        }
1003    }
1004    impl std::convert::From<crate::generated::all::Slot> for Heading1Child {
1005        fn from(value: crate::generated::all::Slot) -> Self {
1006            Self::Slot(value)
1007        }
1008    }
1009    impl std::convert::From<crate::generated::all::Span> for Heading1Child {
1010        fn from(value: crate::generated::all::Span) -> Self {
1011            Self::Span(value)
1012        }
1013    }
1014    impl std::convert::From<crate::generated::all::StrikeThrough> for Heading1Child {
1015        fn from(value: crate::generated::all::StrikeThrough) -> Self {
1016            Self::StrikeThrough(value)
1017        }
1018    }
1019    impl std::convert::From<crate::generated::all::Strong> for Heading1Child {
1020        fn from(value: crate::generated::all::Strong) -> Self {
1021            Self::Strong(value)
1022        }
1023    }
1024    impl std::convert::From<crate::generated::all::SubScript> for Heading1Child {
1025        fn from(value: crate::generated::all::SubScript) -> Self {
1026            Self::SubScript(value)
1027        }
1028    }
1029    impl std::convert::From<crate::generated::all::SuperScript> for Heading1Child {
1030        fn from(value: crate::generated::all::SuperScript) -> Self {
1031            Self::SuperScript(value)
1032        }
1033    }
1034    impl std::convert::From<crate::generated::all::Template> for Heading1Child {
1035        fn from(value: crate::generated::all::Template) -> Self {
1036            Self::Template(value)
1037        }
1038    }
1039    impl std::convert::From<std::borrow::Cow<'static, str>> for Heading1Child {
1040        fn from(value: std::borrow::Cow<'static, str>) -> Self {
1041            Self::Text(value)
1042        }
1043    }
1044    impl std::convert::From<&'static str> for Heading1Child {
1045        fn from(value: &'static str) -> Self {
1046            Self::Text(value.into())
1047        }
1048    }
1049    impl std::convert::From<String> for Heading1Child {
1050        fn from(value: String) -> Self {
1051            Self::Text(value.into())
1052        }
1053    }
1054    impl std::convert::From<crate::generated::all::TextArea> for Heading1Child {
1055        fn from(value: crate::generated::all::TextArea) -> Self {
1056            Self::TextArea(value)
1057        }
1058    }
1059    impl std::convert::From<crate::generated::all::Time> for Heading1Child {
1060        fn from(value: crate::generated::all::Time) -> Self {
1061            Self::Time(value)
1062        }
1063    }
1064    impl std::convert::From<crate::generated::all::Underline> for Heading1Child {
1065        fn from(value: crate::generated::all::Underline) -> Self {
1066            Self::Underline(value)
1067        }
1068    }
1069    impl std::convert::From<crate::generated::all::Variable> for Heading1Child {
1070        fn from(value: crate::generated::all::Variable) -> Self {
1071            Self::Variable(value)
1072        }
1073    }
1074    impl std::convert::From<crate::generated::all::Video> for Heading1Child {
1075        fn from(value: crate::generated::all::Video) -> Self {
1076            Self::Video(value)
1077        }
1078    }
1079    impl crate::Render for Heading1Child {
1080        fn render(
1081            &self,
1082            f: &mut std::fmt::Formatter<'_>,
1083            depth: usize,
1084        ) -> std::fmt::Result {
1085            match self {
1086                Self::Abbreviation(el) => crate::Render::render(el, f, depth + 1),
1087                Self::Anchor(el) => crate::Render::render(el, f, depth + 1),
1088                Self::Audio(el) => crate::Render::render(el, f, depth + 1),
1089                Self::BidirectionalIsolate(el) => crate::Render::render(el, f, depth + 1),
1090                Self::BidirectionalTextOverride(el) => {
1091                    crate::Render::render(el, f, depth + 1)
1092                }
1093                Self::Bold(el) => crate::Render::render(el, f, depth + 1),
1094                Self::Button(el) => crate::Render::render(el, f, depth + 1),
1095                Self::Canvas(el) => crate::Render::render(el, f, depth + 1),
1096                Self::Cite(el) => crate::Render::render(el, f, depth + 1),
1097                Self::Code(el) => crate::Render::render(el, f, depth + 1),
1098                Self::Data(el) => crate::Render::render(el, f, depth + 1),
1099                Self::DataList(el) => crate::Render::render(el, f, depth + 1),
1100                Self::Definition(el) => crate::Render::render(el, f, depth + 1),
1101                Self::DeletedText(el) => crate::Render::render(el, f, depth + 1),
1102                Self::Embed(el) => crate::Render::render(el, f, depth + 1),
1103                Self::Emphasis(el) => crate::Render::render(el, f, depth + 1),
1104                Self::Iframe(el) => crate::Render::render(el, f, depth + 1),
1105                Self::Image(el) => crate::Render::render(el, f, depth + 1),
1106                Self::ImageMap(el) => crate::Render::render(el, f, depth + 1),
1107                Self::ImageMapArea(el) => crate::Render::render(el, f, depth + 1),
1108                Self::Input(el) => crate::Render::render(el, f, depth + 1),
1109                Self::InsertedText(el) => crate::Render::render(el, f, depth + 1),
1110                Self::Italic(el) => crate::Render::render(el, f, depth + 1),
1111                Self::KeyboardInput(el) => crate::Render::render(el, f, depth + 1),
1112                Self::Label(el) => crate::Render::render(el, f, depth + 1),
1113                Self::LineBreak(el) => crate::Render::render(el, f, depth + 1),
1114                Self::LineBreakOpportunity(el) => crate::Render::render(el, f, depth + 1),
1115                Self::Link(el) => crate::Render::render(el, f, depth + 1),
1116                Self::MarkText(el) => crate::Render::render(el, f, depth + 1),
1117                Self::Meta(el) => crate::Render::render(el, f, depth + 1),
1118                Self::Meter(el) => crate::Render::render(el, f, depth + 1),
1119                Self::NoScript(el) => crate::Render::render(el, f, depth + 1),
1120                Self::Object(el) => crate::Render::render(el, f, depth + 1),
1121                Self::Output(el) => crate::Render::render(el, f, depth + 1),
1122                Self::Picture(el) => crate::Render::render(el, f, depth + 1),
1123                Self::Progress(el) => crate::Render::render(el, f, depth + 1),
1124                Self::Quotation(el) => crate::Render::render(el, f, depth + 1),
1125                Self::RubyAnnotation(el) => crate::Render::render(el, f, depth + 1),
1126                Self::SampleOutput(el) => crate::Render::render(el, f, depth + 1),
1127                Self::Script(el) => crate::Render::render(el, f, depth + 1),
1128                Self::Select(el) => crate::Render::render(el, f, depth + 1),
1129                Self::SideComment(el) => crate::Render::render(el, f, depth + 1),
1130                Self::Slot(el) => crate::Render::render(el, f, depth + 1),
1131                Self::Span(el) => crate::Render::render(el, f, depth + 1),
1132                Self::StrikeThrough(el) => crate::Render::render(el, f, depth + 1),
1133                Self::Strong(el) => crate::Render::render(el, f, depth + 1),
1134                Self::SubScript(el) => crate::Render::render(el, f, depth + 1),
1135                Self::SuperScript(el) => crate::Render::render(el, f, depth + 1),
1136                Self::Template(el) => crate::Render::render(el, f, depth + 1),
1137                Self::Text(el) => crate::Render::render(el, f, depth + 1),
1138                Self::TextArea(el) => crate::Render::render(el, f, depth + 1),
1139                Self::Time(el) => crate::Render::render(el, f, depth + 1),
1140                Self::Underline(el) => crate::Render::render(el, f, depth + 1),
1141                Self::Variable(el) => crate::Render::render(el, f, depth + 1),
1142                Self::Video(el) => crate::Render::render(el, f, depth + 1),
1143            }
1144        }
1145    }
1146    impl std::fmt::Debug for Heading1Child {
1147        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1148            crate::Render::render(self, f, 0)?;
1149            Ok(())
1150        }
1151    }
1152    impl std::fmt::Display for Heading1Child {
1153        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1154            match self {
1155                Self::Abbreviation(el) => write!(f, "{el}"),
1156                Self::Anchor(el) => write!(f, "{el}"),
1157                Self::Audio(el) => write!(f, "{el}"),
1158                Self::BidirectionalIsolate(el) => write!(f, "{el}"),
1159                Self::BidirectionalTextOverride(el) => write!(f, "{el}"),
1160                Self::Bold(el) => write!(f, "{el}"),
1161                Self::Button(el) => write!(f, "{el}"),
1162                Self::Canvas(el) => write!(f, "{el}"),
1163                Self::Cite(el) => write!(f, "{el}"),
1164                Self::Code(el) => write!(f, "{el}"),
1165                Self::Data(el) => write!(f, "{el}"),
1166                Self::DataList(el) => write!(f, "{el}"),
1167                Self::Definition(el) => write!(f, "{el}"),
1168                Self::DeletedText(el) => write!(f, "{el}"),
1169                Self::Embed(el) => write!(f, "{el}"),
1170                Self::Emphasis(el) => write!(f, "{el}"),
1171                Self::Iframe(el) => write!(f, "{el}"),
1172                Self::Image(el) => write!(f, "{el}"),
1173                Self::ImageMap(el) => write!(f, "{el}"),
1174                Self::ImageMapArea(el) => write!(f, "{el}"),
1175                Self::Input(el) => write!(f, "{el}"),
1176                Self::InsertedText(el) => write!(f, "{el}"),
1177                Self::Italic(el) => write!(f, "{el}"),
1178                Self::KeyboardInput(el) => write!(f, "{el}"),
1179                Self::Label(el) => write!(f, "{el}"),
1180                Self::LineBreak(el) => write!(f, "{el}"),
1181                Self::LineBreakOpportunity(el) => write!(f, "{el}"),
1182                Self::Link(el) => write!(f, "{el}"),
1183                Self::MarkText(el) => write!(f, "{el}"),
1184                Self::Meta(el) => write!(f, "{el}"),
1185                Self::Meter(el) => write!(f, "{el}"),
1186                Self::NoScript(el) => write!(f, "{el}"),
1187                Self::Object(el) => write!(f, "{el}"),
1188                Self::Output(el) => write!(f, "{el}"),
1189                Self::Picture(el) => write!(f, "{el}"),
1190                Self::Progress(el) => write!(f, "{el}"),
1191                Self::Quotation(el) => write!(f, "{el}"),
1192                Self::RubyAnnotation(el) => write!(f, "{el}"),
1193                Self::SampleOutput(el) => write!(f, "{el}"),
1194                Self::Script(el) => write!(f, "{el}"),
1195                Self::Select(el) => write!(f, "{el}"),
1196                Self::SideComment(el) => write!(f, "{el}"),
1197                Self::Slot(el) => write!(f, "{el}"),
1198                Self::Span(el) => write!(f, "{el}"),
1199                Self::StrikeThrough(el) => write!(f, "{el}"),
1200                Self::Strong(el) => write!(f, "{el}"),
1201                Self::SubScript(el) => write!(f, "{el}"),
1202                Self::SuperScript(el) => write!(f, "{el}"),
1203                Self::Template(el) => write!(f, "{el}"),
1204                Self::Text(el) => write!(f, "{el}"),
1205                Self::TextArea(el) => write!(f, "{el}"),
1206                Self::Time(el) => write!(f, "{el}"),
1207                Self::Underline(el) => write!(f, "{el}"),
1208                Self::Variable(el) => write!(f, "{el}"),
1209                Self::Video(el) => write!(f, "{el}"),
1210            }
1211        }
1212    }
1213}
1214pub mod builder {
1215    /// A builder struct for Heading1
1216    pub struct Heading1Builder {
1217        element: super::element::Heading1,
1218    }
1219    impl Heading1Builder {
1220        pub(crate) fn new(element: super::element::Heading1) -> Self {
1221            Self { element }
1222        }
1223        /// Finish building the element
1224        pub fn build(&mut self) -> super::element::Heading1 {
1225            self.element.clone()
1226        }
1227        /// Insert a `data-*` property
1228        pub fn data(
1229            &mut self,
1230            data_key: impl Into<std::borrow::Cow<'static, str>>,
1231            value: impl Into<std::borrow::Cow<'static, str>>,
1232        ) -> &mut Heading1Builder {
1233            self.element.data_map_mut().insert(data_key.into(), value.into());
1234            self
1235        }
1236        /// Append a new `Abbreviation` element
1237        pub fn abbreviation<F>(&mut self, f: F) -> &mut Self
1238        where
1239            F: for<'a> FnOnce(
1240                &'a mut crate::generated::all::builders::AbbreviationBuilder,
1241            ) -> &'a mut crate::generated::all::builders::AbbreviationBuilder,
1242        {
1243            let ty: crate::generated::all::Abbreviation = Default::default();
1244            let mut ty_builder = crate::generated::all::builders::AbbreviationBuilder::new(
1245                ty,
1246            );
1247            (f)(&mut ty_builder);
1248            let ty = ty_builder.build();
1249            self.element.children_mut().push(ty.into());
1250            self
1251        }
1252        /// Append a new `Anchor` element
1253        pub fn anchor<F>(&mut self, f: F) -> &mut Self
1254        where
1255            F: for<'a> FnOnce(
1256                &'a mut crate::generated::all::builders::AnchorBuilder,
1257            ) -> &'a mut crate::generated::all::builders::AnchorBuilder,
1258        {
1259            let ty: crate::generated::all::Anchor = Default::default();
1260            let mut ty_builder = crate::generated::all::builders::AnchorBuilder::new(ty);
1261            (f)(&mut ty_builder);
1262            let ty = ty_builder.build();
1263            self.element.children_mut().push(ty.into());
1264            self
1265        }
1266        /// Append a new `Audio` element
1267        pub fn audio<F>(&mut self, f: F) -> &mut Self
1268        where
1269            F: for<'a> FnOnce(
1270                &'a mut crate::generated::all::builders::AudioBuilder,
1271            ) -> &'a mut crate::generated::all::builders::AudioBuilder,
1272        {
1273            let ty: crate::generated::all::Audio = Default::default();
1274            let mut ty_builder = crate::generated::all::builders::AudioBuilder::new(ty);
1275            (f)(&mut ty_builder);
1276            let ty = ty_builder.build();
1277            self.element.children_mut().push(ty.into());
1278            self
1279        }
1280        /// Append a new `BidirectionalIsolate` element
1281        pub fn bidirectional_isolate<F>(&mut self, f: F) -> &mut Self
1282        where
1283            F: for<'a> FnOnce(
1284                &'a mut crate::generated::all::builders::BidirectionalIsolateBuilder,
1285            ) -> &'a mut crate::generated::all::builders::BidirectionalIsolateBuilder,
1286        {
1287            let ty: crate::generated::all::BidirectionalIsolate = Default::default();
1288            let mut ty_builder = crate::generated::all::builders::BidirectionalIsolateBuilder::new(
1289                ty,
1290            );
1291            (f)(&mut ty_builder);
1292            let ty = ty_builder.build();
1293            self.element.children_mut().push(ty.into());
1294            self
1295        }
1296        /// Append a new `BidirectionalTextOverride` element
1297        pub fn bidirectional_text_override<F>(&mut self, f: F) -> &mut Self
1298        where
1299            F: for<'a> FnOnce(
1300                &'a mut crate::generated::all::builders::BidirectionalTextOverrideBuilder,
1301            ) -> &'a mut crate::generated::all::builders::BidirectionalTextOverrideBuilder,
1302        {
1303            let ty: crate::generated::all::BidirectionalTextOverride = Default::default();
1304            let mut ty_builder = crate::generated::all::builders::BidirectionalTextOverrideBuilder::new(
1305                ty,
1306            );
1307            (f)(&mut ty_builder);
1308            let ty = ty_builder.build();
1309            self.element.children_mut().push(ty.into());
1310            self
1311        }
1312        /// Append a new `Bold` element
1313        pub fn bold<F>(&mut self, f: F) -> &mut Self
1314        where
1315            F: for<'a> FnOnce(
1316                &'a mut crate::generated::all::builders::BoldBuilder,
1317            ) -> &'a mut crate::generated::all::builders::BoldBuilder,
1318        {
1319            let ty: crate::generated::all::Bold = Default::default();
1320            let mut ty_builder = crate::generated::all::builders::BoldBuilder::new(ty);
1321            (f)(&mut ty_builder);
1322            let ty = ty_builder.build();
1323            self.element.children_mut().push(ty.into());
1324            self
1325        }
1326        /// Append a new `Button` element
1327        pub fn button<F>(&mut self, f: F) -> &mut Self
1328        where
1329            F: for<'a> FnOnce(
1330                &'a mut crate::generated::all::builders::ButtonBuilder,
1331            ) -> &'a mut crate::generated::all::builders::ButtonBuilder,
1332        {
1333            let ty: crate::generated::all::Button = Default::default();
1334            let mut ty_builder = crate::generated::all::builders::ButtonBuilder::new(ty);
1335            (f)(&mut ty_builder);
1336            let ty = ty_builder.build();
1337            self.element.children_mut().push(ty.into());
1338            self
1339        }
1340        /// Append a new `Canvas` element
1341        pub fn canvas<F>(&mut self, f: F) -> &mut Self
1342        where
1343            F: for<'a> FnOnce(
1344                &'a mut crate::generated::all::builders::CanvasBuilder,
1345            ) -> &'a mut crate::generated::all::builders::CanvasBuilder,
1346        {
1347            let ty: crate::generated::all::Canvas = Default::default();
1348            let mut ty_builder = crate::generated::all::builders::CanvasBuilder::new(ty);
1349            (f)(&mut ty_builder);
1350            let ty = ty_builder.build();
1351            self.element.children_mut().push(ty.into());
1352            self
1353        }
1354        /// Append a new `Cite` element
1355        pub fn cite<F>(&mut self, f: F) -> &mut Self
1356        where
1357            F: for<'a> FnOnce(
1358                &'a mut crate::generated::all::builders::CiteBuilder,
1359            ) -> &'a mut crate::generated::all::builders::CiteBuilder,
1360        {
1361            let ty: crate::generated::all::Cite = Default::default();
1362            let mut ty_builder = crate::generated::all::builders::CiteBuilder::new(ty);
1363            (f)(&mut ty_builder);
1364            let ty = ty_builder.build();
1365            self.element.children_mut().push(ty.into());
1366            self
1367        }
1368        /// Append a new `Code` element
1369        pub fn code<F>(&mut self, f: F) -> &mut Self
1370        where
1371            F: for<'a> FnOnce(
1372                &'a mut crate::generated::all::builders::CodeBuilder,
1373            ) -> &'a mut crate::generated::all::builders::CodeBuilder,
1374        {
1375            let ty: crate::generated::all::Code = Default::default();
1376            let mut ty_builder = crate::generated::all::builders::CodeBuilder::new(ty);
1377            (f)(&mut ty_builder);
1378            let ty = ty_builder.build();
1379            self.element.children_mut().push(ty.into());
1380            self
1381        }
1382        /// Append a new `Data` element
1383        pub fn data_el<F>(&mut self, f: F) -> &mut Self
1384        where
1385            F: for<'a> FnOnce(
1386                &'a mut crate::generated::all::builders::DataBuilder,
1387            ) -> &'a mut crate::generated::all::builders::DataBuilder,
1388        {
1389            let ty: crate::generated::all::Data = Default::default();
1390            let mut ty_builder = crate::generated::all::builders::DataBuilder::new(ty);
1391            (f)(&mut ty_builder);
1392            let ty = ty_builder.build();
1393            self.element.children_mut().push(ty.into());
1394            self
1395        }
1396        /// Append a new `DataList` element
1397        pub fn data_list<F>(&mut self, f: F) -> &mut Self
1398        where
1399            F: for<'a> FnOnce(
1400                &'a mut crate::generated::all::builders::DataListBuilder,
1401            ) -> &'a mut crate::generated::all::builders::DataListBuilder,
1402        {
1403            let ty: crate::generated::all::DataList = Default::default();
1404            let mut ty_builder = crate::generated::all::builders::DataListBuilder::new(
1405                ty,
1406            );
1407            (f)(&mut ty_builder);
1408            let ty = ty_builder.build();
1409            self.element.children_mut().push(ty.into());
1410            self
1411        }
1412        /// Append a new `Definition` element
1413        pub fn definition<F>(&mut self, f: F) -> &mut Self
1414        where
1415            F: for<'a> FnOnce(
1416                &'a mut crate::generated::all::builders::DefinitionBuilder,
1417            ) -> &'a mut crate::generated::all::builders::DefinitionBuilder,
1418        {
1419            let ty: crate::generated::all::Definition = Default::default();
1420            let mut ty_builder = crate::generated::all::builders::DefinitionBuilder::new(
1421                ty,
1422            );
1423            (f)(&mut ty_builder);
1424            let ty = ty_builder.build();
1425            self.element.children_mut().push(ty.into());
1426            self
1427        }
1428        /// Append a new `DeletedText` element
1429        pub fn deleted_text<F>(&mut self, f: F) -> &mut Self
1430        where
1431            F: for<'a> FnOnce(
1432                &'a mut crate::generated::all::builders::DeletedTextBuilder,
1433            ) -> &'a mut crate::generated::all::builders::DeletedTextBuilder,
1434        {
1435            let ty: crate::generated::all::DeletedText = Default::default();
1436            let mut ty_builder = crate::generated::all::builders::DeletedTextBuilder::new(
1437                ty,
1438            );
1439            (f)(&mut ty_builder);
1440            let ty = ty_builder.build();
1441            self.element.children_mut().push(ty.into());
1442            self
1443        }
1444        /// Append a new `Embed` element
1445        pub fn embed<F>(&mut self, f: F) -> &mut Self
1446        where
1447            F: for<'a> FnOnce(
1448                &'a mut crate::generated::all::builders::EmbedBuilder,
1449            ) -> &'a mut crate::generated::all::builders::EmbedBuilder,
1450        {
1451            let ty: crate::generated::all::Embed = Default::default();
1452            let mut ty_builder = crate::generated::all::builders::EmbedBuilder::new(ty);
1453            (f)(&mut ty_builder);
1454            let ty = ty_builder.build();
1455            self.element.children_mut().push(ty.into());
1456            self
1457        }
1458        /// Append a new `Emphasis` element
1459        pub fn emphasis<F>(&mut self, f: F) -> &mut Self
1460        where
1461            F: for<'a> FnOnce(
1462                &'a mut crate::generated::all::builders::EmphasisBuilder,
1463            ) -> &'a mut crate::generated::all::builders::EmphasisBuilder,
1464        {
1465            let ty: crate::generated::all::Emphasis = Default::default();
1466            let mut ty_builder = crate::generated::all::builders::EmphasisBuilder::new(
1467                ty,
1468            );
1469            (f)(&mut ty_builder);
1470            let ty = ty_builder.build();
1471            self.element.children_mut().push(ty.into());
1472            self
1473        }
1474        /// Append a new `Iframe` element
1475        pub fn iframe<F>(&mut self, f: F) -> &mut Self
1476        where
1477            F: for<'a> FnOnce(
1478                &'a mut crate::generated::all::builders::IframeBuilder,
1479            ) -> &'a mut crate::generated::all::builders::IframeBuilder,
1480        {
1481            let ty: crate::generated::all::Iframe = Default::default();
1482            let mut ty_builder = crate::generated::all::builders::IframeBuilder::new(ty);
1483            (f)(&mut ty_builder);
1484            let ty = ty_builder.build();
1485            self.element.children_mut().push(ty.into());
1486            self
1487        }
1488        /// Append a new `Image` element
1489        pub fn image<F>(&mut self, f: F) -> &mut Self
1490        where
1491            F: for<'a> FnOnce(
1492                &'a mut crate::generated::all::builders::ImageBuilder,
1493            ) -> &'a mut crate::generated::all::builders::ImageBuilder,
1494        {
1495            let ty: crate::generated::all::Image = Default::default();
1496            let mut ty_builder = crate::generated::all::builders::ImageBuilder::new(ty);
1497            (f)(&mut ty_builder);
1498            let ty = ty_builder.build();
1499            self.element.children_mut().push(ty.into());
1500            self
1501        }
1502        /// Append a new `ImageMap` element
1503        pub fn image_map<F>(&mut self, f: F) -> &mut Self
1504        where
1505            F: for<'a> FnOnce(
1506                &'a mut crate::generated::all::builders::ImageMapBuilder,
1507            ) -> &'a mut crate::generated::all::builders::ImageMapBuilder,
1508        {
1509            let ty: crate::generated::all::ImageMap = Default::default();
1510            let mut ty_builder = crate::generated::all::builders::ImageMapBuilder::new(
1511                ty,
1512            );
1513            (f)(&mut ty_builder);
1514            let ty = ty_builder.build();
1515            self.element.children_mut().push(ty.into());
1516            self
1517        }
1518        /// Append a new `ImageMapArea` element
1519        pub fn image_map_area<F>(&mut self, f: F) -> &mut Self
1520        where
1521            F: for<'a> FnOnce(
1522                &'a mut crate::generated::all::builders::ImageMapAreaBuilder,
1523            ) -> &'a mut crate::generated::all::builders::ImageMapAreaBuilder,
1524        {
1525            let ty: crate::generated::all::ImageMapArea = Default::default();
1526            let mut ty_builder = crate::generated::all::builders::ImageMapAreaBuilder::new(
1527                ty,
1528            );
1529            (f)(&mut ty_builder);
1530            let ty = ty_builder.build();
1531            self.element.children_mut().push(ty.into());
1532            self
1533        }
1534        /// Append a new `Input` element
1535        pub fn input<F>(&mut self, f: F) -> &mut Self
1536        where
1537            F: for<'a> FnOnce(
1538                &'a mut crate::generated::all::builders::InputBuilder,
1539            ) -> &'a mut crate::generated::all::builders::InputBuilder,
1540        {
1541            let ty: crate::generated::all::Input = Default::default();
1542            let mut ty_builder = crate::generated::all::builders::InputBuilder::new(ty);
1543            (f)(&mut ty_builder);
1544            let ty = ty_builder.build();
1545            self.element.children_mut().push(ty.into());
1546            self
1547        }
1548        /// Append a new `InsertedText` element
1549        pub fn inserted_text<F>(&mut self, f: F) -> &mut Self
1550        where
1551            F: for<'a> FnOnce(
1552                &'a mut crate::generated::all::builders::InsertedTextBuilder,
1553            ) -> &'a mut crate::generated::all::builders::InsertedTextBuilder,
1554        {
1555            let ty: crate::generated::all::InsertedText = Default::default();
1556            let mut ty_builder = crate::generated::all::builders::InsertedTextBuilder::new(
1557                ty,
1558            );
1559            (f)(&mut ty_builder);
1560            let ty = ty_builder.build();
1561            self.element.children_mut().push(ty.into());
1562            self
1563        }
1564        /// Append a new `Italic` element
1565        pub fn italic<F>(&mut self, f: F) -> &mut Self
1566        where
1567            F: for<'a> FnOnce(
1568                &'a mut crate::generated::all::builders::ItalicBuilder,
1569            ) -> &'a mut crate::generated::all::builders::ItalicBuilder,
1570        {
1571            let ty: crate::generated::all::Italic = Default::default();
1572            let mut ty_builder = crate::generated::all::builders::ItalicBuilder::new(ty);
1573            (f)(&mut ty_builder);
1574            let ty = ty_builder.build();
1575            self.element.children_mut().push(ty.into());
1576            self
1577        }
1578        /// Append a new `KeyboardInput` element
1579        pub fn keyboard_input<F>(&mut self, f: F) -> &mut Self
1580        where
1581            F: for<'a> FnOnce(
1582                &'a mut crate::generated::all::builders::KeyboardInputBuilder,
1583            ) -> &'a mut crate::generated::all::builders::KeyboardInputBuilder,
1584        {
1585            let ty: crate::generated::all::KeyboardInput = Default::default();
1586            let mut ty_builder = crate::generated::all::builders::KeyboardInputBuilder::new(
1587                ty,
1588            );
1589            (f)(&mut ty_builder);
1590            let ty = ty_builder.build();
1591            self.element.children_mut().push(ty.into());
1592            self
1593        }
1594        /// Append a new `Label` element
1595        pub fn label<F>(&mut self, f: F) -> &mut Self
1596        where
1597            F: for<'a> FnOnce(
1598                &'a mut crate::generated::all::builders::LabelBuilder,
1599            ) -> &'a mut crate::generated::all::builders::LabelBuilder,
1600        {
1601            let ty: crate::generated::all::Label = Default::default();
1602            let mut ty_builder = crate::generated::all::builders::LabelBuilder::new(ty);
1603            (f)(&mut ty_builder);
1604            let ty = ty_builder.build();
1605            self.element.children_mut().push(ty.into());
1606            self
1607        }
1608        /// Append a new `LineBreak` element
1609        pub fn line_break<F>(&mut self, f: F) -> &mut Self
1610        where
1611            F: for<'a> FnOnce(
1612                &'a mut crate::generated::all::builders::LineBreakBuilder,
1613            ) -> &'a mut crate::generated::all::builders::LineBreakBuilder,
1614        {
1615            let ty: crate::generated::all::LineBreak = Default::default();
1616            let mut ty_builder = crate::generated::all::builders::LineBreakBuilder::new(
1617                ty,
1618            );
1619            (f)(&mut ty_builder);
1620            let ty = ty_builder.build();
1621            self.element.children_mut().push(ty.into());
1622            self
1623        }
1624        /// Append a new `LineBreakOpportunity` element
1625        pub fn line_break_opportunity<F>(&mut self, f: F) -> &mut Self
1626        where
1627            F: for<'a> FnOnce(
1628                &'a mut crate::generated::all::builders::LineBreakOpportunityBuilder,
1629            ) -> &'a mut crate::generated::all::builders::LineBreakOpportunityBuilder,
1630        {
1631            let ty: crate::generated::all::LineBreakOpportunity = Default::default();
1632            let mut ty_builder = crate::generated::all::builders::LineBreakOpportunityBuilder::new(
1633                ty,
1634            );
1635            (f)(&mut ty_builder);
1636            let ty = ty_builder.build();
1637            self.element.children_mut().push(ty.into());
1638            self
1639        }
1640        /// Append a new `Link` element
1641        pub fn link<F>(&mut self, f: F) -> &mut Self
1642        where
1643            F: for<'a> FnOnce(
1644                &'a mut crate::generated::all::builders::LinkBuilder,
1645            ) -> &'a mut crate::generated::all::builders::LinkBuilder,
1646        {
1647            let ty: crate::generated::all::Link = Default::default();
1648            let mut ty_builder = crate::generated::all::builders::LinkBuilder::new(ty);
1649            (f)(&mut ty_builder);
1650            let ty = ty_builder.build();
1651            self.element.children_mut().push(ty.into());
1652            self
1653        }
1654        /// Append a new `MarkText` element
1655        pub fn mark_text<F>(&mut self, f: F) -> &mut Self
1656        where
1657            F: for<'a> FnOnce(
1658                &'a mut crate::generated::all::builders::MarkTextBuilder,
1659            ) -> &'a mut crate::generated::all::builders::MarkTextBuilder,
1660        {
1661            let ty: crate::generated::all::MarkText = Default::default();
1662            let mut ty_builder = crate::generated::all::builders::MarkTextBuilder::new(
1663                ty,
1664            );
1665            (f)(&mut ty_builder);
1666            let ty = ty_builder.build();
1667            self.element.children_mut().push(ty.into());
1668            self
1669        }
1670        /// Append a new `Meta` element
1671        pub fn meta<F>(&mut self, f: F) -> &mut Self
1672        where
1673            F: for<'a> FnOnce(
1674                &'a mut crate::generated::all::builders::MetaBuilder,
1675            ) -> &'a mut crate::generated::all::builders::MetaBuilder,
1676        {
1677            let ty: crate::generated::all::Meta = Default::default();
1678            let mut ty_builder = crate::generated::all::builders::MetaBuilder::new(ty);
1679            (f)(&mut ty_builder);
1680            let ty = ty_builder.build();
1681            self.element.children_mut().push(ty.into());
1682            self
1683        }
1684        /// Append a new `Meter` element
1685        pub fn meter<F>(&mut self, f: F) -> &mut Self
1686        where
1687            F: for<'a> FnOnce(
1688                &'a mut crate::generated::all::builders::MeterBuilder,
1689            ) -> &'a mut crate::generated::all::builders::MeterBuilder,
1690        {
1691            let ty: crate::generated::all::Meter = Default::default();
1692            let mut ty_builder = crate::generated::all::builders::MeterBuilder::new(ty);
1693            (f)(&mut ty_builder);
1694            let ty = ty_builder.build();
1695            self.element.children_mut().push(ty.into());
1696            self
1697        }
1698        /// Append a new `NoScript` element
1699        pub fn no_script<F>(&mut self, f: F) -> &mut Self
1700        where
1701            F: for<'a> FnOnce(
1702                &'a mut crate::generated::all::builders::NoScriptBuilder,
1703            ) -> &'a mut crate::generated::all::builders::NoScriptBuilder,
1704        {
1705            let ty: crate::generated::all::NoScript = Default::default();
1706            let mut ty_builder = crate::generated::all::builders::NoScriptBuilder::new(
1707                ty,
1708            );
1709            (f)(&mut ty_builder);
1710            let ty = ty_builder.build();
1711            self.element.children_mut().push(ty.into());
1712            self
1713        }
1714        /// Append a new `Object` element
1715        pub fn object<F>(&mut self, f: F) -> &mut Self
1716        where
1717            F: for<'a> FnOnce(
1718                &'a mut crate::generated::all::builders::ObjectBuilder,
1719            ) -> &'a mut crate::generated::all::builders::ObjectBuilder,
1720        {
1721            let ty: crate::generated::all::Object = Default::default();
1722            let mut ty_builder = crate::generated::all::builders::ObjectBuilder::new(ty);
1723            (f)(&mut ty_builder);
1724            let ty = ty_builder.build();
1725            self.element.children_mut().push(ty.into());
1726            self
1727        }
1728        /// Append a new `Output` element
1729        pub fn output<F>(&mut self, f: F) -> &mut Self
1730        where
1731            F: for<'a> FnOnce(
1732                &'a mut crate::generated::all::builders::OutputBuilder,
1733            ) -> &'a mut crate::generated::all::builders::OutputBuilder,
1734        {
1735            let ty: crate::generated::all::Output = Default::default();
1736            let mut ty_builder = crate::generated::all::builders::OutputBuilder::new(ty);
1737            (f)(&mut ty_builder);
1738            let ty = ty_builder.build();
1739            self.element.children_mut().push(ty.into());
1740            self
1741        }
1742        /// Append a new `Picture` element
1743        pub fn picture<F>(&mut self, f: F) -> &mut Self
1744        where
1745            F: for<'a> FnOnce(
1746                &'a mut crate::generated::all::builders::PictureBuilder,
1747            ) -> &'a mut crate::generated::all::builders::PictureBuilder,
1748        {
1749            let ty: crate::generated::all::Picture = Default::default();
1750            let mut ty_builder = crate::generated::all::builders::PictureBuilder::new(
1751                ty,
1752            );
1753            (f)(&mut ty_builder);
1754            let ty = ty_builder.build();
1755            self.element.children_mut().push(ty.into());
1756            self
1757        }
1758        /// Append a new `Progress` element
1759        pub fn progress<F>(&mut self, f: F) -> &mut Self
1760        where
1761            F: for<'a> FnOnce(
1762                &'a mut crate::generated::all::builders::ProgressBuilder,
1763            ) -> &'a mut crate::generated::all::builders::ProgressBuilder,
1764        {
1765            let ty: crate::generated::all::Progress = Default::default();
1766            let mut ty_builder = crate::generated::all::builders::ProgressBuilder::new(
1767                ty,
1768            );
1769            (f)(&mut ty_builder);
1770            let ty = ty_builder.build();
1771            self.element.children_mut().push(ty.into());
1772            self
1773        }
1774        /// Append a new `Quotation` element
1775        pub fn quotation<F>(&mut self, f: F) -> &mut Self
1776        where
1777            F: for<'a> FnOnce(
1778                &'a mut crate::generated::all::builders::QuotationBuilder,
1779            ) -> &'a mut crate::generated::all::builders::QuotationBuilder,
1780        {
1781            let ty: crate::generated::all::Quotation = Default::default();
1782            let mut ty_builder = crate::generated::all::builders::QuotationBuilder::new(
1783                ty,
1784            );
1785            (f)(&mut ty_builder);
1786            let ty = ty_builder.build();
1787            self.element.children_mut().push(ty.into());
1788            self
1789        }
1790        /// Append a new `RubyAnnotation` element
1791        pub fn ruby_annotation<F>(&mut self, f: F) -> &mut Self
1792        where
1793            F: for<'a> FnOnce(
1794                &'a mut crate::generated::all::builders::RubyAnnotationBuilder,
1795            ) -> &'a mut crate::generated::all::builders::RubyAnnotationBuilder,
1796        {
1797            let ty: crate::generated::all::RubyAnnotation = Default::default();
1798            let mut ty_builder = crate::generated::all::builders::RubyAnnotationBuilder::new(
1799                ty,
1800            );
1801            (f)(&mut ty_builder);
1802            let ty = ty_builder.build();
1803            self.element.children_mut().push(ty.into());
1804            self
1805        }
1806        /// Append a new `SampleOutput` element
1807        pub fn sample_output<F>(&mut self, f: F) -> &mut Self
1808        where
1809            F: for<'a> FnOnce(
1810                &'a mut crate::generated::all::builders::SampleOutputBuilder,
1811            ) -> &'a mut crate::generated::all::builders::SampleOutputBuilder,
1812        {
1813            let ty: crate::generated::all::SampleOutput = Default::default();
1814            let mut ty_builder = crate::generated::all::builders::SampleOutputBuilder::new(
1815                ty,
1816            );
1817            (f)(&mut ty_builder);
1818            let ty = ty_builder.build();
1819            self.element.children_mut().push(ty.into());
1820            self
1821        }
1822        /// Append a new `Script` element
1823        pub fn script<F>(&mut self, f: F) -> &mut Self
1824        where
1825            F: for<'a> FnOnce(
1826                &'a mut crate::generated::all::builders::ScriptBuilder,
1827            ) -> &'a mut crate::generated::all::builders::ScriptBuilder,
1828        {
1829            let ty: crate::generated::all::Script = Default::default();
1830            let mut ty_builder = crate::generated::all::builders::ScriptBuilder::new(ty);
1831            (f)(&mut ty_builder);
1832            let ty = ty_builder.build();
1833            self.element.children_mut().push(ty.into());
1834            self
1835        }
1836        /// Append a new `Select` element
1837        pub fn select<F>(&mut self, f: F) -> &mut Self
1838        where
1839            F: for<'a> FnOnce(
1840                &'a mut crate::generated::all::builders::SelectBuilder,
1841            ) -> &'a mut crate::generated::all::builders::SelectBuilder,
1842        {
1843            let ty: crate::generated::all::Select = Default::default();
1844            let mut ty_builder = crate::generated::all::builders::SelectBuilder::new(ty);
1845            (f)(&mut ty_builder);
1846            let ty = ty_builder.build();
1847            self.element.children_mut().push(ty.into());
1848            self
1849        }
1850        /// Append a new `SideComment` element
1851        pub fn side_comment<F>(&mut self, f: F) -> &mut Self
1852        where
1853            F: for<'a> FnOnce(
1854                &'a mut crate::generated::all::builders::SideCommentBuilder,
1855            ) -> &'a mut crate::generated::all::builders::SideCommentBuilder,
1856        {
1857            let ty: crate::generated::all::SideComment = Default::default();
1858            let mut ty_builder = crate::generated::all::builders::SideCommentBuilder::new(
1859                ty,
1860            );
1861            (f)(&mut ty_builder);
1862            let ty = ty_builder.build();
1863            self.element.children_mut().push(ty.into());
1864            self
1865        }
1866        /// Append a new `Slot` element
1867        pub fn slot<F>(&mut self, f: F) -> &mut Self
1868        where
1869            F: for<'a> FnOnce(
1870                &'a mut crate::generated::all::builders::SlotBuilder,
1871            ) -> &'a mut crate::generated::all::builders::SlotBuilder,
1872        {
1873            let ty: crate::generated::all::Slot = Default::default();
1874            let mut ty_builder = crate::generated::all::builders::SlotBuilder::new(ty);
1875            (f)(&mut ty_builder);
1876            let ty = ty_builder.build();
1877            self.element.children_mut().push(ty.into());
1878            self
1879        }
1880        /// Append a new `Span` element
1881        pub fn span<F>(&mut self, f: F) -> &mut Self
1882        where
1883            F: for<'a> FnOnce(
1884                &'a mut crate::generated::all::builders::SpanBuilder,
1885            ) -> &'a mut crate::generated::all::builders::SpanBuilder,
1886        {
1887            let ty: crate::generated::all::Span = Default::default();
1888            let mut ty_builder = crate::generated::all::builders::SpanBuilder::new(ty);
1889            (f)(&mut ty_builder);
1890            let ty = ty_builder.build();
1891            self.element.children_mut().push(ty.into());
1892            self
1893        }
1894        /// Append a new `StrikeThrough` element
1895        pub fn strike_through<F>(&mut self, f: F) -> &mut Self
1896        where
1897            F: for<'a> FnOnce(
1898                &'a mut crate::generated::all::builders::StrikeThroughBuilder,
1899            ) -> &'a mut crate::generated::all::builders::StrikeThroughBuilder,
1900        {
1901            let ty: crate::generated::all::StrikeThrough = Default::default();
1902            let mut ty_builder = crate::generated::all::builders::StrikeThroughBuilder::new(
1903                ty,
1904            );
1905            (f)(&mut ty_builder);
1906            let ty = ty_builder.build();
1907            self.element.children_mut().push(ty.into());
1908            self
1909        }
1910        /// Append a new `Strong` element
1911        pub fn strong<F>(&mut self, f: F) -> &mut Self
1912        where
1913            F: for<'a> FnOnce(
1914                &'a mut crate::generated::all::builders::StrongBuilder,
1915            ) -> &'a mut crate::generated::all::builders::StrongBuilder,
1916        {
1917            let ty: crate::generated::all::Strong = Default::default();
1918            let mut ty_builder = crate::generated::all::builders::StrongBuilder::new(ty);
1919            (f)(&mut ty_builder);
1920            let ty = ty_builder.build();
1921            self.element.children_mut().push(ty.into());
1922            self
1923        }
1924        /// Append a new `SubScript` element
1925        pub fn sub_script<F>(&mut self, f: F) -> &mut Self
1926        where
1927            F: for<'a> FnOnce(
1928                &'a mut crate::generated::all::builders::SubScriptBuilder,
1929            ) -> &'a mut crate::generated::all::builders::SubScriptBuilder,
1930        {
1931            let ty: crate::generated::all::SubScript = Default::default();
1932            let mut ty_builder = crate::generated::all::builders::SubScriptBuilder::new(
1933                ty,
1934            );
1935            (f)(&mut ty_builder);
1936            let ty = ty_builder.build();
1937            self.element.children_mut().push(ty.into());
1938            self
1939        }
1940        /// Append a new `SuperScript` element
1941        pub fn super_script<F>(&mut self, f: F) -> &mut Self
1942        where
1943            F: for<'a> FnOnce(
1944                &'a mut crate::generated::all::builders::SuperScriptBuilder,
1945            ) -> &'a mut crate::generated::all::builders::SuperScriptBuilder,
1946        {
1947            let ty: crate::generated::all::SuperScript = Default::default();
1948            let mut ty_builder = crate::generated::all::builders::SuperScriptBuilder::new(
1949                ty,
1950            );
1951            (f)(&mut ty_builder);
1952            let ty = ty_builder.build();
1953            self.element.children_mut().push(ty.into());
1954            self
1955        }
1956        /// Append a new `Template` element
1957        pub fn template<F>(&mut self, f: F) -> &mut Self
1958        where
1959            F: for<'a> FnOnce(
1960                &'a mut crate::generated::all::builders::TemplateBuilder,
1961            ) -> &'a mut crate::generated::all::builders::TemplateBuilder,
1962        {
1963            let ty: crate::generated::all::Template = Default::default();
1964            let mut ty_builder = crate::generated::all::builders::TemplateBuilder::new(
1965                ty,
1966            );
1967            (f)(&mut ty_builder);
1968            let ty = ty_builder.build();
1969            self.element.children_mut().push(ty.into());
1970            self
1971        }
1972        /// Append a new text element.
1973        pub fn text(
1974            &mut self,
1975            s: impl Into<std::borrow::Cow<'static, str>>,
1976        ) -> &mut Self {
1977            let cow = s.into();
1978            self.element.children_mut().push(cow.into());
1979            self
1980        }
1981        /// Append a new `TextArea` element
1982        pub fn text_area<F>(&mut self, f: F) -> &mut Self
1983        where
1984            F: for<'a> FnOnce(
1985                &'a mut crate::generated::all::builders::TextAreaBuilder,
1986            ) -> &'a mut crate::generated::all::builders::TextAreaBuilder,
1987        {
1988            let ty: crate::generated::all::TextArea = Default::default();
1989            let mut ty_builder = crate::generated::all::builders::TextAreaBuilder::new(
1990                ty,
1991            );
1992            (f)(&mut ty_builder);
1993            let ty = ty_builder.build();
1994            self.element.children_mut().push(ty.into());
1995            self
1996        }
1997        /// Append a new `Time` element
1998        pub fn time<F>(&mut self, f: F) -> &mut Self
1999        where
2000            F: for<'a> FnOnce(
2001                &'a mut crate::generated::all::builders::TimeBuilder,
2002            ) -> &'a mut crate::generated::all::builders::TimeBuilder,
2003        {
2004            let ty: crate::generated::all::Time = Default::default();
2005            let mut ty_builder = crate::generated::all::builders::TimeBuilder::new(ty);
2006            (f)(&mut ty_builder);
2007            let ty = ty_builder.build();
2008            self.element.children_mut().push(ty.into());
2009            self
2010        }
2011        /// Append a new `Underline` element
2012        pub fn underline<F>(&mut self, f: F) -> &mut Self
2013        where
2014            F: for<'a> FnOnce(
2015                &'a mut crate::generated::all::builders::UnderlineBuilder,
2016            ) -> &'a mut crate::generated::all::builders::UnderlineBuilder,
2017        {
2018            let ty: crate::generated::all::Underline = Default::default();
2019            let mut ty_builder = crate::generated::all::builders::UnderlineBuilder::new(
2020                ty,
2021            );
2022            (f)(&mut ty_builder);
2023            let ty = ty_builder.build();
2024            self.element.children_mut().push(ty.into());
2025            self
2026        }
2027        /// Append a new `Variable` element
2028        pub fn variable<F>(&mut self, f: F) -> &mut Self
2029        where
2030            F: for<'a> FnOnce(
2031                &'a mut crate::generated::all::builders::VariableBuilder,
2032            ) -> &'a mut crate::generated::all::builders::VariableBuilder,
2033        {
2034            let ty: crate::generated::all::Variable = Default::default();
2035            let mut ty_builder = crate::generated::all::builders::VariableBuilder::new(
2036                ty,
2037            );
2038            (f)(&mut ty_builder);
2039            let ty = ty_builder.build();
2040            self.element.children_mut().push(ty.into());
2041            self
2042        }
2043        /// Append a new `Video` element
2044        pub fn video<F>(&mut self, f: F) -> &mut Self
2045        where
2046            F: for<'a> FnOnce(
2047                &'a mut crate::generated::all::builders::VideoBuilder,
2048            ) -> &'a mut crate::generated::all::builders::VideoBuilder,
2049        {
2050            let ty: crate::generated::all::Video = Default::default();
2051            let mut ty_builder = crate::generated::all::builders::VideoBuilder::new(ty);
2052            (f)(&mut ty_builder);
2053            let ty = ty_builder.build();
2054            self.element.children_mut().push(ty.into());
2055            self
2056        }
2057        /// Set the value of the `role` attribute
2058        pub fn role(
2059            &mut self,
2060            value: impl Into<std::borrow::Cow<'static, str>>,
2061        ) -> &mut Self {
2062            self.element.set_role(Some(value.into()));
2063            self
2064        }
2065        /// Set the value of the `aria-atomic` attribute
2066        pub fn aria_atomic(&mut self, value: bool) -> &mut Self {
2067            self.element.set_aria_atomic(value);
2068            self
2069        }
2070        /// Set the value of the `aria-braillelabel` attribute
2071        pub fn aria_braille_label(
2072            &mut self,
2073            value: impl Into<std::borrow::Cow<'static, str>>,
2074        ) -> &mut Self {
2075            self.element.set_aria_braille_label(Some(value.into()));
2076            self
2077        }
2078        /// Set the value of the `aria-brailleroledescription` attribute
2079        pub fn aria_braille_role_description(
2080            &mut self,
2081            value: impl Into<std::borrow::Cow<'static, str>>,
2082        ) -> &mut Self {
2083            self.element.set_aria_braille_role_description(Some(value.into()));
2084            self
2085        }
2086        /// Set the value of the `aria-busy` attribute
2087        pub fn aria_busy(&mut self, value: bool) -> &mut Self {
2088            self.element.set_aria_busy(value);
2089            self
2090        }
2091        /// Set the value of the `aria-controls` attribute
2092        pub fn aria_controls_elements(
2093            &mut self,
2094            value: impl Into<std::borrow::Cow<'static, str>>,
2095        ) -> &mut Self {
2096            self.element.set_aria_controls_elements(Some(value.into()));
2097            self
2098        }
2099        /// Set the value of the `aria-current` attribute
2100        pub fn aria_current(
2101            &mut self,
2102            value: impl Into<std::borrow::Cow<'static, str>>,
2103        ) -> &mut Self {
2104            self.element.set_aria_current(Some(value.into()));
2105            self
2106        }
2107        /// Set the value of the `aria-describedby` attribute
2108        pub fn aria_described_by_elements(
2109            &mut self,
2110            value: impl Into<std::borrow::Cow<'static, str>>,
2111        ) -> &mut Self {
2112            self.element.set_aria_described_by_elements(Some(value.into()));
2113            self
2114        }
2115        /// Set the value of the `aria-description` attribute
2116        pub fn aria_description(
2117            &mut self,
2118            value: impl Into<std::borrow::Cow<'static, str>>,
2119        ) -> &mut Self {
2120            self.element.set_aria_description(Some(value.into()));
2121            self
2122        }
2123        /// Set the value of the `aria-details` attribute
2124        pub fn aria_details_elements(
2125            &mut self,
2126            value: impl Into<std::borrow::Cow<'static, str>>,
2127        ) -> &mut Self {
2128            self.element.set_aria_details_elements(Some(value.into()));
2129            self
2130        }
2131        /// Set the value of the `aria-disabled` attribute
2132        pub fn aria_disabled(&mut self, value: bool) -> &mut Self {
2133            self.element.set_aria_disabled(value);
2134            self
2135        }
2136        /// Set the value of the `aria-dropeffect` attribute
2137        pub fn aria_drop_effect(
2138            &mut self,
2139            value: impl Into<std::borrow::Cow<'static, str>>,
2140        ) -> &mut Self {
2141            self.element.set_aria_drop_effect(Some(value.into()));
2142            self
2143        }
2144        /// Set the value of the `aria-errormessage` attribute
2145        pub fn aria_error_message_elements(
2146            &mut self,
2147            value: impl Into<std::borrow::Cow<'static, str>>,
2148        ) -> &mut Self {
2149            self.element.set_aria_error_message_elements(Some(value.into()));
2150            self
2151        }
2152        /// Set the value of the `aria-expanded` attribute
2153        pub fn aria_expanded(&mut self, value: bool) -> &mut Self {
2154            self.element.set_aria_expanded(value);
2155            self
2156        }
2157        /// Set the value of the `aria-flowto` attribute
2158        pub fn aria_flow_to_elements(
2159            &mut self,
2160            value: impl Into<std::borrow::Cow<'static, str>>,
2161        ) -> &mut Self {
2162            self.element.set_aria_flow_to_elements(Some(value.into()));
2163            self
2164        }
2165        /// Set the value of the `aria-grabbed` attribute
2166        pub fn aria_grabbed(&mut self, value: bool) -> &mut Self {
2167            self.element.set_aria_grabbed(value);
2168            self
2169        }
2170        /// Set the value of the `aria-haspopup` attribute
2171        pub fn aria_has_popup(
2172            &mut self,
2173            value: impl Into<std::borrow::Cow<'static, str>>,
2174        ) -> &mut Self {
2175            self.element.set_aria_has_popup(Some(value.into()));
2176            self
2177        }
2178        /// Set the value of the `aria-hidden` attribute
2179        pub fn aria_hidden(&mut self, value: bool) -> &mut Self {
2180            self.element.set_aria_hidden(value);
2181            self
2182        }
2183        /// Set the value of the `aria-invalid` attribute
2184        pub fn aria_invalid(
2185            &mut self,
2186            value: impl Into<std::borrow::Cow<'static, str>>,
2187        ) -> &mut Self {
2188            self.element.set_aria_invalid(Some(value.into()));
2189            self
2190        }
2191        /// Set the value of the `aria-keyshortcuts` attribute
2192        pub fn aria_key_shortcuts(
2193            &mut self,
2194            value: impl Into<std::borrow::Cow<'static, str>>,
2195        ) -> &mut Self {
2196            self.element.set_aria_key_shortcuts(Some(value.into()));
2197            self
2198        }
2199        /// Set the value of the `aria-label` attribute
2200        pub fn aria_label(
2201            &mut self,
2202            value: impl Into<std::borrow::Cow<'static, str>>,
2203        ) -> &mut Self {
2204            self.element.set_aria_label(Some(value.into()));
2205            self
2206        }
2207        /// Set the value of the `aria-labelledby` attribute
2208        pub fn aria_labelled_by_elements(
2209            &mut self,
2210            value: impl Into<std::borrow::Cow<'static, str>>,
2211        ) -> &mut Self {
2212            self.element.set_aria_labelled_by_elements(Some(value.into()));
2213            self
2214        }
2215        /// Set the value of the `aria-live` attribute
2216        pub fn aria_live(
2217            &mut self,
2218            value: impl Into<std::borrow::Cow<'static, str>>,
2219        ) -> &mut Self {
2220            self.element.set_aria_live(Some(value.into()));
2221            self
2222        }
2223        /// Set the value of the `aria-owns` attribute
2224        pub fn aria_owns_elements(
2225            &mut self,
2226            value: impl Into<std::borrow::Cow<'static, str>>,
2227        ) -> &mut Self {
2228            self.element.set_aria_owns_elements(Some(value.into()));
2229            self
2230        }
2231        /// Set the value of the `aria-posinset` attribute
2232        pub fn aria_pos_in_set(&mut self, value: i64) -> &mut Self {
2233            self.element.set_aria_pos_in_set(Some(value));
2234            self
2235        }
2236        /// Set the value of the `aria-relevant` attribute
2237        pub fn aria_relevant(
2238            &mut self,
2239            value: impl Into<std::borrow::Cow<'static, str>>,
2240        ) -> &mut Self {
2241            self.element.set_aria_relevant(Some(value.into()));
2242            self
2243        }
2244        /// Set the value of the `aria-roledescription` attribute
2245        pub fn aria_role_description(
2246            &mut self,
2247            value: impl Into<std::borrow::Cow<'static, str>>,
2248        ) -> &mut Self {
2249            self.element.set_aria_role_description(Some(value.into()));
2250            self
2251        }
2252        /// Set the value of the `aria-selected` attribute
2253        pub fn aria_selected(&mut self, value: bool) -> &mut Self {
2254            self.element.set_aria_selected(value);
2255            self
2256        }
2257        /// Set the value of the `aria-setsize` attribute
2258        pub fn aria_set_size(&mut self, value: i64) -> &mut Self {
2259            self.element.set_aria_set_size(Some(value));
2260            self
2261        }
2262        /// Set the value of the `accesskey` attribute
2263        pub fn access_key(
2264            &mut self,
2265            value: impl Into<std::borrow::Cow<'static, str>>,
2266        ) -> &mut Self {
2267            self.element.set_access_key(Some(value.into()));
2268            self
2269        }
2270        /// Set the value of the `autocapitalize` attribute
2271        pub fn auto_capitalize(
2272            &mut self,
2273            value: impl Into<std::borrow::Cow<'static, str>>,
2274        ) -> &mut Self {
2275            self.element.set_auto_capitalize(Some(value.into()));
2276            self
2277        }
2278        /// Set the value of the `autofocus` attribute
2279        pub fn autofocus(&mut self, value: bool) -> &mut Self {
2280            self.element.set_autofocus(value);
2281            self
2282        }
2283        /// Set the value of the `class` attribute
2284        pub fn class(
2285            &mut self,
2286            value: impl Into<std::borrow::Cow<'static, str>>,
2287        ) -> &mut Self {
2288            self.element.set_class(Some(value.into()));
2289            self
2290        }
2291        /// Set the value of the `contenteditable` attribute
2292        pub fn content_editable(
2293            &mut self,
2294            value: impl Into<std::borrow::Cow<'static, str>>,
2295        ) -> &mut Self {
2296            self.element.set_content_editable(Some(value.into()));
2297            self
2298        }
2299        /// Set the value of the `dir` attribute
2300        pub fn direction(
2301            &mut self,
2302            value: impl Into<std::borrow::Cow<'static, str>>,
2303        ) -> &mut Self {
2304            self.element.set_direction(Some(value.into()));
2305            self
2306        }
2307        /// Set the value of the `draggable` attribute
2308        pub fn draggable(&mut self, value: bool) -> &mut Self {
2309            self.element.set_draggable(value);
2310            self
2311        }
2312        /// Set the value of the `enterkeyhint` attribute
2313        pub fn enter_key_hint(
2314            &mut self,
2315            value: impl Into<std::borrow::Cow<'static, str>>,
2316        ) -> &mut Self {
2317            self.element.set_enter_key_hint(Some(value.into()));
2318            self
2319        }
2320        /// Set the value of the `exportparts` attribute
2321        pub fn export_parts(
2322            &mut self,
2323            value: impl Into<std::borrow::Cow<'static, str>>,
2324        ) -> &mut Self {
2325            self.element.set_export_parts(Some(value.into()));
2326            self
2327        }
2328        /// Set the value of the `hidden` attribute
2329        pub fn hidden(
2330            &mut self,
2331            value: impl Into<std::borrow::Cow<'static, str>>,
2332        ) -> &mut Self {
2333            self.element.set_hidden(Some(value.into()));
2334            self
2335        }
2336        /// Set the value of the `id` attribute
2337        pub fn id(
2338            &mut self,
2339            value: impl Into<std::borrow::Cow<'static, str>>,
2340        ) -> &mut Self {
2341            self.element.set_id(Some(value.into()));
2342            self
2343        }
2344        /// Set the value of the `inert` attribute
2345        pub fn inert(&mut self, value: bool) -> &mut Self {
2346            self.element.set_inert(value);
2347            self
2348        }
2349        /// Set the value of the `inputmode` attribute
2350        pub fn input_mode(
2351            &mut self,
2352            value: impl Into<std::borrow::Cow<'static, str>>,
2353        ) -> &mut Self {
2354            self.element.set_input_mode(Some(value.into()));
2355            self
2356        }
2357        /// Set the value of the `is` attribute
2358        pub fn is_(
2359            &mut self,
2360            value: impl Into<std::borrow::Cow<'static, str>>,
2361        ) -> &mut Self {
2362            self.element.set_is_(Some(value.into()));
2363            self
2364        }
2365        /// Set the value of the `itemid` attribute
2366        pub fn item_id(
2367            &mut self,
2368            value: impl Into<std::borrow::Cow<'static, str>>,
2369        ) -> &mut Self {
2370            self.element.set_item_id(Some(value.into()));
2371            self
2372        }
2373        /// Set the value of the `itemprop` attribute
2374        pub fn item_prop(
2375            &mut self,
2376            value: impl Into<std::borrow::Cow<'static, str>>,
2377        ) -> &mut Self {
2378            self.element.set_item_prop(Some(value.into()));
2379            self
2380        }
2381        /// Set the value of the `itemref` attribute
2382        pub fn item_ref(
2383            &mut self,
2384            value: impl Into<std::borrow::Cow<'static, str>>,
2385        ) -> &mut Self {
2386            self.element.set_item_ref(Some(value.into()));
2387            self
2388        }
2389        /// Set the value of the `itemscope` attribute
2390        pub fn item_scope(
2391            &mut self,
2392            value: impl Into<std::borrow::Cow<'static, str>>,
2393        ) -> &mut Self {
2394            self.element.set_item_scope(Some(value.into()));
2395            self
2396        }
2397        /// Set the value of the `itemtype` attribute
2398        pub fn item_type(
2399            &mut self,
2400            value: impl Into<std::borrow::Cow<'static, str>>,
2401        ) -> &mut Self {
2402            self.element.set_item_type(Some(value.into()));
2403            self
2404        }
2405        /// Set the value of the `lang` attribute
2406        pub fn lang(
2407            &mut self,
2408            value: impl Into<std::borrow::Cow<'static, str>>,
2409        ) -> &mut Self {
2410            self.element.set_lang(Some(value.into()));
2411            self
2412        }
2413        /// Set the value of the `nonce` attribute
2414        pub fn nonce(
2415            &mut self,
2416            value: impl Into<std::borrow::Cow<'static, str>>,
2417        ) -> &mut Self {
2418            self.element.set_nonce(Some(value.into()));
2419            self
2420        }
2421        /// Set the value of the `part` attribute
2422        pub fn part(
2423            &mut self,
2424            value: impl Into<std::borrow::Cow<'static, str>>,
2425        ) -> &mut Self {
2426            self.element.set_part(Some(value.into()));
2427            self
2428        }
2429        /// Set the value of the `slot` attribute
2430        pub fn slot_attr(
2431            &mut self,
2432            value: impl Into<std::borrow::Cow<'static, str>>,
2433        ) -> &mut Self {
2434            self.element.set_slot(Some(value.into()));
2435            self
2436        }
2437        /// Set the value of the `spellcheck` attribute
2438        pub fn spellcheck(
2439            &mut self,
2440            value: impl Into<std::borrow::Cow<'static, str>>,
2441        ) -> &mut Self {
2442            self.element.set_spellcheck(Some(value.into()));
2443            self
2444        }
2445        /// Set the value of the `style` attribute
2446        pub fn style(
2447            &mut self,
2448            value: impl Into<std::borrow::Cow<'static, str>>,
2449        ) -> &mut Self {
2450            self.element.set_style(Some(value.into()));
2451            self
2452        }
2453        /// Set the value of the `tabindex` attribute
2454        pub fn tab_index(&mut self, value: i64) -> &mut Self {
2455            self.element.set_tab_index(Some(value));
2456            self
2457        }
2458        /// Set the value of the `title` attribute
2459        pub fn title(
2460            &mut self,
2461            value: impl Into<std::borrow::Cow<'static, str>>,
2462        ) -> &mut Self {
2463            self.element.set_title(Some(value.into()));
2464            self
2465        }
2466        /// Set the value of the `translate` attribute
2467        pub fn translate(&mut self, value: bool) -> &mut Self {
2468            self.element.set_translate(value);
2469            self
2470        }
2471        /// Push a new child element to the list of children.
2472        pub fn push<T>(&mut self, child_el: T) -> &mut Self
2473        where
2474            T: Into<crate::generated::all::children::Heading1Child>,
2475        {
2476            let child_el = child_el.into();
2477            self.element.children_mut().push(child_el);
2478            self
2479        }
2480        /// Extend the list of children with an iterator of child elements.
2481        pub fn extend<I, T>(&mut self, iter: I) -> &mut Self
2482        where
2483            I: IntoIterator<Item = T>,
2484            T: Into<crate::generated::all::children::Heading1Child>,
2485        {
2486            let iter = iter.into_iter().map(|child_el| child_el.into());
2487            self.element.children_mut().extend(iter);
2488            self
2489        }
2490    }
2491}