Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/project-model/src/project_json.rs')
-rw-r--r--crates/project-model/src/project_json.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/crates/project-model/src/project_json.rs b/crates/project-model/src/project_json.rs
index 4b2448e47f..4dc24c4d56 100644
--- a/crates/project-model/src/project_json.rs
+++ b/crates/project-model/src/project_json.rs
@@ -52,6 +52,7 @@
use std::path::PathBuf;
use base_db::{CrateDisplayName, CrateId, CrateName, Dependency, Edition};
+use la_arena::RawIdx;
use paths::{AbsPath, AbsPathBuf};
use rustc_hash::FxHashMap;
use serde::{de, Deserialize};
@@ -135,7 +136,10 @@ impl ProjectJson {
.deps
.into_iter()
.map(|dep_data| {
- Dependency::new(dep_data.name, CrateId(dep_data.krate as u32))
+ Dependency::new(
+ dep_data.name,
+ CrateId::from_raw(RawIdx::from(dep_data.krate as u32)),
+ )
})
.collect::<Vec<_>>(),
cfg: crate_data.cfg,
@@ -162,7 +166,10 @@ impl ProjectJson {
/// Returns an iterator over the crates in the project.
pub fn crates(&self) -> impl Iterator<Item = (CrateId, &Crate)> + '_ {
- self.crates.iter().enumerate().map(|(idx, krate)| (CrateId(idx as u32), krate))
+ self.crates
+ .iter()
+ .enumerate()
+ .map(|(idx, krate)| (CrateId::from_raw(RawIdx::from(idx as u32)), krate))
}
/// Returns the path to the project's root folder.