pub struct Bound { /* private fields */ }Expand description
How many times a loop runs at most, and what that rests on.
For correctness. A pass that deletes an iteration, peels one off, or decides a memory access is in bounds needs one of these. The count cannot be read without the assumptions, which is section 7.7’s defence against a caller proving two of three and forgetting the third.
Implementations§
Source§impl Bound
impl Bound
Sourcepub fn parts(&self) -> (Count, &[Assumption])
pub fn parts(&self) -> (Count, &[Assumption])
The count and everything it rests on, together, because they cannot be asked for apart.
Sourcepub fn assumptions(&self) -> &[Assumption]
pub fn assumptions(&self) -> &[Assumption]
What has to be proved before the count means anything.
Trait Implementations§
impl Eq for Bound
impl StructuralPartialEq for Bound
Auto Trait Implementations§
impl Freeze for Bound
impl RefUnwindSafe for Bound
impl Send for Bound
impl Sync for Bound
impl Unpin for Bound
impl UnsafeUnpin for Bound
impl UnwindSafe for Bound
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