about summary refs log tree commit diff
path: root/src/librustc_save_analysis
diff options
context:
space:
mode:
authorEduard-Mihai Burtescu <edy.burt@gmail.com>2020-06-25 23:41:36 +0300
committerEduard-Mihai Burtescu <edy.burt@gmail.com>2020-07-03 00:04:48 +0300
commit874f406ffdda1533cbbc04bc8fd48e7d9da59c47 (patch)
tree568c2521ac3216572c69ad7bb361c958e34f3e98 /src/librustc_save_analysis
parent3503f565e1fb7296983757d2716346f48a4a262b (diff)
Use 'tcx for references to AccessLevels wherever possible.
Diffstat (limited to 'src/librustc_save_analysis')
-rw-r--r--src/librustc_save_analysis/dump_visitor.rs12
-rw-r--r--src/librustc_save_analysis/lib.rs21
-rw-r--r--src/librustc_save_analysis/sig.rs74
3 files changed, 34 insertions, 73 deletions
diff --git a/src/librustc_save_analysis/dump_visitor.rs b/src/librustc_save_analysis/dump_visitor.rs
index 38be97fc8d9..bd3724449fa 100644
--- a/src/librustc_save_analysis/dump_visitor.rs
+++ b/src/librustc_save_analysis/dump_visitor.rs
@@ -72,12 +72,12 @@ macro_rules! access_from_vis {
     };
 }
 
