pub fn new_uninit(journal: &Journal<A>) -> Parc<MaybeUninit<T>, A> {
        unsafe {
            Parc::from_inner(Ptr::from_mut(A::new(
                ParcInner {
                    counter: Counter {
                        strong: 1,
                        weak: 1,
                        lock: VCell::new(0),
                    },

                    #[cfg(not(feature = "no_volatile_pointers"))]
                    vlist: VCell::new(VWeakList::default()),

                    marker: PhantomData,
                    value: MaybeUninit::<T>::uninit(),
                },
                journal,
            )))
        }
    }
/// Constructs a new `Parc` with uninitialized contents.
///
/// # Examples
///
/// ```
/// use corundum::alloc::heap::*;
/// use corundum::sync::Parc;
///
/// corundum::transaction(|j| {
///     let mut five = Parc::<u32,Heap>::new_uninit(j);
///
///     let five = unsafe {
///         // Deferred initialization:
///         Parc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);
///
///         five.assume_init()
///     };
///
///     assert_eq!(*five, 5)
/// }).unwrap();
/// ```
Constructs a new `Parc` with uninitialized contents.
Constructs a new ` Parc ` with uninitialized contents .
pub fn new_uninit(journal: &Journal<A>) -> Parc<MaybeUninit<T>, A> {
        unsafe {
            Parc::from_inner(Ptr::from_mut(A::new(
                ParcInner {
                    counter: Counter {
                        strong: 1,
                        weak: 1,
                        lock: VCell::new(0),
                    },
                    #[cfg(not(feature = "no_volatile_pointers"))]
                    vlist: VCell::new(VWeakList::default()),
                    marker: PhantomData,
                    value: MaybeUninit::<T>::uninit(),
                },
                journal,
            )))
        }
    }
pub fn new_uninit ( journal : & Journal < A > ) -> Parc < MaybeUninit < T > , A > { unsafe { Parc :: from_inner ( Ptr :: from_mut ( A :: new ( ParcInner { counter : Counter { strong : 1 , weak : 1 , lock : VCell :: new ( 0 ) , } , # [ cfg ( not ( feature " " ) ) ] vlist : VCell :: new ( VWeakList :: default ( ) ) , marker : PhantomData , value : MaybeUninit :: < T > :: uninit ( ) , } , journal , ) ) ) } }
Constructs a new `Parc` with uninitialized contents.
Constructs a new ` Parc ` with uninitialized contents .
journal
&Journal<A>
examples
```
use corundum::alloc::heap::*;
use corundum::sync::Parc.

:transaction(|j| {
let mut five = Parc::::new_uninit(j).

let five = unsafe {
Deferred initialization:
Parc::get_mut_unchecked(&mut five).as_mut_ptr().write(5).

five.assume_init()
}.


` ` ` use corundum :: alloc :: heap :: * ; use corundum :: sync :: Parc . : transaction ( |j| { let mut five = Parc :::: new_uninit ( j ) . let five = unsafe { Deferred initialization : Parc :: get_mut_unchecked ( &mut five ) . as_mut_ptr () . write ( 5 ) . five . assume_init () } .