Enum cfg_expr::expr::TargetPredicate [−][src]
pub enum TargetPredicate {
Arch(Arch),
Endian(Endian),
Env(Env),
Family(Family),
Os(Os),
PointerWidth(u8),
Vendor(Vendor),
}Expand description
All predicates that pertains to a target, except for target_feature
Variants
Tuple Fields of Arch
0: ArchTuple Fields of Endian
0: EndianTuple Fields of Env
0: Envtarget_family
This also applies to the bare unix and windows
predicates.
Tuple Fields of Family
0: FamilyTuple Fields of Os
0: OsTuple Fields of PointerWidth
0: u8Tuple Fields of Vendor
0: VendorImplementations
Returns true of the predicate matches the specified target
use cfg_expr::{targets::*, expr::TargetPredicate as tp};
let win = get_builtin_target_by_triple("x86_64-pc-windows-msvc").unwrap();
assert!(
tp::Arch(Arch::x86_64).matches(win) &&
tp::Endian(Endian::little).matches(win) &&
tp::Env(Env::msvc).matches(win) &&
tp::Family(Family::windows).matches(win) &&
tp::Os(Os::windows).matches(win) &&
tp::PointerWidth(64).matches(win) &&
tp::Vendor(Vendor::pc).matches(win)
);Trait Implementations
This method tests for self and other values to be equal, and is used
by ==. Read more
This method tests for !=.
Auto Trait Implementations
impl RefUnwindSafe for TargetPredicate
impl Send for TargetPredicate
impl Sync for TargetPredicate
impl Unpin for TargetPredicate
impl UnwindSafe for TargetPredicate
Blanket Implementations
Mutably borrows from an owned value. Read more