Quick Links:

bal | bbl | bdl | bsl

Static Public Member Functions

bbldc::PeriodIcmaActualActual Struct Reference

#include <bbldc_periodicmaactualactual.h>

List of all members.

Static Public Member Functions

static int daysDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate)
static double yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const bdlt::Date *periodDateBegin, const bdlt::Date *periodDateEnd, double periodYearDiff)
static double yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const bsl::vector< bdlt::Date > &periodDate, double periodYearDiff)
static double yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const std::vector< bdlt::Date > &periodDate, double periodYearDiff)

Detailed Description

This struct provides a namespace for a suite of pure functions that compute values based on dates according to the ICMA Actual/Actual day-count convention.

See Component bbldc_periodicmaactualactual


Member Function Documentation

static int bbldc::PeriodIcmaActualActual::daysDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate 
) [static]

Return the (signed) number of days between the specified beginDate and endDate according to the ICMA Actual/Actual day-count convention. If beginDate <= endDate, then the result is non-negative. Note that reversing the order of beginDate and endDate negates the result.

static double bbldc::PeriodIcmaActualActual::yearsDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate,
const bdlt::Date periodDateBegin,
const bdlt::Date periodDateEnd,
double  periodYearDiff 
) [static]

Return the (signed fractional) number of years between the specified beginDate and endDate according to the ICMA Actual/Actual day-count convention with periods starting on the specified range [ periodDateBegin, periodDateEnd ) values and each period having a duration of the specified periodYearDiff years (e.g., 0.25 for quarterly periods). If beginDate <= endDate, then the result is non-negative. The behavior is undefined unless 2 <= periodDateEnd - periodDateBegin, the values contained in the range are unique and sorted from minimum to maximum, *periodDateBegin <= beginDate <= *(periodDateEnd - 1), and *periodDateBegin <= endDate <= *(periodDateEnd - 1). Note that reversing the order of beginDate and endDate negates the result; specifically, |yearsDiff(b, e, pd, pyd) + yearsDiff(e, b, pd, pyd)| <= 1.0e-15 for all dates b and e, periods pd, and year fraction per period pyd.

static double bbldc::PeriodIcmaActualActual::yearsDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate,
const bsl::vector< bdlt::Date > &  periodDate,
double  periodYearDiff 
) [static]
static double bbldc::PeriodIcmaActualActual::yearsDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate,
const std::vector< bdlt::Date > &  periodDate,
double  periodYearDiff 
) [static]

Return the (signed fractional) number of years between the specified beginDate and endDate according to the ICMA Actual/Actual day-count convention with periods starting on the specified periodDate values and each period having a duration of the specified periodYearDiff years (e.g., 0.25 for quarterly periods). If beginDate <= endDate, then the result is non-negative. The behavior is undefined unless periodDate.size() >= 2, the values contained in periodDate are unique and sorted from minimum to maximum, periodDate.front() <= beginDate <= periodDate.back(), and periodDate.front() <= endDate <= periodDate.back(). Note that reversing the order of beginDate and endDate negates the result; specifically, |yearsDiff(b, e, pd, pyd) + yearsDiff(e, b, pd, pyd)| <= 1.0e-15 for all dates b and e, periods pd, and year fraction per period pyd.


The documentation for this struct was generated from the following file: