Take reference of unescaped expressions directly (fixes #132)

This commit is contained in:
Dirkjan Ochtman 2018-10-19 20:20:59 +02:00
parent 5ffe3de311
commit 4fa029f26f

View File

@ -586,14 +586,13 @@ impl<'a> Generator<'a> {
use self::DisplayWrap::*;
use super::input::EscapeMode::*;
buf.writeln("write!(writer, \"{}\", &{");
buf.writeln("write!(writer, \"{}\", &");
buf.write(&match (wrapped, &self.input.escaping) {
(Wrapped, &Html) | (Wrapped, &None) | (Unwrapped, &None) => expr_buf.buf,
(Unwrapped, &Html) => format!("::askama::MarkupDisplay::from(&{})", expr_buf.buf),
});
buf.writeln("");
buf.dedent();
buf.writeln("})?;");
buf.writeln(")?;");
}
fn write_lit(&mut self, buf: &mut Buffer, lws: &'a str, val: &str, rws: &'a str) {