cercis_html/component.rs
1use crate::prelude::*;
2
3pub struct VComponent<'a>(Box<dyn Component + 'a>);
4
5pub trait Component {
6 fn render(&self) -> VBody;
7}
8
9impl<'a> VComponent<'a> {
10 pub fn new(component: Box<dyn Component + 'a>) -> Self {
11 Self(component)
12 }
13}
14
15impl Render for VComponent<'_> {
16 fn render(&self) -> String {
17 self.0.render().render()
18 }
19}