[−][src]Enum rustc_hir::hir::GenericBound

pub enum GenericBound<'hir> {
    Trait(PolyTraitRef<'hir>, TraitBoundModifier),
    LangItemTrait(LangItem, Span, HirId, &'hir GenericArgs<'hir>),
    Outlives(Lifetime),
}

The AST represents all type param bounds as types. typeck::collect::compute_bounds matches these against the "special" built-in traits (see middle::lang_items) and detects Copy, Send and Sync.

Variants

Trait(PolyTraitRef<'hir>, TraitBoundModifier)
LangItemTrait(LangItem, Span, HirId, &'hir GenericArgs<'hir>)
Outlives(Lifetime)

Implementations

impl<'_> GenericBound<'_>[src]

pub fn trait_ref(&self) -> Option<&TraitRef<'_>>[src]

pub fn span(&self) -> Span[src]

Trait Implementations

impl<'hir> Debug for GenericBound<'hir>[src]

impl<'hir, __CTX> HashStable<__CTX> for GenericBound<'hir> where
    __CTX: HashStableContext, 
[src]

Auto Trait Implementations

impl<'hir> !RefUnwindSafe for GenericBound<'hir>

impl<'hir> !Send for GenericBound<'hir>

impl<'hir> !Sync for GenericBound<'hir>

impl<'hir> Unpin for GenericBound<'hir>

impl<'hir> !UnwindSafe for GenericBound<'hir>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.