pub struct SmartGuard {
pub param: String,
pub predicate: Spanned<ResolvedExpr>,
}Expand description
Refinement smart-constructor guard a SimpOmegaUnfold strategy
found in the law’s fn unfold chain. param is the smart
constructor’s input parameter name; predicate is the Bool
subject of its match true/false → Ok/Err body. Backends emit
by_cases h_<v> : <substituted predicate> for each law-given by
rewriting param to <v> inside the predicate.
Fields§
§param: String§predicate: Spanned<ResolvedExpr>Trait Implementations§
Source§impl Clone for SmartGuard
impl Clone for SmartGuard
Source§fn clone(&self) -> SmartGuard
fn clone(&self) -> SmartGuard
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !Freeze for SmartGuard
impl RefUnwindSafe for SmartGuard
impl Send for SmartGuard
impl Sync for SmartGuard
impl Unpin for SmartGuard
impl UnsafeUnpin for SmartGuard
impl UnwindSafe for SmartGuard
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