diff options
| author | Ralf Jung <post@ralfj.de> | 2018-12-22 11:02:06 +0100 |
|---|---|---|
| committer | Ralf Jung <post@ralfj.de> | 2019-01-28 10:48:38 +0100 |
| commit | 22a947f3aa4b990efa135e3593fe7365bc7c36b9 (patch) | |
| tree | 59e3051f236646814c60d51f5bcc0940f2b3e9a3 /src/liballoc | |
| parent | 630aaa4e801393c55c8327f642aec2349adfaee3 (diff) | |
| download | rust-22a947f3aa4b990efa135e3593fe7365bc7c36b9.tar.gz rust-22a947f3aa4b990efa135e3593fe7365bc7c36b9.zip | |
add macro for creating uninitialized array
Diffstat (limited to 'src/liballoc')
| -rw-r--r-- | src/liballoc/collections/btree/node.rs | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/src/liballoc/collections/btree/node.rs b/src/liballoc/collections/btree/node.rs index 8dd4aec136a..25810d680fa 100644 --- a/src/liballoc/collections/btree/node.rs +++ b/src/liballoc/collections/btree/node.rs @@ -106,11 +106,8 @@ impl<K, V> LeafNode<K, V> { LeafNode { // As a general policy, we leave fields uninitialized if they can be, as this should // be both slightly faster and easier to track in Valgrind. - // Creating a `[MaybeUninit; N]` array by first creating a - // `MaybeUninit<[MaybeUninit; N]>`; the `into_inner` is safe because the inner - // array does not require initialization. - keys: MaybeUninit::uninitialized().into_inner(), - vals: MaybeUninit::uninitialized().into_inner(), + keys: uninitialized_array![_; CAPACITY], + vals: uninitialized_array![_; CAPACITY], parent: ptr::null(), parent_idx: MaybeUninit::uninitialized(), len: 0 @@ -162,10 +159,7 @@ impl<K, V> InternalNode<K, V> { unsafe fn new() -> Self { InternalNode { data: LeafNode::new(), - // Creating a `[MaybeUninit; N]` array by first creating a - // `MaybeUninit<[MaybeUninit; N]>`; the `into_inner` is safe because the inner - // array does not require initialization. - edges: MaybeUninit::uninitialized().into_inner(), + edges: uninitialized_array![_; 2*B], } } } |
