1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
//! UTF-8 string converting for non-Windows systems. use std::io::{Error, ErrorKind, Result}; use super::Encoder; /// Convert UTF-8 bytes to String. pub struct EncoderUtf8; impl Encoder for EncoderUtf8 { /// Convert UTF-8 to String. fn to_string(self: &Self, data: &[u8]) -> Result<String> { String::from_utf8(data.to_vec()).map_err(|e| Error::new(ErrorKind::InvalidInput, e)) } /// Convert String to UTF-8. fn to_bytes(self: &Self, data: &str) -> Result<Vec<u8>> { Ok(data.as_bytes().to_vec()) } }