pub trait Undroppable {
type State;
// Required methods
spec fn constructor_requires(self, s: Self::State) -> bool;
spec fn constructor_ensures(self, s0: Self::State, s1: Self::State) -> bool;
proof fn constructor_spec(self, tracked s: &mut Self::State);
}Required Associated Types§
Required Methods§
Sourcespec fn constructor_requires(self, s: Self::State) -> bool
spec fn constructor_requires(self, s: Self::State) -> bool
Sourcespec fn constructor_ensures(self, s0: Self::State, s1: Self::State) -> bool
spec fn constructor_ensures(self, s0: Self::State, s1: Self::State) -> bool
Sourceproof fn constructor_spec(self, tracked s: &mut Self::State)
proof fn constructor_spec(self, tracked s: &mut Self::State)
requires
self.constructor_requires(*old(s)),ensuresself.constructor_ensures(*old(s), *s),