(self, fc: &Finalization<'gc>)
| 79 | /// be dropped this collection cycle. |
| 80 | #[inline] |
| 81 | pub fn resurrect(self, fc: &Finalization<'gc>) -> Option<Gc<'gc, T>> { |
| 82 | // SAFETY: We know that we are currently marking, so any non-dropped pointer is safe to |
| 83 | // resurrect. |
| 84 | if unsafe { self.inner.ptr.as_ref() }.header.is_live() { |
| 85 | Gc::resurrect(fc, self.inner); |
| 86 | Some(self.inner) |
| 87 | } else { |
| 88 | None |
| 89 | } |
| 90 | } |
| 91 | |
| 92 | /// Returns true if two `GcWeak`s point to the same allocation. |
| 93 | /// |