diff --git a/serde2/src/json/mod.rs b/serde2/src/json/mod.rs index 11f4190f..88ab1c5e 100644 --- a/serde2/src/json/mod.rs +++ b/serde2/src/json/mod.rs @@ -1,4 +1,5 @@ pub use self::ser::Serializer; pub use self::ser::{to_vec, to_string}; +pub use self::ser::escape_str; pub mod ser; diff --git a/serde2/src/json/ser.rs b/serde2/src/json/ser.rs index f4bf2754..3c26c077 100644 --- a/serde2/src/json/ser.rs +++ b/serde2/src/json/ser.rs @@ -166,7 +166,8 @@ impl ser::VisitorState> for Serializer { } } -fn escape_bytes(wr: &mut W, bytes: &[u8]) -> io::IoResult<()> { +#[inline] +pub fn escape_bytes(wr: &mut W, bytes: &[u8]) -> io::IoResult<()> { try!(wr.write_str("\"")); let mut start = 0; @@ -199,10 +200,12 @@ fn escape_bytes(wr: &mut W, bytes: &[u8]) -> io::IoResult<()> { wr.write_str("\"") } -fn escape_str(wr: &mut W, value: &str) -> io::IoResult<()> { +#[inline] +pub fn escape_str(wr: &mut W, value: &str) -> io::IoResult<()> { escape_bytes(wr, value.as_bytes()) } +#[inline] pub fn escape_char(wr: &mut W, value: char) -> io::IoResult<()> { let mut buf = [0, .. 4]; value.encode_utf8(buf);