render/fragment.rs
1//! The fragment component
2
3use crate::Render;
4use std::fmt::{Result, Write};
5
6/// A top-level root component to combine a same-level components
7/// in a RSX fashion
8///
9/// ```rust
10/// # #![feature(proc_macro_hygiene)]
11/// # use pretty_assertions::assert_eq;
12/// # use render_macros::html;
13/// let result = html! {
14/// <>
15/// <a />
16/// <b />
17/// </>
18/// };
19/// assert_eq!(result, "<a/><b/>");
20/// ```
21#[derive(Debug)]
22pub struct Fragment<T: Render> {
23 pub children: T,
24}
25
26impl<T: Render> Render for Fragment<T> {
27 fn render_into<W: Write>(self, writer: &mut W) -> Result {
28 self.children.render_into(writer)
29 }
30}