19 #if U_SHOW_CPLUSPLUS_API 21 #if !UCONFIG_NO_FORMATTING 83 int32_t getRawOffset(
void)
const;
91 int32_t getDSTSavings(
void)
const;
114 virtual UBool getFirstStart(int32_t prevRawOffset, int32_t prevDSTSavings,
UDate& result)
const = 0;
127 virtual UBool getFinalStart(int32_t prevRawOffset, int32_t prevDSTSavings,
UDate& result)
const = 0;
143 virtual UBool getNextStart(
UDate base, int32_t prevRawOffset, int32_t prevDSTSavings,
160 virtual UBool getPreviousStart(
UDate base, int32_t prevRawOffset, int32_t prevDSTSavings,
273 UBool getStartInYear(int32_t year, int32_t prevRawOffset, int32_t prevDSTSavings,
UDate& result)
const;
357 static UClassID U_EXPORT2 getStaticClassID(
void);
405 const DateTimeRule& dateTimeRule, int32_t startYear, int32_t endYear);
424 DateTimeRule* dateTimeRule, int32_t startYear, int32_t endYear);
486 int32_t getStartYear(
void)
const;
494 int32_t getEndYear(
void)
const;
508 UBool getStartInYear(int32_t year, int32_t prevRawOffset, int32_t prevDSTSavings,
UDate& result)
const;
598 static UClassID U_EXPORT2 getStaticClassID(
void);
707 UBool getStartTimeAt(int32_t index,
UDate& result)
const;
714 int32_t countStartTimes(
void)
const;
788 enum { TIMEARRAY_STACK_BUFFER_SIZE = 32 };
790 UDate getUTC(
UDate time, int32_t raw, int32_t dst)
const;
793 int32_t fNumStartTimes;
795 UDate fLocalStartTimes[TIMEARRAY_STACK_BUFFER_SIZE];
809 static UClassID U_EXPORT2 getStaticClassID(
void);
virtual UBool operator==(const TimeZoneRule &that) const
Return true if the given TimeZoneRule objects are semantically equal.
TimeRuleType
Time rule type constants.
C++ API: Rule for specifying date and time in an year.
double UDate
Date and Time data type.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
virtual TimeZoneRule * clone() const =0
Clone this TimeZoneRule object polymorphically.
virtual UBool getFinalStart(int32_t prevRawOffset, int32_t prevDSTSavings, UDate &result) const =0
Gets the final time when this rule takes effect.
virtual UBool operator!=(const TimeZoneRule &that) const
Return true if the given TimeZoneRule objects are semantically unequal.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
TimeZoneRule is a class representing a rule for time zone.
InitialTimeZoneRule represents a time zone rule representing a time zone effective from the beginning...
virtual UBool getPreviousStart(UDate base, int32_t prevRawOffset, int32_t prevDSTSavings, UBool inclusive, UDate &result) const =0
Gets the most recent time when this rule takes effect before the specified time.
TimeZoneRule & operator=(const TimeZoneRule &right)
Assignment operator.
static const int32_t MAX_YEAR
The constant representing the maximum year used for designating a rule is permanent.
UBool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
virtual UClassID getDynamicClassID() const
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
virtual UBool isEquivalentTo(const TimeZoneRule &other) const
Returns if this rule represents the same rule and offsets as another.
TimeArrayTimeZoneRule represents a time zone rule whose start times are defined by an array of millis...
AnnualTimeZoneRule is a class used for representing a time zone rule which takes effect annually...
C++ API: Common ICU base class UObject.
DateTimeRule is a class representing a time in a year by a rule specified by month, day of month, day of week and time in the day.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
virtual UBool getNextStart(UDate base, int32_t prevRawOffset, int32_t prevDSTSavings, UBool inclusive, UDate &result) const =0
Gets the first time when this rule takes effect after the specified time.
virtual UBool getFirstStart(int32_t prevRawOffset, int32_t prevDSTSavings, UDate &result) const =0
Gets the very first time when this rule takes effect.
Basic definitions for ICU, for both C and C++ APIs.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
UObject is the common ICU "boilerplate" class.
int8_t UBool
The ICU boolean type.