(&self, i: usize)
| 143 | unsafe { |
| 144 | libc::munmap(self.ptr.cast(), self.cap * size_of::<T>()); |
| 145 | } |
| 146 | } |
| 147 | } |
| 148 | |
| 149 | /// Append-only segmented arena of fixed-stride `G` entries. Entry `i` lives |
| 150 | /// at segment `i >> SEG_BITS`, offset `(i & SEG_MASK) * stride` — no entry |
| 151 | /// ever straddles a segment. |
| 152 | struct SegStore { |
| 153 | stride: usize, |
| 154 | segs: Vec<HugeVec<G>>, |
| 155 | entries: usize, |
| 156 | } |