1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use crate::{html::Node, RenderString};
impl RenderString for Node {
fn render_into<W: std::fmt::Write>(self, writer: &mut W) -> std::fmt::Result {
match self {
Self::CustomElement => unimplemented!(),
Self::Document(doctype, elements) => {
doctype.render_into(writer)?;
elements.render_into(writer)?;
}
Self::Element(element) => element.render_into(writer)?,
Self::Fragment(elements) => elements.render_into(writer)?,
Self::None => (),
Self::Text(text) => text.render_into(writer)?,
}
Ok(())
}
}