Struct rustc_trait_selection::traits::select::SelectionCandidateSet
source · struct SelectionCandidateSet<'tcx> {
vec: Vec<SelectionCandidate<'tcx>>,
ambiguous: bool,
}
Fields§
§vec: Vec<SelectionCandidate<'tcx>>
A list of candidates that definitely apply to the current obligation (meaning: types unify).
ambiguous: bool
If true
, then there were candidates that might or might
not have applied, but we couldn’t tell. This occurs when some
of the input types are type variables, in which case there are
various “builtin” rules that might or might not trigger.
Auto Trait Implementations§
impl<'tcx> !RefUnwindSafe for SelectionCandidateSet<'tcx>
impl<'tcx> Send for SelectionCandidateSet<'tcx>
impl<'tcx> Sync for SelectionCandidateSet<'tcx>
impl<'tcx> Unpin for SelectionCandidateSet<'tcx>
impl<'tcx> !UnwindSafe for SelectionCandidateSet<'tcx>
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
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 32 bytes