pub fn manage<T>(&mut self, gc: &Gc<T>) -> GcRaw<T> {
      unsafe {
         let mem = gc.mem.get_mem();
         if !mem.managed_by_gc.get() {
            self.register(gc.mem);
            mem.managed_by_gc.set(true);
         }
         gc.mem
      }
   }
/// If the provided `Gc<T>` isn't managed by a GC, makes it managed by this GC.
/// Otherwise does nothing.
If the provided `Gc` isn't managed by a GC, makes it managed by this GC.
Otherwise does nothing.
If the provided ` Gc ` isn ' t managed by a GC makes it managed by this GC . Otherwise does nothing .
pub fn manage<T>(&mut self, gc: &Gc<T>) -> GcRaw<T> {
      unsafe {
         let mem = gc.mem.get_mem();
         if !mem.managed_by_gc.get() {
            self.register(gc.mem);
            mem.managed_by_gc.set(true);
         }
         gc.mem
      }
   }
pub fn manage < T > ( & mut self , gc : & Gc < T > ) -> GcRaw < T > { unsafe { let mem = gc . mem . get_mem ( ) ; if ! mem . managed_by_gc . get ( ) { self . register ( gc . mem ) ; mem . managed_by_gc . set ( true ) ; } gc . mem } }
If the provided `Gc<T>` isn't managed by a GC, makes it managed by this GC.
If the provided ` Gc<T > ` isn ' t managed by a GC makes it managed by this GC .
&mut self
gc
&Gc<T>