(&self)
| 373 | } |
| 374 | } |
| 375 | pub const fn get_next(&self) -> Option<NonNull<T>> { |
| 376 | // SAFETY: next is the second field in PointersInner, which is #[repr(C)]. |
| 377 | unsafe { |
| 378 | let inner = self.inner.get(); |
| 379 | let prev = inner as *const Option<NonNull<T>>; |
| 380 | let next = prev.add(1); |
| 381 | ptr::read(next) |
| 382 | } |
| 383 | } |
| 384 | |
| 385 | pub const fn set_prev(&mut self, value: Option<NonNull<T>>) { |
| 386 | // SAFETY: prev is the first field in PointersInner, which is #[repr(C)]. |
no test coverage detected