pub fn ptr_hash<H: Hasher>(&self, state: &mut H) {
        match self.inner.as_ref() {
            Some(arc) => {
                state.write_u8(1);
                ptr::hash(Arc::as_ptr(arc), state);
            }
            None => {
                state.write_u8(0);
            }
        }
    }
Hashes the internal state of this `Shared` in a way that's compatible with `ptr_eq`.
futures-util/src/future/future/shared.rs