TimeArrayTimeZoneRule represents a time zone rule whose start times are defined by an array of milliseconds since the standard base time.
More...
#include <tzrule.h>

Public Member Functions | |
| TimeArrayTimeZoneRule (const UnicodeString &name, int32_t rawOffset, int32_t dstSavings, const UDate *startTimes, int32_t numStartTimes, DateTimeRule::TimeRuleType timeRuleType) | |
Constructs a TimeArrayTimeZoneRule with the name, the GMT offset of its standard time, the amount of daylight saving offset adjustment and the array of times when this rule takes effect. | |
| TimeArrayTimeZoneRule (const TimeArrayTimeZoneRule &source) | |
| Copy constructor. | |
| virtual | ~TimeArrayTimeZoneRule () |
| Destructor. | |
| virtual TimeArrayTimeZoneRule * | clone (void) const |
| Clone this TimeArrayTimeZoneRule object polymorphically. | |
| TimeArrayTimeZoneRule & | operator= (const TimeArrayTimeZoneRule &right) |
| Assignment operator. | |
| virtual UBool | operator== (const TimeZoneRule &that) const |
Return true if the given TimeZoneRule objects are semantically equal. | |
| virtual UBool | operator!= (const TimeZoneRule &that) const |
Return true if the given TimeZoneRule objects are semantically unequal. | |
| DateTimeRule::TimeRuleType | getTimeType (void) const |
| Gets the time type of the start times used by this rule. | |
| UBool | getStartTimeAt (int32_t index, UDate &result) const |
| Gets a start time at the index stored in this rule. | |
| int32_t | countStartTimes (void) const |
| Returns the number of start times stored in this rule. | |
| virtual UBool | isEquivalentTo (const TimeZoneRule &that) const |
| Returns if this rule represents the same rule and offsets as another. | |
| virtual UBool | getFirstStart (int32_t prevRawOffset, int32_t prevDSTSavings, UDate &result) const |
| Gets the very first time when this rule takes effect. | |
| virtual UBool | getFinalStart (int32_t prevRawOffset, int32_t prevDSTSavings, UDate &result) const |
| Gets the final time when this rule takes effect. | |
| virtual UBool | getNextStart (UDate base, int32_t prevRawOffset, int32_t prevDSTSavings, UBool inclusive, UDate &result) const |
| Gets the first time when this rule takes effect after the specified time. | |
| virtual UBool | getPreviousStart (UDate base, int32_t prevRawOffset, int32_t prevDSTSavings, UBool inclusive, UDate &result) const |
| Gets the most recent time when this rule takes effect before the specified time. | |
| virtual UClassID | getDynamicClassID (void) const |
| Returns a unique class ID POLYMORPHICALLY. | |
Static Public Member Functions | |
| static UClassID | getStaticClassID (void) |
| Return the class ID for this class. | |
TimeArrayTimeZoneRule represents a time zone rule whose start times are defined by an array of milliseconds since the standard base time.
Definition at line 616 of file tzrule.h.
| TimeArrayTimeZoneRule::TimeArrayTimeZoneRule | ( | const UnicodeString & | name, | |
| int32_t | rawOffset, | |||
| int32_t | dstSavings, | |||
| const UDate * | startTimes, | |||
| int32_t | numStartTimes, | |||
| DateTimeRule::TimeRuleType | timeRuleType | |||
| ) |
Constructs a TimeArrayTimeZoneRule with the name, the GMT offset of its standard time, the amount of daylight saving offset adjustment and the array of times when this rule takes effect.
| name | The time zone name. | |
| rawOffset | The UTC offset of its standard time in milliseconds. | |
| dstSavings | The amount of daylight saving offset adjustment in milliseconds. If this ia a rule for standard time, the value of this argument is 0. | |
| startTimes | The array start times in milliseconds since the base time (January 1, 1970, 00:00:00). | |
| numStartTimes | The number of elements in the parameter "startTimes" | |
| timeRuleType | The time type of the start times, which is one of DataTimeRule::WALL_TIME, STANDARD_TIME and UTC_TIME. |
| TimeArrayTimeZoneRule::TimeArrayTimeZoneRule | ( | const TimeArrayTimeZoneRule & | source | ) |
| virtual TimeArrayTimeZoneRule::~TimeArrayTimeZoneRule | ( | ) | [virtual] |
| virtual TimeArrayTimeZoneRule* TimeArrayTimeZoneRule::clone | ( | void | ) | const [virtual] |
Clone this TimeArrayTimeZoneRule object polymorphically.
The caller owns the result and should delete it when done.
Implements TimeZoneRule.
| int32_t TimeArrayTimeZoneRule::countStartTimes | ( | void | ) | const |
Returns the number of start times stored in this rule.
| virtual UClassID TimeArrayTimeZoneRule::getDynamicClassID | ( | void | ) | const [virtual] |
Returns a unique class ID POLYMORPHICALLY.
Pure virtual override. This method is to implement a simple version of RTTI, since not all C++ compilers support genuine RTTI. Polymorphic operator==() and clone() methods call this method.
Implements UObject.
| virtual UBool TimeArrayTimeZoneRule::getFinalStart | ( | int32_t | prevRawOffset, | |
| int32_t | prevDSTSavings, | |||
| UDate & | result | |||
| ) | const [virtual] |
Gets the final time when this rule takes effect.
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| result | Receives the final time when this rule takes effect. |
Implements TimeZoneRule.
| virtual UBool TimeArrayTimeZoneRule::getFirstStart | ( | int32_t | prevRawOffset, | |
| int32_t | prevDSTSavings, | |||
| UDate & | result | |||
| ) | const [virtual] |
Gets the very first time when this rule takes effect.
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| result | Receives the very first time when this rule takes effect. |
Implements TimeZoneRule.
| virtual UBool TimeArrayTimeZoneRule::getNextStart | ( | UDate | base, | |
| int32_t | prevRawOffset, | |||
| int32_t | prevDSTSavings, | |||
| UBool | inclusive, | |||
| UDate & | result | |||
| ) | const [virtual] |
Gets the first time when this rule takes effect after the specified time.
| base | The first start time after this base time will be returned. | |
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| inclusive | Whether the base time is inclusive or not. | |
| result | Receives The first time when this rule takes effect after the specified base time. |
Implements TimeZoneRule.
| virtual UBool TimeArrayTimeZoneRule::getPreviousStart | ( | UDate | base, | |
| int32_t | prevRawOffset, | |||
| int32_t | prevDSTSavings, | |||
| UBool | inclusive, | |||
| UDate & | result | |||
| ) | const [virtual] |
Gets the most recent time when this rule takes effect before the specified time.
| base | The most recent time before this base time will be returned. | |
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| inclusive | Whether the base time is inclusive or not. | |
| result | Receives The most recent time when this rule takes effect before the specified base time. |
Implements TimeZoneRule.
Gets a start time at the index stored in this rule.
| index | The index of start times | |
| result | Receives the start time at the index |
| static UClassID TimeArrayTimeZoneRule::getStaticClassID | ( | void | ) | [static] |
Return the class ID for this class.
This is useful only for comparing to a return value from getDynamicClassID(). For example:
. Base* polymorphic_pointer = createPolymorphicObject(); . if (polymorphic_pointer->getDynamicClassID() == . erived::getStaticClassID()) ...
| DateTimeRule::TimeRuleType TimeArrayTimeZoneRule::getTimeType | ( | void | ) | const |
Gets the time type of the start times used by this rule.
The return value is either DateTimeRule::WALL_TIME or STANDARD_TIME or UTC_TIME.
| virtual UBool TimeArrayTimeZoneRule::isEquivalentTo | ( | const TimeZoneRule & | that | ) | const [virtual] |
Returns if this rule represents the same rule and offsets as another.
When two TimeZoneRule objects differ only its names, this method returns true.
| that | The TimeZoneRule object to be compared with. |
TimeZoneRule is equivalent to this one. Reimplemented from TimeZoneRule.
| virtual UBool TimeArrayTimeZoneRule::operator!= | ( | const TimeZoneRule & | that | ) | const [virtual] |
Return true if the given TimeZoneRule objects are semantically unequal.
Objects of different subclasses are considered unequal.
| that | The object to be compared with. |
TimeZoneRule objects are semantically unequal. Reimplemented from TimeZoneRule.
| TimeArrayTimeZoneRule& TimeArrayTimeZoneRule::operator= | ( | const TimeArrayTimeZoneRule & | right | ) |
| virtual UBool TimeArrayTimeZoneRule::operator== | ( | const TimeZoneRule & | that | ) | const [virtual] |
Return true if the given TimeZoneRule objects are semantically equal.
Objects of different subclasses are considered unequal.
| that | The object to be compared with. |
TimeZoneRule objects are semantically equal. Reimplemented from TimeZoneRule.
1.5.7.1