8#ifndef INCLUDED_BBLDC_PERIODDAYCOUNTUTIL
9#define INCLUDED_BBLDC_PERIODDAYCOUNTUTIL
105#include <bblscm_version.h>
113#include <bsl_vector.h>
152 static double yearsDiffImp(
const bdlt::Date& beginDate,
156 double periodYearDiff,
180 double periodYearDiff,
184 const std::vector<bdlt::Date>& periodDate,
185 double periodYearDiff,
187#ifdef BSLS_LIBRARYFEATURES_HAS_CPP17_PMR
190 const std::pmr::vector<bdlt::Date>& periodDate,
191 double periodYearDiff,
225 double periodYearDiff,
228 return yearsDiffImp(beginDate,
231 periodDate.
data() + periodDate.
size(),
240 const std::vector<bdlt::Date>& periodDate,
241 double periodYearDiff,
247 const bdlt::Date *begin = periodDate.empty() ? 0 : &*periodDate.begin();
248 const bdlt::Date *end = begin + periodDate.size();
250 return yearsDiffImp(beginDate,
258#ifdef BSLS_LIBRARYFEATURES_HAS_CPP17_PMR
263 const std::pmr::vector<bdlt::Date>& periodDate,
264 double periodYearDiff,
270 return yearsDiffImp(beginDate,
273 periodDate.data() + periodDate.size(),
Definition bdlt_date.h:294
size_type size() const BSLS_KEYWORD_NOEXCEPT
Return the number of elements in this vector.
Definition bslstl_vector.h:3019
VALUE_TYPE * data() BSLS_KEYWORD_NOEXCEPT
Definition bslstl_vector.h:2942
Definition bslstl_vector.h:1120
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition bbldc_basicactual360.h:107
Enum
Definition bbldc_daycountconvention.h:134
Definition bbldc_perioddaycountutil.h:129
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)
Definition bbldc_perioddaycountutil.h:221
static int daysDiff(const bdlt::Date &beginDate, const bdlt::Date &endDate, DayCountConvention::Enum convention)