liquid_interpreter/
template.rs1use std::io::Write;
2
3use liquid_error::Result;
4
5use super::Context;
6use super::Renderable;
7
8#[derive(Debug)]
10pub struct Template {
11 elements: Vec<Box<Renderable>>,
12}
13
14impl Template {
15 pub fn new(elements: Vec<Box<Renderable>>) -> Template {
17 Template { elements }
18 }
19}
20
21impl Renderable for Template {
22 fn render_to(&self, writer: &mut Write, context: &mut Context) -> Result<()> {
23 for el in &self.elements {
24 el.render_to(writer, context)?;
25
26 if context.interrupt().interrupted() {
31 break;
32 }
33 }
34 Ok(())
35 }
36}