html/generated/
address.rs

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