Struct miri::concurrency::range_object_map::RangeObjectMap
source · pub struct RangeObjectMap<T> {
v: Vec<Elem<T>>,
}
Fields§
§v: Vec<Elem<T>>
Implementations§
source§impl<T> RangeObjectMap<T>
impl<T> RangeObjectMap<T>
pub fn new() -> Self
sourcefn find_offset(&self, offset: Size) -> Result<usize, usize>
fn find_offset(&self, offset: Size) -> Result<usize, usize>
Finds the position of the allocation containing the given offset. If the offset is not in an existing allocation, then returns Err containing the position where such allocation should be inserted
sourcepub fn access_type(&self, range: AllocRange) -> AccessType
pub fn access_type(&self, range: AllocRange) -> AccessType
Determines whether a given access on range
overlaps with
an existing allocation
sourcepub fn insert_at_pos(&mut self, pos: usize, range: AllocRange, data: T)
pub fn insert_at_pos(&mut self, pos: usize, range: AllocRange, data: T)
Inserts an object and its occupied range at given position
pub fn remove_pos_range(&mut self, pos_range: Range<usize>)
pub fn remove_from_pos(&mut self, pos: usize)
pub fn iter(&self) -> impl Iterator<Item = &T>
Trait Implementations§
source§impl<T: Clone> Clone for RangeObjectMap<T>
impl<T: Clone> Clone for RangeObjectMap<T>
source§fn clone(&self) -> RangeObjectMap<T>
fn clone(&self) -> RangeObjectMap<T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<T: Debug> Debug for RangeObjectMap<T>
impl<T: Debug> Debug for RangeObjectMap<T>
source§impl<T> Index<usize> for RangeObjectMap<T>
impl<T> Index<usize> for RangeObjectMap<T>
Auto Trait Implementations§
impl<T> Freeze for RangeObjectMap<T>
impl<T> RefUnwindSafe for RangeObjectMap<T>where
T: RefUnwindSafe,
impl<T> Send for RangeObjectMap<T>where
T: Send,
impl<T> Sync for RangeObjectMap<T>where
T: Sync,
impl<T> Unpin for RangeObjectMap<T>where
T: Unpin,
impl<T> UnwindSafe for RangeObjectMap<T>where
T: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 24 bytes