pub trait MonotonicCountToken: Sized {
// Required methods
spec fn instance_id(&self) -> InstanceId;
spec fn count(&self) -> nat;
proof fn weaken(tracked &self, count: nat) -> tracked s : Self;
proof fn arbitrary() -> tracked s : Self;
}
Expand description
Interface for VerusSync tokens created for a field marked with the persistent_count
strategy.
VerusSync Strategy | Field type | Token trait |
---|---|---|
persistent_count | nat | MonotonicCountToken + Copy |
A token represents a “lower bound” on the field value, which increases monotonically.
Required Methods§
Sourcespec fn instance_id(&self) -> InstanceId
spec fn instance_id(&self) -> InstanceId
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.