pub(crate) fn insert(
        &self,
        object_id: ObjectId,
        new_location: SlabAddress,
    ) -> Option<SlabAddress> {
        // insert into object_id_to_location
        let location_nzu: NonZeroU64 = new_location.into();
        let location_u64 = location_nzu.get();

        let last_u64 = self
            .object_id_to_location
            .get(*object_id)
            .swap(location_u64, Ordering::Release);

        let last_address_opt = if let Some(nzu) = NonZeroU64::new(last_u64) {
            let last_address = SlabAddress::from(nzu);
            Some(last_address)
        } else {
            None
        };

        // insert into slab_tenancies
        let slab = new_location.slab();
        let slot = new_location.slot();

        let _last_oid_at_location = self.slab_tenancies[usize::from(slab)]
            .slot_to_object_id
            .get(slot)
            .swap(*object_id, Ordering::Release);

        // TODO add debug event verifier here assert_eq!(0, last_oid_at_location);

        last_address_opt
    }
Returns the previous address for this object, if it is vacating one.

# Panics

Asserts that the new location is actually unoccupied. This is a major
correctness violation if that isn't true.
src/object_location_mapper.rs