tango.time.chrono.Gregorian

License:

BSD style: see license.txt

Version:

Mid 2005: Initial release Apr 2007: reshaped

Author:

John Chapman, Kris, schveiguy
class Gregorian : Calendar #
Represents the Gregorian calendar.
Note that this is the Proleptic Gregorian calendar. Most calendars assume that dates before 9/14/1752 were Julian Dates. Julian differs from Gregorian in that leap years occur every 4 years, even on 100 year increments. The Proleptic Gregorian calendar applies the Gregorian leap year rules to dates before 9/14/1752, making the calculation of dates much easier.
Gregorian generic [public, static] #
static shared instance
enum #
Represents the current era.
static this() #
create a generic instance of this calendar
this(Type type = Type.Localized) #
Initializes an instance of the Gregorian class using the specified GregorianTypes value. If no value is specified, the default is Gregorian.Types.Localized.
Time toTime(uint year, uint month, uint day, uint hour, uint minute, uint second, uint millisecond, uint era) [override] #
Overridden. Returns a Time value set to the specified date and time in the specified _era.

Params:

yearAn integer representing the _year.
monthAn integer representing the _month.
dayAn integer representing the _day.
hourAn integer representing the _hour.
minuteAn integer representing the _minute.
secondAn integer representing the _second.
millisecondAn integer representing the _millisecond.
eraAn integer representing the _era.

Returns:

A Time set to the specified date and time.
DayOfWeek getDayOfWeek(Time time) [override] #
Overridden. Returns the day of the week in the specified Time.

Params:

timeA Time value.

Returns:

A DayOfWeek value representing the day of the week of time.
uint getDayOfMonth(Time time) [override] #
Overridden. Returns the day of the month in the specified Time.

Params:

timeA Time value.

Returns:

An integer representing the day of the month of time.
uint getDayOfYear(Time time) [override] #
Overridden. Returns the day of the year in the specified Time.

Params:

timeA Time value.

Returns:

An integer representing the day of the year of time.
uint getMonth(Time time) [override] #
Overridden. Returns the month in the specified Time.

Params:

timeA Time value.

Returns:

An integer representing the month in time.
uint getYear(Time time) [override] #
Overridden. Returns the year in the specified Time.

Params:

timeA Time value.

Returns:

An integer representing the year in time.
uint getEra(Time time) [override] #
Overridden. Returns the era in the specified Time.

Params:

timeA Time value.

Returns:

An integer representing the era in time.
uint getDaysInMonth(uint year, uint month, uint era) [override] #
Overridden. Returns the number of days in the specified _year and _month of the specified _era.

Params:

yearAn integer representing the _year.
monthAn integer representing the _month.
eraAn integer representing the _era.

Returns:

The number of days in the specified _year and _month of the specified _era.
uint getDaysInYear(uint year, uint era) [override] #
Overridden. Returns the number of days in the specified _year of the specified _era.

Params:

yearAn integer representing the _year.
eraAn integer representing the _era.

Returns:

The number of days in the specified _year in the specified _era.
uint getMonthsInYear(uint year, uint era) [override] #
Overridden. Returns the number of months in the specified _year of the specified _era.

Params:

yearAn integer representing the _year.
eraAn integer representing the _era.

Returns:

The number of months in the specified _year in the specified _era.
bool isLeapYear(uint year, uint era) [override] #
Overridden. Indicates whether the specified _year in the specified _era is a leap _year.

Params:

yearAn integer representing the _year.

Params:

eraAn integer representing the _era.

Returns:

true is the specified _year is a leap _year; otherwise, false.
Type calendarType() #
Property. Retrieves the GregorianTypes value indicating the language version of the Gregorian.

Returns:

The Gregorian.Type value indicating the language version of the Gregorian.
uint[] eras() [override] #
Property. Overridden. Retrieves the list of eras in the current calendar.

Returns:

An integer array representing the eras in the current calendar.
uint id() [override] #
Property. Overridden. Retrieves the identifier associated with the current calendar.

Returns:

An integer representing the identifier of the current calendar.
void split(Time time, ref uint year, ref uint month, ref uint day, ref uint doy, ref uint dow, ref uint era) [override] #
Overridden. Get the components of a Time structure using the rules of the calendar. This is useful if you want more than one of the given components. Note that this doesn't handle the time of day, as that is calculated directly from the Time struct.
Time addMonths(Time t, int nMonths, bool truncateDay = false) [override] #
Overridden. Returns a new Time with the specified number of months added. If the months are negative, the months are subtracted.
If the target month does not support the day component of the input time, then an error will be thrown, unless truncateDay is set to true. If truncateDay is set to true, then the day is reduced to the maximum day of that month.

For example, adding one month to 1/31/2000 with truncateDay set to true results in 2/28/2000.

Params:

tA time to add the months to

Params:

nMonthsThe number of months to add. This can be negative.

Params:

truncateDayRound the day down to the maximum day of the target month if necessary.

Returns:

A Time that represents the provided time with the number of months added.
Time addYears(Time t, int nYears) [override] #
Overridden. Add the specified number of years to the given Time.
Note that the Gregorian calendar takes into account that BC time is negative, and supports crossing from BC to AD.

Params:

tA time to add the years to

Params:

nYearsThe number of years to add. This can be negative.

Returns:

A Time that represents the provided time with the number of years added.