use std::collections::BTreeMap;
use crate::release::change::ChangeKind;
use crate::release::version::Ybf;
#[derive(Debug, Clone, PartialEq, Eq)]
pub(crate) struct PublishEntry {
pub(crate) crate_name: String,
pub(crate) unit: String,
pub(crate) from: Ybf,
pub(crate) to: Ybf,
pub(crate) change_kind: ChangeKind,
pub(crate) order: usize,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub(crate) struct ReleasePlan {
pub(crate) transaction_id: String,
pub(crate) commit: String,
pub(crate) entries: BTreeMap<String, PublishEntry>,
pub(crate) changed_count: usize,
}
impl ReleasePlan {
pub(crate) fn total_count(&self) -> usize {
self.entries.len()
}
pub(crate) fn is_empty(&self) -> bool {
self.changed_count == 0
}
}