///|
/// A named deadline in a batch calculation.
pub struct BatchTask {
name : String
event : String?
dependency : String?
rule : DateRule
start_rule : StartDateRule
calendar : Calendar
extension : ExtensionPolicy
}
///|
pub enum BatchError {
BatchDuplicate(String)
BatchMissingDependency(String)
BatchCycle(String)
BatchEmpty
BatchEventFailure(EventError)
BatchDeadlineFailure(DeadlineError)
} derive(Debug)
///|
struct BatchResultEntry {
name : String
result : DeadlineResult
}
///|
pub struct BatchResult {
entries : Array[BatchResultEntry]
}
///|
pub struct BatchDeadline {
tasks : Array[BatchTask]
}