pub fn try_new_in(x: T, alloc: A) -> Result<Self, AllocError> {
        let mut boxed = Self::try_new_uninit_in(alloc)?;
        unsafe {
            boxed.as_mut_ptr().write(x);
            Ok(boxed.assume_init())
        }
    }
Constructs a new `Box` with uninitialized contents, with the memory
being filled with `0` bytes in the provided allocator.

See [`MaybeUninit::zeroed`][zeroed] for examples of correct and incorrect usage
of this method.

# Examples

```
#![feature(allocator_api, new_uninit)]

use std::alloc::System;

let zero = Box::<u32, _>::new_zeroed_in(System);
let zero = unsafe { zero.assume_init() };

assert_eq!(*zero, 0)
```
benchmarks/haystacks/code/rust-library.rs