Quick Links:

bal | bbl | bdl | bsl

Static Public Member Functions

bbldc::PeriodDayCountUtil Struct Reference

#include <bbldc_perioddaycountutil.h>

List of all members.

Static Public Member Functions

static int daysDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, DayCountConvention::Enum convention)
static bool isSupported (DayCountConvention::Enum convention)
static double yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const bsl::vector< bdlt::Date > &periodDate, double periodYearDiff, DayCountConvention::Enum convention)
static double yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const std::vector< bdlt::Date > &periodDate, double periodYearDiff, DayCountConvention::Enum convention)

Detailed Description

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_perioddaycountutil


Member Function Documentation

static int bbldc::PeriodDayCountUtil::daysDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate,
DayCountConvention::Enum  convention 
) [static]

Return the (signed) number of days between the specified beginDate and endDate according to the specified day-count convention. 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.

static bool bbldc::PeriodDayCountUtil::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::PeriodDayCountUtil::yearsDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate,
const bsl::vector< bdlt::Date > &  periodDate,
double  periodYearDiff,
DayCountConvention::Enum  convention 
) [static]
static double bbldc::PeriodDayCountUtil::yearsDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate,
const std::vector< bdlt::Date > &  periodDate,
double  periodYearDiff,
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 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, min(beginDate, endDate) >= periodDate.front(), max(beginDate, endDate) <= periodDate.back(), and isSupported(convention). Note that reversing the order of beginDate and endDate negates the result; specifically, |yearsDiff(b,e,pd,pyd,c) + yearsDiff(e,b,pd,pyd,c)| <= 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: