summaryrefslogtreecommitdiff
path: root/mingling_core/src/renderer
diff options
context:
space:
mode:
Diffstat (limited to 'mingling_core/src/renderer')
-rw-r--r--mingling_core/src/renderer/render_result.rs41
1 files changed, 41 insertions, 0 deletions
diff --git a/mingling_core/src/renderer/render_result.rs b/mingling_core/src/renderer/render_result.rs
index 73c38e7..d9da7b7 100644
--- a/mingling_core/src/renderer/render_result.rs
+++ b/mingling_core/src/renderer/render_result.rs
@@ -3,6 +3,7 @@ use std::{
ops::Deref,
};
+/// Render result, containing the rendered text content.
#[derive(Default, Debug, PartialEq)]
pub struct RenderResult {
render_text: String,
@@ -23,15 +24,55 @@ impl Deref for RenderResult {
}
impl RenderResult {
+ /// Appends the given text to the rendered content.
+ ///
+ /// # Examples
+ ///
+ /// ```
+ /// use mingling_core::RenderResult;
+ /// use std::ops::Deref;
+ ///
+ /// let mut result = RenderResult::default();
+ /// result.print("Hello");
+ /// result.print(", world!");
+ /// assert_eq!(result.deref(), "Hello, world!");
+ /// ```
pub fn print(&mut self, text: &str) {
self.render_text.push_str(text);
}
+ /// Appends the given text followed by a newline to the rendered content.
+ ///
+ /// # Examples
+ ///
+ /// ```
+ /// use mingling_core::RenderResult;
+ /// use std::ops::Deref;
+ ///
+ /// let mut result = RenderResult::default();
+ /// result.println("First line");
+ /// result.println("Second line");
+ /// assert_eq!(result.deref(), "First line\nSecond line\n");
+ /// ```
pub fn println(&mut self, text: &str) {
self.render_text.push_str(text);
self.render_text.push('\n');
}
+ /// Clears all rendered content.
+ ///
+ /// # Examples
+ ///
+ /// ```
+ /// use mingling_core::RenderResult;
+ /// use std::ops::Deref;
+ ///
+ /// let mut result = RenderResult::default();
+ /// result.print("Some content");
+ /// assert!(!result.is_empty());
+ /// result.clear();
+ /// assert!(result.is_empty());
+ /// ```
pub fn clear(&mut self) {
self.render_text.clear();
}