|
ICU 76.1 76.1
|
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.
More...
#include <dtrule.h>
Public Types | |
| enum | DateRuleType { DOM = 0 , DOW , DOW_GEQ_DOM , DOW_LEQ_DOM } |
| Date rule type constants. More... | |
| enum | TimeRuleType { WALL_TIME = 0 , STANDARD_TIME , UTC_TIME } |
| Time rule type constants. More... | |
Public Member Functions | |
| DateTimeRule (int32_t month, int32_t dayOfMonth, int32_t millisInDay, TimeRuleType timeType) | |
Constructs a DateTimeRule by the day of month and the time rule. | |
| DateTimeRule (int32_t month, int32_t weekInMonth, int32_t dayOfWeek, int32_t millisInDay, TimeRuleType timeType) | |
Constructs a DateTimeRule by the day of week and its ordinal number and the time rule. | |
| DateTimeRule (int32_t month, int32_t dayOfMonth, int32_t dayOfWeek, UBool after, int32_t millisInDay, TimeRuleType timeType) | |
Constructs a DateTimeRule by the first/last day of week on or after/before the day of month and the time rule. | |
| DateTimeRule (const DateTimeRule &source) | |
| Copy constructor. | |
| ~DateTimeRule () | |
| Destructor. | |
| DateTimeRule * | clone () const |
| Clone this DateTimeRule object polymorphically. | |
| DateTimeRule & | operator= (const DateTimeRule &right) |
| Assignment operator. | |
| bool | operator== (const DateTimeRule &that) const |
| Return true if the given DateTimeRule objects are semantically equal. | |
| bool | operator!= (const DateTimeRule &that) const |
| Return true if the given DateTimeRule objects are semantically unequal. | |
| DateRuleType | getDateRuleType () const |
Gets the date rule type, such as DOM | |
| TimeRuleType | getTimeRuleType () const |
| Gets the time rule type. | |
| int32_t | getRuleMonth () const |
| Gets the rule month. | |
| int32_t | getRuleDayOfMonth () const |
| Gets the rule day of month. | |
| int32_t | getRuleDayOfWeek () const |
| Gets the rule day of week. | |
| int32_t | getRuleWeekInMonth () const |
| Gets the ordinal number of the occurrence of the day of week in the month. | |
| int32_t | getRuleMillisInDay () const |
| Gets the rule time in the rule day. | |
| virtual UClassID | getDynamicClassID () const override |
| Returns a unique class ID POLYMORPHICALLY. | |
Public Member Functions inherited from icu::UObject | |
| virtual | ~UObject () |
| Destructor. | |
Static Public Member Functions | |
| static UClassID | getStaticClassID () |
| Return the class ID for this class. | |
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.
Date rule type constants.
| icu::DateTimeRule::DateTimeRule | ( | int32_t | month, |
| int32_t | dayOfMonth, | ||
| int32_t | millisInDay, | ||
| TimeRuleType | timeType | ||
| ) |
Constructs a DateTimeRule by the day of month and the time rule.
The date rule type for an instance created by this constructor is DOM.
| month | The rule month, for example, Calendar::JANUARY |
| dayOfMonth | The day of month, 1-based. |
| millisInDay | The milliseconds in the rule date. |
| timeType | The time type, WALL_TIME or STANDARD_TIME or UTC_TIME. |
| icu::DateTimeRule::DateTimeRule | ( | int32_t | month, |
| int32_t | weekInMonth, | ||
| int32_t | dayOfWeek, | ||
| int32_t | millisInDay, | ||
| TimeRuleType | timeType | ||
| ) |
Constructs a DateTimeRule by the day of week and its ordinal number and the time rule.
The date rule type for an instance created by this constructor is DOW.
| month | The rule month, for example, Calendar::JANUARY. |
| weekInMonth | The ordinal number of the day of week. Negative number may be used for specifying a rule date counted from the end of the rule month. |
| dayOfWeek | The day of week, for example, Calendar::SUNDAY. |
| millisInDay | The milliseconds in the rule date. |
| timeType | The time type, WALL_TIME or STANDARD_TIME or UTC_TIME. |
| icu::DateTimeRule::DateTimeRule | ( | int32_t | month, |
| int32_t | dayOfMonth, | ||
| int32_t | dayOfWeek, | ||
| UBool | after, | ||
| int32_t | millisInDay, | ||
| TimeRuleType | timeType | ||
| ) |
Constructs a DateTimeRule by the first/last day of week on or after/before the day of month and the time rule.
The date rule type for an instance created by this constructor is either DOM_GEQ_DOM or DOM_LEQ_DOM.
| month | The rule month, for example, Calendar::JANUARY |
| dayOfMonth | The day of month, 1-based. |
| dayOfWeek | The day of week, for example, Calendar::SUNDAY. |
| after | true if the rule date is on or after the day of month. |
| millisInDay | The milliseconds in the rule date. |
| timeType | The time type, WALL_TIME or STANDARD_TIME or UTC_TIME. |
| icu::DateTimeRule::DateTimeRule | ( | const DateTimeRule & | source | ) |
| icu::DateTimeRule::~DateTimeRule | ( | ) |
Destructor.
| DateTimeRule * icu::DateTimeRule::clone | ( | ) | const |
Clone this DateTimeRule object polymorphically.
The caller owns the result and should delete it when done.
| DateRuleType icu::DateTimeRule::getDateRuleType | ( | ) | const |
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.
Reimplemented from icu::UObject.
| int32_t icu::DateTimeRule::getRuleDayOfMonth | ( | ) | const |
Gets the rule day of month.
When the date rule type is DOW, the value is always 0.
| int32_t icu::DateTimeRule::getRuleDayOfWeek | ( | ) | const |
Gets the rule day of week.
When the date rule type is DOM, the value is always 0.
| int32_t icu::DateTimeRule::getRuleMillisInDay | ( | ) | const |
| int32_t icu::DateTimeRule::getRuleMonth | ( | ) | const |
| int32_t icu::DateTimeRule::getRuleWeekInMonth | ( | ) | const |
Gets the ordinal number of the occurrence of the day of week in the month.
When the date rule type is not DOW, the value is always 0.
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()) ...
| TimeRuleType icu::DateTimeRule::getTimeRuleType | ( | ) | const |
Gets the time rule type.
WALL_TIME or STANDARD_TIME or UTC_TIME. | bool icu::DateTimeRule::operator!= | ( | const DateTimeRule & | that | ) | const |
Return true if the given DateTimeRule objects are semantically unequal.
Objects of different subclasses are considered unequal.
| that | The object to be compared with. |
| DateTimeRule & icu::DateTimeRule::operator= | ( | const DateTimeRule & | right | ) |
| bool icu::DateTimeRule::operator== | ( | const DateTimeRule & | that | ) | const |
Return true if the given DateTimeRule objects are semantically equal.
Objects of different subclasses are considered unequal.
| that | The object to be compared with. |