unsafe fn release(memory: GcRaw<T>) {
      #[cfg(feature = "trace-gc")]
      {
         println!("gcmem | releasing {:p}", memory.0);
      }
      let mem = memory.get_mem();
      if mem.rc.get() > 0 {
         mem.managed_by_gc.set(false);
      } else {
         GcMem::deallocate(memory);
      }
   }
/// Deallocates the given memory or marks it as unmanaged if there are foreign references to it.
Deallocates the given memory or marks it as unmanaged if there are foreign references to it.
Deallocates the given memory or marks it as unmanaged if there are foreign references to it .
unsafe fn release(memory: GcRaw<T>) {
      #[cfg(feature = "trace-gc")]
      {
         println!("gcmem | releasing {:p}", memory.0);
      }
      let mem = memory.get_mem();
      if mem.rc.get() > 0 {
         mem.managed_by_gc.set(false);
      } else {
         GcMem::deallocate(memory);
      }
   }
unsafe fn release ( memory : GcRaw < T > ) { # [ cfg ( feature " " ) ] { println ! ( " " memory 0 ) ; } let mem = memory . get_mem ( ) ; if mem . rc . get ( ) > 0 { mem . managed_by_gc . set ( false ) ; } else { GcMem :: deallocate ( memory ) ; } }
Deallocates the given memory or marks it as unmanaged if there are foreign references to it.
Deallocates the given memory or marks it as unmanaged if there are foreign references to it .
memory
GcRaw<T>