use anyhow::{Context as _, Result};
pub fn parse_static(name: &str, raw: &str) -> Result<tera::Tera> {
let mut tera = tera::Tera::default();
tera.autoescape_on(Vec::<&str>::new());
super::base_tera::register_ruby_escape(&mut tera);
let raw = super::engine_adapter::double_string_literal_backslashes(raw);
tera.add_raw_template(name, raw.as_ref())
.with_context(|| format!("parse static template '{}'", name))?;
Ok(tera)
}
pub fn render_static(
tera: &tera::Tera,
name: &str,
ctx: &tera::Context,
stage: &str,
) -> Result<String> {
tera.render(name, ctx)
.with_context(|| format!("{}: render '{}'", stage, name))
}