Expand description
Implements “Stacked Borrows”. See https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information.
Re-exports§
use std::cmp;🔒use std::fmt::Write;🔒use std::sync::atomic::AtomicBool;🔒use rustc_abi::Size;🔒use rustc_data_structures::fx::FxHashSet;🔒use rustc_middle::mir::Mutability;🔒use rustc_middle::ty::layout::HasTypingEnv;🔒use rustc_middle::ty;🔒use rustc_middle::ty::Ty;🔒use self::diagnostics::RetagCause;🔒use self::diagnostics::RetagInfo;🔒pub use self::item::Item;pub use self::item::Permission;pub use self::stack::Stack;use crate::borrow_tracker::stacked_borrows::diagnostics::AllocHistory;🔒use crate::borrow_tracker::stacked_borrows::diagnostics::DiagnosticCx;🔒use crate::borrow_tracker::stacked_borrows::diagnostics::DiagnosticCxBuilder;🔒use crate::borrow_tracker::AccessKind;🔒use crate::borrow_tracker::GlobalStateInner;🔒use crate::borrow_tracker::ProtectorKind;🔒use crate::concurrency::data_race::NaReadType;🔒use crate::concurrency::data_race::NaWriteType;🔒use crate::*;🔒
Modules§
- diagnostics
- item 🔒
- stack 🔒
Structs§
- Stacks
- Extra per-allocation state.
Enums§
- Item
Invalidation 🔒Cause - Determines whether an item was invalidated by a conflicting access, or by deallocation.
- NewPermission 🔒
- Indicates which permissions to grant to the retagged pointer.