pub enum WcetLoopBoundSource {
Static,
HintVerified,
}Expand description
How a loop’s trip count was established (#778 phase 2).
Variants§
Static
Fully static proof: const-initialized counter, const step, const bound, exit-guaranteeing comparison — the trip count is derived by synth alone.
HintVerified
The loop is an equality-exit shape synth only bounds under an explicit
--wcet-hints assertion; the hint was CHECKED against synth’s own derived
trip count (divisibility + monotonicity + derived ≤ hint) before use. The
emitted trip count is still synth’s DERIVED value, never the raw hint.
Trait Implementations§
Source§impl Clone for WcetLoopBoundSource
impl Clone for WcetLoopBoundSource
Source§fn clone(&self) -> WcetLoopBoundSource
fn clone(&self) -> WcetLoopBoundSource
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 moreimpl Copy for WcetLoopBoundSource
Source§impl Debug for WcetLoopBoundSource
impl Debug for WcetLoopBoundSource
Source§impl<'de> Deserialize<'de> for WcetLoopBoundSource
impl<'de> Deserialize<'de> for WcetLoopBoundSource
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for WcetLoopBoundSource
Source§impl PartialEq for WcetLoopBoundSource
impl PartialEq for WcetLoopBoundSource
Source§impl Serialize for WcetLoopBoundSource
impl Serialize for WcetLoopBoundSource
impl StructuralPartialEq for WcetLoopBoundSource
Auto Trait Implementations§
impl Freeze for WcetLoopBoundSource
impl RefUnwindSafe for WcetLoopBoundSource
impl Send for WcetLoopBoundSource
impl Sync for WcetLoopBoundSource
impl Unpin for WcetLoopBoundSource
impl UnsafeUnpin for WcetLoopBoundSource
impl UnwindSafe for WcetLoopBoundSource
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.