about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJakub Bukaj <jakub@jakub.cc>2014-11-16 10:20:35 +0100
committerJakub Bukaj <jakub@jakub.cc>2014-11-16 10:20:35 +0100
commitf7be5966dc745509e6eaad3dc1de89448baad1f8 (patch)
tree7e1e51ccefc9f2add86136492e0b03df85fddf2c
parent12144098eb0946fa925f7a0fbf52b2e4a701bf25 (diff)
parent0053fbb891316aa80f9dd25d911d46359b4952c8 (diff)
downloadrust-f7be5966dc745509e6eaad3dc1de89448baad1f8.tar.gz
rust-f7be5966dc745509e6eaad3dc1de89448baad1f8.zip
rollup merge of #18949: tomjakubowski/tojson-str
-rw-r--r--src/libserialize/json.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libserialize/json.rs b/src/libserialize/json.rs
index 524638155ac..3018d7d8523 100644
--- a/src/libserialize/json.rs
+++ b/src/libserialize/json.rs
@@ -2315,6 +2315,10 @@ impl ToJson for bool {
     fn to_json(&self) -> Json { Boolean(*self) }
 }
 
+impl ToJson for str {
+    fn to_json(&self) -> Json { String(self.into_string()) }
+}
+
 impl ToJson for string::String {
     fn to_json(&self) -> Json { String((*self).clone()) }
 }
@@ -3714,7 +3718,8 @@ mod tests {
         assert_eq!(f64::NAN.to_json(), Null);
         assert_eq!(true.to_json(), Boolean(true));
         assert_eq!(false.to_json(), Boolean(false));
-        assert_eq!("abc".to_string().to_json(), String("abc".to_string()));
+        assert_eq!("abc".to_json(), String("abc".into_string()));
+        assert_eq!("abc".into_string().to_json(), String("abc".into_string()));
         assert_eq!((1u, 2u).to_json(), list2);
         assert_eq!((1u, 2u, 3u).to_json(), list3);
         assert_eq!([1u, 2].to_json(), list2);