/// Create a new `Gc` containing the given data.
/// `T: 'static` in order to create a `Gc<T>` with this method.
/// If your `T` is not static, consider `new_with_finalizer`.
///
/// When this data is garbage collected, its `drop` implementation will be run.
///
/// It is possible for this data not to be collected before the program terminates, or for
/// the program to terminate before the background thread runs its destructor. So be careful
/// when relying on this guarantee.
Create a new `Gc` containing the given data.
`T: 'static` in order to create a `Gc` with this method.
If your `T` is not static, consider `new_with_finalizer`.

When this data is garbage collected, its `drop` implementation will be run.

It is possible for this data not to be collected before the program terminates, or for
the program to terminate before the background thread runs its destructor. So be careful
when relying on this guarantee.
Create a new ` Gc ` containing the given data . ` T : ' static ` in order to create a ` Gc ` with this method . If your ` T ` is not static consider ` new_with_finalizer ` . When this data is garbage collected its ` drop ` implementation will be run . It is possible for this data not to be collected before the program terminates or for the program to terminate before the background thread runs its destructor . So be careful when relying on this guarantee .
pub fn new(v: T) -> Self
    where
        T: 'static,
    {
        let (handle, ptr) = COLLECTOR.track_with_drop(v);
        Self {
            backing_handle: handle,
            direct_ptr: ptr,
        }
    }
pub fn new ( v : T ) -> Self where T : ' static , { let ( handle , ptr ) = COLLECTOR . track_with_drop ( v ) ; Self { backing_handle : handle , direct_ptr : ptr , } }
Create a new `Gc` containing the given data.
Create a new ` Gc ` containing the given data .
v
T