pub fn nest(self) -> String {
self.s.into()
}
+
+ fn err(&self, kind: SubstErrorKind) -> SubstError {
+ SubstError { kind, input: (*self.s).to_owned() }
+ }
}
#[throws(SubstError)]
fn subst<'i>(before: Substituting<'i>, needle: &'static str, replacement: &str)
-> Substituting<'i> {
use SubstErrorKind as SEK;
- let err = |kind| SubstError { kind, input: (*before.s).to_owned() };
let (out, count) = subst_general(&before, needle, replacement)?;
- if count == 0 { throw!(err(SEK::MissingToken(needle))) }
- if count > 1 { throw!(err(SEK::RepeatedToken(needle))) }
+ if count == 0 { throw!(before.err(SEK::MissingToken(needle))) }
+ if count > 1 { throw!(before.err(SEK::RepeatedToken(needle))) }
out
}