diff options
Diffstat (limited to 'crates')
| -rw-r--r-- | crates/base_db/src/fixture.rs | 6 | ||||
| -rw-r--r-- | crates/base_db/src/input.rs | 4 | ||||
| -rw-r--r-- | crates/hir/src/code_model.rs | 4 | ||||
| -rw-r--r-- | crates/project_model/src/lib.rs | 5 |
4 files changed, 10 insertions, 9 deletions
diff --git a/crates/base_db/src/fixture.rs b/crates/base_db/src/fixture.rs index 31560bc09..72f1fd667 100644 --- a/crates/base_db/src/fixture.rs +++ b/crates/base_db/src/fixture.rs | |||
| @@ -154,15 +154,15 @@ impl ChangeFixture { | |||
| 154 | assert!(meta.path.starts_with(&source_root_prefix)); | 154 | assert!(meta.path.starts_with(&source_root_prefix)); |
| 155 | 155 | ||
| 156 | if let Some(krate) = meta.krate { | 156 | if let Some(krate) = meta.krate { |
| 157 | let crate_name = CrateName::normalize_dashes(&krate); | ||
| 157 | let crate_id = crate_graph.add_crate_root( | 158 | let crate_id = crate_graph.add_crate_root( |
| 158 | file_id, | 159 | file_id, |
| 159 | meta.edition, | 160 | meta.edition, |
| 160 | Some(krate.clone()), | 161 | Some(crate_name.clone()), |
| 161 | meta.cfg, | 162 | meta.cfg, |
| 162 | meta.env, | 163 | meta.env, |
| 163 | Default::default(), | 164 | Default::default(), |
| 164 | ); | 165 | ); |
| 165 | let crate_name = CrateName::normalize_dashes(&krate); | ||
| 166 | let prev = crates.insert(crate_name.clone(), crate_id); | 166 | let prev = crates.insert(crate_name.clone(), crate_id); |
| 167 | assert!(prev.is_none()); | 167 | assert!(prev.is_none()); |
| 168 | for dep in meta.deps { | 168 | for dep in meta.deps { |
| @@ -187,7 +187,7 @@ impl ChangeFixture { | |||
| 187 | crate_graph.add_crate_root( | 187 | crate_graph.add_crate_root( |
| 188 | crate_root, | 188 | crate_root, |
| 189 | Edition::Edition2018, | 189 | Edition::Edition2018, |
| 190 | Some("test".to_string()), | 190 | Some(CrateName::new("test").unwrap()), |
| 191 | default_cfg, | 191 | default_cfg, |
| 192 | Env::default(), | 192 | Env::default(), |
| 193 | Default::default(), | 193 | Default::default(), |
diff --git a/crates/base_db/src/input.rs b/crates/base_db/src/input.rs index 9a61f1d56..251a7b245 100644 --- a/crates/base_db/src/input.rs +++ b/crates/base_db/src/input.rs | |||
| @@ -130,7 +130,7 @@ pub struct CrateData { | |||
| 130 | /// The name to display to the end user. | 130 | /// The name to display to the end user. |
| 131 | /// This actual crate name can be different in a particular dependent crate | 131 | /// This actual crate name can be different in a particular dependent crate |
| 132 | /// or may even be missing for some cases, such as a dummy crate for the code snippet. | 132 | /// or may even be missing for some cases, such as a dummy crate for the code snippet. |
| 133 | pub display_name: Option<String>, | 133 | pub display_name: Option<CrateName>, |
| 134 | pub cfg_options: CfgOptions, | 134 | pub cfg_options: CfgOptions, |
| 135 | pub env: Env, | 135 | pub env: Env, |
| 136 | pub dependencies: Vec<Dependency>, | 136 | pub dependencies: Vec<Dependency>, |
| @@ -159,7 +159,7 @@ impl CrateGraph { | |||
| 159 | &mut self, | 159 | &mut self, |
| 160 | file_id: FileId, | 160 | file_id: FileId, |
| 161 | edition: Edition, | 161 | edition: Edition, |
| 162 | display_name: Option<String>, | 162 | display_name: Option<CrateName>, |
| 163 | cfg_options: CfgOptions, | 163 | cfg_options: CfgOptions, |
| 164 | env: Env, | 164 | env: Env, |
| 165 | proc_macro: Vec<(SmolStr, Arc<dyn tt::TokenExpander>)>, | 165 | proc_macro: Vec<(SmolStr, Arc<dyn tt::TokenExpander>)>, |
diff --git a/crates/hir/src/code_model.rs b/crates/hir/src/code_model.rs index 5721a66c4..f3388da32 100644 --- a/crates/hir/src/code_model.rs +++ b/crates/hir/src/code_model.rs | |||
| @@ -2,7 +2,7 @@ | |||
| 2 | use std::{iter, sync::Arc}; | 2 | use std::{iter, sync::Arc}; |
| 3 | 3 | ||
| 4 | use arrayvec::ArrayVec; | 4 | use arrayvec::ArrayVec; |
| 5 | use base_db::{CrateId, Edition, FileId}; | 5 | use base_db::{CrateId, CrateName, Edition, FileId}; |
| 6 | use either::Either; | 6 | use either::Either; |
| 7 | use hir_def::{ | 7 | use hir_def::{ |
| 8 | adt::ReprKind, | 8 | adt::ReprKind, |
| @@ -98,7 +98,7 @@ impl Crate { | |||
| 98 | db.crate_graph()[self.id].edition | 98 | db.crate_graph()[self.id].edition |
| 99 | } | 99 | } |
| 100 | 100 | ||
| 101 | pub fn display_name(self, db: &dyn HirDatabase) -> Option<String> { | 101 | pub fn display_name(self, db: &dyn HirDatabase) -> Option<CrateName> { |
| 102 | db.crate_graph()[self.id].display_name.clone() | 102 | db.crate_graph()[self.id].display_name.clone() |
| 103 | } | 103 | } |
| 104 | 104 | ||
diff --git a/crates/project_model/src/lib.rs b/crates/project_model/src/lib.rs index 258f60e28..d1e7602fc 100644 --- a/crates/project_model/src/lib.rs +++ b/crates/project_model/src/lib.rs | |||
| @@ -411,7 +411,7 @@ impl ProjectWorkspace { | |||
| 411 | let crate_id = crate_graph.add_crate_root( | 411 | let crate_id = crate_graph.add_crate_root( |
| 412 | file_id, | 412 | file_id, |
| 413 | edition, | 413 | edition, |
| 414 | Some(cargo[pkg].name.clone()), | 414 | Some(CrateName::normalize_dashes(&cargo[pkg].name)), |
| 415 | cfg_options, | 415 | cfg_options, |
| 416 | env, | 416 | env, |
| 417 | proc_macro.clone(), | 417 | proc_macro.clone(), |
| @@ -546,7 +546,8 @@ fn sysroot_to_crate_graph( | |||
| 546 | 546 | ||
| 547 | let env = Env::default(); | 547 | let env = Env::default(); |
| 548 | let proc_macro = vec![]; | 548 | let proc_macro = vec![]; |
| 549 | let name = sysroot[krate].name.clone(); | 549 | let name = CrateName::new(&sysroot[krate].name) |
| 550 | .expect("Sysroot crates' names do not contain dashes"); | ||
| 550 | let crate_id = crate_graph.add_crate_root( | 551 | let crate_id = crate_graph.add_crate_root( |
| 551 | file_id, | 552 | file_id, |
| 552 | Edition::Edition2018, | 553 | Edition::Edition2018, |
