diff options
Diffstat (limited to 'compiler/rustc_serialize/src')
| -rw-r--r-- | compiler/rustc_serialize/src/serialize.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/compiler/rustc_serialize/src/serialize.rs b/compiler/rustc_serialize/src/serialize.rs index fa7e4d59fcc..0a340ac09fb 100644 --- a/compiler/rustc_serialize/src/serialize.rs +++ b/compiler/rustc_serialize/src/serialize.rs @@ -307,8 +307,7 @@ impl<S: Encoder, T: Encodable<S>> Encodable<S> for [T] { impl<S: Encoder, T: Encodable<S>> Encodable<S> for Vec<T> { fn encode(&self, s: &mut S) { - let slice: &[T] = self; - slice.encode(s); + self.as_slice().encode(s); } } @@ -332,8 +331,7 @@ impl<D: Decoder, T: Decodable<D>, A: Allocator + Default> Decodable<D> for Vec<T impl<S: Encoder, T: Encodable<S>, const N: usize> Encodable<S> for [T; N] { fn encode(&self, s: &mut S) { - let slice: &[T] = self; - slice.encode(s); + self.as_slice().encode(s); } } @@ -516,8 +514,7 @@ impl<D: Decoder, A: Allocator + Default, T: Decodable<D>> Decodable<D> for Box<T impl<S: Encoder, A: Array<Item: Encodable<S>>> Encodable<S> for SmallVec<A> { fn encode(&self, s: &mut S) { - let slice: &[A::Item] = self; - slice.encode(s); + self.as_slice().encode(s); } } |
