Merge pull request #31 from bluss/as-slice

Add .as_slice(), .as_mut_slice(), .as_str()
This commit is contained in:
bluss
2016-03-01 00:04:32 +01:00
2 changed files with 15 additions and 0 deletions
+5
View File
@@ -152,6 +152,11 @@ impl<A: Array<Item=u8>> ArrayString<A> {
debug_assert!(length <= self.capacity());
self.len = Index::from(length);
}
/// Return a string slice of the whole `ArrayString`.
pub fn as_str(&self) -> &str {
self
}
}
impl<A: Array<Item=u8>> Deref for ArrayString<A> {
+10
View File
@@ -395,6 +395,16 @@ impl<A: Array> ArrayVec<A> {
self.clear();
mem::forget(self);
}
/// Return a slice containing all elements of the vector.
pub fn as_slice(&self) -> &[A::Item] {
self
}
/// Return a mutable slice containing all elements of the vector.
pub fn as_mut_slice(&mut self) -> &mut [A::Item] {
self
}
}
impl<A: Array> Deref for ArrayVec<A> {