aboutsummaryrefslogtreecommitdiffstats
path: root/askama_shared/src/input.rs
diff options
context:
space:
mode:
authorLibravatar René Kijewski <kijewski@library.vetmed.fu-berlin.de>2022-01-07 01:06:35 +0100
committerLibravatar Dirkjan Ochtman <dirkjan@ochtman.nl>2022-01-07 13:18:03 +0100
commita9aebf82fbb59a0323c78c4c248eaaafab1ab00f (patch)
tree696ce06be753e35efe9d814c14ec42c4b0f8f829 /askama_shared/src/input.rs
parente7fb11ecb9278b946fffd7e6c9f82c29e5b62c94 (diff)
downloadaskama-a9aebf82fbb59a0323c78c4c248eaaafab1ab00f.tar.gz
askama-a9aebf82fbb59a0323c78c4c248eaaafab1ab00f.tar.bz2
askama-a9aebf82fbb59a0323c78c4c248eaaafab1ab00f.zip
Determine Content-Type during compilation
Diffstat (limited to 'askama_shared/src/input.rs')
-rw-r--r--askama_shared/src/input.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/askama_shared/src/input.rs b/askama_shared/src/input.rs
index a679461..17410ed 100644
--- a/askama_shared/src/input.rs
+++ b/askama_shared/src/input.rs
@@ -14,6 +14,7 @@ pub struct TemplateInput<'a> {
pub print: Print,
pub escaper: &'a str,
pub ext: Option<String>,
+ pub mime_type: String,
pub parent: Option<&'a syn::Type>,
pub path: PathBuf,
}
@@ -180,6 +181,10 @@ impl TemplateInput<'_> {
CompileError::String(format!("no escaper defined for extension '{}'", escaping,))
})?;
+ let mime_type =
+ extension_to_mime_type(ext_default_to_path(ext.as_deref(), &path).unwrap_or("txt"))
+ .to_string();
+
Ok(TemplateInput {
ast,
config,
@@ -188,6 +193,7 @@ impl TemplateInput<'_> {
print,
escaper,
ext,
+ mime_type,
parent,
path,
})