diff options
-rw-r--r-- | askama/src/lib.rs | 9 | ||||
-rw-r--r-- | askama_derive/src/generator.rs | 2 | ||||
-rw-r--r-- | testing/tests/simple.rs | 2 |
3 files changed, 9 insertions, 4 deletions
diff --git a/askama/src/lib.rs b/askama/src/lib.rs index 0c0ff83..187b571 100644 --- a/askama/src/lib.rs +++ b/askama/src/lib.rs @@ -395,8 +395,13 @@ pub trait Template { } /// Renders the template to the given `writer` buffer fn render_into(&self, writer: &mut std::fmt::Write) -> Result<()>; - /// Helper method to inspect the template's extension - fn extension(&self) -> Option<&str>; + /// Helper function to inspect the template's extension + fn extension() -> Option<&'static str> + where + Self: Sized, + { + None + } } pub use askama_derive::*; diff --git a/askama_derive/src/generator.rs b/askama_derive/src/generator.rs index 2c9fddb..4f83b07 100644 --- a/askama_derive/src/generator.rs +++ b/askama_derive/src/generator.rs @@ -107,7 +107,7 @@ impl<'a> Generator<'a> { buf.writeln("Ok(())"); buf.writeln("}"); - buf.writeln("fn extension(&self) -> Option<&str> {"); + buf.writeln("fn extension() -> Option<&'static str> {"); buf.writeln(&format!( "{:?}", self.input.path.extension().map(|s| s.to_str().unwrap()) diff --git a/testing/tests/simple.rs b/testing/tests/simple.rs index 9575daa..e19b32e 100644 --- a/testing/tests/simple.rs +++ b/testing/tests/simple.rs @@ -27,7 +27,7 @@ fn test_variables() { Iñtërnâtiônàlizætiøn is important\n\ in vars too: Iñtërnâtiônàlizætiøn" ); - assert_eq!(s.extension(), Some("html")); + assert_eq!(VariablesTemplate::extension(), Some("html")); } #[derive(Template)] |