Struct rustc_borrowck::BorrowckCtxt [] [src]

pub struct BorrowckCtxt<'a, 'tcx: 'a> {
    // some fields omitted
}
Unstable (rustc_private)

Methods

impl<'a, 'tcx> BorrowckCtxt<'a, 'tcx>
[src]

fn is_subregion_of(&self, r_sub: Region, r_sup: Region) -> bool

fn report(&self, err: BckError<'tcx>)

fn report_use_of_moved_value(&self, use_span: Span, use_kind: MovedValueUseKind, lp: &LoanPath<'tcx>, the_move: &Move, moved_lp: &LoanPath<'tcx>, _param_env: &ParameterEnvironment<'tcx>)

fn report_partial_reinitialization_of_uninitialized_structure(&self, span: Span, lp: &LoanPath<'tcx>)

fn report_reassigned_immutable_variable(&self, span: Span, lp: &LoanPath<'tcx>, assign: &Assignment)

fn span_err(&self, s: Span, m: &str)

fn struct_span_err<S: Into<MultiSpan>>(&self, s: S, m: &str) -> DiagnosticBuilder<'a>

fn struct_span_err_with_code<S: Into<MultiSpan>>(&self, s: S, msg: &str, code: &str) -> DiagnosticBuilder<'a>

fn span_err_with_code<S: Into<MultiSpan>>(&self, s: S, msg: &str, code: &str)

fn bckerr_to_string(&self, err: &BckError<'tcx>) -> String

fn report_aliasability_violation(&self, span: Span, kind: AliasableViolationKind, cause: AliasableReason)

fn note_and_explain_bckerr(&self, db: &mut DiagnosticBuilder, err: BckError<'tcx>, error_span: Span)

fn append_loan_path_to_string(&self, loan_path: &LoanPath<'tcx>, out: &mut String)

fn append_autoderefd_loan_path_to_string(&self, loan_path: &LoanPath<'tcx>, out: &mut String)

fn loan_path_to_string(&self, loan_path: &LoanPath<'tcx>) -> String

fn cmt_to_string(&self, cmt: &cmt_<'tcx>) -> String

fn cmt_to_path_or_string(&self, cmt: &cmt<'tcx>) -> String

Trait Implementations

impl<'a, 'tcx, 'v> Visitor<'v> for BorrowckCtxt<'a, 'tcx>
[src]

fn visit_fn(&mut self, fk: FnKind<'v>, fd: &'v FnDecl, b: &'v Block, s: Span, id: NodeId)

fn visit_item(&mut self, item: &Item)

Visit the top-level item and (optionally) nested items. See visit_nested_item for details. Read more

fn visit_trait_item(&mut self, ti: &TraitItem)

fn visit_impl_item(&mut self, ii: &ImplItem)

fn visit_nested_item(&mut self, id: ItemId)

Invoked when a nested item is encountered. By default, does nothing. If you want a deep walk, you need to override to fetch the item contents. But most of the time, it is easier (and better) to invoke Crate::visit_all_items, which visits all items in the crate in some order (but doesn't respect nesting). Read more

fn visit_name(&mut self, _span: Span, _name: Name)

fn visit_mod(&mut self, m: &'v Mod, _s: Span, _n: u32)

fn visit_foreign_item(&mut self, i: &'v ForeignItem)

fn visit_local(&mut self, l: &'v Local)

fn visit_block(&mut self, b: &'v Block)

fn visit_stmt(&mut self, s: &'v Spanned<Stmt_>)

fn visit_arm(&mut self, a: &'v Arm)

fn visit_pat(&mut self, p: &'v Pat)

fn visit_decl(&mut self, d: &'v Spanned<Decl_>)

fn visit_expr(&mut self, ex: &'v Expr)

fn visit_expr_post(&mut self, _ex: &'v Expr)

fn visit_ty(&mut self, t: &'v Ty)

fn visit_generics(&mut self, g: &'v Generics)

fn visit_trait_ref(&mut self, t: &'v TraitRef)

fn visit_ty_param_bound(&mut self, bounds: &'v TyParamBound)

fn visit_poly_trait_ref(&mut self, t: &'v PolyTraitRef, m: &'v TraitBoundModifier)

fn visit_variant_data(&mut self, s: &'v VariantData, Name, &'v Generics, u32, Span)

fn visit_struct_field(&mut self, s: &'v StructField)

fn visit_enum_def(&mut self, enum_definition: &'v EnumDef, generics: &'v Generics, item_id: u32, Span)

fn visit_variant(&mut self, v: &'v Spanned<Variant_>, g: &'v Generics, item_id: u32)

fn visit_lifetime(&mut self, lifetime: &'v Lifetime)

fn visit_lifetime_def(&mut self, lifetime: &'v LifetimeDef)

fn visit_path(&mut self, path: &'v Path, _id: u32)

fn visit_path_list_item(&mut self, prefix: &'v Path, item: &'v Spanned<PathListItem_>)

fn visit_path_segment(&mut self, path_span: Span, path_segment: &'v PathSegment)

fn visit_path_parameters(&mut self, path_span: Span, path_parameters: &'v PathParameters)

fn visit_assoc_type_binding(&mut self, type_binding: &'v TypeBinding)

fn visit_attribute(&mut self, _attr: &'v Spanned<Attribute_>)

fn visit_macro_def(&mut self, macro_def: &'v MacroDef)

fn visit_vis(&mut self, vis: &'v Visibility)