3 pub type Timestamp = u64;
5 /// Information about a potentially mutable borrow
6 #[derive(Copy, Clone, Debug, Hash, PartialEq, Eq)]
8 /// A unique, mutable reference
10 /// Any raw pointer, or a shared borrow with interior mutability
14 /// Information about any kind of borrow
15 #[derive(Copy, Clone, Debug, Hash, PartialEq, Eq)]
17 /// A mutable borrow, a raw pointer, or a shared borrow with interior mutability
19 /// A shared borrow without interior mutability
23 /// An item in the borrow stack
24 #[derive(Copy, Clone, Debug, Hash, PartialEq, Eq)]
25 pub enum BorStackItem {
26 /// Defines which references are permitted to mutate *if* the location is not frozen
28 /// A barrier, tracking the function it belongs to by its index on the call stack
32 impl Default for Borrow {
33 fn default() -> Self {