Quick Links: |
#include <bbldc_terminateddaycountutil.h>
Static Public Member Functions | |
static int | daysDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const bdlt::Date &terminationDate, DayCountConvention::Enum convention) |
static bool | isSupported (DayCountConvention::Enum convention) |
static double | yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const bdlt::Date &terminationDate, DayCountConvention::Enum convention) |
This struct
provides a namespace for a suite of pure functions that compute values based on dates according to enumerated day-count conventions.
See Component bbldc_terminateddaycountutil
static int bbldc::TerminatedDayCountUtil::daysDiff | ( | const bdlt::Date & | beginDate, | |
const bdlt::Date & | endDate, | |||
const bdlt::Date & | terminationDate, | |||
DayCountConvention::Enum | convention | |||
) | [static] |
Return the (signed) number of days between the specified beginDate
and endDate
according to the specified day-count convention
with the specified terminationDate
. If beginDate <= endDate
then the result is non-negative. The behavior is undefined unless isSupported(convention)
. Note that reversing the order of beginDate
and endDate
negates the result and that the result is 0 when beginDate == endDate
.
static bool bbldc::TerminatedDayCountUtil::isSupported | ( | DayCountConvention::Enum | convention | ) | [static] |
Return true
if the specified convention
is valid for use in daysDiff
and yearsDiff
, and false
otherwise.
static double bbldc::TerminatedDayCountUtil::yearsDiff | ( | const bdlt::Date & | beginDate, | |
const bdlt::Date & | endDate, | |||
const bdlt::Date & | terminationDate, | |||
DayCountConvention::Enum | convention | |||
) | [static] |
Return the (signed fractional) number of years between the specified beginDate
and endDate
according to the specified day-count convention
with the specified terminationDate
. If beginDate <= endDate
then the result is non-negative. The behavior is undefined unless isSupported(convention)
. Note that reversing the order of beginDate
and endDate
negates the result; specifically, |yearsDiff(b, e, t, c) + yearsDiff(e, b, t, c)| <= 1.0e-15
for all valid dates b
, e
, and t
, and day-count conventions c
.