[#BloombergLP-bbldc-DateRangeDayCount]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bbldc.adoc[bbldc]::DateRangeDayCount
:relfileprefix: ../../
:mrdocs:

This `class` provides a protocol for determining values based on dates according to derived implementations of specific day&hyphen;count conventions&period;

== Synopsis

Declared in `&lt;bbldc&lowbar;daterangedaycount&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class DateRangeDayCount;
----

== Description

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&period;

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bbldc/DateRangeDayCount/2destructor.adoc[`&#126;DateRangeDayCount`] [.small]#[destructor]# [.small]#[virtual]#
| Destroy this object&period;
| xref:BloombergLP/bbldc/DateRangeDayCount/daysDiff.adoc[`daysDiff`]  [.small]#[virtual]#
| Return the (signed) number of days between two dates&period;
| xref:BloombergLP/bbldc/DateRangeDayCount/firstDate.adoc[`firstDate`]  [.small]#[virtual]#
| Return a reference providing non&hyphen;modifiable access to the earliest date in the valid range of this day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/DateRangeDayCount/lastDate.adoc[`lastDate`]  [.small]#[virtual]#
| Return a reference providing non&hyphen;modifiable access to the latest date in the valid range of this day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/DateRangeDayCount/yearsDiff.adoc[`yearsDiff`]  [.small]#[virtual]#
| Return the (signed fractional) number of years between two dates&period;
|===


== Derived Classes

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bbldc/BasicDateRangeDayCountAdapter.adoc[`BasicDateRangeDayCountAdapter`] 
| Adapter from a day&hyphen;count `CONVENTION` to `bbldc&colon;&colon;DateRangeDayCount`&period;
| xref:BloombergLP/bbldc/CalendarDateRangeDayCountAdapter.adoc[`CalendarDateRangeDayCountAdapter`] 
| Adapter from a calendar&hyphen;based day&hyphen;count `CONVENTION` to `bbldc&colon;&colon;DateRangeDayCount`&period;
| xref:BloombergLP/bbldc/PeriodDateRangeDayCountAdapter.adoc[`PeriodDateRangeDayCountAdapter`] 
| Adapter from a period&hyphen;based day&hyphen;count `CONVENTION` to `bbldc&colon;&colon;DateRangeDayCount`&period;
| xref:BloombergLP/bbldc/TerminatedDateRangeDayCountAdapter.adoc[`TerminatedDateRangeDayCountAdapter`] 
| Adapter from a day&hyphen;count `CONVENTION` to `bbldc&colon;&colon;DateRangeDayCount`&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