-pub struct DumpVisitor<'l, 'tcx> {
-    pub save_ctxt: SaveContext<'l, 'tcx>,
+pub struct DumpVisitor<'tcx> {
+    pub save_ctxt: SaveContext<'tcx>,
     tcx: TyCtxt<'tcx>,
     dumper: Dumper,
 
-    span: SpanUtils<'l>,
+    span: SpanUtils<'tcx>,
     // Set of macro definition (callee) spans, and the set
     // of macro use (callsite) spans. We store these to ensure
     // we only write one macro def per unique macro definition, and
@@ -86,8 +86,8 @@ pub struct DumpVisitor<'l, 'tcx> {
     // macro_calls: FxHashSet<Span>,
 }
 
-impl<'l, 'tcx> DumpVisitor<'l, 'tcx> {
-    pub fn new(save_ctxt: SaveContext<'l, 'tcx>) -> DumpVisitor<'l, 'tcx> {
+impl<'tcx> DumpVisitor<'tcx> {
+    pub fn new(save_ctxt: SaveContext<'tcx>) -> DumpVisitor<'tcx> {
         let span_utils = SpanUtils::new(&save_ctxt.tcx.sess);
         let dumper = Dumper::new(save_ctxt.config.clone());
         DumpVisitor {
@@ -1160,7 +1160,7 @@ impl<'l, 'tcx> DumpVisitor<'l, 'tcx> {
     }
 }
 
-impl<'l, 'tcx> Visitor<'tcx> for DumpVisitor<'l, 'tcx> {
+impl<'tcx> Visitor<'tcx> for DumpVisitor<'tcx> {
     type Map = Map<'tcx>;
 
     fn nested_visit_map(&mut self) -> intravisit::NestedVisitorMap<Self::Map> {
diff --git a/src/librustc_save_analysis/lib.rs b/src/librustc_save_analysis/lib.rs
index 1ac91289a86..5ecb256719f 100644
--- a/src/librustc_save_analysis/lib.rs
+++ b/src/librustc_save_analysis/lib.rs
@@ -48,10 +48,10 @@ use rls_data::{
 
 use log::{debug, error, info};
 
-pub struct SaveContext<'l, 'tcx: 'l> {
+pub struct SaveContext<'tcx> {
     tcx: TyCtxt<'tcx>,
     maybe_typeck_tables: Option<&'tcx ty::TypeckTables<'tcx>>,
-    access_levels: &'l AccessLevels,
+    access_levels: &'tcx AccessLevels,
     span_utils: SpanUtils<'tcx>,
     config: Config,
     impl_counter: Cell<u32>,
@@ -64,7 +64,7 @@ pub enum Data {
     RelationData(Relation, Impl),
 }
 
-impl<'l, 'tcx> SaveContext<'l, 'tcx> {
+impl<'tcx> SaveContext<'tcx> {
     /// Gets the type-checking side-tables for the current body.
     /// As this will ICE if called outside bodies, only call when working with
     /// `Expr` or `Pat` nodes (they are guaranteed to be found only in bodies).
@@ -917,7 +917,7 @@ impl<'l> Visitor<'l> for PathCollector<'l> {
 
 /// Defines what to do with the results of saving the analysis.
 pub trait SaveHandler {
-    fn save(&mut self, save_ctxt: &SaveContext<'_, '_>, analysis: &Analysis);
+    fn save(&mut self, save_ctxt: &SaveContext<'_>, analysis: &Analysis);
 }
 
 /// Dump the save-analysis results to a file.
@@ -931,7 +931,7 @@ impl<'a> DumpHandler<'a> {
         DumpHandler { odir, cratename: cratename.to_owned() }
     }
 
-    fn output_file(&self, ctx: &SaveContext<'_, '_>) -> (BufWriter<File>, PathBuf) {
+    fn output_file(&self, ctx: &SaveContext<'_>) -> (BufWriter<File>, PathBuf) {
         let sess = &ctx.tcx.sess;
         let file_name = match ctx.config.output_file {
             Some(ref s) => PathBuf::from(s),
@@ -967,7 +967,7 @@ impl<'a> DumpHandler<'a> {
 }
 
 impl SaveHandler for DumpHandler<'_> {
-    fn save(&mut self, save_ctxt: &SaveContext<'_, '_>, analysis: &Analysis) {
+    fn save(&mut self, save_ctxt: &SaveContext<'_>, analysis: &Analysis) {
         let sess = &save_ctxt.tcx.sess;
         let (output, file_name) = self.output_file(&save_ctxt);
         if let Err(e) = serde_json::to_writer(output, &analysis) {
@@ -986,7 +986,7 @@ pub struct CallbackHandler<'b> {
 }
 
 impl SaveHandler for CallbackHandler<'_> {
-    fn save(&mut self, _: &SaveContext<'_, '_>, analysis: &Analysis) {
+    fn save(&mut self, _: &SaveContext<'_>, analysis: &Analysis) {
         (self.callback)(analysis)
     }
 }
@@ -1065,7 +1065,7 @@ fn id_from_def_id(id: DefId) -> rls_data::Id {
     rls_data::Id { krate: id.krate.as_u32(), index: id.index.as_u32() }
 }
 
-fn id_from_hir_id(id: hir::HirId, scx: &SaveContext<'_, '_>) -> rls_data::Id {
+fn id_from_hir_id(id: hir::HirId, scx: &SaveContext<'_>) -> rls_data::Id {
     let def_id = scx.tcx.hir().opt_local_def_id(id);
     def_id.map(|id| id_from_def_id(id.to_def_id())).unwrap_or_else(|| {
         // Create a *fake* `DefId` out of a `HirId` by combining the owner
@@ -1083,10 +1083,7 @@ fn null_id() -> rls_data::Id {
     rls_data::Id { krate: u32::MAX, index: u32::MAX }
 }
 
-fn lower_attributes(
-    attrs: Vec<ast::Attribute>,
-    scx: &SaveContext<'_, '_>,
-) -> Vec<rls_data::Attribute> {
+fn lower_attributes(attrs: Vec<ast::Attribute>, scx: &SaveContext<'_>) -> Vec<rls_data::Attribute> {
     attrs
         .into_iter()
         // Only retain real attributes. Doc comments are lowered separately.
diff --git a/src/librustc_save_analysis/sig.rs b/src/librustc_save_analysis/sig.rs
index cd2a5deeb2d..33355c4c558 100644
--- a/src/librustc_save_analysis/sig.rs
+++ b/src/librustc_save_analysis/sig.rs
@@ -36,7 +36,7 @@ use rustc_hir_pretty::id_to_string;
 use rustc_hir_pretty::{bounds_to_string, path_segment_to_string, path_to_string, ty_to_string};
 use rustc_span::symbol::{Ident, Symbol};
 
-pub fn item_signature(item: &hir::Item<'_>, scx: &SaveContext<'_, '_>) -> Option<Signature> {
+pub fn item_signature(item: &hir::Item<'_>, scx: &SaveContext<'_>) -> Option<Signature> {
     if !scx.config.signatures {
         return None;
     }
@@ -45,7 +45,7 @@ pub fn item_signature(item: &hir::Item<'_>, scx: &SaveContext<'_, '_>) -> Option
 
 pub fn foreign_item_signature(
     item: &hir::ForeignItem<'_>,
-    scx: &SaveContext<'_, '_>,
+    scx: &SaveContext<'_>,
 ) -> Option<Signature> {
     if !scx.config.signatures {
         return None;
@@ -55,10 +55,7 @@ pub fn foreign_item_signature(
 
 /// Signature for a struct or tuple field declaration.
 /// Does not include a trailing comma.
-pub fn field_signature(
-    field: &hir::StructField<'_>,
-    scx: &SaveContext<'_, '_>,
-) -> Option<Signature> {
+pub fn field_signature(field: &hir::StructField<'_>, scx: &SaveContext<'_>) -> Option<Signature> {
     if !scx.config.signatures {
         return None;
     }
@@ -66,10 +63,7 @@ pub fn field_signature(
 }
 
 /// Does not include a trailing comma.
-pub fn variant_signature(
-    variant: &hir::Variant<'_>,
-    scx: &SaveContext<'_, '_>,
-) -> Option<Signature> {
+pub fn variant_signature(variant: &hir::Variant<'_>, scx: &SaveContext<'_>) -> Option<Signature> {
     if !scx.config.signatures {
         return None;
     }
@@ -81,7 +75,7 @@ pub fn method_signature(
     ident: Ident,
     generics: &hir::Generics<'_>,
     m: &hir::FnSig<'_>,
-    scx: &SaveContext<'_, '_>,
+    scx: &SaveContext<'_>,
 ) -> Option<Signature> {
     if !scx.config.signatures {
         return None;
@@ -94,7 +88,7 @@ pub fn assoc_const_signature(
     ident: Symbol,
     ty: &hir::Ty<'_>,
     default: Option<&hir::Expr<'_>>,
-    scx: &SaveContext<'_, '_>,
+    scx: &SaveContext<'_>,
 ) -> Option<Signature> {
     if !scx.config.signatures {
         return None;
@@ -107,7 +101,7 @@ pub fn assoc_type_signature(
     ident: Ident,
     bounds: Option<hir::GenericBounds<'_>>,
     default: Option<&hir::Ty<'_>>,
-    scx: &SaveContext<'_, '_>,
+    scx: &SaveContext<'_>,
 ) -> Option<Signature> {
     if !scx.config.signatures {
         return None;
@@ -118,7 +112,7 @@ pub fn assoc_type_signature(
 type Result = std::result::Result<Signature, &'static str>;
 
 trait Sig {
-    fn make(&self, offset: usize, id: Option<hir::HirId>, scx: &SaveContext<'_, '_>) -> Result;
+    fn make(&self, offset: usize, id: Option<hir::HirId>, scx: &SaveContext<'_>) -> Result;
 }
 
 fn extend_sig(
@@ -154,12 +148,7 @@ fn text_sig(text: String) -> Signature {
 }
 
 impl<'hir> Sig for hir::Ty<'hir> {
-    fn make(
-        &self,
-        offset: usize,
-        _parent_id: Option<hir::HirId>,
-        scx: &SaveContext<'_, '_>,
-    ) -> Result {
+    fn make(&self, offset: usize, _parent_id: Option<hir::HirId>, scx: &SaveContext<'_>) -> Result {
         let id = Some(self.hir_id);
         match self.kind {
             hir::TyKind::Slice(ref ty) => {
@@ -334,12 +323,7 @@ impl<'hir> Sig for hir::Ty<'hir> {
 }
 
 impl<'hir> Sig for hir::Item<'hir> {
-    fn make(
-        &self,
-        offset: usize,
-        _parent_id: Option<hir::HirId>,
-        scx: &SaveContext<'_, '_>,
-    ) -> Result {
+    fn make(&self, offset: usize, _parent_id: Option<hir::HirId>, scx: &SaveContext<'_>) -> Result {
         let id = Some(self.hir_id);
 
         match self.kind {
@@ -574,7 +558,7 @@ impl<'hir> Sig for hir::Item<'hir> {
 }
 
 impl<'hir> Sig for hir::Path<'hir> {
-    fn make(&self, offset: usize, id: Option<hir::HirId>, scx: &SaveContext<'_, '_>) -> Result {
+    fn make(&self, offset: usize, id: Option<hir::HirId>, scx: &SaveContext<'_>) -> Result {
         let res = scx.get_path_res(id.ok_or("Missing id for Path")?);
 
         let (name, start, end) = match res {
@@ -608,12 +592,7 @@ impl<'hir> Sig for hir::Path<'hir> {
 
 // This does not cover the where clause, which must be processed separately.
 impl<'hir> Sig for hir::Generics<'hir> {
-    fn make(
-        &self,
-        offset: usize,
-        _parent_id: Option<hir::HirId>,
-        scx: &SaveContext<'_, '_>,
-    ) -> Result {
+    fn make(&self, offset: usize, _parent_id: Option<hir::HirId>, scx: &SaveContext<'_>) -> Result {
         if self.params.is_empty() {
             return Ok(text_sig(String::new()));
         }
@@ -671,12 +650,7 @@ impl<'hir> Sig for hir::Generics<'hir> {
 }
 
 impl<'hir> Sig for hir::StructField<'hir> {
-    fn make(
-        &self,
-        offset: usize,
-        _parent_id: Option<hir::HirId>,
-        scx: &SaveContext<'_, '_>,
-    ) -> Result {
+    fn make(&self, offset: usize, _parent_id: Option<hir::HirId>, scx: &SaveContext<'_>) -> Result {
         let mut text = String::new();
 
         text.push_str(&self.ident.to_string());
@@ -696,12 +670,7 @@ impl<'hir> Sig for hir::StructField<'hir> {
 }
 
 impl<'hir> Sig for hir::Variant<'hir> {
-    fn make(
-        &self,
-        offset: usize,
-        parent_id: Option<hir::HirId>,
-        scx: &SaveContext<'_, '_>,
-    ) -> Result {
+    fn make(&self, offset: usize, parent_id: Option<hir::HirId>, scx: &SaveContext<'_>) -> Result {
         let mut text = self.ident.to_string();
         match self.data {
             hir::VariantData::Struct(fields, r) => {
@@ -760,12 +729,7 @@ impl<'hir> Sig for hir::Variant<'hir> {
 }
 
 impl<'hir> Sig for hir::ForeignItem<'hir> {
-    fn make(
-        &self,
-        offset: usize,
-        _parent_id: Option<hir::HirId>,
-        scx: &SaveContext<'_, '_>,
-    ) -> Result {
+    fn make(&self, offset: usize, _parent_id: Option<hir::HirId>, scx: &SaveContext<'_>) -> Result {
         let id = Some(self.hir_id);
         match self.kind {
             hir::ForeignItemKind::Fn(decl, _, ref generics) => {
@@ -839,7 +803,7 @@ fn name_and_generics(
     generics: &hir::Generics<'_>,
     id: hir::HirId,
     name: Ident,
-    scx: &SaveContext<'_, '_>,
+    scx: &SaveContext<'_>,
 ) -> Result {
     let name = name.to_string();
     let def = SigElement {
@@ -859,7 +823,7 @@ fn make_assoc_type_signature(
     ident: Ident,
     bounds: Option<hir::GenericBounds<'_>>,
     default: Option<&hir::Ty<'_>>,
-    scx: &SaveContext<'_, '_>,
+    scx: &SaveContext<'_>,
 ) -> Result {
     let mut text = "type ".to_owned();
     let name = ident.to_string();
@@ -891,7 +855,7 @@ fn make_assoc_const_signature(
     ident: Symbol,
     ty: &hir::Ty<'_>,
     default: Option<&hir::Expr<'_>>,
-    scx: &SaveContext<'_, '_>,
+    scx: &SaveContext<'_>,
 ) -> Result {
     let mut text = "const ".to_owned();
     let name = ident.to_string();
@@ -922,7 +886,7 @@ fn make_method_signature(
     ident: Ident,
     generics: &hir::Generics<'_>,
     m: &hir::FnSig<'_>,
-    scx: &SaveContext<'_, '_>,
+    scx: &SaveContext<'_>,
 ) -> Result {
     // FIXME code dup with function signature
     let mut text = String::new();