diff options
| author | marmeladema <xademax@gmail.com> | 2020-04-16 20:36:32 +0100 |
|---|---|---|
| committer | marmeladema <xademax@gmail.com> | 2020-04-23 23:14:07 +0100 |
| commit | bfce24aa675072c832e5160acdefc4e98b7fe8f3 (patch) | |
| tree | 0f34ec764cbfad806fa1880f0125edf93b0af9e6 /src/librustdoc | |
| parent | 6148db719f34a35099eff46097b5d2d9770892e9 (diff) | |
Modify `as_local_hir_id` to return a bare `HirId`
Diffstat (limited to 'src/librustdoc')
| -rw-r--r-- | src/librustdoc/clean/inline.rs | 23 | ||||
| -rw-r--r-- | src/librustdoc/clean/mod.rs | 5 | ||||
| -rw-r--r-- | src/librustdoc/clean/utils.rs | 2 | ||||
| -rw-r--r-- | src/librustdoc/core.rs | 2 | ||||
| -rw-r--r-- | src/librustdoc/passes/collect_intra_doc_links.rs | 6 | ||||
| -rw-r--r-- | src/librustdoc/visit_ast.rs | 2 |
6 files changed, 18 insertions, 22 deletions
diff --git a/src/librustdoc/clean/inline.rs b/src/librustdoc/clean/inline.rs index fc50a0ac225..7a25f07bfe9 100644 --- a/src/librustdoc/clean/inline.rs +++ b/src/librustdoc/clean/inline.rs @@ -340,15 +340,14 @@ pub fn build_impl( } } - let for_ = - if let Some(hir_id) = did.as_local().map(|did| tcx.hir().as_local_hir_id(did).unwrap()) { - match tcx.hir().expect_item(hir_id).kind { - hir::ItemKind::Impl { self_ty, .. } => self_ty.clean(cx), - _ => panic!("did given to build_impl was not an impl"), - } - } else { - tcx.type_of(did).clean(cx) - }; + let for_ = if let Some(hir_id) = did.as_local().map(|did| tcx.hir().as_local_hir_id(did)) { + match tcx.hir().expect_item(hir_id).kind { + hir::ItemKind::Impl { self_ty, .. } => self_ty.clean(cx), + _ => panic!("did given to build_impl was not an impl"), + } + } else { + tcx.type_of(did).clean(cx) + }; // Only inline impl if the implementing type is // reachable in rustdoc generated documentation @@ -362,7 +361,7 @@ pub fn build_impl( let predicates = tcx.explicit_predicates_of(did); let (trait_items, generics) = if let Some(hir_id) = - did.as_local().map(|did| tcx.hir().as_local_hir_id(did).unwrap()) + did.as_local().map(|did| tcx.hir().as_local_hir_id(did)) { match tcx.hir().expect_item(hir_id).kind { hir::ItemKind::Impl { ref generics, ref items, .. } => ( @@ -489,7 +488,7 @@ fn build_module(cx: &DocContext<'_>, did: DefId, visited: &mut FxHashSet<DefId>) } pub fn print_inlined_const(cx: &DocContext<'_>, did: DefId) -> String { - if let Some(hir_id) = did.as_local().map(|did| cx.tcx.hir().as_local_hir_id(did).unwrap()) { + if let Some(hir_id) = did.as_local().map(|did| cx.tcx.hir().as_local_hir_id(did)) { rustc_hir_pretty::id_to_string(&cx.tcx.hir(), hir_id) } else { cx.tcx.rendered_const(did) @@ -502,7 +501,7 @@ fn build_const(cx: &DocContext<'_>, did: DefId) -> clean::Constant { expr: print_inlined_const(cx, did), value: clean::utils::print_evaluated_const(cx, did), is_literal: did.as_local().map_or(false, |did| { - clean::utils::is_literal_expr(cx, cx.tcx.hir().as_local_hir_id(did).unwrap()) + clean::utils::is_literal_expr(cx, cx.tcx.hir().as_local_hir_id(did)) }), } } diff --git a/src/librustdoc/clean/mod.rs b/src/librustdoc/clean/mod.rs index 751f3b868fd..a685b4a73cd 100644 --- a/src/librustdoc/clean/mod.rs +++ b/src/librustdoc/clean/mod.rs @@ -1379,9 +1379,8 @@ impl Clean<Type> for hir::Ty<'_> { let mut alias = None; if let Res::Def(DefKind::TyAlias, def_id) = path.res { // Substitute private type aliases - if let Some(hir_id) = def_id - .as_local() - .map(|def_id| cx.tcx.hir().as_local_hir_id(def_id).unwrap()) + if let Some(hir_id) = + def_id.as_local().map(|def_id| cx.tcx.hir().as_local_hir_id(def_id)) { if !cx.renderinfo.borrow().access_levels.is_exported(def_id) { alias = Some(&cx.tcx.hir().expect_item(hir_id).kind); diff --git a/src/librustdoc/clean/utils.rs b/src/librustdoc/clean/utils.rs index ebb1838a83b..de101a20fc5 100644 --- a/src/librustdoc/clean/utils.rs +++ b/src/librustdoc/clean/utils.rs @@ -474,7 +474,7 @@ pub fn print_const(cx: &DocContext<'_>, n: &'tcx ty::Const<'_>) -> String { match n.val { ty::ConstKind::Unevaluated(def_id, _, promoted) => { let mut s = if let Some(hir_id) = - def_id.as_local().map(|def_id| cx.tcx.hir().as_local_hir_id(def_id).unwrap()) + def_id.as_local().map(|def_id| cx.tcx.hir().as_local_hir_id(def_id)) { print_const_expr(cx, cx.tcx.hir().body_owned_by(hir_id)) } else { diff --git a/src/librustdoc/core.rs b/src/librustdoc/core.rs index cc5bb335bae..91e60f81cec 100644 --- a/src/librustdoc/core.rs +++ b/src/librustdoc/core.rs @@ -144,7 +144,7 @@ impl<'tcx> DocContext<'tcx> { if self.all_fake_def_ids.borrow().contains(&def_id) { None } else { - def_id.as_local().map(|def_id| self.tcx.hir().as_local_hir_id(def_id).unwrap()) + def_id.as_local().map(|def_id| self.tcx.hir().as_local_hir_id(def_id)) } } diff --git a/src/librustdoc/passes/collect_intra_doc_links.rs b/src/librustdoc/passes/collect_intra_doc_links.rs index 675cc918490..2f10171e616 100644 --- a/src/librustdoc/passes/collect_intra_doc_links.rs +++ b/src/librustdoc/passes/collect_intra_doc_links.rs @@ -335,10 +335,8 @@ impl<'a, 'tcx> LinkCollector<'a, 'tcx> { impl<'a, 'tcx> DocFolder for LinkCollector<'a, 'tcx> { fn fold_item(&mut self, mut item: Item) -> Option<Item> { let item_hir_id = if item.is_mod() { - if let Some(id) = item - .def_id - .as_local() - .map(|def_id| self.cx.tcx.hir().as_local_hir_id(def_id).unwrap()) + if let Some(id) = + item.def_id.as_local().map(|def_id| self.cx.tcx.hir().as_local_hir_id(def_id)) { Some(id) } else { diff --git a/src/librustdoc/visit_ast.rs b/src/librustdoc/visit_ast.rs index 6b9f3acf9e8..2050c6c57ba 100644 --- a/src/librustdoc/visit_ast.rs +++ b/src/librustdoc/visit_ast.rs @@ -332,7 +332,7 @@ impl<'a, 'tcx> RustdocVisitor<'a, 'tcx> { } let res_hir_id = match res_did.as_local() { - Some(n) => tcx.hir().as_local_hir_id(n).unwrap(), + Some(n) => tcx.hir().as_local_hir_id(n), None => return false, }; |
