diff options
Diffstat (limited to 'src/encoded_string.rs')
-rw-r--r-- | src/encoded_string.rs | 26 |
1 files changed, 0 insertions, 26 deletions
diff --git a/src/encoded_string.rs b/src/encoded_string.rs deleted file mode 100644 index 55090a9..0000000 --- a/src/encoded_string.rs +++ /dev/null @@ -1,26 +0,0 @@ -use std::str; - -pub struct EncodedString<'a> { - pub s: str::Bytes<'a>, -} - -impl<'a> Iterator for EncodedString<'a> { - type Item = u8; - - fn next(&mut self) -> Option<Self::Item> { - self.s.next().map(|c| match c { - b'\\' => match self.s.next() { - Some(b'n') => b'\n', - Some(b'\\') | None => b'\\', - Some(c) => c - }, - c => c - }) - } -} - -impl<'a> EncodedString<'a> { - pub fn decode(self) -> String { - String::from_utf8(self.s.collect()).unwrap() - } -} |