From 7ce68cd11516bd7cf037ecea99a92aee7c31b2c3 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Sat, 28 Mar 2026 00:47:46 +0800 Subject: Add initial Mingling framework codebase --- mingling/src/renderer/render_result.rs | 38 ++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 mingling/src/renderer/render_result.rs (limited to 'mingling/src/renderer/render_result.rs') diff --git a/mingling/src/renderer/render_result.rs b/mingling/src/renderer/render_result.rs new file mode 100644 index 0000000..73c38e7 --- /dev/null +++ b/mingling/src/renderer/render_result.rs @@ -0,0 +1,38 @@ +use std::{ + fmt::{Display, Formatter}, + ops::Deref, +}; + +#[derive(Default, Debug, PartialEq)] +pub struct RenderResult { + render_text: String, +} + +impl Display for RenderResult { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + writeln!(f, "{}", self.render_text.trim()) + } +} + +impl Deref for RenderResult { + type Target = str; + + fn deref(&self) -> &Self::Target { + &self.render_text + } +} + +impl RenderResult { + pub fn print(&mut self, text: &str) { + self.render_text.push_str(text); + } + + pub fn println(&mut self, text: &str) { + self.render_text.push_str(text); + self.render_text.push('\n'); + } + + pub fn clear(&mut self) { + self.render_text.clear(); + } +} -- cgit