pub enum Pmtl<V>where
V: Clone,{
True,
False,
Atom(V),
And(Vec<Pmtl<V>>),
Or(Vec<Pmtl<V>>),
Not(Box<Pmtl<V>>),
Implies(Box<(Pmtl<V>, Pmtl<V>)>),
Historically(Box<Pmtl<V>>, Time, Time),
Once(Box<Pmtl<V>>, Time, Time),
Since(Box<(Pmtl<V>, Pmtl<V>)>, Time, Time),
}Expand description
A Past-time Metric Temporal Logic (PMTL) formula.
Variants§
True
The true formula.
False
The false formula.
Atom(V)
An atomic formula.
And(Vec<Pmtl<V>>)
Logical disjunction of a list of formulae.
Or(Vec<Pmtl<V>>)
Logical conjunction of a list of formulae.
Not(Box<Pmtl<V>>)
Logical negation of a formula.
Implies(Box<(Pmtl<V>, Pmtl<V>)>)
Logical implication of a antecedent formula and a consequent formula.
Historically(Box<Pmtl<V>>, Time, Time)
Temporal historical predicate over a formula (with bounds).
Once(Box<Pmtl<V>>, Time, Time)
Temporal previously predicate over a formula (with bounds).
Since(Box<(Pmtl<V>, Pmtl<V>)>, Time, Time)
Temporal since predicate over a formula (with bounds).
Trait Implementations§
impl<V> Eq for Pmtl<V>
impl<V> StructuralPartialEq for Pmtl<V>where
V: Clone,
Auto Trait Implementations§
impl<V> Freeze for Pmtl<V>where
V: Freeze,
impl<V> RefUnwindSafe for Pmtl<V>where
V: RefUnwindSafe,
impl<V> Send for Pmtl<V>where
V: Send,
impl<V> Sync for Pmtl<V>where
V: Sync,
impl<V> Unpin for Pmtl<V>where
V: Unpin,
impl<V> UnsafeUnpin for Pmtl<V>where
V: UnsafeUnpin,
impl<V> UnwindSafe for Pmtl<V>where
V: UnwindSafe,
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,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more