pub enum DiffSet<SegmentType: Segment> {
Unchanged,
Removed,
Shrinked,
Splitted(RangeArea<SegmentType>),
}
Expand description
当前 VmArea 和另一个给定的需要 unmap 的区间的相交关系
Variants§
Unchanged
该区间和给定区间没有相交
Removed
当前区间完全被给定区间覆盖,因此应该删除
Shrinked
当前区间有一边和给定区间相交,为了让出地址空间需要缩短
Splitted(RangeArea<SegmentType>)
当前区间覆盖了给定区间,为了让出地址空间需要分裂。返回分出的右半边
Auto Trait Implementations§
impl<SegmentType> Freeze for DiffSet<SegmentType>where
SegmentType: Freeze,
impl<SegmentType> RefUnwindSafe for DiffSet<SegmentType>where
SegmentType: RefUnwindSafe,
impl<SegmentType> Send for DiffSet<SegmentType>where
SegmentType: Send,
impl<SegmentType> Sync for DiffSet<SegmentType>where
SegmentType: Sync,
impl<SegmentType> Unpin for DiffSet<SegmentType>where
SegmentType: Unpin,
impl<SegmentType> UnwindSafe for DiffSet<SegmentType>where
SegmentType: 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