|
BDE 4.14.0 Production release
|
#include <bbldc_daterangedaycount.h>
Public Member Functions | |
| virtual | ~DateRangeDayCount () |
| Destroy this object. | |
| virtual int | daysDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate) const =0 |
| virtual const bdlt::Date & | firstDate () const =0 |
| virtual const bdlt::Date & | lastDate () const =0 |
| virtual double | yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate) const =0 |
This class provides a protocol for determining values based on dates according to derived implementations of specific day-count conventions. The methods firstDate and lastDate define a date range for which calculations are valid, to reflect the valid range of, say, a calendar required for the computations.
|
virtual |
|
pure virtual |
Return the (signed) number of days between the specified beginDate and endDate. If beginDate <= endDate, then the result is non-negative. The behavior is undefined unless firstDate() <= beginDate <= lastDate() and firstDate() <= endDate <= lastDate(). Note that reversing the order of beginDate and endDate negates the result.
Implemented in bbldc::BasicDateRangeDayCountAdapter< CONVENTION >, bbldc::CalendarDateRangeDayCountAdapter< CONVENTION >, bbldc::PeriodDateRangeDayCountAdapter< CONVENTION >, and bbldc::TerminatedDateRangeDayCountAdapter< CONVENTION >.
|
pure virtual |
Return a reference providing non-modifiable access to the earliest date in the valid range of this day-count convention.
Implemented in bbldc::BasicDateRangeDayCountAdapter< CONVENTION >, bbldc::CalendarDateRangeDayCountAdapter< CONVENTION >, bbldc::PeriodDateRangeDayCountAdapter< CONVENTION >, and bbldc::TerminatedDateRangeDayCountAdapter< CONVENTION >.
|
pure virtual |
Return a reference providing non-modifiable access to the latest date in the valid range of this day-count convention.
Implemented in bbldc::BasicDateRangeDayCountAdapter< CONVENTION >, bbldc::CalendarDateRangeDayCountAdapter< CONVENTION >, bbldc::PeriodDateRangeDayCountAdapter< CONVENTION >, and bbldc::TerminatedDateRangeDayCountAdapter< CONVENTION >.
|
pure virtual |
Return the (signed fractional) number of years between the specified beginDate and endDate. If beginDate <= endDate, then the result is non-negative. The behavior is undefined unless firstDate() <= beginDate <= lastDate() and firstDate() <= endDate <= lastDate(). Note that reversing the order of beginDate and endDate negates the result; specifically, |yearsDiff(b, e) + yearsDiff(e, b)| <= 1.0e-15 for all dates b and e.
Implemented in bbldc::BasicDateRangeDayCountAdapter< CONVENTION >, bbldc::CalendarDateRangeDayCountAdapter< CONVENTION >, bbldc::PeriodDateRangeDayCountAdapter< CONVENTION >, and bbldc::TerminatedDateRangeDayCountAdapter< CONVENTION >.