diff options
author | Nick Spain <[email protected]> | 2021-01-01 02:05:28 +0000 |
---|---|---|
committer | Nick Spain <[email protected]> | 2021-01-02 10:53:51 +0000 |
commit | 27cadcd531c017aa7c78c6f7a36f2b7f2ce8a196 (patch) | |
tree | 24f43261eeafffc8b98be361c9c2841c2e4861f0 /crates/hir/src | |
parent | aa3ce16f2641b7eb562a8eae67738b0ff0c0b7b0 (diff) |
HasSource::source -> HasSource::source_old
To start migrating HasSource::source to return an Option.
Diffstat (limited to 'crates/hir/src')
-rw-r--r-- | crates/hir/src/code_model.rs | 4 | ||||
-rw-r--r-- | crates/hir/src/has_source.rs | 30 |
2 files changed, 17 insertions, 17 deletions
diff --git a/crates/hir/src/code_model.rs b/crates/hir/src/code_model.rs index 97b7a8b5f..5020aa196 100644 --- a/crates/hir/src/code_model.rs +++ b/crates/hir/src/code_model.rs | |||
@@ -989,7 +989,7 @@ impl MacroDef { | |||
989 | if self.is_proc_macro() { | 989 | if self.is_proc_macro() { |
990 | return None; | 990 | return None; |
991 | } | 991 | } |
992 | self.source(db).value.name().map(|it| it.as_name()) | 992 | self.source_old(db).value.name().map(|it| it.as_name()) |
993 | } | 993 | } |
994 | 994 | ||
995 | /// Indicate it is a proc-macro | 995 | /// Indicate it is a proc-macro |
@@ -1378,7 +1378,7 @@ impl Impl { | |||
1378 | } | 1378 | } |
1379 | 1379 | ||
1380 | pub fn is_builtin_derive(self, db: &dyn HirDatabase) -> Option<InFile<ast::Attr>> { | 1380 | pub fn is_builtin_derive(self, db: &dyn HirDatabase) -> Option<InFile<ast::Attr>> { |
1381 | let src = self.source(db); | 1381 | let src = self.source_old(db); |
1382 | let item = src.file_id.is_builtin_derive(db.upcast())?; | 1382 | let item = src.file_id.is_builtin_derive(db.upcast())?; |
1383 | let hygenic = hir_expand::hygiene::Hygiene::new(db.upcast(), item.file_id); | 1383 | let hygenic = hir_expand::hygiene::Hygiene::new(db.upcast(), item.file_id); |
1384 | 1384 | ||
diff --git a/crates/hir/src/has_source.rs b/crates/hir/src/has_source.rs index dd7c0c570..a8256c181 100644 --- a/crates/hir/src/has_source.rs +++ b/crates/hir/src/has_source.rs | |||
@@ -16,7 +16,7 @@ use crate::{ | |||
16 | 16 | ||
17 | pub trait HasSource { | 17 | pub trait HasSource { |
18 | type Ast; | 18 | type Ast; |
19 | fn source(self, db: &dyn HirDatabase) -> InFile<Self::Ast>; | 19 | fn source_old(self, db: &dyn HirDatabase) -> InFile<Self::Ast>; |
20 | } | 20 | } |
21 | 21 | ||
22 | /// NB: Module is !HasSource, because it has two source nodes at the same time: | 22 | /// NB: Module is !HasSource, because it has two source nodes at the same time: |
@@ -46,7 +46,7 @@ impl Module { | |||
46 | 46 | ||
47 | impl HasSource for Field { | 47 | impl HasSource for Field { |
48 | type Ast = FieldSource; | 48 | type Ast = FieldSource; |
49 | fn source(self, db: &dyn HirDatabase) -> InFile<FieldSource> { | 49 | fn source_old(self, db: &dyn HirDatabase) -> InFile<FieldSource> { |
50 | let var = VariantId::from(self.parent); | 50 | let var = VariantId::from(self.parent); |
51 | let src = var.child_source(db.upcast()); | 51 | let src = var.child_source(db.upcast()); |
52 | src.map(|it| match it[self.id].clone() { | 52 | src.map(|it| match it[self.id].clone() { |
@@ -57,61 +57,61 @@ impl HasSource for Field { | |||
57 | } | 57 | } |
58 | impl HasSource for Struct { | 58 | impl HasSource for Struct { |
59 | type Ast = ast::Struct; | 59 | type Ast = ast::Struct; |
60 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Struct> { | 60 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Struct> { |
61 | self.id.lookup(db.upcast()).source(db.upcast()) | 61 | self.id.lookup(db.upcast()).source(db.upcast()) |
62 | } | 62 | } |
63 | } | 63 | } |
64 | impl HasSource for Union { | 64 | impl HasSource for Union { |
65 | type Ast = ast::Union; | 65 | type Ast = ast::Union; |
66 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Union> { | 66 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Union> { |
67 | self.id.lookup(db.upcast()).source(db.upcast()) | 67 | self.id.lookup(db.upcast()).source(db.upcast()) |
68 | } | 68 | } |
69 | } | 69 | } |
70 | impl HasSource for Enum { | 70 | impl HasSource for Enum { |
71 | type Ast = ast::Enum; | 71 | type Ast = ast::Enum; |
72 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Enum> { | 72 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Enum> { |
73 | self.id.lookup(db.upcast()).source(db.upcast()) | 73 | self.id.lookup(db.upcast()).source(db.upcast()) |
74 | } | 74 | } |
75 | } | 75 | } |
76 | impl HasSource for Variant { | 76 | impl HasSource for Variant { |
77 | type Ast = ast::Variant; | 77 | type Ast = ast::Variant; |
78 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Variant> { | 78 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Variant> { |
79 | self.parent.id.child_source(db.upcast()).map(|map| map[self.id].clone()) | 79 | self.parent.id.child_source(db.upcast()).map(|map| map[self.id].clone()) |
80 | } | 80 | } |
81 | } | 81 | } |
82 | impl HasSource for Function { | 82 | impl HasSource for Function { |
83 | type Ast = ast::Fn; | 83 | type Ast = ast::Fn; |
84 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Fn> { | 84 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Fn> { |
85 | self.id.lookup(db.upcast()).source(db.upcast()) | 85 | self.id.lookup(db.upcast()).source(db.upcast()) |
86 | } | 86 | } |
87 | } | 87 | } |
88 | impl HasSource for Const { | 88 | impl HasSource for Const { |
89 | type Ast = ast::Const; | 89 | type Ast = ast::Const; |
90 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Const> { | 90 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Const> { |
91 | self.id.lookup(db.upcast()).source(db.upcast()) | 91 | self.id.lookup(db.upcast()).source(db.upcast()) |
92 | } | 92 | } |
93 | } | 93 | } |
94 | impl HasSource for Static { | 94 | impl HasSource for Static { |
95 | type Ast = ast::Static; | 95 | type Ast = ast::Static; |
96 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Static> { | 96 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Static> { |
97 | self.id.lookup(db.upcast()).source(db.upcast()) | 97 | self.id.lookup(db.upcast()).source(db.upcast()) |
98 | } | 98 | } |
99 | } | 99 | } |
100 | impl HasSource for Trait { | 100 | impl HasSource for Trait { |
101 | type Ast = ast::Trait; | 101 | type Ast = ast::Trait; |
102 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Trait> { | 102 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Trait> { |
103 | self.id.lookup(db.upcast()).source(db.upcast()) | 103 | self.id.lookup(db.upcast()).source(db.upcast()) |
104 | } | 104 | } |
105 | } | 105 | } |
106 | impl HasSource for TypeAlias { | 106 | impl HasSource for TypeAlias { |
107 | type Ast = ast::TypeAlias; | 107 | type Ast = ast::TypeAlias; |
108 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::TypeAlias> { | 108 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::TypeAlias> { |
109 | self.id.lookup(db.upcast()).source(db.upcast()) | 109 | self.id.lookup(db.upcast()).source(db.upcast()) |
110 | } | 110 | } |
111 | } | 111 | } |
112 | impl HasSource for MacroDef { | 112 | impl HasSource for MacroDef { |
113 | type Ast = ast::Macro; | 113 | type Ast = ast::Macro; |
114 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Macro> { | 114 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Macro> { |
115 | InFile { | 115 | InFile { |
116 | file_id: self.id.ast_id.expect("MacroDef without ast_id").file_id, | 116 | file_id: self.id.ast_id.expect("MacroDef without ast_id").file_id, |
117 | value: self.id.ast_id.expect("MacroDef without ast_id").to_node(db.upcast()), | 117 | value: self.id.ast_id.expect("MacroDef without ast_id").to_node(db.upcast()), |
@@ -120,14 +120,14 @@ impl HasSource for MacroDef { | |||
120 | } | 120 | } |
121 | impl HasSource for Impl { | 121 | impl HasSource for Impl { |
122 | type Ast = ast::Impl; | 122 | type Ast = ast::Impl; |
123 | fn source(self, db: &dyn HirDatabase) -> InFile<ast::Impl> { | 123 | fn source_old(self, db: &dyn HirDatabase) -> InFile<ast::Impl> { |
124 | self.id.lookup(db.upcast()).source(db.upcast()) | 124 | self.id.lookup(db.upcast()).source(db.upcast()) |
125 | } | 125 | } |
126 | } | 126 | } |
127 | 127 | ||
128 | impl HasSource for TypeParam { | 128 | impl HasSource for TypeParam { |
129 | type Ast = Either<ast::Trait, ast::TypeParam>; | 129 | type Ast = Either<ast::Trait, ast::TypeParam>; |
130 | fn source(self, db: &dyn HirDatabase) -> InFile<Self::Ast> { | 130 | fn source_old(self, db: &dyn HirDatabase) -> InFile<Self::Ast> { |
131 | let child_source = self.id.parent.child_source(db.upcast()); | 131 | let child_source = self.id.parent.child_source(db.upcast()); |
132 | child_source.map(|it| it[self.id.local_id].clone()) | 132 | child_source.map(|it| it[self.id.local_id].clone()) |
133 | } | 133 | } |
@@ -135,7 +135,7 @@ impl HasSource for TypeParam { | |||
135 | 135 | ||
136 | impl HasSource for LifetimeParam { | 136 | impl HasSource for LifetimeParam { |
137 | type Ast = ast::LifetimeParam; | 137 | type Ast = ast::LifetimeParam; |
138 | fn source(self, db: &dyn HirDatabase) -> InFile<Self::Ast> { | 138 | fn source_old(self, db: &dyn HirDatabase) -> InFile<Self::Ast> { |
139 | let child_source = self.id.parent.child_source(db.upcast()); | 139 | let child_source = self.id.parent.child_source(db.upcast()); |
140 | child_source.map(|it| it[self.id.local_id].clone()) | 140 | child_source.map(|it| it[self.id.local_id].clone()) |
141 | } | 141 | } |