Enum rustc_trans::middle::infer::SubregionOriginUnstable [-] [+] [src]

pub enum SubregionOrigin<'tcx> {
    Subtype(TypeTrace<'tcx>),
    InfStackClosure(Span),
    InvokeClosure(Span),
    DerefPointer(Span),
    FreeVariable(Span, u32),
    IndexSlice(Span),
    RelateObjectBound(Span),
    RelateParamBound(Span, &'tcx TyS<'tcx>),
    RelateRegionParamBound(Span),
    RelateDefaultParamBound(Span, &'tcx TyS<'tcx>),
    Reborrow(Span),
    ReborrowUpvar(Span, UpvarId),
    ReferenceOutlivesReferent(&'tcx TyS<'tcx>, Span),
    ExprTypeIsNotInScope(&'tcx TyS<'tcx>, Span),
    BindingTypeIsNotValidAtDecl(Span),
    CallRcvr(Span),
    CallArg(Span),
    CallReturn(Span),
    Operand(Span),
    AddrOf(Span),
    AutoBorrow(Span),
    SafeDestructor(Span),
}

The origin of a r1 <= r2 constraint.

See error_reporting.rs for more details

Variants

Subtype
InfStackClosure
InvokeClosure
DerefPointer
FreeVariable
IndexSlice
RelateObjectBound
RelateParamBound
RelateRegionParamBound
RelateDefaultParamBound
Reborrow
ReborrowUpvar
ReferenceOutlivesReferent
ExprTypeIsNotInScope
BindingTypeIsNotValidAtDecl
CallRcvr
CallArg
CallReturn
Operand
AddrOf
AutoBorrow
SafeDestructor

Methods

impl<'tcx> SubregionOrigin<'tcx>

fn span(&self) -> Span

Trait Implementations

impl<'tcx> Repr<'tcx> for SubregionOrigin<'tcx>

fn repr(&self, tcx: &ctxt<'tcx>) -> String

Derived Implementations

impl<'tcx> Debug for SubregionOrigin<'tcx>

fn fmt(&self, __arg_0: &mut Formatter) -> Result<(), Error>

impl<'tcx> Clone for SubregionOrigin<'tcx>

fn clone(&self) -> SubregionOrigin<'tcx>

fn clone_from(&mut self, source: &Self)