pub enum Condition<'a> {
Flag(&'a str),
OS(&'a str),
Arch(&'a str),
Impl(&'a str, Option<VersionRange>),
Not(Box<Condition<'a>>),
And(Box<Condition<'a>>, Box<Condition<'a>>),
Or(Box<Condition<'a>>, Box<Condition<'a>>),
Lit(bool),
Raw(&'a str),
}Expand description
A parsed condition expression from if/elif blocks.
Variants§
Flag(&'a str)
flag(name)
OS(&'a str)
os(name)
Arch(&'a str)
arch(name)
Impl(&'a str, Option<VersionRange>)
impl(compiler version-range)
Not(Box<Condition<'a>>)
!condition
And(Box<Condition<'a>>, Box<Condition<'a>>)
a && b
Or(Box<Condition<'a>>, Box<Condition<'a>>)
a || b
Lit(bool)
Boolean literal: true or false
Raw(&'a str)
Unparsed fallback when the condition couldn’t be fully parsed.
Trait Implementations§
Source§impl<'a> PartialEq for Condition<'a>
impl<'a> PartialEq for Condition<'a>
impl<'a> Eq for Condition<'a>
impl<'a> StructuralPartialEq for Condition<'a>
Auto Trait Implementations§
impl<'a> Freeze for Condition<'a>
impl<'a> RefUnwindSafe for Condition<'a>
impl<'a> Send for Condition<'a>
impl<'a> Sync for Condition<'a>
impl<'a> Unpin for Condition<'a>
impl<'a> UnsafeUnpin for Condition<'a>
impl<'a> UnwindSafe for Condition<'a>
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