html/generated/
th.rs

1pub mod element {
2    /// The HTML `<th>` element
3    ///
4    /// [MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th)
5    #[doc(alias = "th")]
6    #[non_exhaustive]
7    #[derive(PartialEq, Clone, Default)]
8    pub struct TableHeader {
9        sys: html_sys::tables::TableHeader,
10        children: Vec<super::child::TableHeaderChild>,
11    }
12    impl TableHeader {
13        /// Create a new builder
14        pub fn builder() -> super::builder::TableHeaderBuilder {
15            super::builder::TableHeaderBuilder::new(Default::default())
16        }
17    }
18    impl TableHeader {
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 TableHeader {
29        /// Get the value of the `colspan` attribute
30        pub fn colspan(&self) -> std::option::Option<&str> {
31            self.sys.colspan.as_deref()
32        }
33        /// Set the value of the `colspan` attribute
34        pub fn set_colspan(
35            &mut self,
36            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
37        ) {
38            self.sys.colspan = value.map(|v| v.into());
39        }
40        /// Get the value of the `rowspan` attribute
41        pub fn rowspan(&self) -> std::option::Option<&str> {
42            self.sys.rowspan.as_deref()
43        }
44        /// Set the value of the `rowspan` attribute
45        pub fn set_rowspan(
46            &mut self,
47            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
48        ) {
49            self.sys.rowspan = value.map(|v| v.into());
50        }
51        /// Get the value of the `headers` attribute
52        pub fn headers(&self) -> std::option::Option<&str> {
53            self.sys.headers.as_deref()
54        }
55        /// Set the value of the `headers` attribute
56        pub fn set_headers(
57            &mut self,
58            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
59        ) {
60            self.sys.headers = value.map(|v| v.into());
61        }
62        /// Get the value of the `scope` attribute
63        pub fn scope(&self) -> std::option::Option<&str> {
64            self.sys.scope.as_deref()
65        }
66        /// Set the value of the `scope` attribute
67        pub fn set_scope(
68            &mut self,
69            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
70        ) {
71            self.sys.scope = value.map(|v| v.into());
72        }
73        /// Get the value of the `abbr` attribute
74        pub fn abbr(&self) -> std::option::Option<&str> {
75            self.sys.abbr.as_deref()
76        }
77        /// Set the value of the `abbr` attribute
78        pub fn set_abbr(
79            &mut self,
80            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
81        ) {
82            self.sys.abbr = value.map(|v| v.into());
83        }
84        /// Get the value of the `role` attribute
85        pub fn role(&self) -> std::option::Option<&str> {
86            self.sys.role.as_deref()
87        }
88        /// Set the value of the `role` attribute
89        pub fn set_role(
90            &mut self,
91            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
92        ) {
93            self.sys.role = value.map(|v| v.into());
94        }
95        /// Get the value of the `aria-activedescendant` attribute
96        pub fn aria_active_descendant_element(&self) -> std::option::Option<&str> {
97            self.sys.aria_active_descendant_element.as_deref()
98        }
99        /// Set the value of the `aria-activedescendant` attribute
100        pub fn set_aria_active_descendant_element(
101            &mut self,
102            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
103        ) {
104            self.sys.aria_active_descendant_element = value.map(|v| v.into());
105        }
106        /// Get the value of the `aria-atomic` attribute
107        pub fn aria_atomic(&self) -> bool {
108            self.sys.aria_atomic
109        }
110        /// Set the value of the `aria-atomic` attribute
111        pub fn set_aria_atomic(&mut self, value: bool) {
112            self.sys.aria_atomic = value;
113        }
114        /// Get the value of the `aria-autocomplete` attribute
115        pub fn aria_auto_complete(&self) -> std::option::Option<&str> {
116            self.sys.aria_auto_complete.as_deref()
117        }
118        /// Set the value of the `aria-autocomplete` attribute
119        pub fn set_aria_auto_complete(
120            &mut self,
121            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
122        ) {
123            self.sys.aria_auto_complete = value.map(|v| v.into());
124        }
125        /// Get the value of the `aria-braillelabel` attribute
126        pub fn aria_braille_label(&self) -> std::option::Option<&str> {
127            self.sys.aria_braille_label.as_deref()
128        }
129        /// Set the value of the `aria-braillelabel` attribute
130        pub fn set_aria_braille_label(
131            &mut self,
132            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
133        ) {
134            self.sys.aria_braille_label = value.map(|v| v.into());
135        }
136        /// Get the value of the `aria-brailleroledescription` attribute
137        pub fn aria_braille_role_description(&self) -> std::option::Option<&str> {
138            self.sys.aria_braille_role_description.as_deref()
139        }
140        /// Set the value of the `aria-brailleroledescription` attribute
141        pub fn set_aria_braille_role_description(
142            &mut self,
143            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
144        ) {
145            self.sys.aria_braille_role_description = value.map(|v| v.into());
146        }
147        /// Get the value of the `aria-busy` attribute
148        pub fn aria_busy(&self) -> bool {
149            self.sys.aria_busy
150        }
151        /// Set the value of the `aria-busy` attribute
152        pub fn set_aria_busy(&mut self, value: bool) {
153            self.sys.aria_busy = value;
154        }
155        /// Get the value of the `aria-checked` attribute
156        pub fn aria_checked(&self) -> std::option::Option<&str> {
157            self.sys.aria_checked.as_deref()
158        }
159        /// Set the value of the `aria-checked` attribute
160        pub fn set_aria_checked(
161            &mut self,
162            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
163        ) {
164            self.sys.aria_checked = value.map(|v| v.into());
165        }
166        /// Get the value of the `aria-colcount` attribute
167        pub fn aria_col_count(&self) -> std::option::Option<i64> {
168            self.sys.aria_col_count
169        }
170        /// Set the value of the `aria-colcount` attribute
171        pub fn set_aria_col_count(&mut self, value: std::option::Option<i64>) {
172            self.sys.aria_col_count = value;
173        }
174        /// Get the value of the `aria-colindex` attribute
175        pub fn aria_col_index(&self) -> std::option::Option<i64> {
176            self.sys.aria_col_index
177        }
178        /// Set the value of the `aria-colindex` attribute
179        pub fn set_aria_col_index(&mut self, value: std::option::Option<i64>) {
180            self.sys.aria_col_index = value;
181        }
182        /// Get the value of the `aria-colindextext` attribute
183        pub fn aria_col_index_text(&self) -> std::option::Option<&str> {
184            self.sys.aria_col_index_text.as_deref()
185        }
186        /// Set the value of the `aria-colindextext` attribute
187        pub fn set_aria_col_index_text(
188            &mut self,
189            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
190        ) {
191            self.sys.aria_col_index_text = value.map(|v| v.into());
192        }
193        /// Get the value of the `aria-colspan` attribute
194        pub fn aria_col_span(&self) -> std::option::Option<i64> {
195            self.sys.aria_col_span
196        }
197        /// Set the value of the `aria-colspan` attribute
198        pub fn set_aria_col_span(&mut self, value: std::option::Option<i64>) {
199            self.sys.aria_col_span = value;
200        }
201        /// Get the value of the `aria-controls` attribute
202        pub fn aria_controls_elements(&self) -> std::option::Option<&str> {
203            self.sys.aria_controls_elements.as_deref()
204        }
205        /// Set the value of the `aria-controls` attribute
206        pub fn set_aria_controls_elements(
207            &mut self,
208            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
209        ) {
210            self.sys.aria_controls_elements = value.map(|v| v.into());
211        }
212        /// Get the value of the `aria-current` attribute
213        pub fn aria_current(&self) -> std::option::Option<&str> {
214            self.sys.aria_current.as_deref()
215        }
216        /// Set the value of the `aria-current` attribute
217        pub fn set_aria_current(
218            &mut self,
219            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
220        ) {
221            self.sys.aria_current = value.map(|v| v.into());
222        }
223        /// Get the value of the `aria-describedby` attribute
224        pub fn aria_described_by_elements(&self) -> std::option::Option<&str> {
225            self.sys.aria_described_by_elements.as_deref()
226        }
227        /// Set the value of the `aria-describedby` attribute
228        pub fn set_aria_described_by_elements(
229            &mut self,
230            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
231        ) {
232            self.sys.aria_described_by_elements = value.map(|v| v.into());
233        }
234        /// Get the value of the `aria-description` attribute
235        pub fn aria_description(&self) -> std::option::Option<&str> {
236            self.sys.aria_description.as_deref()
237        }
238        /// Set the value of the `aria-description` attribute
239        pub fn set_aria_description(
240            &mut self,
241            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
242        ) {
243            self.sys.aria_description = value.map(|v| v.into());
244        }
245        /// Get the value of the `aria-details` attribute
246        pub fn aria_details_elements(&self) -> std::option::Option<&str> {
247            self.sys.aria_details_elements.as_deref()
248        }
249        /// Set the value of the `aria-details` attribute
250        pub fn set_aria_details_elements(
251            &mut self,
252            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
253        ) {
254            self.sys.aria_details_elements = value.map(|v| v.into());
255        }
256        /// Get the value of the `aria-disabled` attribute
257        pub fn aria_disabled(&self) -> bool {
258            self.sys.aria_disabled
259        }
260        /// Set the value of the `aria-disabled` attribute
261        pub fn set_aria_disabled(&mut self, value: bool) {
262            self.sys.aria_disabled = value;
263        }
264        /// Get the value of the `aria-dropeffect` attribute
265        pub fn aria_drop_effect(&self) -> std::option::Option<&str> {
266            self.sys.aria_drop_effect.as_deref()
267        }
268        /// Set the value of the `aria-dropeffect` attribute
269        pub fn set_aria_drop_effect(
270            &mut self,
271            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
272        ) {
273            self.sys.aria_drop_effect = value.map(|v| v.into());
274        }
275        /// Get the value of the `aria-errormessage` attribute
276        pub fn aria_error_message_elements(&self) -> std::option::Option<&str> {
277            self.sys.aria_error_message_elements.as_deref()
278        }
279        /// Set the value of the `aria-errormessage` attribute
280        pub fn set_aria_error_message_elements(
281            &mut self,
282            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
283        ) {
284            self.sys.aria_error_message_elements = value.map(|v| v.into());
285        }
286        /// Get the value of the `aria-expanded` attribute
287        pub fn aria_expanded(&self) -> bool {
288            self.sys.aria_expanded
289        }
290        /// Set the value of the `aria-expanded` attribute
291        pub fn set_aria_expanded(&mut self, value: bool) {
292            self.sys.aria_expanded = value;
293        }
294        /// Get the value of the `aria-flowto` attribute
295        pub fn aria_flow_to_elements(&self) -> std::option::Option<&str> {
296            self.sys.aria_flow_to_elements.as_deref()
297        }
298        /// Set the value of the `aria-flowto` attribute
299        pub fn set_aria_flow_to_elements(
300            &mut self,
301            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
302        ) {
303            self.sys.aria_flow_to_elements = value.map(|v| v.into());
304        }
305        /// Get the value of the `aria-grabbed` attribute
306        pub fn aria_grabbed(&self) -> bool {
307            self.sys.aria_grabbed
308        }
309        /// Set the value of the `aria-grabbed` attribute
310        pub fn set_aria_grabbed(&mut self, value: bool) {
311            self.sys.aria_grabbed = value;
312        }
313        /// Get the value of the `aria-haspopup` attribute
314        pub fn aria_has_popup(&self) -> std::option::Option<&str> {
315            self.sys.aria_has_popup.as_deref()
316        }
317        /// Set the value of the `aria-haspopup` attribute
318        pub fn set_aria_has_popup(
319            &mut self,
320            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
321        ) {
322            self.sys.aria_has_popup = value.map(|v| v.into());
323        }
324        /// Get the value of the `aria-hidden` attribute
325        pub fn aria_hidden(&self) -> bool {
326            self.sys.aria_hidden
327        }
328        /// Set the value of the `aria-hidden` attribute
329        pub fn set_aria_hidden(&mut self, value: bool) {
330            self.sys.aria_hidden = value;
331        }
332        /// Get the value of the `aria-invalid` attribute
333        pub fn aria_invalid(&self) -> std::option::Option<&str> {
334            self.sys.aria_invalid.as_deref()
335        }
336        /// Set the value of the `aria-invalid` attribute
337        pub fn set_aria_invalid(
338            &mut self,
339            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
340        ) {
341            self.sys.aria_invalid = value.map(|v| v.into());
342        }
343        /// Get the value of the `aria-keyshortcuts` attribute
344        pub fn aria_key_shortcuts(&self) -> std::option::Option<&str> {
345            self.sys.aria_key_shortcuts.as_deref()
346        }
347        /// Set the value of the `aria-keyshortcuts` attribute
348        pub fn set_aria_key_shortcuts(
349            &mut self,
350            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
351        ) {
352            self.sys.aria_key_shortcuts = value.map(|v| v.into());
353        }
354        /// Get the value of the `aria-label` attribute
355        pub fn aria_label(&self) -> std::option::Option<&str> {
356            self.sys.aria_label.as_deref()
357        }
358        /// Set the value of the `aria-label` attribute
359        pub fn set_aria_label(
360            &mut self,
361            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
362        ) {
363            self.sys.aria_label = value.map(|v| v.into());
364        }
365        /// Get the value of the `aria-labelledby` attribute
366        pub fn aria_labelled_by_elements(&self) -> std::option::Option<&str> {
367            self.sys.aria_labelled_by_elements.as_deref()
368        }
369        /// Set the value of the `aria-labelledby` attribute
370        pub fn set_aria_labelled_by_elements(
371            &mut self,
372            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
373        ) {
374            self.sys.aria_labelled_by_elements = value.map(|v| v.into());
375        }
376        /// Get the value of the `aria-level` attribute
377        pub fn aria_level(&self) -> std::option::Option<i64> {
378            self.sys.aria_level
379        }
380        /// Set the value of the `aria-level` attribute
381        pub fn set_aria_level(&mut self, value: std::option::Option<i64>) {
382            self.sys.aria_level = value;
383        }
384        /// Get the value of the `aria-live` attribute
385        pub fn aria_live(&self) -> std::option::Option<&str> {
386            self.sys.aria_live.as_deref()
387        }
388        /// Set the value of the `aria-live` attribute
389        pub fn set_aria_live(
390            &mut self,
391            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
392        ) {
393            self.sys.aria_live = value.map(|v| v.into());
394        }
395        /// Get the value of the `aria-modal` attribute
396        pub fn aria_modal(&self) -> bool {
397            self.sys.aria_modal
398        }
399        /// Set the value of the `aria-modal` attribute
400        pub fn set_aria_modal(&mut self, value: bool) {
401            self.sys.aria_modal = value;
402        }
403        /// Get the value of the `aria-multiline` attribute
404        pub fn aria_multi_line(&self) -> bool {
405            self.sys.aria_multi_line
406        }
407        /// Set the value of the `aria-multiline` attribute
408        pub fn set_aria_multi_line(&mut self, value: bool) {
409            self.sys.aria_multi_line = value;
410        }
411        /// Get the value of the `aria-multiselectable` attribute
412        pub fn aria_multi_selectable(&self) -> bool {
413            self.sys.aria_multi_selectable
414        }
415        /// Set the value of the `aria-multiselectable` attribute
416        pub fn set_aria_multi_selectable(&mut self, value: bool) {
417            self.sys.aria_multi_selectable = value;
418        }
419        /// Get the value of the `aria-orientation` attribute
420        pub fn aria_orientation(&self) -> std::option::Option<&str> {
421            self.sys.aria_orientation.as_deref()
422        }
423        /// Set the value of the `aria-orientation` attribute
424        pub fn set_aria_orientation(
425            &mut self,
426            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
427        ) {
428            self.sys.aria_orientation = value.map(|v| v.into());
429        }
430        /// Get the value of the `aria-owns` attribute
431        pub fn aria_owns_elements(&self) -> std::option::Option<&str> {
432            self.sys.aria_owns_elements.as_deref()
433        }
434        /// Set the value of the `aria-owns` attribute
435        pub fn set_aria_owns_elements(
436            &mut self,
437            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
438        ) {
439            self.sys.aria_owns_elements = value.map(|v| v.into());
440        }
441        /// Get the value of the `aria-placeholder` attribute
442        pub fn aria_placeholder(&self) -> std::option::Option<&str> {
443            self.sys.aria_placeholder.as_deref()
444        }
445        /// Set the value of the `aria-placeholder` attribute
446        pub fn set_aria_placeholder(
447            &mut self,
448            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
449        ) {
450            self.sys.aria_placeholder = value.map(|v| v.into());
451        }
452        /// Get the value of the `aria-posinset` attribute
453        pub fn aria_pos_in_set(&self) -> std::option::Option<i64> {
454            self.sys.aria_pos_in_set
455        }
456        /// Set the value of the `aria-posinset` attribute
457        pub fn set_aria_pos_in_set(&mut self, value: std::option::Option<i64>) {
458            self.sys.aria_pos_in_set = value;
459        }
460        /// Get the value of the `aria-pressed` attribute
461        pub fn aria_pressed(&self) -> std::option::Option<&str> {
462            self.sys.aria_pressed.as_deref()
463        }
464        /// Set the value of the `aria-pressed` attribute
465        pub fn set_aria_pressed(
466            &mut self,
467            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
468        ) {
469            self.sys.aria_pressed = value.map(|v| v.into());
470        }
471        /// Get the value of the `aria-readonly` attribute
472        pub fn aria_read_only(&self) -> bool {
473            self.sys.aria_read_only
474        }
475        /// Set the value of the `aria-readonly` attribute
476        pub fn set_aria_read_only(&mut self, value: bool) {
477            self.sys.aria_read_only = value;
478        }
479        /// Get the value of the `aria-relevant` attribute
480        pub fn aria_relevant(&self) -> std::option::Option<&str> {
481            self.sys.aria_relevant.as_deref()
482        }
483        /// Set the value of the `aria-relevant` attribute
484        pub fn set_aria_relevant(
485            &mut self,
486            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
487        ) {
488            self.sys.aria_relevant = value.map(|v| v.into());
489        }
490        /// Get the value of the `aria-required` attribute
491        pub fn aria_required(&self) -> bool {
492            self.sys.aria_required
493        }
494        /// Set the value of the `aria-required` attribute
495        pub fn set_aria_required(&mut self, value: bool) {
496            self.sys.aria_required = value;
497        }
498        /// Get the value of the `aria-roledescription` attribute
499        pub fn aria_role_description(&self) -> std::option::Option<&str> {
500            self.sys.aria_role_description.as_deref()
501        }
502        /// Set the value of the `aria-roledescription` attribute
503        pub fn set_aria_role_description(
504            &mut self,
505            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
506        ) {
507            self.sys.aria_role_description = value.map(|v| v.into());
508        }
509        /// Get the value of the `aria-rowcount` attribute
510        pub fn aria_row_count(&self) -> std::option::Option<i64> {
511            self.sys.aria_row_count
512        }
513        /// Set the value of the `aria-rowcount` attribute
514        pub fn set_aria_row_count(&mut self, value: std::option::Option<i64>) {
515            self.sys.aria_row_count = value;
516        }
517        /// Get the value of the `aria-rowindex` attribute
518        pub fn aria_row_index(&self) -> std::option::Option<i64> {
519            self.sys.aria_row_index
520        }
521        /// Set the value of the `aria-rowindex` attribute
522        pub fn set_aria_row_index(&mut self, value: std::option::Option<i64>) {
523            self.sys.aria_row_index = value;
524        }
525        /// Get the value of the `aria-rowindextext` attribute
526        pub fn aria_row_index_text(&self) -> std::option::Option<&str> {
527            self.sys.aria_row_index_text.as_deref()
528        }
529        /// Set the value of the `aria-rowindextext` attribute
530        pub fn set_aria_row_index_text(
531            &mut self,
532            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
533        ) {
534            self.sys.aria_row_index_text = value.map(|v| v.into());
535        }
536        /// Get the value of the `aria-rowspan` attribute
537        pub fn aria_row_span(&self) -> std::option::Option<i64> {
538            self.sys.aria_row_span
539        }
540        /// Set the value of the `aria-rowspan` attribute
541        pub fn set_aria_row_span(&mut self, value: std::option::Option<i64>) {
542            self.sys.aria_row_span = value;
543        }
544        /// Get the value of the `aria-selected` attribute
545        pub fn aria_selected(&self) -> bool {
546            self.sys.aria_selected
547        }
548        /// Set the value of the `aria-selected` attribute
549        pub fn set_aria_selected(&mut self, value: bool) {
550            self.sys.aria_selected = value;
551        }
552        /// Get the value of the `aria-setsize` attribute
553        pub fn aria_set_size(&self) -> std::option::Option<i64> {
554            self.sys.aria_set_size
555        }
556        /// Set the value of the `aria-setsize` attribute
557        pub fn set_aria_set_size(&mut self, value: std::option::Option<i64>) {
558            self.sys.aria_set_size = value;
559        }
560        /// Get the value of the `aria-sort` attribute
561        pub fn aria_sort(&self) -> std::option::Option<&str> {
562            self.sys.aria_sort.as_deref()
563        }
564        /// Set the value of the `aria-sort` attribute
565        pub fn set_aria_sort(
566            &mut self,
567            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
568        ) {
569            self.sys.aria_sort = value.map(|v| v.into());
570        }
571        /// Get the value of the `aria-valuemax` attribute
572        pub fn aria_value_max(&self) -> std::option::Option<f64> {
573            self.sys.aria_value_max
574        }
575        /// Set the value of the `aria-valuemax` attribute
576        pub fn set_aria_value_max(&mut self, value: std::option::Option<f64>) {
577            self.sys.aria_value_max = value;
578        }
579        /// Get the value of the `aria-valuemin` attribute
580        pub fn aria_value_min(&self) -> std::option::Option<f64> {
581            self.sys.aria_value_min
582        }
583        /// Set the value of the `aria-valuemin` attribute
584        pub fn set_aria_value_min(&mut self, value: std::option::Option<f64>) {
585            self.sys.aria_value_min = value;
586        }
587        /// Get the value of the `aria-valuenow` attribute
588        pub fn aria_value_now(&self) -> std::option::Option<f64> {
589            self.sys.aria_value_now
590        }
591        /// Set the value of the `aria-valuenow` attribute
592        pub fn set_aria_value_now(&mut self, value: std::option::Option<f64>) {
593            self.sys.aria_value_now = value;
594        }
595        /// Get the value of the `aria-valuetext` attribute
596        pub fn aria_value_text(&self) -> std::option::Option<&str> {
597            self.sys.aria_value_text.as_deref()
598        }
599        /// Set the value of the `aria-valuetext` attribute
600        pub fn set_aria_value_text(
601            &mut self,
602            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
603        ) {
604            self.sys.aria_value_text = value.map(|v| v.into());
605        }
606        /// Get the value of the `accesskey` attribute
607        pub fn access_key(&self) -> std::option::Option<&str> {
608            self.sys.access_key.as_deref()
609        }
610        /// Set the value of the `accesskey` attribute
611        pub fn set_access_key(
612            &mut self,
613            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
614        ) {
615            self.sys.access_key = value.map(|v| v.into());
616        }
617        /// Get the value of the `autocapitalize` attribute
618        pub fn auto_capitalize(&self) -> std::option::Option<&str> {
619            self.sys.auto_capitalize.as_deref()
620        }
621        /// Set the value of the `autocapitalize` attribute
622        pub fn set_auto_capitalize(
623            &mut self,
624            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
625        ) {
626            self.sys.auto_capitalize = value.map(|v| v.into());
627        }
628        /// Get the value of the `autofocus` attribute
629        pub fn autofocus(&self) -> bool {
630            self.sys.autofocus
631        }
632        /// Set the value of the `autofocus` attribute
633        pub fn set_autofocus(&mut self, value: bool) {
634            self.sys.autofocus = value;
635        }
636        /// Get the value of the `class` attribute
637        pub fn class(&self) -> std::option::Option<&str> {
638            self.sys.class.as_deref()
639        }
640        /// Set the value of the `class` attribute
641        pub fn set_class(
642            &mut self,
643            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
644        ) {
645            self.sys.class = value.map(|v| v.into());
646        }
647        /// Get the value of the `contenteditable` attribute
648        pub fn content_editable(&self) -> std::option::Option<&str> {
649            self.sys.content_editable.as_deref()
650        }
651        /// Set the value of the `contenteditable` attribute
652        pub fn set_content_editable(
653            &mut self,
654            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
655        ) {
656            self.sys.content_editable = value.map(|v| v.into());
657        }
658        /// Get the value of the `dir` attribute
659        pub fn direction(&self) -> std::option::Option<&str> {
660            self.sys.direction.as_deref()
661        }
662        /// Set the value of the `dir` attribute
663        pub fn set_direction(
664            &mut self,
665            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
666        ) {
667            self.sys.direction = value.map(|v| v.into());
668        }
669        /// Get the value of the `draggable` attribute
670        pub fn draggable(&self) -> bool {
671            self.sys.draggable
672        }
673        /// Set the value of the `draggable` attribute
674        pub fn set_draggable(&mut self, value: bool) {
675            self.sys.draggable = value;
676        }
677        /// Get the value of the `enterkeyhint` attribute
678        pub fn enter_key_hint(&self) -> std::option::Option<&str> {
679            self.sys.enter_key_hint.as_deref()
680        }
681        /// Set the value of the `enterkeyhint` attribute
682        pub fn set_enter_key_hint(
683            &mut self,
684            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
685        ) {
686            self.sys.enter_key_hint = value.map(|v| v.into());
687        }
688        /// Get the value of the `exportparts` attribute
689        pub fn export_parts(&self) -> std::option::Option<&str> {
690            self.sys.export_parts.as_deref()
691        }
692        /// Set the value of the `exportparts` attribute
693        pub fn set_export_parts(
694            &mut self,
695            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
696        ) {
697            self.sys.export_parts = value.map(|v| v.into());
698        }
699        /// Get the value of the `hidden` attribute
700        pub fn hidden(&self) -> std::option::Option<&str> {
701            self.sys.hidden.as_deref()
702        }
703        /// Set the value of the `hidden` attribute
704        pub fn set_hidden(
705            &mut self,
706            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
707        ) {
708            self.sys.hidden = value.map(|v| v.into());
709        }
710        /// Get the value of the `id` attribute
711        pub fn id(&self) -> std::option::Option<&str> {
712            self.sys.id.as_deref()
713        }
714        /// Set the value of the `id` attribute
715        pub fn set_id(
716            &mut self,
717            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
718        ) {
719            self.sys.id = value.map(|v| v.into());
720        }
721        /// Get the value of the `inert` attribute
722        pub fn inert(&self) -> bool {
723            self.sys.inert
724        }
725        /// Set the value of the `inert` attribute
726        pub fn set_inert(&mut self, value: bool) {
727            self.sys.inert = value;
728        }
729        /// Get the value of the `inputmode` attribute
730        pub fn input_mode(&self) -> std::option::Option<&str> {
731            self.sys.input_mode.as_deref()
732        }
733        /// Set the value of the `inputmode` attribute
734        pub fn set_input_mode(
735            &mut self,
736            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
737        ) {
738            self.sys.input_mode = value.map(|v| v.into());
739        }
740        /// Get the value of the `is` attribute
741        pub fn is_(&self) -> std::option::Option<&str> {
742            self.sys.is_.as_deref()
743        }
744        /// Set the value of the `is` attribute
745        pub fn set_is_(
746            &mut self,
747            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
748        ) {
749            self.sys.is_ = value.map(|v| v.into());
750        }
751        /// Get the value of the `itemid` attribute
752        pub fn item_id(&self) -> std::option::Option<&str> {
753            self.sys.item_id.as_deref()
754        }
755        /// Set the value of the `itemid` attribute
756        pub fn set_item_id(
757            &mut self,
758            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
759        ) {
760            self.sys.item_id = value.map(|v| v.into());
761        }
762        /// Get the value of the `itemprop` attribute
763        pub fn item_prop(&self) -> std::option::Option<&str> {
764            self.sys.item_prop.as_deref()
765        }
766        /// Set the value of the `itemprop` attribute
767        pub fn set_item_prop(
768            &mut self,
769            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
770        ) {
771            self.sys.item_prop = value.map(|v| v.into());
772        }
773        /// Get the value of the `itemref` attribute
774        pub fn item_ref(&self) -> std::option::Option<&str> {
775            self.sys.item_ref.as_deref()
776        }
777        /// Set the value of the `itemref` attribute
778        pub fn set_item_ref(
779            &mut self,
780            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
781        ) {
782            self.sys.item_ref = value.map(|v| v.into());
783        }
784        /// Get the value of the `itemscope` attribute
785        pub fn item_scope(&self) -> std::option::Option<&str> {
786            self.sys.item_scope.as_deref()
787        }
788        /// Set the value of the `itemscope` attribute
789        pub fn set_item_scope(
790            &mut self,
791            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
792        ) {
793            self.sys.item_scope = value.map(|v| v.into());
794        }
795        /// Get the value of the `itemtype` attribute
796        pub fn item_type(&self) -> std::option::Option<&str> {
797            self.sys.item_type.as_deref()
798        }
799        /// Set the value of the `itemtype` attribute
800        pub fn set_item_type(
801            &mut self,
802            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
803        ) {
804            self.sys.item_type = value.map(|v| v.into());
805        }
806        /// Get the value of the `lang` attribute
807        pub fn lang(&self) -> std::option::Option<&str> {
808            self.sys.lang.as_deref()
809        }
810        /// Set the value of the `lang` attribute
811        pub fn set_lang(
812            &mut self,
813            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
814        ) {
815            self.sys.lang = value.map(|v| v.into());
816        }
817        /// Get the value of the `nonce` attribute
818        pub fn nonce(&self) -> std::option::Option<&str> {
819            self.sys.nonce.as_deref()
820        }
821        /// Set the value of the `nonce` attribute
822        pub fn set_nonce(
823            &mut self,
824            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
825        ) {
826            self.sys.nonce = value.map(|v| v.into());
827        }
828        /// Get the value of the `part` attribute
829        pub fn part(&self) -> std::option::Option<&str> {
830            self.sys.part.as_deref()
831        }
832        /// Set the value of the `part` attribute
833        pub fn set_part(
834            &mut self,
835            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
836        ) {
837            self.sys.part = value.map(|v| v.into());
838        }
839        /// Get the value of the `slot` attribute
840        pub fn slot(&self) -> std::option::Option<&str> {
841            self.sys.slot.as_deref()
842        }
843        /// Set the value of the `slot` attribute
844        pub fn set_slot(
845            &mut self,
846            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
847        ) {
848            self.sys.slot = value.map(|v| v.into());
849        }
850        /// Get the value of the `spellcheck` attribute
851        pub fn spellcheck(&self) -> std::option::Option<&str> {
852            self.sys.spellcheck.as_deref()
853        }
854        /// Set the value of the `spellcheck` attribute
855        pub fn set_spellcheck(
856            &mut self,
857            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
858        ) {
859            self.sys.spellcheck = value.map(|v| v.into());
860        }
861        /// Get the value of the `style` attribute
862        pub fn style(&self) -> std::option::Option<&str> {
863            self.sys.style.as_deref()
864        }
865        /// Set the value of the `style` attribute
866        pub fn set_style(
867            &mut self,
868            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
869        ) {
870            self.sys.style = value.map(|v| v.into());
871        }
872        /// Get the value of the `tabindex` attribute
873        pub fn tab_index(&self) -> std::option::Option<i64> {
874            self.sys.tab_index
875        }
876        /// Set the value of the `tabindex` attribute
877        pub fn set_tab_index(&mut self, value: std::option::Option<i64>) {
878            self.sys.tab_index = value;
879        }
880        /// Get the value of the `title` attribute
881        pub fn title(&self) -> std::option::Option<&str> {
882            self.sys.title.as_deref()
883        }
884        /// Set the value of the `title` attribute
885        pub fn set_title(
886            &mut self,
887            value: std::option::Option<impl Into<std::borrow::Cow<'static, str>>>,
888        ) {
889            self.sys.title = value.map(|v| v.into());
890        }
891        /// Get the value of the `translate` attribute
892        pub fn translate(&self) -> bool {
893            self.sys.translate
894        }
895        /// Set the value of the `translate` attribute
896        pub fn set_translate(&mut self, value: bool) {
897            self.sys.translate = value;
898        }
899    }
900    impl TableHeader {
901        /// Access the element's children
902        pub fn children(&self) -> &[super::child::TableHeaderChild] {
903            self.children.as_ref()
904        }
905        /// Mutably access the element's children
906        pub fn children_mut(&mut self) -> &mut Vec<super::child::TableHeaderChild> {
907            &mut self.children
908        }
909    }
910    impl crate::Render for TableHeader {
911        fn render(
912            &self,
913            f: &mut std::fmt::Formatter<'_>,
914            depth: usize,
915        ) -> std::fmt::Result {
916            write!(f, "{:level$}", "", level = depth * 4)?;
917            html_sys::RenderElement::write_opening_tag(&self.sys, f)?;
918            if !self.children.is_empty() {
919                write!(f, "\n")?;
920            }
921            for el in &self.children {
922                crate::Render::render(&el, f, depth)?;
923                write!(f, "\n")?;
924            }
925            write!(f, "{:level$}", "", level = depth * 4)?;
926            html_sys::RenderElement::write_closing_tag(&self.sys, f)?;
927            Ok(())
928        }
929    }
930    impl std::fmt::Debug for TableHeader {
931        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
932            crate::Render::render(self, f, 0)?;
933            Ok(())
934        }
935    }
936    impl std::fmt::Display for TableHeader {
937        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
938            html_sys::RenderElement::write_opening_tag(&self.sys, f)?;
939            for el in &self.children {
940                write!(f, "{el}")?;
941            }
942            html_sys::RenderElement::write_closing_tag(&self.sys, f)?;
943            Ok(())
944        }
945    }
946    impl crate::HtmlElement for TableHeader {}
947    impl std::convert::Into<html_sys::tables::TableHeader> for TableHeader {
948        fn into(self) -> html_sys::tables::TableHeader {
949            self.sys
950        }
951    }
952    impl From<html_sys::tables::TableHeader> for TableHeader {
953        fn from(sys: html_sys::tables::TableHeader) -> Self {
954            Self { sys, children: vec![] }
955        }
956    }
957}
958pub mod child {
959    /// The permitted child items for the `TableHeader` element
960    #[derive(PartialEq, Clone)]
961    pub enum TableHeaderChild {
962        /// The Abbreviation element
963        Abbreviation(crate::generated::all::Abbreviation),
964        /// The Address element
965        Address(crate::generated::all::Address),
966        /// The Anchor element
967        Anchor(crate::generated::all::Anchor),
968        /// The Article element
969        Article(crate::generated::all::Article),
970        /// The Aside element
971        Aside(crate::generated::all::Aside),
972        /// The Audio element
973        Audio(crate::generated::all::Audio),
974        /// The BidirectionalIsolate element
975        BidirectionalIsolate(crate::generated::all::BidirectionalIsolate),
976        /// The BidirectionalTextOverride element
977        BidirectionalTextOverride(crate::generated::all::BidirectionalTextOverride),
978        /// The BlockQuote element
979        BlockQuote(crate::generated::all::BlockQuote),
980        /// The Bold element
981        Bold(crate::generated::all::Bold),
982        /// The Button element
983        Button(crate::generated::all::Button),
984        /// The Canvas element
985        Canvas(crate::generated::all::Canvas),
986        /// The Cite element
987        Cite(crate::generated::all::Cite),
988        /// The Code element
989        Code(crate::generated::all::Code),
990        /// The Data element
991        Data(crate::generated::all::Data),
992        /// The DataList element
993        DataList(crate::generated::all::DataList),
994        /// The Definition element
995        Definition(crate::generated::all::Definition),
996        /// The DeletedText element
997        DeletedText(crate::generated::all::DeletedText),
998        /// The DescriptionList element
999        DescriptionList(crate::generated::all::DescriptionList),
1000        /// The Details element
1001        Details(crate::generated::all::Details),
1002        /// The Dialog element
1003        Dialog(crate::generated::all::Dialog),
1004        /// The Division element
1005        Division(crate::generated::all::Division),
1006        /// The Embed element
1007        Embed(crate::generated::all::Embed),
1008        /// The Emphasis element
1009        Emphasis(crate::generated::all::Emphasis),
1010        /// The Fieldset element
1011        Fieldset(crate::generated::all::Fieldset),
1012        /// The Figure element
1013        Figure(crate::generated::all::Figure),
1014        /// The Footer element
1015        Footer(crate::generated::all::Footer),
1016        /// The Form element
1017        Form(crate::generated::all::Form),
1018        /// The Header element
1019        Header(crate::generated::all::Header),
1020        /// The Heading1 element
1021        Heading1(crate::generated::all::Heading1),
1022        /// The Heading2 element
1023        Heading2(crate::generated::all::Heading2),
1024        /// The Heading3 element
1025        Heading3(crate::generated::all::Heading3),
1026        /// The Heading4 element
1027        Heading4(crate::generated::all::Heading4),
1028        /// The Heading5 element
1029        Heading5(crate::generated::all::Heading5),
1030        /// The Heading6 element
1031        Heading6(crate::generated::all::Heading6),
1032        /// The HeadingGroup element
1033        HeadingGroup(crate::generated::all::HeadingGroup),
1034        /// The Iframe element
1035        Iframe(crate::generated::all::Iframe),
1036        /// The Image element
1037        Image(crate::generated::all::Image),
1038        /// The ImageMap element
1039        ImageMap(crate::generated::all::ImageMap),
1040        /// The ImageMapArea element
1041        ImageMapArea(crate::generated::all::ImageMapArea),
1042        /// The Input element
1043        Input(crate::generated::all::Input),
1044        /// The InsertedText element
1045        InsertedText(crate::generated::all::InsertedText),
1046        /// The Italic element
1047        Italic(crate::generated::all::Italic),
1048        /// The KeyboardInput element
1049        KeyboardInput(crate::generated::all::KeyboardInput),
1050        /// The Label element
1051        Label(crate::generated::all::Label),
1052        /// The LineBreak element
1053        LineBreak(crate::generated::all::LineBreak),
1054        /// The LineBreakOpportunity element
1055        LineBreakOpportunity(crate::generated::all::LineBreakOpportunity),
1056        /// The Link element
1057        Link(crate::generated::all::Link),
1058        /// The Main element
1059        Main(crate::generated::all::Main),
1060        /// The MarkText element
1061        MarkText(crate::generated::all::MarkText),
1062        /// The Menu element
1063        Menu(crate::generated::all::Menu),
1064        /// The Meta element
1065        Meta(crate::generated::all::Meta),
1066        /// The Meter element
1067        Meter(crate::generated::all::Meter),
1068        /// The Navigation element
1069        Navigation(crate::generated::all::Navigation),
1070        /// The NoScript element
1071        NoScript(crate::generated::all::NoScript),
1072        /// The Object element
1073        Object(crate::generated::all::Object),
1074        /// The OrderedList element
1075        OrderedList(crate::generated::all::OrderedList),
1076        /// The Output element
1077        Output(crate::generated::all::Output),
1078        /// The Paragraph element
1079        Paragraph(crate::generated::all::Paragraph),
1080        /// The Picture element
1081        Picture(crate::generated::all::Picture),
1082        /// The PreformattedText element
1083        PreformattedText(crate::generated::all::PreformattedText),
1084        /// The Progress element
1085        Progress(crate::generated::all::Progress),
1086        /// The Quotation element
1087        Quotation(crate::generated::all::Quotation),
1088        /// The RubyAnnotation element
1089        RubyAnnotation(crate::generated::all::RubyAnnotation),
1090        /// The SampleOutput element
1091        SampleOutput(crate::generated::all::SampleOutput),
1092        /// The Script element
1093        Script(crate::generated::all::Script),
1094        /// The Search element
1095        Search(crate::generated::all::Search),
1096        /// The Section element
1097        Section(crate::generated::all::Section),
1098        /// The Select element
1099        Select(crate::generated::all::Select),
1100        /// The SideComment element
1101        SideComment(crate::generated::all::SideComment),
1102        /// The Slot element
1103        Slot(crate::generated::all::Slot),
1104        /// The Span element
1105        Span(crate::generated::all::Span),
1106        /// The StrikeThrough element
1107        StrikeThrough(crate::generated::all::StrikeThrough),
1108        /// The Strong element
1109        Strong(crate::generated::all::Strong),
1110        /// The SubScript element
1111        SubScript(crate::generated::all::SubScript),
1112        /// The SuperScript element
1113        SuperScript(crate::generated::all::SuperScript),
1114        /// The Table element
1115        Table(crate::generated::all::Table),
1116        /// The Template element
1117        Template(crate::generated::all::Template),
1118        /// The Text element
1119        Text(std::borrow::Cow<'static, str>),
1120        /// The TextArea element
1121        TextArea(crate::generated::all::TextArea),
1122        /// The ThematicBreak element
1123        ThematicBreak(crate::generated::all::ThematicBreak),
1124        /// The Time element
1125        Time(crate::generated::all::Time),
1126        /// The Underline element
1127        Underline(crate::generated::all::Underline),
1128        /// The UnorderedList element
1129        UnorderedList(crate::generated::all::UnorderedList),
1130        /// The Variable element
1131        Variable(crate::generated::all::Variable),
1132        /// The Video element
1133        Video(crate::generated::all::Video),
1134    }
1135    impl std::convert::From<crate::generated::all::Abbreviation> for TableHeaderChild {
1136        fn from(value: crate::generated::all::Abbreviation) -> Self {
1137            Self::Abbreviation(value)
1138        }
1139    }
1140    impl std::convert::From<crate::generated::all::Address> for TableHeaderChild {
1141        fn from(value: crate::generated::all::Address) -> Self {
1142            Self::Address(value)
1143        }
1144    }
1145    impl std::convert::From<crate::generated::all::Anchor> for TableHeaderChild {
1146        fn from(value: crate::generated::all::Anchor) -> Self {
1147            Self::Anchor(value)
1148        }
1149    }
1150    impl std::convert::From<crate::generated::all::Article> for TableHeaderChild {
1151        fn from(value: crate::generated::all::Article) -> Self {
1152            Self::Article(value)
1153        }
1154    }
1155    impl std::convert::From<crate::generated::all::Aside> for TableHeaderChild {
1156        fn from(value: crate::generated::all::Aside) -> Self {
1157            Self::Aside(value)
1158        }
1159    }
1160    impl std::convert::From<crate::generated::all::Audio> for TableHeaderChild {
1161        fn from(value: crate::generated::all::Audio) -> Self {
1162            Self::Audio(value)
1163        }
1164    }
1165    impl std::convert::From<crate::generated::all::BidirectionalIsolate>
1166    for TableHeaderChild {
1167        fn from(value: crate::generated::all::BidirectionalIsolate) -> Self {
1168            Self::BidirectionalIsolate(value)
1169        }
1170    }
1171    impl std::convert::From<crate::generated::all::BidirectionalTextOverride>
1172    for TableHeaderChild {
1173        fn from(value: crate::generated::all::BidirectionalTextOverride) -> Self {
1174            Self::BidirectionalTextOverride(value)
1175        }
1176    }
1177    impl std::convert::From<crate::generated::all::BlockQuote> for TableHeaderChild {
1178        fn from(value: crate::generated::all::BlockQuote) -> Self {
1179            Self::BlockQuote(value)
1180        }
1181    }
1182    impl std::convert::From<crate::generated::all::Bold> for TableHeaderChild {
1183        fn from(value: crate::generated::all::Bold) -> Self {
1184            Self::Bold(value)
1185        }
1186    }
1187    impl std::convert::From<crate::generated::all::Button> for TableHeaderChild {
1188        fn from(value: crate::generated::all::Button) -> Self {
1189            Self::Button(value)
1190        }
1191    }
1192    impl std::convert::From<crate::generated::all::Canvas> for TableHeaderChild {
1193        fn from(value: crate::generated::all::Canvas) -> Self {
1194            Self::Canvas(value)
1195        }
1196    }
1197    impl std::convert::From<crate::generated::all::Cite> for TableHeaderChild {
1198        fn from(value: crate::generated::all::Cite) -> Self {
1199            Self::Cite(value)
1200        }
1201    }
1202    impl std::convert::From<crate::generated::all::Code> for TableHeaderChild {
1203        fn from(value: crate::generated::all::Code) -> Self {
1204            Self::Code(value)
1205        }
1206    }
1207    impl std::convert::From<crate::generated::all::Data> for TableHeaderChild {
1208        fn from(value: crate::generated::all::Data) -> Self {
1209            Self::Data(value)
1210        }
1211    }
1212    impl std::convert::From<crate::generated::all::DataList> for TableHeaderChild {
1213        fn from(value: crate::generated::all::DataList) -> Self {
1214            Self::DataList(value)
1215        }
1216    }
1217    impl std::convert::From<crate::generated::all::Definition> for TableHeaderChild {
1218        fn from(value: crate::generated::all::Definition) -> Self {
1219            Self::Definition(value)
1220        }
1221    }
1222    impl std::convert::From<crate::generated::all::DeletedText> for TableHeaderChild {
1223        fn from(value: crate::generated::all::DeletedText) -> Self {
1224            Self::DeletedText(value)
1225        }
1226    }
1227    impl std::convert::From<crate::generated::all::DescriptionList>
1228    for TableHeaderChild {
1229        fn from(value: crate::generated::all::DescriptionList) -> Self {
1230            Self::DescriptionList(value)
1231        }
1232    }
1233    impl std::convert::From<crate::generated::all::Details> for TableHeaderChild {
1234        fn from(value: crate::generated::all::Details) -> Self {
1235            Self::Details(value)
1236        }
1237    }
1238    impl std::convert::From<crate::generated::all::Dialog> for TableHeaderChild {
1239        fn from(value: crate::generated::all::Dialog) -> Self {
1240            Self::Dialog(value)
1241        }
1242    }
1243    impl std::convert::From<crate::generated::all::Division> for TableHeaderChild {
1244        fn from(value: crate::generated::all::Division) -> Self {
1245            Self::Division(value)
1246        }
1247    }
1248    impl std::convert::From<crate::generated::all::Embed> for TableHeaderChild {
1249        fn from(value: crate::generated::all::Embed) -> Self {
1250            Self::Embed(value)
1251        }
1252    }
1253    impl std::convert::From<crate::generated::all::Emphasis> for TableHeaderChild {
1254        fn from(value: crate::generated::all::Emphasis) -> Self {
1255            Self::Emphasis(value)
1256        }
1257    }
1258    impl std::convert::From<crate::generated::all::Fieldset> for TableHeaderChild {
1259        fn from(value: crate::generated::all::Fieldset) -> Self {
1260            Self::Fieldset(value)
1261        }
1262    }
1263    impl std::convert::From<crate::generated::all::Figure> for TableHeaderChild {
1264        fn from(value: crate::generated::all::Figure) -> Self {
1265            Self::Figure(value)
1266        }
1267    }
1268    impl std::convert::From<crate::generated::all::Footer> for TableHeaderChild {
1269        fn from(value: crate::generated::all::Footer) -> Self {
1270            Self::Footer(value)
1271        }
1272    }
1273    impl std::convert::From<crate::generated::all::Form> for TableHeaderChild {
1274        fn from(value: crate::generated::all::Form) -> Self {
1275            Self::Form(value)
1276        }
1277    }
1278    impl std::convert::From<crate::generated::all::Header> for TableHeaderChild {
1279        fn from(value: crate::generated::all::Header) -> Self {
1280            Self::Header(value)
1281        }
1282    }
1283    impl std::convert::From<crate::generated::all::Heading1> for TableHeaderChild {
1284        fn from(value: crate::generated::all::Heading1) -> Self {
1285            Self::Heading1(value)
1286        }
1287    }
1288    impl std::convert::From<crate::generated::all::Heading2> for TableHeaderChild {
1289        fn from(value: crate::generated::all::Heading2) -> Self {
1290            Self::Heading2(value)
1291        }
1292    }
1293    impl std::convert::From<crate::generated::all::Heading3> for TableHeaderChild {
1294        fn from(value: crate::generated::all::Heading3) -> Self {
1295            Self::Heading3(value)
1296        }
1297    }
1298    impl std::convert::From<crate::generated::all::Heading4> for TableHeaderChild {
1299        fn from(value: crate::generated::all::Heading4) -> Self {
1300            Self::Heading4(value)
1301        }
1302    }
1303    impl std::convert::From<crate::generated::all::Heading5> for TableHeaderChild {
1304        fn from(value: crate::generated::all::Heading5) -> Self {
1305            Self::Heading5(value)
1306        }
1307    }
1308    impl std::convert::From<crate::generated::all::Heading6> for TableHeaderChild {
1309        fn from(value: crate::generated::all::Heading6) -> Self {
1310            Self::Heading6(value)
1311        }
1312    }
1313    impl std::convert::From<crate::generated::all::HeadingGroup> for TableHeaderChild {
1314        fn from(value: crate::generated::all::HeadingGroup) -> Self {
1315            Self::HeadingGroup(value)
1316        }
1317    }
1318    impl std::convert::From<crate::generated::all::Iframe> for TableHeaderChild {
1319        fn from(value: crate::generated::all::Iframe) -> Self {
1320            Self::Iframe(value)
1321        }
1322    }
1323    impl std::convert::From<crate::generated::all::Image> for TableHeaderChild {
1324        fn from(value: crate::generated::all::Image) -> Self {
1325            Self::Image(value)
1326        }
1327    }
1328    impl std::convert::From<crate::generated::all::ImageMap> for TableHeaderChild {
1329        fn from(value: crate::generated::all::ImageMap) -> Self {
1330            Self::ImageMap(value)
1331        }
1332    }
1333    impl std::convert::From<crate::generated::all::ImageMapArea> for TableHeaderChild {
1334        fn from(value: crate::generated::all::ImageMapArea) -> Self {
1335            Self::ImageMapArea(value)
1336        }
1337    }
1338    impl std::convert::From<crate::generated::all::Input> for TableHeaderChild {
1339        fn from(value: crate::generated::all::Input) -> Self {
1340            Self::Input(value)
1341        }
1342    }
1343    impl std::convert::From<crate::generated::all::InsertedText> for TableHeaderChild {
1344        fn from(value: crate::generated::all::InsertedText) -> Self {
1345            Self::InsertedText(value)
1346        }
1347    }
1348    impl std::convert::From<crate::generated::all::Italic> for TableHeaderChild {
1349        fn from(value: crate::generated::all::Italic) -> Self {
1350            Self::Italic(value)
1351        }
1352    }
1353    impl std::convert::From<crate::generated::all::KeyboardInput> for TableHeaderChild {
1354        fn from(value: crate::generated::all::KeyboardInput) -> Self {
1355            Self::KeyboardInput(value)
1356        }
1357    }
1358    impl std::convert::From<crate::generated::all::Label> for TableHeaderChild {
1359        fn from(value: crate::generated::all::Label) -> Self {
1360            Self::Label(value)
1361        }
1362    }
1363    impl std::convert::From<crate::generated::all::LineBreak> for TableHeaderChild {
1364        fn from(value: crate::generated::all::LineBreak) -> Self {
1365            Self::LineBreak(value)
1366        }
1367    }
1368    impl std::convert::From<crate::generated::all::LineBreakOpportunity>
1369    for TableHeaderChild {
1370        fn from(value: crate::generated::all::LineBreakOpportunity) -> Self {
1371            Self::LineBreakOpportunity(value)
1372        }
1373    }
1374    impl std::convert::From<crate::generated::all::Link> for TableHeaderChild {
1375        fn from(value: crate::generated::all::Link) -> Self {
1376            Self::Link(value)
1377        }
1378    }
1379    impl std::convert::From<crate::generated::all::Main> for TableHeaderChild {
1380        fn from(value: crate::generated::all::Main) -> Self {
1381            Self::Main(value)
1382        }
1383    }
1384    impl std::convert::From<crate::generated::all::MarkText> for TableHeaderChild {
1385        fn from(value: crate::generated::all::MarkText) -> Self {
1386            Self::MarkText(value)
1387        }
1388    }
1389    impl std::convert::From<crate::generated::all::Menu> for TableHeaderChild {
1390        fn from(value: crate::generated::all::Menu) -> Self {
1391            Self::Menu(value)
1392        }
1393    }
1394    impl std::convert::From<crate::generated::all::Meta> for TableHeaderChild {
1395        fn from(value: crate::generated::all::Meta) -> Self {
1396            Self::Meta(value)
1397        }
1398    }
1399    impl std::convert::From<crate::generated::all::Meter> for TableHeaderChild {
1400        fn from(value: crate::generated::all::Meter) -> Self {
1401            Self::Meter(value)
1402        }
1403    }
1404    impl std::convert::From<crate::generated::all::Navigation> for TableHeaderChild {
1405        fn from(value: crate::generated::all::Navigation) -> Self {
1406            Self::Navigation(value)
1407        }
1408    }
1409    impl std::convert::From<crate::generated::all::NoScript> for TableHeaderChild {
1410        fn from(value: crate::generated::all::NoScript) -> Self {
1411            Self::NoScript(value)
1412        }
1413    }
1414    impl std::convert::From<crate::generated::all::Object> for TableHeaderChild {
1415        fn from(value: crate::generated::all::Object) -> Self {
1416            Self::Object(value)
1417        }
1418    }
1419    impl std::convert::From<crate::generated::all::OrderedList> for TableHeaderChild {
1420        fn from(value: crate::generated::all::OrderedList) -> Self {
1421            Self::OrderedList(value)
1422        }
1423    }
1424    impl std::convert::From<crate::generated::all::Output> for TableHeaderChild {
1425        fn from(value: crate::generated::all::Output) -> Self {
1426            Self::Output(value)
1427        }
1428    }
1429    impl std::convert::From<crate::generated::all::Paragraph> for TableHeaderChild {
1430        fn from(value: crate::generated::all::Paragraph) -> Self {
1431            Self::Paragraph(value)
1432        }
1433    }
1434    impl std::convert::From<crate::generated::all::Picture> for TableHeaderChild {
1435        fn from(value: crate::generated::all::Picture) -> Self {
1436            Self::Picture(value)
1437        }
1438    }
1439    impl std::convert::From<crate::generated::all::PreformattedText>
1440    for TableHeaderChild {
1441        fn from(value: crate::generated::all::PreformattedText) -> Self {
1442            Self::PreformattedText(value)
1443        }
1444    }
1445    impl std::convert::From<crate::generated::all::Progress> for TableHeaderChild {
1446        fn from(value: crate::generated::all::Progress) -> Self {
1447            Self::Progress(value)
1448        }
1449    }
1450    impl std::convert::From<crate::generated::all::Quotation> for TableHeaderChild {
1451        fn from(value: crate::generated::all::Quotation) -> Self {
1452            Self::Quotation(value)
1453        }
1454    }
1455    impl std::convert::From<crate::generated::all::RubyAnnotation> for TableHeaderChild {
1456        fn from(value: crate::generated::all::RubyAnnotation) -> Self {
1457            Self::RubyAnnotation(value)
1458        }
1459    }
1460    impl std::convert::From<crate::generated::all::SampleOutput> for TableHeaderChild {
1461        fn from(value: crate::generated::all::SampleOutput) -> Self {
1462            Self::SampleOutput(value)
1463        }
1464    }
1465    impl std::convert::From<crate::generated::all::Script> for TableHeaderChild {
1466        fn from(value: crate::generated::all::Script) -> Self {
1467            Self::Script(value)
1468        }
1469    }
1470    impl std::convert::From<crate::generated::all::Search> for TableHeaderChild {
1471        fn from(value: crate::generated::all::Search) -> Self {
1472            Self::Search(value)
1473        }
1474    }
1475    impl std::convert::From<crate::generated::all::Section> for TableHeaderChild {
1476        fn from(value: crate::generated::all::Section) -> Self {
1477            Self::Section(value)
1478        }
1479    }
1480    impl std::convert::From<crate::generated::all::Select> for TableHeaderChild {
1481        fn from(value: crate::generated::all::Select) -> Self {
1482            Self::Select(value)
1483        }
1484    }
1485    impl std::convert::From<crate::generated::all::SideComment> for TableHeaderChild {
1486        fn from(value: crate::generated::all::SideComment) -> Self {
1487            Self::SideComment(value)
1488        }
1489    }
1490    impl std::convert::From<crate::generated::all::Slot> for TableHeaderChild {
1491        fn from(value: crate::generated::all::Slot) -> Self {
1492            Self::Slot(value)
1493        }
1494    }
1495    impl std::convert::From<crate::generated::all::Span> for TableHeaderChild {
1496        fn from(value: crate::generated::all::Span) -> Self {
1497            Self::Span(value)
1498        }
1499    }
1500    impl std::convert::From<crate::generated::all::StrikeThrough> for TableHeaderChild {
1501        fn from(value: crate::generated::all::StrikeThrough) -> Self {
1502            Self::StrikeThrough(value)
1503        }
1504    }
1505    impl std::convert::From<crate::generated::all::Strong> for TableHeaderChild {
1506        fn from(value: crate::generated::all::Strong) -> Self {
1507            Self::Strong(value)
1508        }
1509    }
1510    impl std::convert::From<crate::generated::all::SubScript> for TableHeaderChild {
1511        fn from(value: crate::generated::all::SubScript) -> Self {
1512            Self::SubScript(value)
1513        }
1514    }
1515    impl std::convert::From<crate::generated::all::SuperScript> for TableHeaderChild {
1516        fn from(value: crate::generated::all::SuperScript) -> Self {
1517            Self::SuperScript(value)
1518        }
1519    }
1520    impl std::convert::From<crate::generated::all::Table> for TableHeaderChild {
1521        fn from(value: crate::generated::all::Table) -> Self {
1522            Self::Table(value)
1523        }
1524    }
1525    impl std::convert::From<crate::generated::all::Template> for TableHeaderChild {
1526        fn from(value: crate::generated::all::Template) -> Self {
1527            Self::Template(value)
1528        }
1529    }
1530    impl std::convert::From<std::borrow::Cow<'static, str>> for TableHeaderChild {
1531        fn from(value: std::borrow::Cow<'static, str>) -> Self {
1532            Self::Text(value)
1533        }
1534    }
1535    impl std::convert::From<&'static str> for TableHeaderChild {
1536        fn from(value: &'static str) -> Self {
1537            Self::Text(value.into())
1538        }
1539    }
1540    impl std::convert::From<String> for TableHeaderChild {
1541        fn from(value: String) -> Self {
1542            Self::Text(value.into())
1543        }
1544    }
1545    impl std::convert::From<crate::generated::all::TextArea> for TableHeaderChild {
1546        fn from(value: crate::generated::all::TextArea) -> Self {
1547            Self::TextArea(value)
1548        }
1549    }
1550    impl std::convert::From<crate::generated::all::ThematicBreak> for TableHeaderChild {
1551        fn from(value: crate::generated::all::ThematicBreak) -> Self {
1552            Self::ThematicBreak(value)
1553        }
1554    }
1555    impl std::convert::From<crate::generated::all::Time> for TableHeaderChild {
1556        fn from(value: crate::generated::all::Time) -> Self {
1557            Self::Time(value)
1558        }
1559    }
1560    impl std::convert::From<crate::generated::all::Underline> for TableHeaderChild {
1561        fn from(value: crate::generated::all::Underline) -> Self {
1562            Self::Underline(value)
1563        }
1564    }
1565    impl std::convert::From<crate::generated::all::UnorderedList> for TableHeaderChild {
1566        fn from(value: crate::generated::all::UnorderedList) -> Self {
1567            Self::UnorderedList(value)
1568        }
1569    }
1570    impl std::convert::From<crate::generated::all::Variable> for TableHeaderChild {
1571        fn from(value: crate::generated::all::Variable) -> Self {
1572            Self::Variable(value)
1573        }
1574    }
1575    impl std::convert::From<crate::generated::all::Video> for TableHeaderChild {
1576        fn from(value: crate::generated::all::Video) -> Self {
1577            Self::Video(value)
1578        }
1579    }
1580    impl crate::Render for TableHeaderChild {
1581        fn render(
1582            &self,
1583            f: &mut std::fmt::Formatter<'_>,
1584            depth: usize,
1585        ) -> std::fmt::Result {
1586            match self {
1587                Self::Abbreviation(el) => crate::Render::render(el, f, depth + 1),
1588                Self::Address(el) => crate::Render::render(el, f, depth + 1),
1589                Self::Anchor(el) => crate::Render::render(el, f, depth + 1),
1590                Self::Article(el) => crate::Render::render(el, f, depth + 1),
1591                Self::Aside(el) => crate::Render::render(el, f, depth + 1),
1592                Self::Audio(el) => crate::Render::render(el, f, depth + 1),
1593                Self::BidirectionalIsolate(el) => crate::Render::render(el, f, depth + 1),
1594                Self::BidirectionalTextOverride(el) => {
1595                    crate::Render::render(el, f, depth + 1)
1596                }
1597                Self::BlockQuote(el) => crate::Render::render(el, f, depth + 1),
1598                Self::Bold(el) => crate::Render::render(el, f, depth + 1),
1599                Self::Button(el) => crate::Render::render(el, f, depth + 1),
1600                Self::Canvas(el) => crate::Render::render(el, f, depth + 1),
1601                Self::Cite(el) => crate::Render::render(el, f, depth + 1),
1602                Self::Code(el) => crate::Render::render(el, f, depth + 1),
1603                Self::Data(el) => crate::Render::render(el, f, depth + 1),
1604                Self::DataList(el) => crate::Render::render(el, f, depth + 1),
1605                Self::Definition(el) => crate::Render::render(el, f, depth + 1),
1606                Self::DeletedText(el) => crate::Render::render(el, f, depth + 1),
1607                Self::DescriptionList(el) => crate::Render::render(el, f, depth + 1),
1608                Self::Details(el) => crate::Render::render(el, f, depth + 1),
1609                Self::Dialog(el) => crate::Render::render(el, f, depth + 1),
1610                Self::Division(el) => crate::Render::render(el, f, depth + 1),
1611                Self::Embed(el) => crate::Render::render(el, f, depth + 1),
1612                Self::Emphasis(el) => crate::Render::render(el, f, depth + 1),
1613                Self::Fieldset(el) => crate::Render::render(el, f, depth + 1),
1614                Self::Figure(el) => crate::Render::render(el, f, depth + 1),
1615                Self::Footer(el) => crate::Render::render(el, f, depth + 1),
1616                Self::Form(el) => crate::Render::render(el, f, depth + 1),
1617                Self::Header(el) => crate::Render::render(el, f, depth + 1),
1618                Self::Heading1(el) => crate::Render::render(el, f, depth + 1),
1619                Self::Heading2(el) => crate::Render::render(el, f, depth + 1),
1620                Self::Heading3(el) => crate::Render::render(el, f, depth + 1),
1621                Self::Heading4(el) => crate::Render::render(el, f, depth + 1),
1622                Self::Heading5(el) => crate::Render::render(el, f, depth + 1),
1623                Self::Heading6(el) => crate::Render::render(el, f, depth + 1),
1624                Self::HeadingGroup(el) => crate::Render::render(el, f, depth + 1),
1625                Self::Iframe(el) => crate::Render::render(el, f, depth + 1),
1626                Self::Image(el) => crate::Render::render(el, f, depth + 1),
1627                Self::ImageMap(el) => crate::Render::render(el, f, depth + 1),
1628                Self::ImageMapArea(el) => crate::Render::render(el, f, depth + 1),
1629                Self::Input(el) => crate::Render::render(el, f, depth + 1),
1630                Self::InsertedText(el) => crate::Render::render(el, f, depth + 1),
1631                Self::Italic(el) => crate::Render::render(el, f, depth + 1),
1632                Self::KeyboardInput(el) => crate::Render::render(el, f, depth + 1),
1633                Self::Label(el) => crate::Render::render(el, f, depth + 1),
1634                Self::LineBreak(el) => crate::Render::render(el, f, depth + 1),
1635                Self::LineBreakOpportunity(el) => crate::Render::render(el, f, depth + 1),
1636                Self::Link(el) => crate::Render::render(el, f, depth + 1),
1637                Self::Main(el) => crate::Render::render(el, f, depth + 1),
1638                Self::MarkText(el) => crate::Render::render(el, f, depth + 1),
1639                Self::Menu(el) => crate::Render::render(el, f, depth + 1),
1640                Self::Meta(el) => crate::Render::render(el, f, depth + 1),
1641                Self::Meter(el) => crate::Render::render(el, f, depth + 1),
1642                Self::Navigation(el) => crate::Render::render(el, f, depth + 1),
1643                Self::NoScript(el) => crate::Render::render(el, f, depth + 1),
1644                Self::Object(el) => crate::Render::render(el, f, depth + 1),
1645                Self::OrderedList(el) => crate::Render::render(el, f, depth + 1),
1646                Self::Output(el) => crate::Render::render(el, f, depth + 1),
1647                Self::Paragraph(el) => crate::Render::render(el, f, depth + 1),
1648                Self::Picture(el) => crate::Render::render(el, f, depth + 1),
1649                Self::PreformattedText(el) => crate::Render::render(el, f, depth + 1),
1650                Self::Progress(el) => crate::Render::render(el, f, depth + 1),
1651                Self::Quotation(el) => crate::Render::render(el, f, depth + 1),
1652                Self::RubyAnnotation(el) => crate::Render::render(el, f, depth + 1),
1653                Self::SampleOutput(el) => crate::Render::render(el, f, depth + 1),
1654                Self::Script(el) => crate::Render::render(el, f, depth + 1),
1655                Self::Search(el) => crate::Render::render(el, f, depth + 1),
1656                Self::Section(el) => crate::Render::render(el, f, depth + 1),
1657                Self::Select(el) => crate::Render::render(el, f, depth + 1),
1658                Self::SideComment(el) => crate::Render::render(el, f, depth + 1),
1659                Self::Slot(el) => crate::Render::render(el, f, depth + 1),
1660                Self::Span(el) => crate::Render::render(el, f, depth + 1),
1661                Self::StrikeThrough(el) => crate::Render::render(el, f, depth + 1),
1662                Self::Strong(el) => crate::Render::render(el, f, depth + 1),
1663                Self::SubScript(el) => crate::Render::render(el, f, depth + 1),
1664                Self::SuperScript(el) => crate::Render::render(el, f, depth + 1),
1665                Self::Table(el) => crate::Render::render(el, f, depth + 1),
1666                Self::Template(el) => crate::Render::render(el, f, depth + 1),
1667                Self::Text(el) => crate::Render::render(el, f, depth + 1),
1668                Self::TextArea(el) => crate::Render::render(el, f, depth + 1),
1669                Self::ThematicBreak(el) => crate::Render::render(el, f, depth + 1),
1670                Self::Time(el) => crate::Render::render(el, f, depth + 1),
1671                Self::Underline(el) => crate::Render::render(el, f, depth + 1),
1672                Self::UnorderedList(el) => crate::Render::render(el, f, depth + 1),
1673                Self::Variable(el) => crate::Render::render(el, f, depth + 1),
1674                Self::Video(el) => crate::Render::render(el, f, depth + 1),
1675            }
1676        }
1677    }
1678    impl std::fmt::Debug for TableHeaderChild {
1679        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1680            crate::Render::render(self, f, 0)?;
1681            Ok(())
1682        }
1683    }
1684    impl std::fmt::Display for TableHeaderChild {
1685        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1686            match self {
1687                Self::Abbreviation(el) => write!(f, "{el}"),
1688                Self::Address(el) => write!(f, "{el}"),
1689                Self::Anchor(el) => write!(f, "{el}"),
1690                Self::Article(el) => write!(f, "{el}"),
1691                Self::Aside(el) => write!(f, "{el}"),
1692                Self::Audio(el) => write!(f, "{el}"),
1693                Self::BidirectionalIsolate(el) => write!(f, "{el}"),
1694                Self::BidirectionalTextOverride(el) => write!(f, "{el}"),
1695                Self::BlockQuote(el) => write!(f, "{el}"),
1696                Self::Bold(el) => write!(f, "{el}"),
1697                Self::Button(el) => write!(f, "{el}"),
1698                Self::Canvas(el) => write!(f, "{el}"),
1699                Self::Cite(el) => write!(f, "{el}"),
1700                Self::Code(el) => write!(f, "{el}"),
1701                Self::Data(el) => write!(f, "{el}"),
1702                Self::DataList(el) => write!(f, "{el}"),
1703                Self::Definition(el) => write!(f, "{el}"),
1704                Self::DeletedText(el) => write!(f, "{el}"),
1705                Self::DescriptionList(el) => write!(f, "{el}"),
1706                Self::Details(el) => write!(f, "{el}"),
1707                Self::Dialog(el) => write!(f, "{el}"),
1708                Self::Division(el) => write!(f, "{el}"),
1709                Self::Embed(el) => write!(f, "{el}"),
1710                Self::Emphasis(el) => write!(f, "{el}"),
1711                Self::Fieldset(el) => write!(f, "{el}"),
1712                Self::Figure(el) => write!(f, "{el}"),
1713                Self::Footer(el) => write!(f, "{el}"),
1714                Self::Form(el) => write!(f, "{el}"),
1715                Self::Header(el) => write!(f, "{el}"),
1716                Self::Heading1(el) => write!(f, "{el}"),
1717                Self::Heading2(el) => write!(f, "{el}"),
1718                Self::Heading3(el) => write!(f, "{el}"),
1719                Self::Heading4(el) => write!(f, "{el}"),
1720                Self::Heading5(el) => write!(f, "{el}"),
1721                Self::Heading6(el) => write!(f, "{el}"),
1722                Self::HeadingGroup(el) => write!(f, "{el}"),
1723                Self::Iframe(el) => write!(f, "{el}"),
1724                Self::Image(el) => write!(f, "{el}"),
1725                Self::ImageMap(el) => write!(f, "{el}"),
1726                Self::ImageMapArea(el) => write!(f, "{el}"),
1727                Self::Input(el) => write!(f, "{el}"),
1728                Self::InsertedText(el) => write!(f, "{el}"),
1729                Self::Italic(el) => write!(f, "{el}"),
1730                Self::KeyboardInput(el) => write!(f, "{el}"),
1731                Self::Label(el) => write!(f, "{el}"),
1732                Self::LineBreak(el) => write!(f, "{el}"),
1733                Self::LineBreakOpportunity(el) => write!(f, "{el}"),
1734                Self::Link(el) => write!(f, "{el}"),
1735                Self::Main(el) => write!(f, "{el}"),
1736                Self::MarkText(el) => write!(f, "{el}"),
1737                Self::Menu(el) => write!(f, "{el}"),
1738                Self::Meta(el) => write!(f, "{el}"),
1739                Self::Meter(el) => write!(f, "{el}"),
1740                Self::Navigation(el) => write!(f, "{el}"),
1741                Self::NoScript(el) => write!(f, "{el}"),
1742                Self::Object(el) => write!(f, "{el}"),
1743                Self::OrderedList(el) => write!(f, "{el}"),
1744                Self::Output(el) => write!(f, "{el}"),
1745                Self::Paragraph(el) => write!(f, "{el}"),
1746                Self::Picture(el) => write!(f, "{el}"),
1747                Self::PreformattedText(el) => write!(f, "{el}"),
1748                Self::Progress(el) => write!(f, "{el}"),
1749                Self::Quotation(el) => write!(f, "{el}"),
1750                Self::RubyAnnotation(el) => write!(f, "{el}"),
1751                Self::SampleOutput(el) => write!(f, "{el}"),
1752                Self::Script(el) => write!(f, "{el}"),
1753                Self::Search(el) => write!(f, "{el}"),
1754                Self::Section(el) => write!(f, "{el}"),
1755                Self::Select(el) => write!(f, "{el}"),
1756                Self::SideComment(el) => write!(f, "{el}"),
1757                Self::Slot(el) => write!(f, "{el}"),
1758                Self::Span(el) => write!(f, "{el}"),
1759                Self::StrikeThrough(el) => write!(f, "{el}"),
1760                Self::Strong(el) => write!(f, "{el}"),
1761                Self::SubScript(el) => write!(f, "{el}"),
1762                Self::SuperScript(el) => write!(f, "{el}"),
1763                Self::Table(el) => write!(f, "{el}"),
1764                Self::Template(el) => write!(f, "{el}"),
1765                Self::Text(el) => write!(f, "{el}"),
1766                Self::TextArea(el) => write!(f, "{el}"),
1767                Self::ThematicBreak(el) => write!(f, "{el}"),
1768                Self::Time(el) => write!(f, "{el}"),
1769                Self::Underline(el) => write!(f, "{el}"),
1770                Self::UnorderedList(el) => write!(f, "{el}"),
1771                Self::Variable(el) => write!(f, "{el}"),
1772                Self::Video(el) => write!(f, "{el}"),
1773            }
1774        }
1775    }
1776}
1777pub mod builder {
1778    /// A builder struct for TableHeader
1779    pub struct TableHeaderBuilder {
1780        element: super::element::TableHeader,
1781    }
1782    impl TableHeaderBuilder {
1783        pub(crate) fn new(element: super::element::TableHeader) -> Self {
1784            Self { element }
1785        }
1786        /// Finish building the element
1787        pub fn build(&mut self) -> super::element::TableHeader {
1788            self.element.clone()
1789        }
1790        /// Insert a `data-*` property
1791        pub fn data(
1792            &mut self,
1793            data_key: impl Into<std::borrow::Cow<'static, str>>,
1794            value: impl Into<std::borrow::Cow<'static, str>>,
1795        ) -> &mut TableHeaderBuilder {
1796            self.element.data_map_mut().insert(data_key.into(), value.into());
1797            self
1798        }
1799        /// Append a new `Abbreviation` element
1800        pub fn abbreviation<F>(&mut self, f: F) -> &mut Self
1801        where
1802            F: for<'a> FnOnce(
1803                &'a mut crate::generated::all::builders::AbbreviationBuilder,
1804            ) -> &'a mut crate::generated::all::builders::AbbreviationBuilder,
1805        {
1806            let ty: crate::generated::all::Abbreviation = Default::default();
1807            let mut ty_builder = crate::generated::all::builders::AbbreviationBuilder::new(
1808                ty,
1809            );
1810            (f)(&mut ty_builder);
1811            let ty = ty_builder.build();
1812            self.element.children_mut().push(ty.into());
1813            self
1814        }
1815        /// Append a new `Address` element
1816        pub fn address<F>(&mut self, f: F) -> &mut Self
1817        where
1818            F: for<'a> FnOnce(
1819                &'a mut crate::generated::all::builders::AddressBuilder,
1820            ) -> &'a mut crate::generated::all::builders::AddressBuilder,
1821        {
1822            let ty: crate::generated::all::Address = Default::default();
1823            let mut ty_builder = crate::generated::all::builders::AddressBuilder::new(
1824                ty,
1825            );
1826            (f)(&mut ty_builder);
1827            let ty = ty_builder.build();
1828            self.element.children_mut().push(ty.into());
1829            self
1830        }
1831        /// Append a new `Anchor` element
1832        pub fn anchor<F>(&mut self, f: F) -> &mut Self
1833        where
1834            F: for<'a> FnOnce(
1835                &'a mut crate::generated::all::builders::AnchorBuilder,
1836            ) -> &'a mut crate::generated::all::builders::AnchorBuilder,
1837        {
1838            let ty: crate::generated::all::Anchor = Default::default();
1839            let mut ty_builder = crate::generated::all::builders::AnchorBuilder::new(ty);
1840            (f)(&mut ty_builder);
1841            let ty = ty_builder.build();
1842            self.element.children_mut().push(ty.into());
1843            self
1844        }
1845        /// Append a new `Article` element
1846        pub fn article<F>(&mut self, f: F) -> &mut Self
1847        where
1848            F: for<'a> FnOnce(
1849                &'a mut crate::generated::all::builders::ArticleBuilder,
1850            ) -> &'a mut crate::generated::all::builders::ArticleBuilder,
1851        {
1852            let ty: crate::generated::all::Article = Default::default();
1853            let mut ty_builder = crate::generated::all::builders::ArticleBuilder::new(
1854                ty,
1855            );
1856            (f)(&mut ty_builder);
1857            let ty = ty_builder.build();
1858            self.element.children_mut().push(ty.into());
1859            self
1860        }
1861        /// Append a new `Aside` element
1862        pub fn aside<F>(&mut self, f: F) -> &mut Self
1863        where
1864            F: for<'a> FnOnce(
1865                &'a mut crate::generated::all::builders::AsideBuilder,
1866            ) -> &'a mut crate::generated::all::builders::AsideBuilder,
1867        {
1868            let ty: crate::generated::all::Aside = Default::default();
1869            let mut ty_builder = crate::generated::all::builders::AsideBuilder::new(ty);
1870            (f)(&mut ty_builder);
1871            let ty = ty_builder.build();
1872            self.element.children_mut().push(ty.into());
1873            self
1874        }
1875        /// Append a new `Audio` element
1876        pub fn audio<F>(&mut self, f: F) -> &mut Self
1877        where
1878            F: for<'a> FnOnce(
1879                &'a mut crate::generated::all::builders::AudioBuilder,
1880            ) -> &'a mut crate::generated::all::builders::AudioBuilder,
1881        {
1882            let ty: crate::generated::all::Audio = Default::default();
1883            let mut ty_builder = crate::generated::all::builders::AudioBuilder::new(ty);
1884            (f)(&mut ty_builder);
1885            let ty = ty_builder.build();
1886            self.element.children_mut().push(ty.into());
1887            self
1888        }
1889        /// Append a new `BidirectionalIsolate` element
1890        pub fn bidirectional_isolate<F>(&mut self, f: F) -> &mut Self
1891        where
1892            F: for<'a> FnOnce(
1893                &'a mut crate::generated::all::builders::BidirectionalIsolateBuilder,
1894            ) -> &'a mut crate::generated::all::builders::BidirectionalIsolateBuilder,
1895        {
1896            let ty: crate::generated::all::BidirectionalIsolate = Default::default();
1897            let mut ty_builder = crate::generated::all::builders::BidirectionalIsolateBuilder::new(
1898                ty,
1899            );
1900            (f)(&mut ty_builder);
1901            let ty = ty_builder.build();
1902            self.element.children_mut().push(ty.into());
1903            self
1904        }
1905        /// Append a new `BidirectionalTextOverride` element
1906        pub fn bidirectional_text_override<F>(&mut self, f: F) -> &mut Self
1907        where
1908            F: for<'a> FnOnce(
1909                &'a mut crate::generated::all::builders::BidirectionalTextOverrideBuilder,
1910            ) -> &'a mut crate::generated::all::builders::BidirectionalTextOverrideBuilder,
1911        {
1912            let ty: crate::generated::all::BidirectionalTextOverride = Default::default();
1913            let mut ty_builder = crate::generated::all::builders::BidirectionalTextOverrideBuilder::new(
1914                ty,
1915            );
1916            (f)(&mut ty_builder);
1917            let ty = ty_builder.build();
1918            self.element.children_mut().push(ty.into());
1919            self
1920        }
1921        /// Append a new `BlockQuote` element
1922        pub fn block_quote<F>(&mut self, f: F) -> &mut Self
1923        where
1924            F: for<'a> FnOnce(
1925                &'a mut crate::generated::all::builders::BlockQuoteBuilder,
1926            ) -> &'a mut crate::generated::all::builders::BlockQuoteBuilder,
1927        {
1928            let ty: crate::generated::all::BlockQuote = Default::default();
1929            let mut ty_builder = crate::generated::all::builders::BlockQuoteBuilder::new(
1930                ty,
1931            );
1932            (f)(&mut ty_builder);
1933            let ty = ty_builder.build();
1934            self.element.children_mut().push(ty.into());
1935            self
1936        }
1937        /// Append a new `Bold` element
1938        pub fn bold<F>(&mut self, f: F) -> &mut Self
1939        where
1940            F: for<'a> FnOnce(
1941                &'a mut crate::generated::all::builders::BoldBuilder,
1942            ) -> &'a mut crate::generated::all::builders::BoldBuilder,
1943        {
1944            let ty: crate::generated::all::Bold = Default::default();
1945            let mut ty_builder = crate::generated::all::builders::BoldBuilder::new(ty);
1946            (f)(&mut ty_builder);
1947            let ty = ty_builder.build();
1948            self.element.children_mut().push(ty.into());
1949            self
1950        }
1951        /// Append a new `Button` element
1952        pub fn button<F>(&mut self, f: F) -> &mut Self
1953        where
1954            F: for<'a> FnOnce(
1955                &'a mut crate::generated::all::builders::ButtonBuilder,
1956            ) -> &'a mut crate::generated::all::builders::ButtonBuilder,
1957        {
1958            let ty: crate::generated::all::Button = Default::default();
1959            let mut ty_builder = crate::generated::all::builders::ButtonBuilder::new(ty);
1960            (f)(&mut ty_builder);
1961            let ty = ty_builder.build();
1962            self.element.children_mut().push(ty.into());
1963            self
1964        }
1965        /// Append a new `Canvas` element
1966        pub fn canvas<F>(&mut self, f: F) -> &mut Self
1967        where
1968            F: for<'a> FnOnce(
1969                &'a mut crate::generated::all::builders::CanvasBuilder,
1970            ) -> &'a mut crate::generated::all::builders::CanvasBuilder,
1971        {
1972            let ty: crate::generated::all::Canvas = Default::default();
1973            let mut ty_builder = crate::generated::all::builders::CanvasBuilder::new(ty);
1974            (f)(&mut ty_builder);
1975            let ty = ty_builder.build();
1976            self.element.children_mut().push(ty.into());
1977            self
1978        }
1979        /// Append a new `Cite` element
1980        pub fn cite<F>(&mut self, f: F) -> &mut Self
1981        where
1982            F: for<'a> FnOnce(
1983                &'a mut crate::generated::all::builders::CiteBuilder,
1984            ) -> &'a mut crate::generated::all::builders::CiteBuilder,
1985        {
1986            let ty: crate::generated::all::Cite = Default::default();
1987            let mut ty_builder = crate::generated::all::builders::CiteBuilder::new(ty);
1988            (f)(&mut ty_builder);
1989            let ty = ty_builder.build();
1990            self.element.children_mut().push(ty.into());
1991            self
1992        }
1993        /// Append a new `Code` element
1994        pub fn code<F>(&mut self, f: F) -> &mut Self
1995        where
1996            F: for<'a> FnOnce(
1997                &'a mut crate::generated::all::builders::CodeBuilder,
1998            ) -> &'a mut crate::generated::all::builders::CodeBuilder,
1999        {
2000            let ty: crate::generated::all::Code = Default::default();
2001            let mut ty_builder = crate::generated::all::builders::CodeBuilder::new(ty);
2002            (f)(&mut ty_builder);
2003            let ty = ty_builder.build();
2004            self.element.children_mut().push(ty.into());
2005            self
2006        }
2007        /// Append a new `Data` element
2008        pub fn data_el<F>(&mut self, f: F) -> &mut Self
2009        where
2010            F: for<'a> FnOnce(
2011                &'a mut crate::generated::all::builders::DataBuilder,
2012            ) -> &'a mut crate::generated::all::builders::DataBuilder,
2013        {
2014            let ty: crate::generated::all::Data = Default::default();
2015            let mut ty_builder = crate::generated::all::builders::DataBuilder::new(ty);
2016            (f)(&mut ty_builder);
2017            let ty = ty_builder.build();
2018            self.element.children_mut().push(ty.into());
2019            self
2020        }
2021        /// Append a new `DataList` element
2022        pub fn data_list<F>(&mut self, f: F) -> &mut Self
2023        where
2024            F: for<'a> FnOnce(
2025                &'a mut crate::generated::all::builders::DataListBuilder,
2026            ) -> &'a mut crate::generated::all::builders::DataListBuilder,
2027        {
2028            let ty: crate::generated::all::DataList = Default::default();
2029            let mut ty_builder = crate::generated::all::builders::DataListBuilder::new(
2030                ty,
2031            );
2032            (f)(&mut ty_builder);
2033            let ty = ty_builder.build();
2034            self.element.children_mut().push(ty.into());
2035            self
2036        }
2037        /// Append a new `Definition` element
2038        pub fn definition<F>(&mut self, f: F) -> &mut Self
2039        where
2040            F: for<'a> FnOnce(
2041                &'a mut crate::generated::all::builders::DefinitionBuilder,
2042            ) -> &'a mut crate::generated::all::builders::DefinitionBuilder,
2043        {
2044            let ty: crate::generated::all::Definition = Default::default();
2045            let mut ty_builder = crate::generated::all::builders::DefinitionBuilder::new(
2046                ty,
2047            );
2048            (f)(&mut ty_builder);
2049            let ty = ty_builder.build();
2050            self.element.children_mut().push(ty.into());
2051            self
2052        }
2053        /// Append a new `DeletedText` element
2054        pub fn deleted_text<F>(&mut self, f: F) -> &mut Self
2055        where
2056            F: for<'a> FnOnce(
2057                &'a mut crate::generated::all::builders::DeletedTextBuilder,
2058            ) -> &'a mut crate::generated::all::builders::DeletedTextBuilder,
2059        {
2060            let ty: crate::generated::all::DeletedText = Default::default();
2061            let mut ty_builder = crate::generated::all::builders::DeletedTextBuilder::new(
2062                ty,
2063            );
2064            (f)(&mut ty_builder);
2065            let ty = ty_builder.build();
2066            self.element.children_mut().push(ty.into());
2067            self
2068        }
2069        /// Append a new `DescriptionList` element
2070        pub fn description_list<F>(&mut self, f: F) -> &mut Self
2071        where
2072            F: for<'a> FnOnce(
2073                &'a mut crate::generated::all::builders::DescriptionListBuilder,
2074            ) -> &'a mut crate::generated::all::builders::DescriptionListBuilder,
2075        {
2076            let ty: crate::generated::all::DescriptionList = Default::default();
2077            let mut ty_builder = crate::generated::all::builders::DescriptionListBuilder::new(
2078                ty,
2079            );
2080            (f)(&mut ty_builder);
2081            let ty = ty_builder.build();
2082            self.element.children_mut().push(ty.into());
2083            self
2084        }
2085        /// Append a new `Details` element
2086        pub fn details<F>(&mut self, f: F) -> &mut Self
2087        where
2088            F: for<'a> FnOnce(
2089                &'a mut crate::generated::all::builders::DetailsBuilder,
2090            ) -> &'a mut crate::generated::all::builders::DetailsBuilder,
2091        {
2092            let ty: crate::generated::all::Details = Default::default();
2093            let mut ty_builder = crate::generated::all::builders::DetailsBuilder::new(
2094                ty,
2095            );
2096            (f)(&mut ty_builder);
2097            let ty = ty_builder.build();
2098            self.element.children_mut().push(ty.into());
2099            self
2100        }
2101        /// Append a new `Dialog` element
2102        pub fn dialog<F>(&mut self, f: F) -> &mut Self
2103        where
2104            F: for<'a> FnOnce(
2105                &'a mut crate::generated::all::builders::DialogBuilder,
2106            ) -> &'a mut crate::generated::all::builders::DialogBuilder,
2107        {
2108            let ty: crate::generated::all::Dialog = Default::default();
2109            let mut ty_builder = crate::generated::all::builders::DialogBuilder::new(ty);
2110            (f)(&mut ty_builder);
2111            let ty = ty_builder.build();
2112            self.element.children_mut().push(ty.into());
2113            self
2114        }
2115        /// Append a new `Division` element
2116        pub fn division<F>(&mut self, f: F) -> &mut Self
2117        where
2118            F: for<'a> FnOnce(
2119                &'a mut crate::generated::all::builders::DivisionBuilder,
2120            ) -> &'a mut crate::generated::all::builders::DivisionBuilder,
2121        {
2122            let ty: crate::generated::all::Division = Default::default();
2123            let mut ty_builder = crate::generated::all::builders::DivisionBuilder::new(
2124                ty,
2125            );
2126            (f)(&mut ty_builder);
2127            let ty = ty_builder.build();
2128            self.element.children_mut().push(ty.into());
2129            self
2130        }
2131        /// Append a new `Embed` element
2132        pub fn embed<F>(&mut self, f: F) -> &mut Self
2133        where
2134            F: for<'a> FnOnce(
2135                &'a mut crate::generated::all::builders::EmbedBuilder,
2136            ) -> &'a mut crate::generated::all::builders::EmbedBuilder,
2137        {
2138            let ty: crate::generated::all::Embed = Default::default();
2139            let mut ty_builder = crate::generated::all::builders::EmbedBuilder::new(ty);
2140            (f)(&mut ty_builder);
2141            let ty = ty_builder.build();
2142            self.element.children_mut().push(ty.into());
2143            self
2144        }
2145        /// Append a new `Emphasis` element
2146        pub fn emphasis<F>(&mut self, f: F) -> &mut Self
2147        where
2148            F: for<'a> FnOnce(
2149                &'a mut crate::generated::all::builders::EmphasisBuilder,
2150            ) -> &'a mut crate::generated::all::builders::EmphasisBuilder,
2151        {
2152            let ty: crate::generated::all::Emphasis = Default::default();
2153            let mut ty_builder = crate::generated::all::builders::EmphasisBuilder::new(
2154                ty,
2155            );
2156            (f)(&mut ty_builder);
2157            let ty = ty_builder.build();
2158            self.element.children_mut().push(ty.into());
2159            self
2160        }
2161        /// Append a new `Fieldset` element
2162        pub fn fieldset<F>(&mut self, f: F) -> &mut Self
2163        where
2164            F: for<'a> FnOnce(
2165                &'a mut crate::generated::all::builders::FieldsetBuilder,
2166            ) -> &'a mut crate::generated::all::builders::FieldsetBuilder,
2167        {
2168            let ty: crate::generated::all::Fieldset = Default::default();
2169            let mut ty_builder = crate::generated::all::builders::FieldsetBuilder::new(
2170                ty,
2171            );
2172            (f)(&mut ty_builder);
2173            let ty = ty_builder.build();
2174            self.element.children_mut().push(ty.into());
2175            self
2176        }
2177        /// Append a new `Figure` element
2178        pub fn figure<F>(&mut self, f: F) -> &mut Self
2179        where
2180            F: for<'a> FnOnce(
2181                &'a mut crate::generated::all::builders::FigureBuilder,
2182            ) -> &'a mut crate::generated::all::builders::FigureBuilder,
2183        {
2184            let ty: crate::generated::all::Figure = Default::default();
2185            let mut ty_builder = crate::generated::all::builders::FigureBuilder::new(ty);
2186            (f)(&mut ty_builder);
2187            let ty = ty_builder.build();
2188            self.element.children_mut().push(ty.into());
2189            self
2190        }
2191        /// Append a new `Footer` element
2192        pub fn footer<F>(&mut self, f: F) -> &mut Self
2193        where
2194            F: for<'a> FnOnce(
2195                &'a mut crate::generated::all::builders::FooterBuilder,
2196            ) -> &'a mut crate::generated::all::builders::FooterBuilder,
2197        {
2198            let ty: crate::generated::all::Footer = Default::default();
2199            let mut ty_builder = crate::generated::all::builders::FooterBuilder::new(ty);
2200            (f)(&mut ty_builder);
2201            let ty = ty_builder.build();
2202            self.element.children_mut().push(ty.into());
2203            self
2204        }
2205        /// Append a new `Form` element
2206        pub fn form<F>(&mut self, f: F) -> &mut Self
2207        where
2208            F: for<'a> FnOnce(
2209                &'a mut crate::generated::all::builders::FormBuilder,
2210            ) -> &'a mut crate::generated::all::builders::FormBuilder,
2211        {
2212            let ty: crate::generated::all::Form = Default::default();
2213            let mut ty_builder = crate::generated::all::builders::FormBuilder::new(ty);
2214            (f)(&mut ty_builder);
2215            let ty = ty_builder.build();
2216            self.element.children_mut().push(ty.into());
2217            self
2218        }
2219        /// Append a new `Header` element
2220        pub fn header<F>(&mut self, f: F) -> &mut Self
2221        where
2222            F: for<'a> FnOnce(
2223                &'a mut crate::generated::all::builders::HeaderBuilder,
2224            ) -> &'a mut crate::generated::all::builders::HeaderBuilder,
2225        {
2226            let ty: crate::generated::all::Header = Default::default();
2227            let mut ty_builder = crate::generated::all::builders::HeaderBuilder::new(ty);
2228            (f)(&mut ty_builder);
2229            let ty = ty_builder.build();
2230            self.element.children_mut().push(ty.into());
2231            self
2232        }
2233        /// Append a new `Heading1` element
2234        pub fn heading_1<F>(&mut self, f: F) -> &mut Self
2235        where
2236            F: for<'a> FnOnce(
2237                &'a mut crate::generated::all::builders::Heading1Builder,
2238            ) -> &'a mut crate::generated::all::builders::Heading1Builder,
2239        {
2240            let ty: crate::generated::all::Heading1 = Default::default();
2241            let mut ty_builder = crate::generated::all::builders::Heading1Builder::new(
2242                ty,
2243            );
2244            (f)(&mut ty_builder);
2245            let ty = ty_builder.build();
2246            self.element.children_mut().push(ty.into());
2247            self
2248        }
2249        /// Append a new `Heading2` element
2250        pub fn heading_2<F>(&mut self, f: F) -> &mut Self
2251        where
2252            F: for<'a> FnOnce(
2253                &'a mut crate::generated::all::builders::Heading2Builder,
2254            ) -> &'a mut crate::generated::all::builders::Heading2Builder,
2255        {
2256            let ty: crate::generated::all::Heading2 = Default::default();
2257            let mut ty_builder = crate::generated::all::builders::Heading2Builder::new(
2258                ty,
2259            );
2260            (f)(&mut ty_builder);
2261            let ty = ty_builder.build();
2262            self.element.children_mut().push(ty.into());
2263            self
2264        }
2265        /// Append a new `Heading3` element
2266        pub fn heading_3<F>(&mut self, f: F) -> &mut Self
2267        where
2268            F: for<'a> FnOnce(
2269                &'a mut crate::generated::all::builders::Heading3Builder,
2270            ) -> &'a mut crate::generated::all::builders::Heading3Builder,
2271        {
2272            let ty: crate::generated::all::Heading3 = Default::default();
2273            let mut ty_builder = crate::generated::all::builders::Heading3Builder::new(
2274                ty,
2275            );
2276            (f)(&mut ty_builder);
2277            let ty = ty_builder.build();
2278            self.element.children_mut().push(ty.into());
2279            self
2280        }
2281        /// Append a new `Heading4` element
2282        pub fn heading_4<F>(&mut self, f: F) -> &mut Self
2283        where
2284            F: for<'a> FnOnce(
2285                &'a mut crate::generated::all::builders::Heading4Builder,
2286            ) -> &'a mut crate::generated::all::builders::Heading4Builder,
2287        {
2288            let ty: crate::generated::all::Heading4 = Default::default();
2289            let mut ty_builder = crate::generated::all::builders::Heading4Builder::new(
2290                ty,
2291            );
2292            (f)(&mut ty_builder);
2293            let ty = ty_builder.build();
2294            self.element.children_mut().push(ty.into());
2295            self
2296        }
2297        /// Append a new `Heading5` element
2298        pub fn heading_5<F>(&mut self, f: F) -> &mut Self
2299        where
2300            F: for<'a> FnOnce(
2301                &'a mut crate::generated::all::builders::Heading5Builder,
2302            ) -> &'a mut crate::generated::all::builders::Heading5Builder,
2303        {
2304            let ty: crate::generated::all::Heading5 = Default::default();
2305            let mut ty_builder = crate::generated::all::builders::Heading5Builder::new(
2306                ty,
2307            );
2308            (f)(&mut ty_builder);
2309            let ty = ty_builder.build();
2310            self.element.children_mut().push(ty.into());
2311            self
2312        }
2313        /// Append a new `Heading6` element
2314        pub fn heading_6<F>(&mut self, f: F) -> &mut Self
2315        where
2316            F: for<'a> FnOnce(
2317                &'a mut crate::generated::all::builders::Heading6Builder,
2318            ) -> &'a mut crate::generated::all::builders::Heading6Builder,
2319        {
2320            let ty: crate::generated::all::Heading6 = Default::default();
2321            let mut ty_builder = crate::generated::all::builders::Heading6Builder::new(
2322                ty,
2323            );
2324            (f)(&mut ty_builder);
2325            let ty = ty_builder.build();
2326            self.element.children_mut().push(ty.into());
2327            self
2328        }
2329        /// Append a new `HeadingGroup` element
2330        pub fn heading_group<F>(&mut self, f: F) -> &mut Self
2331        where
2332            F: for<'a> FnOnce(
2333                &'a mut crate::generated::all::builders::HeadingGroupBuilder,
2334            ) -> &'a mut crate::generated::all::builders::HeadingGroupBuilder,
2335        {
2336            let ty: crate::generated::all::HeadingGroup = Default::default();
2337            let mut ty_builder = crate::generated::all::builders::HeadingGroupBuilder::new(
2338                ty,
2339            );
2340            (f)(&mut ty_builder);
2341            let ty = ty_builder.build();
2342            self.element.children_mut().push(ty.into());
2343            self
2344        }
2345        /// Append a new `Iframe` element
2346        pub fn iframe<F>(&mut self, f: F) -> &mut Self
2347        where
2348            F: for<'a> FnOnce(
2349                &'a mut crate::generated::all::builders::IframeBuilder,
2350            ) -> &'a mut crate::generated::all::builders::IframeBuilder,
2351        {
2352            let ty: crate::generated::all::Iframe = Default::default();
2353            let mut ty_builder = crate::generated::all::builders::IframeBuilder::new(ty);
2354            (f)(&mut ty_builder);
2355            let ty = ty_builder.build();
2356            self.element.children_mut().push(ty.into());
2357            self
2358        }
2359        /// Append a new `Image` element
2360        pub fn image<F>(&mut self, f: F) -> &mut Self
2361        where
2362            F: for<'a> FnOnce(
2363                &'a mut crate::generated::all::builders::ImageBuilder,
2364            ) -> &'a mut crate::generated::all::builders::ImageBuilder,
2365        {
2366            let ty: crate::generated::all::Image = Default::default();
2367            let mut ty_builder = crate::generated::all::builders::ImageBuilder::new(ty);
2368            (f)(&mut ty_builder);
2369            let ty = ty_builder.build();
2370            self.element.children_mut().push(ty.into());
2371            self
2372        }
2373        /// Append a new `ImageMap` element
2374        pub fn image_map<F>(&mut self, f: F) -> &mut Self
2375        where
2376            F: for<'a> FnOnce(
2377                &'a mut crate::generated::all::builders::ImageMapBuilder,
2378            ) -> &'a mut crate::generated::all::builders::ImageMapBuilder,
2379        {
2380            let ty: crate::generated::all::ImageMap = Default::default();
2381            let mut ty_builder = crate::generated::all::builders::ImageMapBuilder::new(
2382                ty,
2383            );
2384            (f)(&mut ty_builder);
2385            let ty = ty_builder.build();
2386            self.element.children_mut().push(ty.into());
2387            self
2388        }
2389        /// Append a new `ImageMapArea` element
2390        pub fn image_map_area<F>(&mut self, f: F) -> &mut Self
2391        where
2392            F: for<'a> FnOnce(
2393                &'a mut crate::generated::all::builders::ImageMapAreaBuilder,
2394            ) -> &'a mut crate::generated::all::builders::ImageMapAreaBuilder,
2395        {
2396            let ty: crate::generated::all::ImageMapArea = Default::default();
2397            let mut ty_builder = crate::generated::all::builders::ImageMapAreaBuilder::new(
2398                ty,
2399            );
2400            (f)(&mut ty_builder);
2401            let ty = ty_builder.build();
2402            self.element.children_mut().push(ty.into());
2403            self
2404        }
2405        /// Append a new `Input` element
2406        pub fn input<F>(&mut self, f: F) -> &mut Self
2407        where
2408            F: for<'a> FnOnce(
2409                &'a mut crate::generated::all::builders::InputBuilder,
2410            ) -> &'a mut crate::generated::all::builders::InputBuilder,
2411        {
2412            let ty: crate::generated::all::Input = Default::default();
2413            let mut ty_builder = crate::generated::all::builders::InputBuilder::new(ty);
2414            (f)(&mut ty_builder);
2415            let ty = ty_builder.build();
2416            self.element.children_mut().push(ty.into());
2417            self
2418        }
2419        /// Append a new `InsertedText` element
2420        pub fn inserted_text<F>(&mut self, f: F) -> &mut Self
2421        where
2422            F: for<'a> FnOnce(
2423                &'a mut crate::generated::all::builders::InsertedTextBuilder,
2424            ) -> &'a mut crate::generated::all::builders::InsertedTextBuilder,
2425        {
2426            let ty: crate::generated::all::InsertedText = Default::default();
2427            let mut ty_builder = crate::generated::all::builders::InsertedTextBuilder::new(
2428                ty,
2429            );
2430            (f)(&mut ty_builder);
2431            let ty = ty_builder.build();
2432            self.element.children_mut().push(ty.into());
2433            self
2434        }
2435        /// Append a new `Italic` element
2436        pub fn italic<F>(&mut self, f: F) -> &mut Self
2437        where
2438            F: for<'a> FnOnce(
2439                &'a mut crate::generated::all::builders::ItalicBuilder,
2440            ) -> &'a mut crate::generated::all::builders::ItalicBuilder,
2441        {
2442            let ty: crate::generated::all::Italic = Default::default();
2443            let mut ty_builder = crate::generated::all::builders::ItalicBuilder::new(ty);
2444            (f)(&mut ty_builder);
2445            let ty = ty_builder.build();
2446            self.element.children_mut().push(ty.into());
2447            self
2448        }
2449        /// Append a new `KeyboardInput` element
2450        pub fn keyboard_input<F>(&mut self, f: F) -> &mut Self
2451        where
2452            F: for<'a> FnOnce(
2453                &'a mut crate::generated::all::builders::KeyboardInputBuilder,
2454            ) -> &'a mut crate::generated::all::builders::KeyboardInputBuilder,
2455        {
2456            let ty: crate::generated::all::KeyboardInput = Default::default();
2457            let mut ty_builder = crate::generated::all::builders::KeyboardInputBuilder::new(
2458                ty,
2459            );
2460            (f)(&mut ty_builder);
2461            let ty = ty_builder.build();
2462            self.element.children_mut().push(ty.into());
2463            self
2464        }
2465        /// Append a new `Label` element
2466        pub fn label<F>(&mut self, f: F) -> &mut Self
2467        where
2468            F: for<'a> FnOnce(
2469                &'a mut crate::generated::all::builders::LabelBuilder,
2470            ) -> &'a mut crate::generated::all::builders::LabelBuilder,
2471        {
2472            let ty: crate::generated::all::Label = Default::default();
2473            let mut ty_builder = crate::generated::all::builders::LabelBuilder::new(ty);
2474            (f)(&mut ty_builder);
2475            let ty = ty_builder.build();
2476            self.element.children_mut().push(ty.into());
2477            self
2478        }
2479        /// Append a new `LineBreak` element
2480        pub fn line_break<F>(&mut self, f: F) -> &mut Self
2481        where
2482            F: for<'a> FnOnce(
2483                &'a mut crate::generated::all::builders::LineBreakBuilder,
2484            ) -> &'a mut crate::generated::all::builders::LineBreakBuilder,
2485        {
2486            let ty: crate::generated::all::LineBreak = Default::default();
2487            let mut ty_builder = crate::generated::all::builders::LineBreakBuilder::new(
2488                ty,
2489            );
2490            (f)(&mut ty_builder);
2491            let ty = ty_builder.build();
2492            self.element.children_mut().push(ty.into());
2493            self
2494        }
2495        /// Append a new `LineBreakOpportunity` element
2496        pub fn line_break_opportunity<F>(&mut self, f: F) -> &mut Self
2497        where
2498            F: for<'a> FnOnce(
2499                &'a mut crate::generated::all::builders::LineBreakOpportunityBuilder,
2500            ) -> &'a mut crate::generated::all::builders::LineBreakOpportunityBuilder,
2501        {
2502            let ty: crate::generated::all::LineBreakOpportunity = Default::default();
2503            let mut ty_builder = crate::generated::all::builders::LineBreakOpportunityBuilder::new(
2504                ty,
2505            );
2506            (f)(&mut ty_builder);
2507            let ty = ty_builder.build();
2508            self.element.children_mut().push(ty.into());
2509            self
2510        }
2511        /// Append a new `Link` element
2512        pub fn link<F>(&mut self, f: F) -> &mut Self
2513        where
2514            F: for<'a> FnOnce(
2515                &'a mut crate::generated::all::builders::LinkBuilder,
2516            ) -> &'a mut crate::generated::all::builders::LinkBuilder,
2517        {
2518            let ty: crate::generated::all::Link = Default::default();
2519            let mut ty_builder = crate::generated::all::builders::LinkBuilder::new(ty);
2520            (f)(&mut ty_builder);
2521            let ty = ty_builder.build();
2522            self.element.children_mut().push(ty.into());
2523            self
2524        }
2525        /// Append a new `Main` element
2526        pub fn main<F>(&mut self, f: F) -> &mut Self
2527        where
2528            F: for<'a> FnOnce(
2529                &'a mut crate::generated::all::builders::MainBuilder,
2530            ) -> &'a mut crate::generated::all::builders::MainBuilder,
2531        {
2532            let ty: crate::generated::all::Main = Default::default();
2533            let mut ty_builder = crate::generated::all::builders::MainBuilder::new(ty);
2534            (f)(&mut ty_builder);
2535            let ty = ty_builder.build();
2536            self.element.children_mut().push(ty.into());
2537            self
2538        }
2539        /// Append a new `MarkText` element
2540        pub fn mark_text<F>(&mut self, f: F) -> &mut Self
2541        where
2542            F: for<'a> FnOnce(
2543                &'a mut crate::generated::all::builders::MarkTextBuilder,
2544            ) -> &'a mut crate::generated::all::builders::MarkTextBuilder,
2545        {
2546            let ty: crate::generated::all::MarkText = Default::default();
2547            let mut ty_builder = crate::generated::all::builders::MarkTextBuilder::new(
2548                ty,
2549            );
2550            (f)(&mut ty_builder);
2551            let ty = ty_builder.build();
2552            self.element.children_mut().push(ty.into());
2553            self
2554        }
2555        /// Append a new `Menu` element
2556        pub fn menu<F>(&mut self, f: F) -> &mut Self
2557        where
2558            F: for<'a> FnOnce(
2559                &'a mut crate::generated::all::builders::MenuBuilder,
2560            ) -> &'a mut crate::generated::all::builders::MenuBuilder,
2561        {
2562            let ty: crate::generated::all::Menu = Default::default();
2563            let mut ty_builder = crate::generated::all::builders::MenuBuilder::new(ty);
2564            (f)(&mut ty_builder);
2565            let ty = ty_builder.build();
2566            self.element.children_mut().push(ty.into());
2567            self
2568        }
2569        /// Append a new `Meta` element
2570        pub fn meta<F>(&mut self, f: F) -> &mut Self
2571        where
2572            F: for<'a> FnOnce(
2573                &'a mut crate::generated::all::builders::MetaBuilder,
2574            ) -> &'a mut crate::generated::all::builders::MetaBuilder,
2575        {
2576            let ty: crate::generated::all::Meta = Default::default();
2577            let mut ty_builder = crate::generated::all::builders::MetaBuilder::new(ty);
2578            (f)(&mut ty_builder);
2579            let ty = ty_builder.build();
2580            self.element.children_mut().push(ty.into());
2581            self
2582        }
2583        /// Append a new `Meter` element
2584        pub fn meter<F>(&mut self, f: F) -> &mut Self
2585        where
2586            F: for<'a> FnOnce(
2587                &'a mut crate::generated::all::builders::MeterBuilder,
2588            ) -> &'a mut crate::generated::all::builders::MeterBuilder,
2589        {
2590            let ty: crate::generated::all::Meter = Default::default();
2591            let mut ty_builder = crate::generated::all::builders::MeterBuilder::new(ty);
2592            (f)(&mut ty_builder);
2593            let ty = ty_builder.build();
2594            self.element.children_mut().push(ty.into());
2595            self
2596        }
2597        /// Append a new `Navigation` element
2598        pub fn navigation<F>(&mut self, f: F) -> &mut Self
2599        where
2600            F: for<'a> FnOnce(
2601                &'a mut crate::generated::all::builders::NavigationBuilder,
2602            ) -> &'a mut crate::generated::all::builders::NavigationBuilder,
2603        {
2604            let ty: crate::generated::all::Navigation = Default::default();
2605            let mut ty_builder = crate::generated::all::builders::NavigationBuilder::new(
2606                ty,
2607            );
2608            (f)(&mut ty_builder);
2609            let ty = ty_builder.build();
2610            self.element.children_mut().push(ty.into());
2611            self
2612        }
2613        /// Append a new `NoScript` element
2614        pub fn no_script<F>(&mut self, f: F) -> &mut Self
2615        where
2616            F: for<'a> FnOnce(
2617                &'a mut crate::generated::all::builders::NoScriptBuilder,
2618            ) -> &'a mut crate::generated::all::builders::NoScriptBuilder,
2619        {
2620            let ty: crate::generated::all::NoScript = Default::default();
2621            let mut ty_builder = crate::generated::all::builders::NoScriptBuilder::new(
2622                ty,
2623            );
2624            (f)(&mut ty_builder);
2625            let ty = ty_builder.build();
2626            self.element.children_mut().push(ty.into());
2627            self
2628        }
2629        /// Append a new `Object` element
2630        pub fn object<F>(&mut self, f: F) -> &mut Self
2631        where
2632            F: for<'a> FnOnce(
2633                &'a mut crate::generated::all::builders::ObjectBuilder,
2634            ) -> &'a mut crate::generated::all::builders::ObjectBuilder,
2635        {
2636            let ty: crate::generated::all::Object = Default::default();
2637            let mut ty_builder = crate::generated::all::builders::ObjectBuilder::new(ty);
2638            (f)(&mut ty_builder);
2639            let ty = ty_builder.build();
2640            self.element.children_mut().push(ty.into());
2641            self
2642        }
2643        /// Append a new `OrderedList` element
2644        pub fn ordered_list<F>(&mut self, f: F) -> &mut Self
2645        where
2646            F: for<'a> FnOnce(
2647                &'a mut crate::generated::all::builders::OrderedListBuilder,
2648            ) -> &'a mut crate::generated::all::builders::OrderedListBuilder,
2649        {
2650            let ty: crate::generated::all::OrderedList = Default::default();
2651            let mut ty_builder = crate::generated::all::builders::OrderedListBuilder::new(
2652                ty,
2653            );
2654            (f)(&mut ty_builder);
2655            let ty = ty_builder.build();
2656            self.element.children_mut().push(ty.into());
2657            self
2658        }
2659        /// Append a new `Output` element
2660        pub fn output<F>(&mut self, f: F) -> &mut Self
2661        where
2662            F: for<'a> FnOnce(
2663                &'a mut crate::generated::all::builders::OutputBuilder,
2664            ) -> &'a mut crate::generated::all::builders::OutputBuilder,
2665        {
2666            let ty: crate::generated::all::Output = Default::default();
2667            let mut ty_builder = crate::generated::all::builders::OutputBuilder::new(ty);
2668            (f)(&mut ty_builder);
2669            let ty = ty_builder.build();
2670            self.element.children_mut().push(ty.into());
2671            self
2672        }
2673        /// Append a new `Paragraph` element
2674        pub fn paragraph<F>(&mut self, f: F) -> &mut Self
2675        where
2676            F: for<'a> FnOnce(
2677                &'a mut crate::generated::all::builders::ParagraphBuilder,
2678            ) -> &'a mut crate::generated::all::builders::ParagraphBuilder,
2679        {
2680            let ty: crate::generated::all::Paragraph = Default::default();
2681            let mut ty_builder = crate::generated::all::builders::ParagraphBuilder::new(
2682                ty,
2683            );
2684            (f)(&mut ty_builder);
2685            let ty = ty_builder.build();
2686            self.element.children_mut().push(ty.into());
2687            self
2688        }
2689        /// Append a new `Picture` element
2690        pub fn picture<F>(&mut self, f: F) -> &mut Self
2691        where
2692            F: for<'a> FnOnce(
2693                &'a mut crate::generated::all::builders::PictureBuilder,
2694            ) -> &'a mut crate::generated::all::builders::PictureBuilder,
2695        {
2696            let ty: crate::generated::all::Picture = Default::default();
2697            let mut ty_builder = crate::generated::all::builders::PictureBuilder::new(
2698                ty,
2699            );
2700            (f)(&mut ty_builder);
2701            let ty = ty_builder.build();
2702            self.element.children_mut().push(ty.into());
2703            self
2704        }
2705        /// Append a new `PreformattedText` element
2706        pub fn preformatted_text<F>(&mut self, f: F) -> &mut Self
2707        where
2708            F: for<'a> FnOnce(
2709                &'a mut crate::generated::all::builders::PreformattedTextBuilder,
2710            ) -> &'a mut crate::generated::all::builders::PreformattedTextBuilder,
2711        {
2712            let ty: crate::generated::all::PreformattedText = Default::default();
2713            let mut ty_builder = crate::generated::all::builders::PreformattedTextBuilder::new(
2714                ty,
2715            );
2716            (f)(&mut ty_builder);
2717            let ty = ty_builder.build();
2718            self.element.children_mut().push(ty.into());
2719            self
2720        }
2721        /// Append a new `Progress` element
2722        pub fn progress<F>(&mut self, f: F) -> &mut Self
2723        where
2724            F: for<'a> FnOnce(
2725                &'a mut crate::generated::all::builders::ProgressBuilder,
2726            ) -> &'a mut crate::generated::all::builders::ProgressBuilder,
2727        {
2728            let ty: crate::generated::all::Progress = Default::default();
2729            let mut ty_builder = crate::generated::all::builders::ProgressBuilder::new(
2730                ty,
2731            );
2732            (f)(&mut ty_builder);
2733            let ty = ty_builder.build();
2734            self.element.children_mut().push(ty.into());
2735            self
2736        }
2737        /// Append a new `Quotation` element
2738        pub fn quotation<F>(&mut self, f: F) -> &mut Self
2739        where
2740            F: for<'a> FnOnce(
2741                &'a mut crate::generated::all::builders::QuotationBuilder,
2742            ) -> &'a mut crate::generated::all::builders::QuotationBuilder,
2743        {
2744            let ty: crate::generated::all::Quotation = Default::default();
2745            let mut ty_builder = crate::generated::all::builders::QuotationBuilder::new(
2746                ty,
2747            );
2748            (f)(&mut ty_builder);
2749            let ty = ty_builder.build();
2750            self.element.children_mut().push(ty.into());
2751            self
2752        }
2753        /// Append a new `RubyAnnotation` element
2754        pub fn ruby_annotation<F>(&mut self, f: F) -> &mut Self
2755        where
2756            F: for<'a> FnOnce(
2757                &'a mut crate::generated::all::builders::RubyAnnotationBuilder,
2758            ) -> &'a mut crate::generated::all::builders::RubyAnnotationBuilder,
2759        {
2760            let ty: crate::generated::all::RubyAnnotation = Default::default();
2761            let mut ty_builder = crate::generated::all::builders::RubyAnnotationBuilder::new(
2762                ty,
2763            );
2764            (f)(&mut ty_builder);
2765            let ty = ty_builder.build();
2766            self.element.children_mut().push(ty.into());
2767            self
2768        }
2769        /// Append a new `SampleOutput` element
2770        pub fn sample_output<F>(&mut self, f: F) -> &mut Self
2771        where
2772            F: for<'a> FnOnce(
2773                &'a mut crate::generated::all::builders::SampleOutputBuilder,
2774            ) -> &'a mut crate::generated::all::builders::SampleOutputBuilder,
2775        {
2776            let ty: crate::generated::all::SampleOutput = Default::default();
2777            let mut ty_builder = crate::generated::all::builders::SampleOutputBuilder::new(
2778                ty,
2779            );
2780            (f)(&mut ty_builder);
2781            let ty = ty_builder.build();
2782            self.element.children_mut().push(ty.into());
2783            self
2784        }
2785        /// Append a new `Script` element
2786        pub fn script<F>(&mut self, f: F) -> &mut Self
2787        where
2788            F: for<'a> FnOnce(
2789                &'a mut crate::generated::all::builders::ScriptBuilder,
2790            ) -> &'a mut crate::generated::all::builders::ScriptBuilder,
2791        {
2792            let ty: crate::generated::all::Script = Default::default();
2793            let mut ty_builder = crate::generated::all::builders::ScriptBuilder::new(ty);
2794            (f)(&mut ty_builder);
2795            let ty = ty_builder.build();
2796            self.element.children_mut().push(ty.into());
2797            self
2798        }
2799        /// Append a new `Search` element
2800        pub fn search<F>(&mut self, f: F) -> &mut Self
2801        where
2802            F: for<'a> FnOnce(
2803                &'a mut crate::generated::all::builders::SearchBuilder,
2804            ) -> &'a mut crate::generated::all::builders::SearchBuilder,
2805        {
2806            let ty: crate::generated::all::Search = Default::default();
2807            let mut ty_builder = crate::generated::all::builders::SearchBuilder::new(ty);
2808            (f)(&mut ty_builder);
2809            let ty = ty_builder.build();
2810            self.element.children_mut().push(ty.into());
2811            self
2812        }
2813        /// Append a new `Section` element
2814        pub fn section<F>(&mut self, f: F) -> &mut Self
2815        where
2816            F: for<'a> FnOnce(
2817                &'a mut crate::generated::all::builders::SectionBuilder,
2818            ) -> &'a mut crate::generated::all::builders::SectionBuilder,
2819        {
2820            let ty: crate::generated::all::Section = Default::default();
2821            let mut ty_builder = crate::generated::all::builders::SectionBuilder::new(
2822                ty,
2823            );
2824            (f)(&mut ty_builder);
2825            let ty = ty_builder.build();
2826            self.element.children_mut().push(ty.into());
2827            self
2828        }
2829        /// Append a new `Select` element
2830        pub fn select<F>(&mut self, f: F) -> &mut Self
2831        where
2832            F: for<'a> FnOnce(
2833                &'a mut crate::generated::all::builders::SelectBuilder,
2834            ) -> &'a mut crate::generated::all::builders::SelectBuilder,
2835        {
2836            let ty: crate::generated::all::Select = Default::default();
2837            let mut ty_builder = crate::generated::all::builders::SelectBuilder::new(ty);
2838            (f)(&mut ty_builder);
2839            let ty = ty_builder.build();
2840            self.element.children_mut().push(ty.into());
2841            self
2842        }
2843        /// Append a new `SideComment` element
2844        pub fn side_comment<F>(&mut self, f: F) -> &mut Self
2845        where
2846            F: for<'a> FnOnce(
2847                &'a mut crate::generated::all::builders::SideCommentBuilder,
2848            ) -> &'a mut crate::generated::all::builders::SideCommentBuilder,
2849        {
2850            let ty: crate::generated::all::SideComment = Default::default();
2851            let mut ty_builder = crate::generated::all::builders::SideCommentBuilder::new(
2852                ty,
2853            );
2854            (f)(&mut ty_builder);
2855            let ty = ty_builder.build();
2856            self.element.children_mut().push(ty.into());
2857            self
2858        }
2859        /// Append a new `Slot` element
2860        pub fn slot<F>(&mut self, f: F) -> &mut Self
2861        where
2862            F: for<'a> FnOnce(
2863                &'a mut crate::generated::all::builders::SlotBuilder,
2864            ) -> &'a mut crate::generated::all::builders::SlotBuilder,
2865        {
2866            let ty: crate::generated::all::Slot = Default::default();
2867            let mut ty_builder = crate::generated::all::builders::SlotBuilder::new(ty);
2868            (f)(&mut ty_builder);
2869            let ty = ty_builder.build();
2870            self.element.children_mut().push(ty.into());
2871            self
2872        }
2873        /// Append a new `Span` element
2874        pub fn span<F>(&mut self, f: F) -> &mut Self
2875        where
2876            F: for<'a> FnOnce(
2877                &'a mut crate::generated::all::builders::SpanBuilder,
2878            ) -> &'a mut crate::generated::all::builders::SpanBuilder,
2879        {
2880            let ty: crate::generated::all::Span = Default::default();
2881            let mut ty_builder = crate::generated::all::builders::SpanBuilder::new(ty);
2882            (f)(&mut ty_builder);
2883            let ty = ty_builder.build();
2884            self.element.children_mut().push(ty.into());
2885            self
2886        }
2887        /// Append a new `StrikeThrough` element
2888        pub fn strike_through<F>(&mut self, f: F) -> &mut Self
2889        where
2890            F: for<'a> FnOnce(
2891                &'a mut crate::generated::all::builders::StrikeThroughBuilder,
2892            ) -> &'a mut crate::generated::all::builders::StrikeThroughBuilder,
2893        {
2894            let ty: crate::generated::all::StrikeThrough = Default::default();
2895            let mut ty_builder = crate::generated::all::builders::StrikeThroughBuilder::new(
2896                ty,
2897            );
2898            (f)(&mut ty_builder);
2899            let ty = ty_builder.build();
2900            self.element.children_mut().push(ty.into());
2901            self
2902        }
2903        /// Append a new `Strong` element
2904        pub fn strong<F>(&mut self, f: F) -> &mut Self
2905        where
2906            F: for<'a> FnOnce(
2907                &'a mut crate::generated::all::builders::StrongBuilder,
2908            ) -> &'a mut crate::generated::all::builders::StrongBuilder,
2909        {
2910            let ty: crate::generated::all::Strong = Default::default();
2911            let mut ty_builder = crate::generated::all::builders::StrongBuilder::new(ty);
2912            (f)(&mut ty_builder);
2913            let ty = ty_builder.build();
2914            self.element.children_mut().push(ty.into());
2915            self
2916        }
2917        /// Append a new `SubScript` element
2918        pub fn sub_script<F>(&mut self, f: F) -> &mut Self
2919        where
2920            F: for<'a> FnOnce(
2921                &'a mut crate::generated::all::builders::SubScriptBuilder,
2922            ) -> &'a mut crate::generated::all::builders::SubScriptBuilder,
2923        {
2924            let ty: crate::generated::all::SubScript = Default::default();
2925            let mut ty_builder = crate::generated::all::builders::SubScriptBuilder::new(
2926                ty,
2927            );
2928            (f)(&mut ty_builder);
2929            let ty = ty_builder.build();
2930            self.element.children_mut().push(ty.into());
2931            self
2932        }
2933        /// Append a new `SuperScript` element
2934        pub fn super_script<F>(&mut self, f: F) -> &mut Self
2935        where
2936            F: for<'a> FnOnce(
2937                &'a mut crate::generated::all::builders::SuperScriptBuilder,
2938            ) -> &'a mut crate::generated::all::builders::SuperScriptBuilder,
2939        {
2940            let ty: crate::generated::all::SuperScript = Default::default();
2941            let mut ty_builder = crate::generated::all::builders::SuperScriptBuilder::new(
2942                ty,
2943            );
2944            (f)(&mut ty_builder);
2945            let ty = ty_builder.build();
2946            self.element.children_mut().push(ty.into());
2947            self
2948        }
2949        /// Append a new `Table` element
2950        pub fn table<F>(&mut self, f: F) -> &mut Self
2951        where
2952            F: for<'a> FnOnce(
2953                &'a mut crate::generated::all::builders::TableBuilder,
2954            ) -> &'a mut crate::generated::all::builders::TableBuilder,
2955        {
2956            let ty: crate::generated::all::Table = Default::default();
2957            let mut ty_builder = crate::generated::all::builders::TableBuilder::new(ty);
2958            (f)(&mut ty_builder);
2959            let ty = ty_builder.build();
2960            self.element.children_mut().push(ty.into());
2961            self
2962        }
2963        /// Append a new `Template` element
2964        pub fn template<F>(&mut self, f: F) -> &mut Self
2965        where
2966            F: for<'a> FnOnce(
2967                &'a mut crate::generated::all::builders::TemplateBuilder,
2968            ) -> &'a mut crate::generated::all::builders::TemplateBuilder,
2969        {
2970            let ty: crate::generated::all::Template = Default::default();
2971            let mut ty_builder = crate::generated::all::builders::TemplateBuilder::new(
2972                ty,
2973            );
2974            (f)(&mut ty_builder);
2975            let ty = ty_builder.build();
2976            self.element.children_mut().push(ty.into());
2977            self
2978        }
2979        /// Append a new text element.
2980        pub fn text(
2981            &mut self,
2982            s: impl Into<std::borrow::Cow<'static, str>>,
2983        ) -> &mut Self {
2984            let cow = s.into();
2985            self.element.children_mut().push(cow.into());
2986            self
2987        }
2988        /// Append a new `TextArea` element
2989        pub fn text_area<F>(&mut self, f: F) -> &mut Self
2990        where
2991            F: for<'a> FnOnce(
2992                &'a mut crate::generated::all::builders::TextAreaBuilder,
2993            ) -> &'a mut crate::generated::all::builders::TextAreaBuilder,
2994        {
2995            let ty: crate::generated::all::TextArea = Default::default();
2996            let mut ty_builder = crate::generated::all::builders::TextAreaBuilder::new(
2997                ty,
2998            );
2999            (f)(&mut ty_builder);
3000            let ty = ty_builder.build();
3001            self.element.children_mut().push(ty.into());
3002            self
3003        }
3004        /// Append a new `ThematicBreak` element
3005        pub fn thematic_break<F>(&mut self, f: F) -> &mut Self
3006        where
3007            F: for<'a> FnOnce(
3008                &'a mut crate::generated::all::builders::ThematicBreakBuilder,
3009            ) -> &'a mut crate::generated::all::builders::ThematicBreakBuilder,
3010        {
3011            let ty: crate::generated::all::ThematicBreak = Default::default();
3012            let mut ty_builder = crate::generated::all::builders::ThematicBreakBuilder::new(
3013                ty,
3014            );
3015            (f)(&mut ty_builder);
3016            let ty = ty_builder.build();
3017            self.element.children_mut().push(ty.into());
3018            self
3019        }
3020        /// Append a new `Time` element
3021        pub fn time<F>(&mut self, f: F) -> &mut Self
3022        where
3023            F: for<'a> FnOnce(
3024                &'a mut crate::generated::all::builders::TimeBuilder,
3025            ) -> &'a mut crate::generated::all::builders::TimeBuilder,
3026        {
3027            let ty: crate::generated::all::Time = Default::default();
3028            let mut ty_builder = crate::generated::all::builders::TimeBuilder::new(ty);
3029            (f)(&mut ty_builder);
3030            let ty = ty_builder.build();
3031            self.element.children_mut().push(ty.into());
3032            self
3033        }
3034        /// Append a new `Underline` element
3035        pub fn underline<F>(&mut self, f: F) -> &mut Self
3036        where
3037            F: for<'a> FnOnce(
3038                &'a mut crate::generated::all::builders::UnderlineBuilder,
3039            ) -> &'a mut crate::generated::all::builders::UnderlineBuilder,
3040        {
3041            let ty: crate::generated::all::Underline = Default::default();
3042            let mut ty_builder = crate::generated::all::builders::UnderlineBuilder::new(
3043                ty,
3044            );
3045            (f)(&mut ty_builder);
3046            let ty = ty_builder.build();
3047            self.element.children_mut().push(ty.into());
3048            self
3049        }
3050        /// Append a new `UnorderedList` element
3051        pub fn unordered_list<F>(&mut self, f: F) -> &mut Self
3052        where
3053            F: for<'a> FnOnce(
3054                &'a mut crate::generated::all::builders::UnorderedListBuilder,
3055            ) -> &'a mut crate::generated::all::builders::UnorderedListBuilder,
3056        {
3057            let ty: crate::generated::all::UnorderedList = Default::default();
3058            let mut ty_builder = crate::generated::all::builders::UnorderedListBuilder::new(
3059                ty,
3060            );
3061            (f)(&mut ty_builder);
3062            let ty = ty_builder.build();
3063            self.element.children_mut().push(ty.into());
3064            self
3065        }
3066        /// Append a new `Variable` element
3067        pub fn variable<F>(&mut self, f: F) -> &mut Self
3068        where
3069            F: for<'a> FnOnce(
3070                &'a mut crate::generated::all::builders::VariableBuilder,
3071            ) -> &'a mut crate::generated::all::builders::VariableBuilder,
3072        {
3073            let ty: crate::generated::all::Variable = Default::default();
3074            let mut ty_builder = crate::generated::all::builders::VariableBuilder::new(
3075                ty,
3076            );
3077            (f)(&mut ty_builder);
3078            let ty = ty_builder.build();
3079            self.element.children_mut().push(ty.into());
3080            self
3081        }
3082        /// Append a new `Video` element
3083        pub fn video<F>(&mut self, f: F) -> &mut Self
3084        where
3085            F: for<'a> FnOnce(
3086                &'a mut crate::generated::all::builders::VideoBuilder,
3087            ) -> &'a mut crate::generated::all::builders::VideoBuilder,
3088        {
3089            let ty: crate::generated::all::Video = Default::default();
3090            let mut ty_builder = crate::generated::all::builders::VideoBuilder::new(ty);
3091            (f)(&mut ty_builder);
3092            let ty = ty_builder.build();
3093            self.element.children_mut().push(ty.into());
3094            self
3095        }
3096        /// Set the value of the `colspan` attribute
3097        pub fn colspan(
3098            &mut self,
3099            value: impl Into<std::borrow::Cow<'static, str>>,
3100        ) -> &mut Self {
3101            self.element.set_colspan(Some(value.into()));
3102            self
3103        }
3104        /// Set the value of the `rowspan` attribute
3105        pub fn rowspan(
3106            &mut self,
3107            value: impl Into<std::borrow::Cow<'static, str>>,
3108        ) -> &mut Self {
3109            self.element.set_rowspan(Some(value.into()));
3110            self
3111        }
3112        /// Set the value of the `headers` attribute
3113        pub fn headers(
3114            &mut self,
3115            value: impl Into<std::borrow::Cow<'static, str>>,
3116        ) -> &mut Self {
3117            self.element.set_headers(Some(value.into()));
3118            self
3119        }
3120        /// Set the value of the `scope` attribute
3121        pub fn scope(
3122            &mut self,
3123            value: impl Into<std::borrow::Cow<'static, str>>,
3124        ) -> &mut Self {
3125            self.element.set_scope(Some(value.into()));
3126            self
3127        }
3128        /// Set the value of the `abbr` attribute
3129        pub fn abbr(
3130            &mut self,
3131            value: impl Into<std::borrow::Cow<'static, str>>,
3132        ) -> &mut Self {
3133            self.element.set_abbr(Some(value.into()));
3134            self
3135        }
3136        /// Set the value of the `role` attribute
3137        pub fn role(
3138            &mut self,
3139            value: impl Into<std::borrow::Cow<'static, str>>,
3140        ) -> &mut Self {
3141            self.element.set_role(Some(value.into()));
3142            self
3143        }
3144        /// Set the value of the `aria-activedescendant` attribute
3145        pub fn aria_active_descendant_element(
3146            &mut self,
3147            value: impl Into<std::borrow::Cow<'static, str>>,
3148        ) -> &mut Self {
3149            self.element.set_aria_active_descendant_element(Some(value.into()));
3150            self
3151        }
3152        /// Set the value of the `aria-atomic` attribute
3153        pub fn aria_atomic(&mut self, value: bool) -> &mut Self {
3154            self.element.set_aria_atomic(value);
3155            self
3156        }
3157        /// Set the value of the `aria-autocomplete` attribute
3158        pub fn aria_auto_complete(
3159            &mut self,
3160            value: impl Into<std::borrow::Cow<'static, str>>,
3161        ) -> &mut Self {
3162            self.element.set_aria_auto_complete(Some(value.into()));
3163            self
3164        }
3165        /// Set the value of the `aria-braillelabel` attribute
3166        pub fn aria_braille_label(
3167            &mut self,
3168            value: impl Into<std::borrow::Cow<'static, str>>,
3169        ) -> &mut Self {
3170            self.element.set_aria_braille_label(Some(value.into()));
3171            self
3172        }
3173        /// Set the value of the `aria-brailleroledescription` attribute
3174        pub fn aria_braille_role_description(
3175            &mut self,
3176            value: impl Into<std::borrow::Cow<'static, str>>,
3177        ) -> &mut Self {
3178            self.element.set_aria_braille_role_description(Some(value.into()));
3179            self
3180        }
3181        /// Set the value of the `aria-busy` attribute
3182        pub fn aria_busy(&mut self, value: bool) -> &mut Self {
3183            self.element.set_aria_busy(value);
3184            self
3185        }
3186        /// Set the value of the `aria-checked` attribute
3187        pub fn aria_checked(
3188            &mut self,
3189            value: impl Into<std::borrow::Cow<'static, str>>,
3190        ) -> &mut Self {
3191            self.element.set_aria_checked(Some(value.into()));
3192            self
3193        }
3194        /// Set the value of the `aria-colcount` attribute
3195        pub fn aria_col_count(&mut self, value: i64) -> &mut Self {
3196            self.element.set_aria_col_count(Some(value));
3197            self
3198        }
3199        /// Set the value of the `aria-colindex` attribute
3200        pub fn aria_col_index(&mut self, value: i64) -> &mut Self {
3201            self.element.set_aria_col_index(Some(value));
3202            self
3203        }
3204        /// Set the value of the `aria-colindextext` attribute
3205        pub fn aria_col_index_text(
3206            &mut self,
3207            value: impl Into<std::borrow::Cow<'static, str>>,
3208        ) -> &mut Self {
3209            self.element.set_aria_col_index_text(Some(value.into()));
3210            self
3211        }
3212        /// Set the value of the `aria-colspan` attribute
3213        pub fn aria_col_span(&mut self, value: i64) -> &mut Self {
3214            self.element.set_aria_col_span(Some(value));
3215            self
3216        }
3217        /// Set the value of the `aria-controls` attribute
3218        pub fn aria_controls_elements(
3219            &mut self,
3220            value: impl Into<std::borrow::Cow<'static, str>>,
3221        ) -> &mut Self {
3222            self.element.set_aria_controls_elements(Some(value.into()));
3223            self
3224        }
3225        /// Set the value of the `aria-current` attribute
3226        pub fn aria_current(
3227            &mut self,
3228            value: impl Into<std::borrow::Cow<'static, str>>,
3229        ) -> &mut Self {
3230            self.element.set_aria_current(Some(value.into()));
3231            self
3232        }
3233        /// Set the value of the `aria-describedby` attribute
3234        pub fn aria_described_by_elements(
3235            &mut self,
3236            value: impl Into<std::borrow::Cow<'static, str>>,
3237        ) -> &mut Self {
3238            self.element.set_aria_described_by_elements(Some(value.into()));
3239            self
3240        }
3241        /// Set the value of the `aria-description` attribute
3242        pub fn aria_description(
3243            &mut self,
3244            value: impl Into<std::borrow::Cow<'static, str>>,
3245        ) -> &mut Self {
3246            self.element.set_aria_description(Some(value.into()));
3247            self
3248        }
3249        /// Set the value of the `aria-details` attribute
3250        pub fn aria_details_elements(
3251            &mut self,
3252            value: impl Into<std::borrow::Cow<'static, str>>,
3253        ) -> &mut Self {
3254            self.element.set_aria_details_elements(Some(value.into()));
3255            self
3256        }
3257        /// Set the value of the `aria-disabled` attribute
3258        pub fn aria_disabled(&mut self, value: bool) -> &mut Self {
3259            self.element.set_aria_disabled(value);
3260            self
3261        }
3262        /// Set the value of the `aria-dropeffect` attribute
3263        pub fn aria_drop_effect(
3264            &mut self,
3265            value: impl Into<std::borrow::Cow<'static, str>>,
3266        ) -> &mut Self {
3267            self.element.set_aria_drop_effect(Some(value.into()));
3268            self
3269        }
3270        /// Set the value of the `aria-errormessage` attribute
3271        pub fn aria_error_message_elements(
3272            &mut self,
3273            value: impl Into<std::borrow::Cow<'static, str>>,
3274        ) -> &mut Self {
3275            self.element.set_aria_error_message_elements(Some(value.into()));
3276            self
3277        }
3278        /// Set the value of the `aria-expanded` attribute
3279        pub fn aria_expanded(&mut self, value: bool) -> &mut Self {
3280            self.element.set_aria_expanded(value);
3281            self
3282        }
3283        /// Set the value of the `aria-flowto` attribute
3284        pub fn aria_flow_to_elements(
3285            &mut self,
3286            value: impl Into<std::borrow::Cow<'static, str>>,
3287        ) -> &mut Self {
3288            self.element.set_aria_flow_to_elements(Some(value.into()));
3289            self
3290        }
3291        /// Set the value of the `aria-grabbed` attribute
3292        pub fn aria_grabbed(&mut self, value: bool) -> &mut Self {
3293            self.element.set_aria_grabbed(value);
3294            self
3295        }
3296        /// Set the value of the `aria-haspopup` attribute
3297        pub fn aria_has_popup(
3298            &mut self,
3299            value: impl Into<std::borrow::Cow<'static, str>>,
3300        ) -> &mut Self {
3301            self.element.set_aria_has_popup(Some(value.into()));
3302            self
3303        }
3304        /// Set the value of the `aria-hidden` attribute
3305        pub fn aria_hidden(&mut self, value: bool) -> &mut Self {
3306            self.element.set_aria_hidden(value);
3307            self
3308        }
3309        /// Set the value of the `aria-invalid` attribute
3310        pub fn aria_invalid(
3311            &mut self,
3312            value: impl Into<std::borrow::Cow<'static, str>>,
3313        ) -> &mut Self {
3314            self.element.set_aria_invalid(Some(value.into()));
3315            self
3316        }
3317        /// Set the value of the `aria-keyshortcuts` attribute
3318        pub fn aria_key_shortcuts(
3319            &mut self,
3320            value: impl Into<std::borrow::Cow<'static, str>>,
3321        ) -> &mut Self {
3322            self.element.set_aria_key_shortcuts(Some(value.into()));
3323            self
3324        }
3325        /// Set the value of the `aria-label` attribute
3326        pub fn aria_label(
3327            &mut self,
3328            value: impl Into<std::borrow::Cow<'static, str>>,
3329        ) -> &mut Self {
3330            self.element.set_aria_label(Some(value.into()));
3331            self
3332        }
3333        /// Set the value of the `aria-labelledby` attribute
3334        pub fn aria_labelled_by_elements(
3335            &mut self,
3336            value: impl Into<std::borrow::Cow<'static, str>>,
3337        ) -> &mut Self {
3338            self.element.set_aria_labelled_by_elements(Some(value.into()));
3339            self
3340        }
3341        /// Set the value of the `aria-level` attribute
3342        pub fn aria_level(&mut self, value: i64) -> &mut Self {
3343            self.element.set_aria_level(Some(value));
3344            self
3345        }
3346        /// Set the value of the `aria-live` attribute
3347        pub fn aria_live(
3348            &mut self,
3349            value: impl Into<std::borrow::Cow<'static, str>>,
3350        ) -> &mut Self {
3351            self.element.set_aria_live(Some(value.into()));
3352            self
3353        }
3354        /// Set the value of the `aria-modal` attribute
3355        pub fn aria_modal(&mut self, value: bool) -> &mut Self {
3356            self.element.set_aria_modal(value);
3357            self
3358        }
3359        /// Set the value of the `aria-multiline` attribute
3360        pub fn aria_multi_line(&mut self, value: bool) -> &mut Self {
3361            self.element.set_aria_multi_line(value);
3362            self
3363        }
3364        /// Set the value of the `aria-multiselectable` attribute
3365        pub fn aria_multi_selectable(&mut self, value: bool) -> &mut Self {
3366            self.element.set_aria_multi_selectable(value);
3367            self
3368        }
3369        /// Set the value of the `aria-orientation` attribute
3370        pub fn aria_orientation(
3371            &mut self,
3372            value: impl Into<std::borrow::Cow<'static, str>>,
3373        ) -> &mut Self {
3374            self.element.set_aria_orientation(Some(value.into()));
3375            self
3376        }
3377        /// Set the value of the `aria-owns` attribute
3378        pub fn aria_owns_elements(
3379            &mut self,
3380            value: impl Into<std::borrow::Cow<'static, str>>,
3381        ) -> &mut Self {
3382            self.element.set_aria_owns_elements(Some(value.into()));
3383            self
3384        }
3385        /// Set the value of the `aria-placeholder` attribute
3386        pub fn aria_placeholder(
3387            &mut self,
3388            value: impl Into<std::borrow::Cow<'static, str>>,
3389        ) -> &mut Self {
3390            self.element.set_aria_placeholder(Some(value.into()));
3391            self
3392        }
3393        /// Set the value of the `aria-posinset` attribute
3394        pub fn aria_pos_in_set(&mut self, value: i64) -> &mut Self {
3395            self.element.set_aria_pos_in_set(Some(value));
3396            self
3397        }
3398        /// Set the value of the `aria-pressed` attribute
3399        pub fn aria_pressed(
3400            &mut self,
3401            value: impl Into<std::borrow::Cow<'static, str>>,
3402        ) -> &mut Self {
3403            self.element.set_aria_pressed(Some(value.into()));
3404            self
3405        }
3406        /// Set the value of the `aria-readonly` attribute
3407        pub fn aria_read_only(&mut self, value: bool) -> &mut Self {
3408            self.element.set_aria_read_only(value);
3409            self
3410        }
3411        /// Set the value of the `aria-relevant` attribute
3412        pub fn aria_relevant(
3413            &mut self,
3414            value: impl Into<std::borrow::Cow<'static, str>>,
3415        ) -> &mut Self {
3416            self.element.set_aria_relevant(Some(value.into()));
3417            self
3418        }
3419        /// Set the value of the `aria-required` attribute
3420        pub fn aria_required(&mut self, value: bool) -> &mut Self {
3421            self.element.set_aria_required(value);
3422            self
3423        }
3424        /// Set the value of the `aria-roledescription` attribute
3425        pub fn aria_role_description(
3426            &mut self,
3427            value: impl Into<std::borrow::Cow<'static, str>>,
3428        ) -> &mut Self {
3429            self.element.set_aria_role_description(Some(value.into()));
3430            self
3431        }
3432        /// Set the value of the `aria-rowcount` attribute
3433        pub fn aria_row_count(&mut self, value: i64) -> &mut Self {
3434            self.element.set_aria_row_count(Some(value));
3435            self
3436        }
3437        /// Set the value of the `aria-rowindex` attribute
3438        pub fn aria_row_index(&mut self, value: i64) -> &mut Self {
3439            self.element.set_aria_row_index(Some(value));
3440            self
3441        }
3442        /// Set the value of the `aria-rowindextext` attribute
3443        pub fn aria_row_index_text(
3444            &mut self,
3445            value: impl Into<std::borrow::Cow<'static, str>>,
3446        ) -> &mut Self {
3447            self.element.set_aria_row_index_text(Some(value.into()));
3448            self
3449        }
3450        /// Set the value of the `aria-rowspan` attribute
3451        pub fn aria_row_span(&mut self, value: i64) -> &mut Self {
3452            self.element.set_aria_row_span(Some(value));
3453            self
3454        }
3455        /// Set the value of the `aria-selected` attribute
3456        pub fn aria_selected(&mut self, value: bool) -> &mut Self {
3457            self.element.set_aria_selected(value);
3458            self
3459        }
3460        /// Set the value of the `aria-setsize` attribute
3461        pub fn aria_set_size(&mut self, value: i64) -> &mut Self {
3462            self.element.set_aria_set_size(Some(value));
3463            self
3464        }
3465        /// Set the value of the `aria-sort` attribute
3466        pub fn aria_sort(
3467            &mut self,
3468            value: impl Into<std::borrow::Cow<'static, str>>,
3469        ) -> &mut Self {
3470            self.element.set_aria_sort(Some(value.into()));
3471            self
3472        }
3473        /// Set the value of the `aria-valuemax` attribute
3474        pub fn aria_value_max(&mut self, value: f64) -> &mut Self {
3475            self.element.set_aria_value_max(Some(value));
3476            self
3477        }
3478        /// Set the value of the `aria-valuemin` attribute
3479        pub fn aria_value_min(&mut self, value: f64) -> &mut Self {
3480            self.element.set_aria_value_min(Some(value));
3481            self
3482        }
3483        /// Set the value of the `aria-valuenow` attribute
3484        pub fn aria_value_now(&mut self, value: f64) -> &mut Self {
3485            self.element.set_aria_value_now(Some(value));
3486            self
3487        }
3488        /// Set the value of the `aria-valuetext` attribute
3489        pub fn aria_value_text(
3490            &mut self,
3491            value: impl Into<std::borrow::Cow<'static, str>>,
3492        ) -> &mut Self {
3493            self.element.set_aria_value_text(Some(value.into()));
3494            self
3495        }
3496        /// Set the value of the `accesskey` attribute
3497        pub fn access_key(
3498            &mut self,
3499            value: impl Into<std::borrow::Cow<'static, str>>,
3500        ) -> &mut Self {
3501            self.element.set_access_key(Some(value.into()));
3502            self
3503        }
3504        /// Set the value of the `autocapitalize` attribute
3505        pub fn auto_capitalize(
3506            &mut self,
3507            value: impl Into<std::borrow::Cow<'static, str>>,
3508        ) -> &mut Self {
3509            self.element.set_auto_capitalize(Some(value.into()));
3510            self
3511        }
3512        /// Set the value of the `autofocus` attribute
3513        pub fn autofocus(&mut self, value: bool) -> &mut Self {
3514            self.element.set_autofocus(value);
3515            self
3516        }
3517        /// Set the value of the `class` attribute
3518        pub fn class(
3519            &mut self,
3520            value: impl Into<std::borrow::Cow<'static, str>>,
3521        ) -> &mut Self {
3522            self.element.set_class(Some(value.into()));
3523            self
3524        }
3525        /// Set the value of the `contenteditable` attribute
3526        pub fn content_editable(
3527            &mut self,
3528            value: impl Into<std::borrow::Cow<'static, str>>,
3529        ) -> &mut Self {
3530            self.element.set_content_editable(Some(value.into()));
3531            self
3532        }
3533        /// Set the value of the `dir` attribute
3534        pub fn direction(
3535            &mut self,
3536            value: impl Into<std::borrow::Cow<'static, str>>,
3537        ) -> &mut Self {
3538            self.element.set_direction(Some(value.into()));
3539            self
3540        }
3541        /// Set the value of the `draggable` attribute
3542        pub fn draggable(&mut self, value: bool) -> &mut Self {
3543            self.element.set_draggable(value);
3544            self
3545        }
3546        /// Set the value of the `enterkeyhint` attribute
3547        pub fn enter_key_hint(
3548            &mut self,
3549            value: impl Into<std::borrow::Cow<'static, str>>,
3550        ) -> &mut Self {
3551            self.element.set_enter_key_hint(Some(value.into()));
3552            self
3553        }
3554        /// Set the value of the `exportparts` attribute
3555        pub fn export_parts(
3556            &mut self,
3557            value: impl Into<std::borrow::Cow<'static, str>>,
3558        ) -> &mut Self {
3559            self.element.set_export_parts(Some(value.into()));
3560            self
3561        }
3562        /// Set the value of the `hidden` attribute
3563        pub fn hidden(
3564            &mut self,
3565            value: impl Into<std::borrow::Cow<'static, str>>,
3566        ) -> &mut Self {
3567            self.element.set_hidden(Some(value.into()));
3568            self
3569        }
3570        /// Set the value of the `id` attribute
3571        pub fn id(
3572            &mut self,
3573            value: impl Into<std::borrow::Cow<'static, str>>,
3574        ) -> &mut Self {
3575            self.element.set_id(Some(value.into()));
3576            self
3577        }
3578        /// Set the value of the `inert` attribute
3579        pub fn inert(&mut self, value: bool) -> &mut Self {
3580            self.element.set_inert(value);
3581            self
3582        }
3583        /// Set the value of the `inputmode` attribute
3584        pub fn input_mode(
3585            &mut self,
3586            value: impl Into<std::borrow::Cow<'static, str>>,
3587        ) -> &mut Self {
3588            self.element.set_input_mode(Some(value.into()));
3589            self
3590        }
3591        /// Set the value of the `is` attribute
3592        pub fn is_(
3593            &mut self,
3594            value: impl Into<std::borrow::Cow<'static, str>>,
3595        ) -> &mut Self {
3596            self.element.set_is_(Some(value.into()));
3597            self
3598        }
3599        /// Set the value of the `itemid` attribute
3600        pub fn item_id(
3601            &mut self,
3602            value: impl Into<std::borrow::Cow<'static, str>>,
3603        ) -> &mut Self {
3604            self.element.set_item_id(Some(value.into()));
3605            self
3606        }
3607        /// Set the value of the `itemprop` attribute
3608        pub fn item_prop(
3609            &mut self,
3610            value: impl Into<std::borrow::Cow<'static, str>>,
3611        ) -> &mut Self {
3612            self.element.set_item_prop(Some(value.into()));
3613            self
3614        }
3615        /// Set the value of the `itemref` attribute
3616        pub fn item_ref(
3617            &mut self,
3618            value: impl Into<std::borrow::Cow<'static, str>>,
3619        ) -> &mut Self {
3620            self.element.set_item_ref(Some(value.into()));
3621            self
3622        }
3623        /// Set the value of the `itemscope` attribute
3624        pub fn item_scope(
3625            &mut self,
3626            value: impl Into<std::borrow::Cow<'static, str>>,
3627        ) -> &mut Self {
3628            self.element.set_item_scope(Some(value.into()));
3629            self
3630        }
3631        /// Set the value of the `itemtype` attribute
3632        pub fn item_type(
3633            &mut self,
3634            value: impl Into<std::borrow::Cow<'static, str>>,
3635        ) -> &mut Self {
3636            self.element.set_item_type(Some(value.into()));
3637            self
3638        }
3639        /// Set the value of the `lang` attribute
3640        pub fn lang(
3641            &mut self,
3642            value: impl Into<std::borrow::Cow<'static, str>>,
3643        ) -> &mut Self {
3644            self.element.set_lang(Some(value.into()));
3645            self
3646        }
3647        /// Set the value of the `nonce` attribute
3648        pub fn nonce(
3649            &mut self,
3650            value: impl Into<std::borrow::Cow<'static, str>>,
3651        ) -> &mut Self {
3652            self.element.set_nonce(Some(value.into()));
3653            self
3654        }
3655        /// Set the value of the `part` attribute
3656        pub fn part(
3657            &mut self,
3658            value: impl Into<std::borrow::Cow<'static, str>>,
3659        ) -> &mut Self {
3660            self.element.set_part(Some(value.into()));
3661            self
3662        }
3663        /// Set the value of the `slot` attribute
3664        pub fn slot_attr(
3665            &mut self,
3666            value: impl Into<std::borrow::Cow<'static, str>>,
3667        ) -> &mut Self {
3668            self.element.set_slot(Some(value.into()));
3669            self
3670        }
3671        /// Set the value of the `spellcheck` attribute
3672        pub fn spellcheck(
3673            &mut self,
3674            value: impl Into<std::borrow::Cow<'static, str>>,
3675        ) -> &mut Self {
3676            self.element.set_spellcheck(Some(value.into()));
3677            self
3678        }
3679        /// Set the value of the `style` attribute
3680        pub fn style(
3681            &mut self,
3682            value: impl Into<std::borrow::Cow<'static, str>>,
3683        ) -> &mut Self {
3684            self.element.set_style(Some(value.into()));
3685            self
3686        }
3687        /// Set the value of the `tabindex` attribute
3688        pub fn tab_index(&mut self, value: i64) -> &mut Self {
3689            self.element.set_tab_index(Some(value));
3690            self
3691        }
3692        /// Set the value of the `title` attribute
3693        pub fn title(
3694            &mut self,
3695            value: impl Into<std::borrow::Cow<'static, str>>,
3696        ) -> &mut Self {
3697            self.element.set_title(Some(value.into()));
3698            self
3699        }
3700        /// Set the value of the `translate` attribute
3701        pub fn translate(&mut self, value: bool) -> &mut Self {
3702            self.element.set_translate(value);
3703            self
3704        }
3705        /// Push a new child element to the list of children.
3706        pub fn push<T>(&mut self, child_el: T) -> &mut Self
3707        where
3708            T: Into<crate::generated::all::children::TableHeaderChild>,
3709        {
3710            let child_el = child_el.into();
3711            self.element.children_mut().push(child_el);
3712            self
3713        }
3714        /// Extend the list of children with an iterator of child elements.
3715        pub fn extend<I, T>(&mut self, iter: I) -> &mut Self
3716        where
3717            I: IntoIterator<Item = T>,
3718            T: Into<crate::generated::all::children::TableHeaderChild>,
3719        {
3720            let iter = iter.into_iter().map(|child_el| child_el.into());
3721            self.element.children_mut().extend(iter);
3722            self
3723        }
3724    }
3725}