BDE 4.14.0 Production release
|
#include <bdlt_dateutil.h>
Static Public Member Functions | |
static Date | addMonths (const Date &original, int numMonths, bool eomFlag) |
static Date | addMonthsEom (const Date &original, int numMonths) |
static Date | addMonthsNoEom (const Date &original, int numMonths) |
static Date | addYears (const Date &original, int numYears, bool eomFlag) |
static Date | addYearsEom (const Date &original, int numYears) |
static Date | addYearsNoEom (const Date &original, int numYears) |
static int | convertFromYYYYMMDD (Date *result, int yyyymmddValue) |
static Date | convertFromYYYYMMDDRaw (int yyyymmddValue) |
static int | convertToYYYYMMDD (const Date &date) |
static Date | earliestDayOfWeekInMonth (int year, int month, DayOfWeek::Enum dayOfWeek) |
static bool | isValidYYYYMMDD (int yyyymmddValue) |
static Date | lastDayInMonth (int year, int month) |
static Date | lastDayOfWeekInMonth (int year, int month, DayOfWeek::Enum dayOfWeek) |
static Date | nextDayOfWeek (DayOfWeek::Enum dayOfWeek, const Date &date) |
static Date | nextDayOfWeekInclusive (DayOfWeek::Enum dayOfWeek, const Date &date) |
static Date | nthDayOfWeekInMonth (int year, int month, DayOfWeek::Enum dayOfWeek, int n) |
static Date | previousDayOfWeek (DayOfWeek::Enum dayOfWeek, const Date &date) |
static Date | previousDayOfWeekInclusive (DayOfWeek::Enum dayOfWeek, const Date &date) |
This struct
provides a namespace for utility functions that provide non-primitive operations on dates.
Return the date that is the specified numMonths
from the specified original
date, adjusted as necessary according to the specified eomFlag
(end-of-month flag). If eomFlag
is true
and original
is the last day of the month, then adjust the result to be the last day of the month; if eomFlag
is false
, then no such adjustment is performed. In any case, if the day of the month in original
does not exist in the month of the result (e.g., February 29, 2001), move the resulting date to the last day of the month. The behavior is undefined unless the operation results in a valid Date
value. Note that numMonths
may be negative.
Return the date that is the specified numMonths
from the specified original
date, adjusted as necessary according to the following (end-of-month) rules: (1) if original
is the last day of a month, adjust the result to be the last day of the month, and (2) if the day of the month in original
does not exist in the month of the result (e.g., February 30), move the resulting date to the last day of the month. The behavior is undefined unless the operation results in a valid Date
value. Note that numMonths
may be negative.
Return the date that is the specified numMonths
from the specified original
date, adjusted as necessary according to the following (non-end-of-month) rule: if the day of the month in original
does not exist in the month of the result (e.g., February 29, 2001), move the resulting date to the last day of the month. The behavior is undefined unless the operation results in a valid Date
value. Note that numMonths
may be negative.
Return the date that is the specified numYears
from the specified original
date, adjusted as necessary according to the specified eomFlag
(end-of-month flag). If eomFlag
is true
and original
is the last day of the month, then adjust the result to be the last day of the month; if eomFlag
is false
, then no such adjustment is performed. In any case, if the day of the month in original
does not exist in the month of the result (e.g., February 29, 2001), move the resulting date to the last day of the month. The behavior is undefined unless the operation results in a valid Date
value. Note that numYears
may be negative.
Return the date that is the specified numYears
from the specified original
date, adjusted as necessary according to the following (end-of-month) rules: (1) if original
is the last day of a month, adjust the result to be the last day of the month, and (2) if the day of the month in original
does not exist in the month of the result (e.g., February 29, 2001), move the resulting date to the last day of the month. The behavior is undefined unless the operation results in a valid Date
value. Note that numYears
may be negative.
Return the date that is the specified numYears
from the specified original
date, adjusted as necessary according to the following (non-end-of-month) rule: if the day of the month in original
does not exist in the month of the result (e.g., February 30), move the resulting date to the last day of the month. The behavior is undefined unless the operation results in a valid Date
value. Note that numYears
may be negative.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Return the integer value in the "YYYYMMDD" format that represents the specified date
.
|
inlinestatic |
Return the earliest date in the specified month
of the specified year
that falls on the specified dayOfWeek
. The behavior is undefined unless 1 <= year <= 9999
and 1 <= month <= 12
.
|
inlinestatic |
Return true
if the specified yyyymmddValue
represents a valid Date
value in the "YYYYMMDD" format, and false
otherwise.
|
inlinestatic |
Return the latest date in the specified month
of the specified year
. The behavior is undefined unless 1 <= year <= 9999
and 1 <= month <= 12
.
|
static |
Return the latest date in the specified month
of the specified year
that falls on the specified dayOfWeek
. The behavior is undefined unless 1 <= year <= 9999
and 1 <= month <= 12
.
|
static |
Return the first date after the specified date
that falls on the specified dayOfWeek
. The behavior is undefined unless the resulting date is no later than 9999/12/31.
|
static |
Return the first date on or after the specified date
that falls on the specified dayOfWeek
. The behavior is undefined unless the resulting date is no later than 9999/12/31.
|
static |
Return the date in the specified month
of the specified year
corresponding to the specified n
th occurrence of the specified dayOfWeek
. If n < 0
, return the date corresponding to the -n
th occurrence of the dayOfWeek
counting from the end of the month
towards the first of the month
. If 5 == n
and a result cannot be found in month
, then return the date of the first dayOfWeek
in the following month. If -5 == n
and a result cannot be found in month
, then return the date of the last dayOfWeek
in the previous month. The behavior is undefined unless 1 <= year <= 9999
, 1 <= month <= 12
, n != 0
, -5 <= n <= 5
, and the resulting date is neither earlier than 0001/01/01 nor later than 9999/12/31.
For example:
returns November 25, 2004, the fourth Thursday in November, 2004.
|
static |
Return the last date before the specified date
that falls on the specified dayOfWeek
. The behavior is undefined unless the resulting date is no earlier than 1/1/1.
|
static |
Return the last date on or before the specified date
that falls on the specified dayOfWeek
. The behavior is undefined unless the resulting date is no earlier than 1/1/1.