[−][src]Enum rustc_mir_build::build::matches::TestKind
Variants
Test the branches of enum.
Fields of Switch
adt_def: &'tcx AdtDefThe enum being tested
variants: BitSet<VariantIdx>The set of variants that we should create a branch for. We also create an additional "otherwise" case.
Test what value an integer, bool or char has.
Fields of SwitchInt
switch_ty: Ty<'tcx>The type of the value that we're testing.
options: FxIndexMap<&'tcx Const<'tcx>, u128>The (ordered) set of values that we test for.
For integers and chars we create a branch to each of the values in
options, as well as an "otherwise" branch for all other values, even
in the (rare) case that options is exhaustive.
For bool we always generate two edges, one for true and one for
false.
Test for equality with value, possibly after an unsizing coercion to
ty,
Range(PatRange<'tcx>)Test whether the value falls within an inclusive or exclusive range
Test length of the slice is equal to len
Trait Implementations
impl<'tcx> Clone for TestKind<'tcx>[src]
impl<'tcx> Debug for TestKind<'tcx>[src]
impl<'tcx> PartialEq<TestKind<'tcx>> for TestKind<'tcx>[src]
pub fn eq(&self, other: &TestKind<'tcx>) -> bool[src]
pub fn ne(&self, other: &TestKind<'tcx>) -> bool[src]
impl<'tcx> StructuralPartialEq for TestKind<'tcx>[src]
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for TestKind<'tcx>
impl<'tcx> !Send for TestKind<'tcx>
impl<'tcx> !Sync for TestKind<'tcx>
impl<'tcx> Unpin for TestKind<'tcx>
impl<'tcx> !UnwindSafe for TestKind<'tcx>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<'a, T> Captures<'a> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,