use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct Workspace {
pub packages: Vec<Package>,
pub target_directory: String,
pub workspace_root: String,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct Package {
pub name: String,
pub version: String,
pub id: String,
pub dependencies: Vec<Dependency>,
pub targets: Vec<Target>,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct Dependency {
pub name: String,
pub uses_default_features: bool,
pub features: Vec<String>,
pub path: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct Target {
pub kind: Vec<String>,
pub name: String,
pub src_path: String,
}