aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/code_model.rs
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2019-06-11 15:34:01 +0100
committerAleksey Kladov <[email protected]>2019-06-11 16:28:51 +0100
commitf411c2988d40bbdebc5c9a63ce4bfb883a2fbca1 (patch)
tree6afe8341929ac7a4e6c69d0d99022cff6a13a859 /crates/ra_hir/src/code_model.rs
parent5e6213b516ab5c9be62c499ba0ea9eb399d68389 (diff)
use Source for Trait
Diffstat (limited to 'crates/ra_hir/src/code_model.rs')
-rw-r--r--crates/ra_hir/src/code_model.rs21
1 files changed, 16 insertions, 5 deletions
diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs
index 20a8d7d80..0a750b590 100644
--- a/crates/ra_hir/src/code_model.rs
+++ b/crates/ra_hir/src/code_model.rs
@@ -528,6 +528,13 @@ pub struct EnumVariant {
528 pub(crate) id: EnumVariantId, 528 pub(crate) id: EnumVariantId,
529} 529}
530 530
531impl HasSource for EnumVariant {
532 type Ast = TreeArc<ast::EnumVariant>;
533 fn source(self, db: &(impl DefDatabase + AstDatabase)) -> Source<TreeArc<ast::EnumVariant>> {
534 self.source_impl(db)
535 }
536}
537
531impl EnumVariant { 538impl EnumVariant {
532 pub fn source( 539 pub fn source(
533 &self, 540 &self,
@@ -886,12 +893,16 @@ pub struct Trait {
886 pub(crate) id: TraitId, 893 pub(crate) id: TraitId,
887} 894}
888 895
896impl HasSource for Trait {
897 type Ast = TreeArc<ast::TraitDef>;
898 fn source(self, db: &(impl DefDatabase + AstDatabase)) -> Source<TreeArc<ast::TraitDef>> {
899 self.id.source(db).into()
900 }
901}
902
889impl Trait { 903impl Trait {
890 pub fn source( 904 pub fn source(self, db: &(impl DefDatabase + AstDatabase)) -> Source<TreeArc<ast::TraitDef>> {
891 self, 905 self.id.source(db).into()
892 db: &(impl DefDatabase + AstDatabase),
893 ) -> (HirFileId, TreeArc<ast::TraitDef>) {
894 self.id.source(db)
895 } 906 }
896 907
897 pub fn module(self, db: &impl DefDatabase) -> Module { 908 pub fn module(self, db: &impl DefDatabase) -> Module {