diff options
Diffstat (limited to 'vendor/handlebars/src/error.rs')
-rw-r--r-- | vendor/handlebars/src/error.rs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/vendor/handlebars/src/error.rs b/vendor/handlebars/src/error.rs index 618d68e4f..160986350 100644 --- a/vendor/handlebars/src/error.rs +++ b/vendor/handlebars/src/error.rs @@ -1,4 +1,3 @@ -// use std::backtrace::Backtrace; use std::error::Error as StdError; use std::fmt::{self, Write}; use std::io::Error as IOError; @@ -152,6 +151,7 @@ pub enum TemplateErrorReason { /// Error on parsing template. #[derive(Debug, Error)] pub struct TemplateError { + #[deprecated(note = "public access to reason to be removed soon, use .reason() instead.")] pub reason: TemplateErrorReason, pub template_name: Option<String>, pub line_no: Option<usize>, @@ -160,6 +160,7 @@ pub struct TemplateError { } impl TemplateError { + #[allow(deprecated)] pub fn of(e: TemplateErrorReason) -> TemplateError { TemplateError { reason: e, @@ -181,6 +182,12 @@ impl TemplateError { self.template_name = Some(name); self } + + /// Get underlying reason for the error + #[allow(deprecated)] + pub fn reason(&self) -> &TemplateErrorReason { + &self.reason + } } impl From<(IOError, String)> for TemplateError { @@ -229,16 +236,16 @@ impl fmt::Display for TemplateError { (Some(line), Some(col), &Some(ref seg)) => writeln!( f, "Template error: {}\n --> Template error in \"{}\":{}:{}\n |\n{} |\n = reason: {}", - self.reason, + self.reason(), self.template_name .as_ref() .unwrap_or(&"Unnamed template".to_owned()), line, col, seg, - self.reason + self.reason() ), - _ => write!(f, "{}", self.reason), + _ => write!(f, "{}", self.reason()), } } } |