Go to the documentation of this file.
31 #if !UCONFIG_NO_FORMATTING
325 UDate getGregorianChange(
void)
const;
342 UBool isLeapYear(int32_t year)
const;
364 virtual void roll(EDateFields field, int32_t amount,
UErrorCode& status);
379 #ifndef U_HIDE_DEPRECATED_API
410 #ifndef U_HIDE_DEPRECATED_API
471 static UClassID U_EXPORT2 getStaticClassID(
void);
483 virtual const char *
getType()
const;
495 virtual int32_t internalGetEra()
const;
511 UBool useMonth)
const;
547 virtual int32_t monthLength(int32_t month)
const;
556 virtual int32_t monthLength(int32_t month, int32_t year)
const;
558 #ifndef U_HIDE_INTERNAL_API
565 int32_t yearLength(int32_t year)
const;
572 int32_t yearLength(
void)
const;
581 void pinDayOfMonth(
void);
662 static double computeJulianDayOfYear(
UBool isGregorian, int32_t year,
669 UBool validateFields(
void)
const;
685 int32_t aggregateStamp(int32_t stamp_a, int32_t stamp_b);
694 UDate fGregorianCutover;
699 int32_t fCutoverJulianDay;
706 UDate fNormalizedGregorianCutover;
712 int32_t fGregorianCutoverYear;
718 int32_t fGregorianCutoverJulianDay;
727 static double millisToJulianDay(
UDate millis);
736 static UDate julianDayToMillis(
double julian);
749 UBool fInvertGregorian;
void roll(EDateFields field, UBool up, UErrorCode &status)
Time Field Rolling function.
int32_t getActualMaximum(EDateFields field, UErrorCode &status) const
Return the maximum value that this field could have, given the current date.
virtual int32_t handleGetLimit(UCalendarDateFields field, ELimitType limitType) const =0
Subclass API for defining limits of different types.
Basic definitions for ICU, for both C and C++ APIs.
Calendar is an abstract base class for converting between a UDate object and a set of integer fields ...
int8_t UBool
The ICU boolean type.
virtual int32_t handleGetExtendedYearFromWeekFields(int32_t yearWoy, int32_t woy)
Subclasses must override this to convert from week fields (YEAR_WOY and WEEK_OF_YEAR) to an extended ...
int32_t getActualMinimum(EDateFields field, UErrorCode &status) const
Return the minimum value that this field could have, given the current date.
virtual int32_t defaultCenturyStartYear() const =0
virtual UDate defaultCenturyStart() const =0
virtual UBool haveDefaultCentury() const =0
TimeZone represents a time zone offset, and also figures out daylight savings.
virtual const char * getType() const =0
Returns the calendar type name string for this Calendar object.
virtual UBool isEquivalentTo(const Calendar &other) const
Returns TRUE if the given Calendar object is equivalent to this one.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers,...
virtual int32_t handleComputeJulianDay(UCalendarDateFields bestField)
Subclasses may override this.
virtual UBool inDaylightTime(UErrorCode &status) const =0
Queries if the current date for this Calendar is in Daylight Savings Time.
virtual Calendar * clone(void) const =0
Create and return a polymorphic copy of this calendar.
Concrete class which provides the standard calendar used by most of the world.
C++ API: Calendar object.
virtual int32_t handleGetMonthLength(int32_t extendedYear, int32_t month) const
Return the number of days in the given month of the given extended year of this calendar system.
virtual UClassID getDynamicClassID(void) const =0
Returns a unique class ID POLYMORPHICALLY.
EEras
Useful constants for GregorianCalendar and TimeZone.
virtual int32_t handleGetExtendedYear()=0
Return the extended year defined by the current fields.
double UDate
Date and Time data type.
Calendar & operator=(const Calendar &right)
Default assignment operator.
UCalendarDateFields
Possible fields in a UCalendar.
virtual int32_t handleComputeMonthStart(int32_t eyear, int32_t month, UBool useMonth) const =0
Return the Julian day number of day before the first day of the given month in the given extended yea...
virtual int32_t handleGetYearLength(int32_t eyear) const
Return the number of days in the given extended year of this calendar system.
#define U_NAMESPACE_BEGIN
virtual void handleComputeFields(int32_t julianDay, UErrorCode &status)
Subclasses may override this method to compute several fields specific to each calendar system.
A Locale object represents a specific geographical, political, or cultural region.