diff options
Diffstat (limited to 'crates/ra_hir/src/code_model.rs')
-rw-r--r-- | crates/ra_hir/src/code_model.rs | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs index c5539e076..a132d128b 100644 --- a/crates/ra_hir/src/code_model.rs +++ b/crates/ra_hir/src/code_model.rs | |||
@@ -432,15 +432,16 @@ impl Adt { | |||
432 | } | 432 | } |
433 | } | 433 | } |
434 | 434 | ||
435 | pub fn module(self, db: &impl DefDatabase) -> Module { | ||
436 | match self { | ||
437 | Adt::Struct(s) => s.module(db), | ||
438 | Adt::Union(s) => s.module(db), | ||
439 | Adt::Enum(e) => e.module(db), | ||
440 | } | ||
441 | } | ||
442 | |||
435 | pub fn krate(self, db: &impl HirDatabase) -> Option<Crate> { | 443 | pub fn krate(self, db: &impl HirDatabase) -> Option<Crate> { |
436 | Some( | 444 | Some(self.module(db).krate()) |
437 | match self { | ||
438 | Adt::Struct(s) => s.module(db), | ||
439 | Adt::Union(s) => s.module(db), | ||
440 | Adt::Enum(e) => e.module(db), | ||
441 | } | ||
442 | .krate(), | ||
443 | ) | ||
444 | } | 445 | } |
445 | } | 446 | } |
446 | 447 | ||