29 #if !UCONFIG_NO_FORMATTING
323 UDate getGregorianChange(
void)
const;
340 UBool isLeapYear(int32_t year)
const;
362 virtual void roll(EDateFields field, int32_t amount,
UErrorCode& status);
473 virtual const char *
getType()
const;
485 virtual int32_t internalGetEra()
const;
501 UBool useMonth)
const;
537 virtual int32_t monthLength(int32_t month)
const;
546 virtual int32_t monthLength(int32_t month, int32_t year)
const;
554 int32_t yearLength(int32_t year)
const;
561 int32_t yearLength(
void)
const;
570 void pinDayOfMonth(
void);
650 static double computeJulianDayOfYear(
UBool isGregorian, int32_t year,
657 UBool validateFields(
void)
const;
673 int32_t aggregateStamp(int32_t stamp_a, int32_t stamp_b);
683 UDate fGregorianCutover;
688 int32_t fCutoverJulianDay;
695 UDate fNormalizedGregorianCutover;
701 int32_t fGregorianCutoverYear;
707 int32_t fGregorianCutoverJulianDay;
716 static double millisToJulianDay(
UDate millis);
725 static UDate julianDayToMillis(
double julian);
738 UBool fInvertGregorian;
768 static UDate fgSystemDefaultCenturyStart;
773 static int32_t fgSystemDefaultCenturyStartYear;
778 static const int32_t fgSystemDefaultCenturyYear;
783 static const UDate fgSystemDefaultCentury;
791 UDate internalGetDefaultCenturyStart(
void)
const;
799 int32_t internalGetDefaultCenturyStartYear(
void)
const;
805 static void initializeSystemDefaultCentury(
void);
void roll(EDateFields field, UBool up, UErrorCode &status)
Time Field Rolling function.
UCalendarDateFields
Possible fields in a UCalendar.
virtual UBool isEquivalentTo(const Calendar &other) const
Returns TRUE if the given Calendar object is equivalent to this one.
Calendar is an abstract base class for converting between a UDate object and a set of integer fields ...
virtual int32_t defaultCenturyStartYear() const =0
EEras
Useful constants for GregorianCalendar and TimeZone.
double UDate
Date and Time data type.
virtual UDate defaultCenturyStart() const =0
virtual const char * getType() const =0
Returns the resource key string used for this calendar type.
virtual int32_t handleComputeJulianDay(UCalendarDateFields bestField)
Subclasses may override this.
int32_t getActualMinimum(EDateFields field, UErrorCode &status) const
Return the minimum value that this field could have, given the current date.
Calendar & operator=(const Calendar &right)
Default assignment operator.
virtual void handleComputeFields(int32_t julianDay, UErrorCode &status)
Subclasses may override this method to compute several fields specific to each calendar system...
virtual int32_t handleGetExtendedYear()=0
Return the extended year defined by the current fields.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
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
This is used to begin a declaration of a public ICU C++ API.
int32_t getActualMaximum(EDateFields field, UErrorCode &status) const
Return the maximum value that this field could have, given the current date.
virtual UBool inDaylightTime(UErrorCode &status) const =0
Queries if the current date for this Calendar is in Daylight Savings Time.
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.
virtual Calendar * clone(void) const =0
Create and return a polymorphic copy of this calendar.
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Concrete class which provides the standard calendar used by most of the world.
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...
void * UClassID
UClassID is used to identify classes without using RTTI, since RTTI is not yet supported by all C++ c...
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
TimeZone represents a time zone offset, and also figures out daylight savings.
Basic definitions for ICU, for both C and C++ APIs.
virtual int32_t handleGetLimit(UCalendarDateFields field, ELimitType limitType) const =0
Subclass API for defining limits of different types.
A Locale object represents a specific geographical, political, or cultural region.
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 ...
virtual UBool haveDefaultCentury() const =0
int8_t UBool
The ICU boolean type.