Quick Links:

bal | bbl | bdl | bsl

Static Public Member Functions

bbldc::CalendarDayCountUtil Struct Reference

#include <bbldc_calendardaycountutil.h>

List of all members.

Static Public Member Functions

static int daysDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const bdlt::Calendar &calendar, DayCountConvention::Enum convention)
static bool isSupported (DayCountConvention::Enum convention)
static double yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate, const bdlt::Calendar &calendar, 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_calendardaycountutil


Member Function Documentation

static int bbldc::CalendarDayCountUtil::daysDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate,
const bdlt::Calendar calendar,
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 calendar providing the definition of business days. If beginDate <= endDate then the result is non-negative. The behavior is undefined unless isSupported(convention), calendar.isInRange(beginDate), and calendar.isInRange(endDate). Note that reversing the order of beginDate and endDate negates the result and that the result is 0 when beginDate == endDate.

static bool bbldc::CalendarDayCountUtil::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::CalendarDayCountUtil::yearsDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate,
const bdlt::Calendar calendar,
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 calendar providing the definition of business days. If beginDate <= endDate then the result is non-negative. The behavior is undefined unless isSupported(convention), calendar.isInRange(beginDate), and calendar.isInRange(endDate). Note that reversing the order of beginDate and endDate negates the result; specifically, |yearsDiff(b, e, cal, c) + yearsDiff(e, b, cal, c)| <= 1.0e-15 for all calendars cal, valid dates b and e, and day-count conventions c.


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