BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bbldc::DateRangeDayCount Class Referenceabstract

#include <bbldc_daterangedaycount.h>

Inheritance diagram for bbldc::DateRangeDayCount:
bbldc::BasicDateRangeDayCountAdapter< CONVENTION > bbldc::CalendarDateRangeDayCountAdapter< CONVENTION > bbldc::PeriodDateRangeDayCountAdapter< CONVENTION > bbldc::TerminatedDateRangeDayCountAdapter< CONVENTION >

Public Member Functions

virtual ~DateRangeDayCount ()
 Destroy this object.
 
virtual int daysDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate) const =0
 
virtual const bdlt::DatefirstDate () const =0
 
virtual const bdlt::DatelastDate () const =0
 
virtual double yearsDiff (const bdlt::Date &beginDate, const bdlt::Date &endDate) const =0
 

Detailed Description

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.

See bbldc_daterangedaycount

Constructor & Destructor Documentation

◆ ~DateRangeDayCount()

virtual bbldc::DateRangeDayCount::~DateRangeDayCount ( )
virtual

Member Function Documentation

◆ daysDiff()

virtual int bbldc::DateRangeDayCount::daysDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate 
) const
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 >.

◆ firstDate()

virtual const bdlt::Date & bbldc::DateRangeDayCount::firstDate ( ) const
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 >.

◆ lastDate()

virtual const bdlt::Date & bbldc::DateRangeDayCount::lastDate ( ) const
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 >.

◆ yearsDiff()

virtual double bbldc::DateRangeDayCount::yearsDiff ( const bdlt::Date beginDate,
const bdlt::Date endDate 
) const
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 >.


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