diff options
-rw-r--r-- | Cargo.lock | 10 | ||||
-rw-r--r-- | crates/ra_hir/src/ty/traits/chalk.rs | 9 |
2 files changed, 11 insertions, 8 deletions
diff --git a/Cargo.lock b/Cargo.lock index b6604dcc2..74570a978 100644 --- a/Cargo.lock +++ b/Cargo.lock | |||
@@ -122,7 +122,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" | |||
122 | [[package]] | 122 | [[package]] |
123 | name = "chalk-engine" | 123 | name = "chalk-engine" |
124 | version = "0.9.0" | 124 | version = "0.9.0" |
125 | source = "git+https://github.com/rust-lang/chalk.git#aa0c0582e4de1c0b84f99c412d92b9ca7ff06ddb" | 125 | source = "git+https://github.com/rust-lang/chalk.git#df09cc603c0cff9ed95e5554055d483fdd756fbc" |
126 | dependencies = [ | 126 | dependencies = [ |
127 | "chalk-macros 0.1.1 (git+https://github.com/rust-lang/chalk.git)", | 127 | "chalk-macros 0.1.1 (git+https://github.com/rust-lang/chalk.git)", |
128 | "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | 128 | "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", |
@@ -132,7 +132,7 @@ dependencies = [ | |||
132 | [[package]] | 132 | [[package]] |
133 | name = "chalk-ir" | 133 | name = "chalk-ir" |
134 | version = "0.1.0" | 134 | version = "0.1.0" |
135 | source = "git+https://github.com/rust-lang/chalk.git#aa0c0582e4de1c0b84f99c412d92b9ca7ff06ddb" | 135 | source = "git+https://github.com/rust-lang/chalk.git#df09cc603c0cff9ed95e5554055d483fdd756fbc" |
136 | dependencies = [ | 136 | dependencies = [ |
137 | "chalk-engine 0.9.0 (git+https://github.com/rust-lang/chalk.git)", | 137 | "chalk-engine 0.9.0 (git+https://github.com/rust-lang/chalk.git)", |
138 | "chalk-macros 0.1.1 (git+https://github.com/rust-lang/chalk.git)", | 138 | "chalk-macros 0.1.1 (git+https://github.com/rust-lang/chalk.git)", |
@@ -142,7 +142,7 @@ dependencies = [ | |||
142 | [[package]] | 142 | [[package]] |
143 | name = "chalk-macros" | 143 | name = "chalk-macros" |
144 | version = "0.1.1" | 144 | version = "0.1.1" |
145 | source = "git+https://github.com/rust-lang/chalk.git#aa0c0582e4de1c0b84f99c412d92b9ca7ff06ddb" | 145 | source = "git+https://github.com/rust-lang/chalk.git#df09cc603c0cff9ed95e5554055d483fdd756fbc" |
146 | dependencies = [ | 146 | dependencies = [ |
147 | "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | 147 | "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", |
148 | ] | 148 | ] |
@@ -150,7 +150,7 @@ dependencies = [ | |||
150 | [[package]] | 150 | [[package]] |
151 | name = "chalk-rust-ir" | 151 | name = "chalk-rust-ir" |
152 | version = "0.1.0" | 152 | version = "0.1.0" |
153 | source = "git+https://github.com/rust-lang/chalk.git#aa0c0582e4de1c0b84f99c412d92b9ca7ff06ddb" | 153 | source = "git+https://github.com/rust-lang/chalk.git#df09cc603c0cff9ed95e5554055d483fdd756fbc" |
154 | dependencies = [ | 154 | dependencies = [ |
155 | "chalk-engine 0.9.0 (git+https://github.com/rust-lang/chalk.git)", | 155 | "chalk-engine 0.9.0 (git+https://github.com/rust-lang/chalk.git)", |
156 | "chalk-ir 0.1.0 (git+https://github.com/rust-lang/chalk.git)", | 156 | "chalk-ir 0.1.0 (git+https://github.com/rust-lang/chalk.git)", |
@@ -160,7 +160,7 @@ dependencies = [ | |||
160 | [[package]] | 160 | [[package]] |
161 | name = "chalk-solve" | 161 | name = "chalk-solve" |
162 | version = "0.1.0" | 162 | version = "0.1.0" |
163 | source = "git+https://github.com/rust-lang/chalk.git#aa0c0582e4de1c0b84f99c412d92b9ca7ff06ddb" | 163 | source = "git+https://github.com/rust-lang/chalk.git#df09cc603c0cff9ed95e5554055d483fdd756fbc" |
164 | dependencies = [ | 164 | dependencies = [ |
165 | "chalk-engine 0.9.0 (git+https://github.com/rust-lang/chalk.git)", | 165 | "chalk-engine 0.9.0 (git+https://github.com/rust-lang/chalk.git)", |
166 | "chalk-ir 0.1.0 (git+https://github.com/rust-lang/chalk.git)", | 166 | "chalk-ir 0.1.0 (git+https://github.com/rust-lang/chalk.git)", |
diff --git a/crates/ra_hir/src/ty/traits/chalk.rs b/crates/ra_hir/src/ty/traits/chalk.rs index 2e17c00e4..462156021 100644 --- a/crates/ra_hir/src/ty/traits/chalk.rs +++ b/crates/ra_hir/src/ty/traits/chalk.rs | |||
@@ -385,7 +385,11 @@ where | |||
385 | fn impl_datum(&self, impl_id: ImplId) -> Arc<ImplDatum> { | 385 | fn impl_datum(&self, impl_id: ImplId) -> Arc<ImplDatum> { |
386 | self.db.impl_datum(self.krate, impl_id) | 386 | self.db.impl_datum(self.krate, impl_id) |
387 | } | 387 | } |
388 | fn impls_for_trait(&self, trait_id: chalk_ir::TraitId) -> Vec<ImplId> { | 388 | fn impls_for_trait( |
389 | &self, | ||
390 | trait_id: chalk_ir::TraitId, | ||
391 | _parameters: &[Parameter], | ||
392 | ) -> Vec<ImplId> { | ||
389 | debug!("impls_for_trait {:?}", trait_id); | 393 | debug!("impls_for_trait {:?}", trait_id); |
390 | if trait_id == UNKNOWN_TRAIT { | 394 | if trait_id == UNKNOWN_TRAIT { |
391 | return Vec::new(); | 395 | return Vec::new(); |
@@ -415,8 +419,7 @@ where | |||
415 | &self, | 419 | &self, |
416 | projection: &'p chalk_ir::ProjectionTy, | 420 | projection: &'p chalk_ir::ProjectionTy, |
417 | ) -> (Arc<AssociatedTyDatum>, &'p [Parameter], &'p [Parameter]) { | 421 | ) -> (Arc<AssociatedTyDatum>, &'p [Parameter], &'p [Parameter]) { |
418 | let proj_ty: ProjectionTy = from_chalk(self.db, projection.clone()); | 422 | debug!("split_projection {:?}", projection); |
419 | debug!("split_projection {:?} = {}", projection, proj_ty.display(self.db)); | ||
420 | // we don't support GATs, so I think this should always be correct currently | 423 | // we don't support GATs, so I think this should always be correct currently |
421 | (self.db.associated_ty_data(projection.associated_ty_id), &projection.parameters, &[]) | 424 | (self.db.associated_ty_data(projection.associated_ty_id), &projection.parameters, &[]) |
422 | } | 425 | } |