Add Default implementation for ArrayString

Fixes #67.
This commit is contained in:
Tobias Bucher
2017-09-11 18:33:47 +02:00
committed by tbu-
parent f231b4f10e
commit 9d0f801763
2 changed files with 16 additions and 0 deletions
+6
View File
@@ -31,6 +31,12 @@ pub struct ArrayString<A: Array<Item=u8>> {
len: A::Index,
}
impl<A: Array<Item=u8>> Default for ArrayString<A> {
fn default() -> ArrayString<A> {
ArrayString::new()
}
}
impl<A: Array<Item=u8>> ArrayString<A> {
/// Create a new empty `ArrayString`.
///
+10
View File
@@ -456,3 +456,13 @@ fn test_sizes() {
let v = ArrayVec::from([0u8; 1 << 16]);
assert_eq!(vec![0u8; v.len()], &v[..]);
}
#[test]
fn test_default() {
use std::net;
let s: ArrayString<[u8; 4]> = Default::default();
// Something without `Default` implementation.
let v: ArrayVec<[net::TcpStream; 4]> = Default::default();
assert_eq!(s.len(), 0);
assert_eq!(v.len(), 0);
}