raui_yaml_renderer/
lib.rs1use raui_core::{
2 layout::{CoordsMapping, Layout},
3 renderer::Renderer,
4 widget::unit::WidgetUnit,
5};
6
7#[derive(Debug, Default, Copy, Clone)]
8pub struct YamlRenderer;
9
10impl Renderer<String, serde_yaml::Error> for YamlRenderer {
11 fn render(
12 &mut self,
13 tree: &WidgetUnit,
14 _: &CoordsMapping,
15 _layout: &Layout,
16 ) -> Result<String, serde_yaml::Error> {
17 serde_yaml::to_string(tree)
18 }
19}
20
21#[derive(Debug, Default, Copy, Clone)]
22pub struct YamlValueRenderer;
23
24impl Renderer<serde_yaml::Value, serde_yaml::Error> for YamlValueRenderer {
25 fn render(
26 &mut self,
27 tree: &WidgetUnit,
28 _: &CoordsMapping,
29 _: &Layout,
30 ) -> Result<serde_yaml::Value, serde_yaml::Error> {
31 serde_yaml::to_value(tree)
32 }
33}