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

Package namespace for day&hyphen;count convention components&period;

== Types

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bbldc/BasicActual360.adoc[`BasicActual360`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the Actual&sol;360 day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicActual36525.adoc[`BasicActual36525`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the Actual&sol;365&period;25 day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicActual365Fixed.adoc[`BasicActual365Fixed`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the Actual&sol;365 fixed day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicBasicDayCountAdapter.adoc[`BasicBasicDayCountAdapter`] 
| This `class` provides an &quot;adapter&quot; from the specified `CONVENTION` to the `bbldc&colon;&colon;BasicDayCount` protocol that can be used for determining values based on dates according to the day&hyphen;count `CONVENTION`&period;
| xref:BloombergLP/bbldc/BasicDateRangeDayCountAdapter.adoc[`BasicDateRangeDayCountAdapter`] 
| This `class` provides an &quot;adapter&quot; from the specified `CONVENTION` to the `bbldc&colon;&colon;DateRangeDayCount` protocol that can be used for determining values based on dates according to the day&hyphen;count `CONVENTION`&period;
| xref:BloombergLP/bbldc/BasicDayCount.adoc[`BasicDayCount`] 
| This `class` provides a protocol for determining values based on dates according to derived implementations of specific day&hyphen;count conventions&period;
| xref:BloombergLP/bbldc/BasicDayCountUtil.adoc[`BasicDayCountUtil`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to enumerated day&hyphen;count conventions&period;
| xref:BloombergLP/bbldc/BasicIsda11.adoc[`BasicIsda11`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the ISDA 1&sol;1 day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicIsdaActualActual.adoc[`BasicIsdaActualActual`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the ISDA Actual&sol;Actual day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicIsma30360.adoc[`BasicIsma30360`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the ISMA 30&sol;360 day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicNl365.adoc[`BasicNl365`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the NL&sol;365 day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicPsa30360Eom.adoc[`BasicPsa30360Eom`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the PSA 30&sol;360 end&hyphen;of&hyphen;month day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicSia30360Eom.adoc[`BasicSia30360Eom`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the SIA 30&sol;360 end&hyphen;of&hyphen;month day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/BasicSia30360Neom.adoc[`BasicSia30360Neom`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the SIA&hyphen;30&sol;360&hyphen;neom day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/CalendarBus252.adoc[`CalendarBus252`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the BUS&hyphen;252 day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/CalendarDateRangeDayCountAdapter.adoc[`CalendarDateRangeDayCountAdapter`] 
| This `class` provides an &quot;adapter&quot; from the specified `CONVENTION`, that requires a calendar to compute the day count and the year fraction, to the `bbldc&colon;&colon;DateRangeDayCount` protocol that can be used for determining values based on dates according to the day&hyphen;count `CONVENTION`&period;
| xref:BloombergLP/bbldc/CalendarDayCountUtil.adoc[`CalendarDayCountUtil`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to enumerated day&hyphen;count conventions&period;
| xref:BloombergLP/bbldc/DateRangeDayCount.adoc[`DateRangeDayCount`] 
| This `class` provides a protocol for determining values based on dates according to derived implementations of specific day&hyphen;count conventions&period; 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;
| xref:BloombergLP/bbldc/DayCountConvention.adoc[`DayCountConvention`] 
| This `struct` provides a namespace for enumerating the set of day&hyphen;count conventions supported within `bbldc`&period; See `Enum` in the `TYPES` sub&hyphen;section for details&period;
| xref:BloombergLP/bbldc/PeriodDateRangeDayCountAdapter.adoc[`PeriodDateRangeDayCountAdapter`] 
| This `class` provides an &quot;adapter&quot; from the specified `CONVENTION`, that requires a set of periods to compute the year fraction, to the `bbldc&colon;&colon;DateRangeDayCount` protocol that can be used for determining values based on dates according to the day&hyphen;count `CONVENTION`&period;
| xref:BloombergLP/bbldc/PeriodDayCountUtil.adoc[`PeriodDayCountUtil`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to enumerated day&hyphen;count conventions&period;
| xref:BloombergLP/bbldc/PeriodIcmaActualActual.adoc[`PeriodIcmaActualActual`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the ICMA Actual&sol;Actual day&hyphen;count convention&period;
| xref:BloombergLP/bbldc/TerminatedBasicDayCountAdapter.adoc[`TerminatedBasicDayCountAdapter`] 
| This `class` provides an &quot;adapter&quot; from the specified `CONVENTION` to the `bbldc&colon;&colon;BasicDayCount` protocol that can be used for determining values based on dates according to the day&hyphen;count `CONVENTION`&period;
| xref:BloombergLP/bbldc/TerminatedDateRangeDayCountAdapter.adoc[`TerminatedDateRangeDayCountAdapter`] 
| This `class` provides an &quot;adapter&quot; from the specified `CONVENTION` to the `bbldc&colon;&colon;DateRangeDayCount` protocol that can be used for determining values based on dates according to the day&hyphen;count `CONVENTION`&period;
| xref:BloombergLP/bbldc/TerminatedDayCountUtil.adoc[`TerminatedDayCountUtil`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to enumerated day&hyphen;count conventions&period;
| xref:BloombergLP/bbldc/TerminatedIsda30360Eom.adoc[`TerminatedIsda30360Eom`] 
| This `struct` provides a namespace for a suite of pure functions that compute values based on dates according to the ISDA 30&sol;360 end&hyphen;of&hyphen;month day&hyphen;count convention&period;
|===


== Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bbldc/bdexStreamIn.adoc[`bdexStreamIn`] 
| Load into the specified `variable` the `DayCountConvention&colon;&colon;Enum` value read from the specified input `stream` using the specified `version` format, and return a reference to `stream`&period; If `stream` is initially invalid, this operation has no effect&period; If `version` is not supported by `DayCountConvention`, `variable` is unaltered and `stream` is invalidated, but otherwise unmodified&period; If `version` is supported by `DayCountConvention` but `stream` becomes invalid during this operation, `variable` has an undefined, but valid, state&period; The behavior is undefined unless `STREAM` is BDEX&hyphen;compliant&period; Note that no version is read from `stream`&period; See the `bslx` package&hyphen;level documentation for more information on BDEX streaming of value&hyphen;semantic types and containers&period;
| xref:BloombergLP/bbldc/bdexStreamOut.adoc[`bdexStreamOut`] 
| Write the specified `value`, using the specified `version` format, to the specified output `stream`, and return a reference to `stream`&period; If `stream` is initially invalid, this operation has no effect&period; If `version` is not supported by `DayCountConvention`, `stream` is invalidated, but otherwise unmodified&period; The behavior is undefined unless `STREAM` is BDEX&hyphen;compliant&period; Note that `version` is not written to `stream`&period; See the `bslx` package&hyphen;level documentation for more information on BDEX streaming of value&hyphen;semantic types and containers&period;
| xref:BloombergLP/bbldc/maxSupportedBdexVersion.adoc[`maxSupportedBdexVersion`] 
| Return the maximum valid BDEX format version, as indicated by the specified `versionSelector`, to be passed to the `bdexStreamOut` method while streaming an object of the type `DayCountConvention&colon;&colon;Enum`&period; Note that it is highly recommended that `versionSelector` be formatted as &quot;YYYYMMDD&quot;, a date representation&period; Also note that `versionSelector` should be a _compile_&hyphen;time&hyphen;chosen value that selects a format version supported by both externalizer and unexternalizer&period; See the `bslx` package&hyphen;level documentation for more information on BDEX streaming of value&hyphen;semantic types and containers&period;
| xref:BloombergLP/bbldc/operator_lshift.adoc[`operator&lt;&lt;`] 
| Write the string representation of the specified enumeration `value` to the specified output `stream` in a single&hyphen;line format, and return a reference to `stream`&period; See `toAscii` for what constitutes the string representation of a `bbldc&colon;&colon;DayCountConvention&colon;&colon;Enum` value&period; Note that this method has the same behavior as &grave; bbldc&colon;&colon;DayCountConvention&colon;&colon;print(stream, value, 0, &hyphen;1)&semi; &grave;
|===



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