///|
/// A deterministic summary of a calendar over a closed date range.
pub struct CalendarSummary {
start : Date
end : Date
total_days : Int
business_days : Int
weekend_days : Int
holiday_days : Int
observed_holiday_days : Int
extra_workdays : Int
first_business : Date?
last_business : Date?
}
///|
pub fn CalendarSummary::start(self : CalendarSummary) -> Date {
self.start
}
///|
pub fn CalendarSummary::end(self : CalendarSummary) -> Date {
self.end
}
///|
pub fn CalendarSummary::total_days(self : CalendarSummary) -> Int {
self.total_days
}
///|
pub fn CalendarSummary::business_days(self : CalendarSummary) -> Int {
self.business_days
}
///|
pub fn CalendarSummary::weekend_days(self : CalendarSummary) -> Int {
self.weekend_days
}
///|
pub fn CalendarSummary::holiday_days(self : CalendarSummary) -> Int {
self.holiday_days
}
///|
pub fn CalendarSummary::observed_holiday_days(self : CalendarSummary) -> Int {
self.observed_holiday_days
}
///|
pub fn CalendarSummary::extra_workdays(self : CalendarSummary) -> Int {
self.extra_workdays
}
///|
pub fn CalendarSummary::first_business_day(self : CalendarSummary) -> Date? {
self.first_business
}
///|
pub fn CalendarSummary::last_business_day(self : CalendarSummary) -> Date? {
self.last_business
}