19 #if !UCONFIG_NO_FORMATTING 81 int32_t getRawOffset(
void)
const;
89 int32_t getDSTSavings(
void)
const;
112 virtual UBool getFirstStart(int32_t prevRawOffset, int32_t prevDSTSavings,
UDate& result)
const = 0;
125 virtual UBool getFinalStart(int32_t prevRawOffset, int32_t prevDSTSavings,
UDate& result)
const = 0;
141 virtual UBool getNextStart(
UDate base, int32_t prevRawOffset, int32_t prevDSTSavings,
158 virtual UBool getPreviousStart(
UDate base, int32_t prevRawOffset, int32_t prevDSTSavings,
271 UBool getStartInYear(int32_t year, int32_t prevRawOffset, int32_t prevDSTSavings,
UDate& result)
const;
355 static UClassID U_EXPORT2 getStaticClassID(
void);
403 const DateTimeRule& dateTimeRule, int32_t startYear, int32_t endYear);
422 DateTimeRule* dateTimeRule, int32_t startYear, int32_t endYear);
484 int32_t getStartYear(
void)
const;
492 int32_t getEndYear(
void)
const;
506 UBool getStartInYear(int32_t year, int32_t prevRawOffset, int32_t prevDSTSavings,
UDate& result)
const;
596 static UClassID U_EXPORT2 getStaticClassID(
void);
705 UBool getStartTimeAt(int32_t index,
UDate& result)
const;
712 int32_t countStartTimes(
void)
const;
786 enum { TIMEARRAY_STACK_BUFFER_SIZE = 32 };
788 UDate getUTC(
UDate time, int32_t raw, int32_t dst)
const;
791 int32_t fNumStartTimes;
793 UDate fLocalStartTimes[TIMEARRAY_STACK_BUFFER_SIZE];
807 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 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...
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
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.
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
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
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
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.
virtual TimeZoneRule * clone(void) const =0
Clone this TimeZoneRule object polymorphically.
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.