Struct edo::Edo
[−]
[src]
pub struct Edo<'a> { /* fields omitted */ }
A single template. Allows registering of handlers and rendering
Methods
impl<'a> Edo<'a>
[src]
fn new(template_string: &'a str) -> Result<Edo<'a>, EdoError>
fn register_handler<F>(&mut self, name: &'a str, handler: F) where
F: 'static + Fn(Vec<&'a str>) -> Result<String, String>,
F: 'static + Fn(Vec<&'a str>) -> Result<String, String>,
Register a new function handler
Examples
let mut template = Edo::new("Hello {name}").unwrap(); template.register_handler("name", |_| Ok("World!".to_string()));
fn register_static<S: Into<String>>(&mut self, name: &'a str, input: S)
Register a static replacement
Examples
let mut template = Edo::new("Hello {name}").unwrap(); template.register_static("name", "World!");
fn render(&mut self) -> String
Render template into a string
Examples
let mut template = Edo::new("Hello {name}").unwrap(); template.register_handler("name", |_| Ok("World!".to_string())); let output = template.render(); assert_eq!(output, "Hello World!");
fn render_with_errors(&mut self) -> (String, Vec<String>)
Render a template into a string and recieve a vector of errors
Examples
let mut template = Edo::new("Hello {name}").unwrap(); template.register_handler("name", |_| Err("Something Broke".to_string())); let (output, errors) = template.render_with_errors(); assert_eq!(output, "Hello "); assert_eq!(errors, vec!["Something Broke".to_string()]);