Skip to content

Commit 99952f3

Browse files
Fix the hover dash issues
1 parent cae2e85 commit 99952f3

File tree

4 files changed

+10
-9
lines changed

4 files changed

+10
-9
lines changed

crates/base_db/src/fixture.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -154,15 +154,15 @@ impl ChangeFixture {
154154
assert!(meta.path.starts_with(&source_root_prefix));
155155

156156
if let Some(krate) = meta.krate {
157+
let crate_name = CrateName::normalize_dashes(&krate);
157158
let crate_id = crate_graph.add_crate_root(
158159
file_id,
159160
meta.edition,
160-
Some(krate.clone()),
161+
Some(crate_name.clone()),
161162
meta.cfg,
162163
meta.env,
163164
Default::default(),
164165
);
165-
let crate_name = CrateName::normalize_dashes(&krate);
166166
let prev = crates.insert(crate_name.clone(), crate_id);
167167
assert!(prev.is_none());
168168
for dep in meta.deps {
@@ -187,7 +187,7 @@ impl ChangeFixture {
187187
crate_graph.add_crate_root(
188188
crate_root,
189189
Edition::Edition2018,
190-
Some("test".to_string()),
190+
Some(CrateName::new("test").unwrap()),
191191
default_cfg,
192192
Env::default(),
193193
Default::default(),

crates/base_db/src/input.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ pub struct CrateData {
130130
/// The name to display to the end user.
131131
/// This actual crate name can be different in a particular dependent crate
132132
/// 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>,
134134
pub cfg_options: CfgOptions,
135135
pub env: Env,
136136
pub dependencies: Vec<Dependency>,
@@ -159,7 +159,7 @@ impl CrateGraph {
159159
&mut self,
160160
file_id: FileId,
161161
edition: Edition,
162-
display_name: Option<String>,
162+
display_name: Option<CrateName>,
163163
cfg_options: CfgOptions,
164164
env: Env,
165165
proc_macro: Vec<(SmolStr, Arc<dyn tt::TokenExpander>)>,

crates/hir/src/code_model.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
use std::{iter, sync::Arc};
33

44
use arrayvec::ArrayVec;
5-
use base_db::{CrateId, Edition, FileId};
5+
use base_db::{CrateId, CrateName, Edition, FileId};
66
use either::Either;
77
use hir_def::{
88
adt::ReprKind,
@@ -98,7 +98,7 @@ impl Crate {
9898
db.crate_graph()[self.id].edition
9999
}
100100

101-
pub fn display_name(self, db: &dyn HirDatabase) -> Option<String> {
101+
pub fn display_name(self, db: &dyn HirDatabase) -> Option<CrateName> {
102102
db.crate_graph()[self.id].display_name.clone()
103103
}
104104

crates/project_model/src/lib.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -411,7 +411,7 @@ impl ProjectWorkspace {
411411
let crate_id = crate_graph.add_crate_root(
412412
file_id,
413413
edition,
414-
Some(cargo[pkg].name.clone()),
414+
Some(CrateName::normalize_dashes(&cargo[pkg].name)),
415415
cfg_options,
416416
env,
417417
proc_macro.clone(),
@@ -546,7 +546,8 @@ fn sysroot_to_crate_graph(
546546

547547
let env = Env::default();
548548
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");
550551
let crate_id = crate_graph.add_crate_root(
551552
file_id,
552553
Edition::Edition2018,

0 commit comments

Comments
 (0)