aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_ty/src/display.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/hir_ty/src/display.rs')
-rw-r--r--crates/hir_ty/src/display.rs15
1 files changed, 14 insertions, 1 deletions
diff --git a/crates/hir_ty/src/display.rs b/crates/hir_ty/src/display.rs
index aa286c8c2..0e827a29e 100644
--- a/crates/hir_ty/src/display.rs
+++ b/crates/hir_ty/src/display.rs
@@ -4,7 +4,7 @@ use std::fmt;
4 4
5use crate::{ 5use crate::{
6 db::HirDatabase, utils::generics, ApplicationTy, CallableDefId, FnSig, GenericPredicate, 6 db::HirDatabase, utils::generics, ApplicationTy, CallableDefId, FnSig, GenericPredicate,
7 Obligation, OpaqueTyId, ProjectionTy, Substs, TraitRef, Ty, TypeCtor, 7 Lifetime, Obligation, OpaqueTyId, ProjectionTy, Substs, TraitRef, Ty, TypeCtor,
8}; 8};
9use hir_def::{ 9use hir_def::{
10 find_path, generics::TypeParamProvenance, item_scope::ItemInNs, AdtId, AssocContainerId, 10 find_path, generics::TypeParamProvenance, item_scope::ItemInNs, AdtId, AssocContainerId,
@@ -718,6 +718,19 @@ impl HirDisplay for GenericPredicate {
718 } 718 }
719} 719}
720 720
721impl HirDisplay for Lifetime {
722 fn hir_fmt(&self, f: &mut HirFormatter) -> Result<(), HirDisplayError> {
723 match self {
724 Lifetime::Parameter(id) => {
725 let generics = generics(f.db.upcast(), id.parent);
726 let param_data = &generics.params.lifetimes[id.local_id];
727 write!(f, "{}", &param_data.name)
728 }
729 Lifetime::Static => write!(f, "'static"),
730 }
731 }
732}
733
721impl HirDisplay for Obligation { 734impl HirDisplay for Obligation {
722 fn hir_fmt(&self, f: &mut HirFormatter) -> Result<(), HirDisplayError> { 735 fn hir_fmt(&self, f: &mut HirFormatter) -> Result<(), HirDisplayError> {
723 match self { 736 match self {