Enum rustc::infer::SubregionOrigin
[−]
[src]
pub enum SubregionOrigin<'tcx> { Subtype(TypeTrace<'tcx>), InfStackClosure(Span), InvokeClosure(Span), DerefPointer(Span), FreeVariable(Span, NodeId), IndexSlice(Span), RelateObjectBound(Span), RelateParamBound(Span, Ty<'tcx>), RelateRegionParamBound(Span), RelateDefaultParamBound(Span, Ty<'tcx>), Reborrow(Span), ReborrowUpvar(Span, UpvarId), DataBorrowed(Ty<'tcx>, Span), ReferenceOutlivesReferent(Ty<'tcx>, Span), ParameterInScope(ParameterOrigin, Span), ExprTypeIsNotInScope(Ty<'tcx>, Span), BindingTypeIsNotValidAtDecl(Span), CallRcvr(Span), CallArg(Span), CallReturn(Span), Operand(Span), AddrOf(Span), AutoBorrow(Span), SafeDestructor(Span), CompareImplMethodObligation { span: Span, item_name: Name, impl_item_def_id: DefId, trait_item_def_id: DefId, lint_id: Option<NodeId>, }, }
🔬 This is a nightly-only experimental API. (
rustc_private
)The origin of a r1 <= r2
constraint.
See error_reporting
module for more details
Variants
Subtype(TypeTrace<'tcx>)
🔬 This is a nightly-only experimental API. (
rustc_private
)InfStackClosure(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)InvokeClosure(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)DerefPointer(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)FreeVariable(Span, NodeId)
🔬 This is a nightly-only experimental API. (
rustc_private
)IndexSlice(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)RelateObjectBound(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)RelateParamBound(Span, Ty<'tcx>)
🔬 This is a nightly-only experimental API. (
rustc_private
)RelateRegionParamBound(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)RelateDefaultParamBound(Span, Ty<'tcx>)
🔬 This is a nightly-only experimental API. (
rustc_private
)Reborrow(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)ReborrowUpvar(Span, UpvarId)
🔬 This is a nightly-only experimental API. (
rustc_private
)DataBorrowed(Ty<'tcx>, Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)ReferenceOutlivesReferent(Ty<'tcx>, Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)ParameterInScope(ParameterOrigin, Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)ExprTypeIsNotInScope(Ty<'tcx>, Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)BindingTypeIsNotValidAtDecl(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)CallRcvr(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)CallArg(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)CallReturn(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)Operand(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)AddrOf(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)AutoBorrow(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)SafeDestructor(Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)CompareImplMethodObligation
🔬 This is a nightly-only experimental API. (
rustc_private
)Fields of CompareImplMethodObligation
span: Span | 🔬 This is a nightly-only experimental API. ( rustc_private ) |
item_name: Name | 🔬 This is a nightly-only experimental API. ( rustc_private ) |
impl_item_def_id: DefId | 🔬 This is a nightly-only experimental API. ( rustc_private ) |
trait_item_def_id: DefId | 🔬 This is a nightly-only experimental API. ( rustc_private ) |
lint_id: Option<NodeId> | 🔬 This is a nightly-only experimental API. ( rustc_private ) |
Methods
impl<'tcx> SubregionOrigin<'tcx>
[src]
fn span(&self) -> Span
🔬 This is a nightly-only experimental API. (
rustc_private
)fn from_obligation_cause<F>(cause: &ObligationCause<'tcx>, default: F) -> Self where F: FnOnce() -> Self
🔬 This is a nightly-only experimental API. (
rustc_private
)Trait Implementations
impl<'tcx> Clone for SubregionOrigin<'tcx>
[src]
fn clone(&self) -> SubregionOrigin<'tcx>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more