(&mut self)
| 248 | |
| 249 | impl<T> Drop for PyAtomicRef<T> { |
| 250 | fn drop(&mut self) { |
| 251 | // SAFETY: We are dropping the atomic reference, so we can safely |
| 252 | // release the pointer. |
| 253 | unsafe { |
| 254 | let ptr = Radium::swap(&self.inner, null_mut(), Ordering::Relaxed); |
| 255 | if let Some(ptr) = NonNull::<PyObject>::new(ptr.cast()) { |
| 256 | let _: PyObjectRef = PyObjectRef::from_raw(ptr); |
| 257 | } |
| 258 | } |
| 259 | } |
| 260 | } |
| 261 | |
| 262 | cfg_if::cfg_if! { |