Enum rustc_mir::borrow_check::diagnostics::explain_borrow::BorrowExplanation [−][src]
pub(in borrow_check) enum BorrowExplanation { UsedLater(LaterUseKind, Span, Option<Span>), UsedLaterInLoop(LaterUseKind, Span, Option<Span>), UsedLaterWhenDropped { drop_loc: Location, dropped_local: Local, should_note_order: bool, }, MustBeValidFor { category: ConstraintCategory, from_closure: bool, span: Span, region_name: RegionName, opt_place_desc: Option<String>, }, Unexplained, }
Variants
UsedLater(LaterUseKind, Span, Option<Span>)UsedLaterInLoop(LaterUseKind, Span, Option<Span>)Show fields
Show fields
Fields of MustBeValidFor
category: ConstraintCategoryfrom_closure: boolspan: Spanregion_name: RegionNameopt_place_desc: Option<String>Implementations
pub(in borrow_check) fn add_explanation_to_diagnostic<'tcx>(
&self,
tcx: TyCtxt<'tcx>,
body: &Body<'tcx>,
local_names: &IndexVec<Local, Option<Symbol>>,
err: &mut DiagnosticBuilder<'_>,
borrow_desc: &str,
borrow_span: Option<Span>,
multiple_borrow_span: Option<(Span, Span)>
)pub(in borrow_check) fn add_lifetime_bound_suggestion_to_diagnostic(
&self,
err: &mut DiagnosticBuilder<'_>,
category: &ConstraintCategory,
span: Span,
region_name: &RegionName
)Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for BorrowExplanationimpl !Send for BorrowExplanationimpl !Sync for BorrowExplanationimpl Unpin for BorrowExplanationimpl UnwindSafe for BorrowExplanationBlanket Implementations
Layout
Note: Most layout information is completely unstable and may be different between compiler versions and platforms. 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: 128 bytes