Merge branch '0.4' of https://github.com/bluss/arrayvec into merge-0.4
* '0.4' of https://github.com/bluss/arrayvec: 0.4.9 TEST: Add test that ensures the MaybeUninit impl is used on nightly FIX: Remove use of uninitialized in ArrayString FEAT: Implement a "MaybeUninit" and use it conditionally TEST: Add test that Some(ArrayVec<[&_;_]>).is_some() MAINT: Test the 0.4 branch in travis
This commit is contained in:
+4
-1
@@ -2,6 +2,7 @@ use std::borrow::Borrow;
|
||||
use std::cmp;
|
||||
use std::fmt;
|
||||
use std::hash::{Hash, Hasher};
|
||||
use std::mem;
|
||||
use std::ptr;
|
||||
use std::ops::{Deref, DerefMut};
|
||||
use std::str;
|
||||
@@ -25,6 +26,7 @@ use serde::{Serialize, Deserialize, Serializer, Deserializer};
|
||||
/// if needed.
|
||||
#[derive(Copy)]
|
||||
pub struct ArrayString<A: Array<Item=u8>> {
|
||||
// FIXME: Use Copyable union for xs when we can
|
||||
xs: A,
|
||||
len: A::Index,
|
||||
}
|
||||
@@ -52,7 +54,8 @@ impl<A: Array<Item=u8>> ArrayString<A> {
|
||||
pub fn new() -> ArrayString<A> {
|
||||
unsafe {
|
||||
ArrayString {
|
||||
xs: ::new_array(),
|
||||
// FIXME: Use Copyable union for xs when we can
|
||||
xs: mem::zeroed(),
|
||||
len: Index::from(0),
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user