Enum rustc_hir_typeck::method::probe::CandidateKind
source · enum CandidateKind<'tcx> {
InherentImplCandidate(SubstsRef<'tcx>, Vec<PredicateObligation<'tcx>>),
ObjectCandidate,
TraitCandidate(TraitRef<'tcx>),
WhereClauseCandidate(PolyTraitRef<'tcx>),
}
Variants§
InherentImplCandidate(SubstsRef<'tcx>, Vec<PredicateObligation<'tcx>>)
ObjectCandidate
TraitCandidate(TraitRef<'tcx>)
WhereClauseCandidate(PolyTraitRef<'tcx>)
Trait Implementations§
source§impl<'tcx> Clone for CandidateKind<'tcx>
impl<'tcx> Clone for CandidateKind<'tcx>
source§fn clone(&self) -> CandidateKind<'tcx>
fn clone(&self) -> CandidateKind<'tcx>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl<'tcx> !RefUnwindSafe for CandidateKind<'tcx>
impl<'tcx> !Send for CandidateKind<'tcx>
impl<'tcx> !Sync for CandidateKind<'tcx>
impl<'tcx> Unpin for CandidateKind<'tcx>
impl<'tcx> !UnwindSafe for CandidateKind<'tcx>
Blanket Implementations§
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: 40 bytes
Size for each variant:
InherentImplCandidate
: 32 bytesObjectCandidate
: 0 bytesTraitCandidate
: 16 bytesWhereClauseCandidate
: 24 bytes