1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
//! provides DOM DocumentType use crate::Render; /// DOM DocumentType node /// /// # Example /// /// ``` /// use dom_renderer::*; /// /// let expect = r#"<!DOCTYPE html>"#; /// /// let doctype = DocumentType(DomDocType::new("html")); /// assert_eq!(expect, doctype.render()); /// /// assert_eq!(expect, doctype!("html").render()); /// ``` #[derive(Debug, Clone)] pub struct DomDocType { pub doc_type: &'static str, } impl Render for DomDocType { fn render(&self) -> String { format!("<!DOCTYPE {}>", self.doc_type) } } impl DomDocType { pub fn new(doc_type: &'static str) -> Self { DomDocType { doc_type } } }