From 9021c229b72861e4b5fc49260819643eb92d8cb6 Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Mon, 2 Jul 2018 09:29:08 +0200 Subject: Further improve matching source and ext in TemplateInput --- askama_derive/src/input.rs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'askama_derive/src/input.rs') diff --git a/askama_derive/src/input.rs b/askama_derive/src/input.rs index 93d5e17..2787084 100644 --- a/askama_derive/src/input.rs +++ b/askama_derive/src/input.rs @@ -85,17 +85,15 @@ impl<'a> TemplateInput<'a> { } let source = source.expect("template path or source not found in attributes"); - let path = match (&source, ext.is_some()) { - (&Source::Path(_), true) => { + let path = match (&source, &ext) { + (&Source::Path(_), Some(_)) => { panic!("'ext' attribute cannot be used with 'path' attribute") } - (&Source::Source(_), false) => { + (&Source::Source(_), None) => { panic!("must include 'ext' attribute when using 'source' attribute") } - (&Source::Path(ref path), false) => path::find_template_from_path(path, None), - (&Source::Source(_), true) => { - PathBuf::from(format!("{}.{}", ast.ident, ext.as_ref().unwrap())) - } + (&Source::Path(ref path), None) => path::find_template_from_path(path, None), + (&Source::Source(_), Some(ext)) => PathBuf::from(format!("{}.{}", ast.ident, ext)), }; let parent = match ast.data { -- cgit