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 e77481906..0d968cc68 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,
@@ -710,6 +710,19 @@ impl HirDisplay for GenericPredicate {
710 } 710 }
711} 711}
712 712
713impl HirDisplay for Lifetime {
714 fn hir_fmt(&self, f: &mut HirFormatter) -> Result<(), HirDisplayError> {
715 match self {
716 Lifetime::Parameter(id) => {
717 let generics = generics(f.db.upcast(), id.parent);
718 let param_data = &generics.params.lifetimes[id.local_id];
719 write!(f, "{}", &param_data.name)
720 }
721 Lifetime::Static => write!(f, "'static"),
722 }
723 }
724}
725
713impl HirDisplay for Obligation { 726impl HirDisplay for Obligation {
714 fn hir_fmt(&self, f: &mut HirFormatter) -> Result<(), HirDisplayError> { 727 fn hir_fmt(&self, f: &mut HirFormatter) -> Result<(), HirDisplayError> {
715 match self { 728 match self {