aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_project_model/src/cargo_workspace.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_project_model/src/cargo_workspace.rs')
-rw-r--r--crates/ra_project_model/src/cargo_workspace.rs14
1 files changed, 5 insertions, 9 deletions
diff --git a/crates/ra_project_model/src/cargo_workspace.rs b/crates/ra_project_model/src/cargo_workspace.rs
index 43dbd096a..c2857dbfc 100644
--- a/crates/ra_project_model/src/cargo_workspace.rs
+++ b/crates/ra_project_model/src/cargo_workspace.rs
@@ -7,7 +7,7 @@ use std::{
7 7
8use anyhow::{Context, Result}; 8use anyhow::{Context, Result};
9use cargo_metadata::{CargoOpt, Message, MetadataCommand, PackageId}; 9use cargo_metadata::{CargoOpt, Message, MetadataCommand, PackageId};
10use ra_arena::{impl_arena_id, Arena, RawId}; 10use ra_arena::{Arena, Idx};
11use ra_cargo_watch::run_cargo; 11use ra_cargo_watch::run_cargo;
12use ra_db::Edition; 12use ra_db::Edition;
13use rustc_hash::FxHashMap; 13use rustc_hash::FxHashMap;
@@ -22,8 +22,8 @@ use serde::Deserialize;
22/// concepts. 22/// concepts.
23#[derive(Debug, Clone)] 23#[derive(Debug, Clone)]
24pub struct CargoWorkspace { 24pub struct CargoWorkspace {
25 packages: Arena<Package, PackageData>, 25 packages: Arena<PackageData>,
26 targets: Arena<Target, TargetData>, 26 targets: Arena<TargetData>,
27 workspace_root: PathBuf, 27 workspace_root: PathBuf,
28} 28}
29 29
@@ -69,13 +69,9 @@ impl Default for CargoFeatures {
69 } 69 }
70} 70}
71 71
72#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)] 72pub type Package = Idx<PackageData>;
73pub struct Package(RawId);
74impl_arena_id!(Package);
75 73
76#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)] 74pub type Target = Idx<TargetData>;
77pub struct Target(RawId);
78impl_arena_id!(Target);
79 75
80#[derive(Debug, Clone)] 76#[derive(Debug, Clone)]
81pub struct PackageData { 77pub struct PackageData {