Date Class Reference
[Date and time calculations]
#include <ql/time/date.hpp>
Detailed Description
Concrete date class.This class provides methods to inspect dates as well as methods and operators which implement a limited date algebra (increasing and decreasing dates, and calculating their difference).
- Tests:
- self-consistency of dates, serial numbers, days of month, months, and weekdays is checked over the whole date range.
- Examples:
-
BermudanSwaption.cpp, ConvertibleBonds.cpp, DiscreteHedging.cpp, EquityOption.cpp, FRA.cpp, Replication.cpp, Repo.cpp, and swapvaluation.cpp.
Public Member Functions | |
constructors | |
Date () | |
Default constructor returning a null date. | |
Date (BigInteger serialNumber) | |
Constructor taking a serial number as given by Applix or Excel. | |
Date (Day d, Month m, Year y) | |
More traditional constructor. | |
inspectors | |
Weekday | weekday () const |
Day | dayOfMonth () const |
Day | dayOfYear () const |
One-based (Jan 1st = 1). | |
Month | month () const |
Year | year () const |
BigInteger | serialNumber () const |
date algebra | |
Date & | operator+= (BigInteger days) |
increments date by the given number of days | |
Date & | operator+= (const Period &) |
increments date by the given period | |
Date & | operator-= (BigInteger days) |
decrement date by the given number of days | |
Date & | operator-= (const Period &) |
decrements date by the given period | |
Date & | operator++ () |
1-day pre-increment | |
Date | operator++ (int) |
1-day post-increment | |
Date & | operator-- () |
1-day pre-decrement | |
Date | operator-- (int) |
1-day post-decrement | |
Date | operator+ (BigInteger days) const |
returns a new date incremented by the given number of days | |
Date | operator+ (const Period &) const |
returns a new date incremented by the given period | |
Date | operator- (BigInteger days) const |
returns a new date decremented by the given number of days | |
Date | operator- (const Period &) const |
returns a new date decremented by the given period | |
Static Public Member Functions | |
static methods | |
static Date | todaysDate () |
today's date. | |
static Date | minDate () |
earliest allowed date | |
static Date | maxDate () |
latest allowed date | |
static bool | isLeap (Year y) |
whether the given year is a leap one | |
static Date | endOfMonth (const Date &d) |
last day of the month to which the given date belongs | |
static bool | isEndOfMonth (const Date &d) |
whether a date is the last day of its month | |
static Date | nextWeekday (const Date &d, Weekday) |
next given weekday following or equal to the given date | |
static Date | nthWeekday (Size n, Weekday, Month m, Year y) |
n-th given weekday in the given month and year | |
Related Functions | |
(Note that these are not member functions.) | |
BigInteger | operator- (const Date &, const Date &) |
Difference in days between dates. | |
bool | operator== (const Date &, const Date &) |
bool | operator!= (const Date &, const Date &) |
bool | operator< (const Date &, const Date &) |
bool | operator<= (const Date &, const Date &) |
bool | operator> (const Date &, const Date &) |
bool | operator>= (const Date &, const Date &) |
std::ostream & | operator<< (std::ostream &, const Date &) |
Member Function Documentation
next given weekday following or equal to the given date
E.g., the Friday following Tuesday, January 15th, 2002 was January 18th, 2002.
n-th given weekday in the given month and year
E.g., the 4th Thursday of March, 1998 was March 26th, 1998.
Friends And Related Function Documentation
std::ostream & operator<< | ( | std::ostream & | , | |
const Date & | ||||
) | [related] |