html/generated/
noscript.rs

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