Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir/src/lib.rs')
| -rw-r--r-- | crates/hir/src/lib.rs | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/crates/hir/src/lib.rs b/crates/hir/src/lib.rs index 2096c485e4..c46324f988 100644 --- a/crates/hir/src/lib.rs +++ b/crates/hir/src/lib.rs @@ -316,17 +316,18 @@ impl ModuleDef { } pub fn name(self, db: &dyn HirDatabase) -> Option<Name> { - match self { - ModuleDef::Adt(it) => Some(it.name(db)), - ModuleDef::Trait(it) => Some(it.name(db)), - ModuleDef::Function(it) => Some(it.name(db)), - ModuleDef::Variant(it) => Some(it.name(db)), - ModuleDef::TypeAlias(it) => Some(it.name(db)), - ModuleDef::Module(it) => it.name(db), - ModuleDef::Const(it) => it.name(db), + let name = match self { + ModuleDef::Module(it) => it.name(db)?, + ModuleDef::Const(it) => it.name(db)?, + ModuleDef::Adt(it) => it.name(db), + ModuleDef::Trait(it) => it.name(db), + ModuleDef::Function(it) => it.name(db), + ModuleDef::Variant(it) => it.name(db), + ModuleDef::TypeAlias(it) => it.name(db), ModuleDef::Static(it) => it.name(db), - ModuleDef::BuiltinType(it) => Some(it.name()), - } + ModuleDef::BuiltinType(it) => it.name(), + }; + Some(name) } pub fn diagnostics(self, db: &dyn HirDatabase) -> Vec<AnyDiagnostic> { @@ -1036,7 +1037,7 @@ impl DefWithBody { pub fn name(self, db: &dyn HirDatabase) -> Option<Name> { match self { DefWithBody::Function(f) => Some(f.name(db)), - DefWithBody::Static(s) => s.name(db), + DefWithBody::Static(s) => Some(s.name(db)), DefWithBody::Const(c) => c.name(db), } } @@ -1484,7 +1485,7 @@ impl Static { Module { id: self.id.lookup(db.upcast()).module(db.upcast()) } } - pub fn name(self, db: &dyn HirDatabase) -> Option<Name> { + pub fn name(self, db: &dyn HirDatabase) -> Name { db.static_data(self.id).name.clone() } |