use std::collections::BTreeMap;
use crate::drop::{
name::Query,
source::Git,
};
pub type Deps = BTreeMap<Query, DepInfo>;
flexible! {
#[derive(Clone, Debug, PartialEq, Eq, Hash, Serialize)]
pub struct DepInfo {
pub version: String,
#[serde(default)]
pub optional: bool,
#[serde(skip_serializing_if = "Option::is_none")]
pub git: Option<Git>,
}
}
impl From<String> for DepInfo {
fn from(version: String) -> Self {
Self {
version,
git: None,
optional: false,
}
}
}