Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/openjdk-multiarch-jdk8u
Path: blob/aarch64-shenandoah-jdk8u272-b10/jdk/src/share/native/common/unicode/dtintrv.h
38827 views
1
/*
2
*******************************************************************************
3
* Copyright (C) 2008-2009, International Business Machines Corporation and
4
* others. All Rights Reserved.
5
*******************************************************************************
6
*
7
* File DTINTRV.H
8
*
9
*******************************************************************************
10
*/
11
12
#ifndef __DTINTRV_H__
13
#define __DTINTRV_H__
14
15
#include "unicode/utypes.h"
16
#include "unicode/uobject.h"
17
18
/**
19
* \file
20
* \brief C++ API: Date Interval data type
21
*/
22
23
24
U_NAMESPACE_BEGIN
25
26
27
/**
28
* This class represents a date interval.
29
* It is a pair of UDate representing from UDate 1 to UDate 2.
30
* @stable ICU 4.0
31
**/
32
class U_COMMON_API DateInterval : public UObject {
33
public:
34
35
/**
36
* Construct a DateInterval given a from date and a to date.
37
* @param fromDate The from date in date interval.
38
* @param toDate The to date in date interval.
39
* @stable ICU 4.0
40
*/
41
DateInterval(UDate fromDate, UDate toDate);
42
43
/**
44
* destructor
45
* @stable ICU 4.0
46
*/
47
virtual ~DateInterval();
48
49
/**
50
* Get the from date.
51
* @return the from date in dateInterval.
52
* @stable ICU 4.0
53
*/
54
UDate getFromDate() const;
55
56
/**
57
* Get the to date.
58
* @return the to date in dateInterval.
59
* @stable ICU 4.0
60
*/
61
UDate getToDate() const;
62
63
64
/**
65
* Return the class ID for this class. This is useful only for comparing to
66
* a return value from getDynamicClassID(). For example:
67
* <pre>
68
* . Base* polymorphic_pointer = createPolymorphicObject();
69
* . if (polymorphic_pointer->getDynamicClassID() ==
70
* . erived::getStaticClassID()) ...
71
* </pre>
72
* @return The class ID for all objects of this class.
73
* @stable ICU 4.0
74
*/
75
static UClassID U_EXPORT2 getStaticClassID(void);
76
77
/**
78
* Returns a unique class ID POLYMORPHICALLY. Pure virtual override. This
79
* method is to implement a simple version of RTTI, since not all C++
80
* compilers support genuine RTTI. Polymorphic operator==() and clone()
81
* methods call this method.
82
*
83
* @return The class ID for this object. All objects of a
84
* given class have the same class ID. Objects of
85
* other classes have different class IDs.
86
* @stable ICU 4.0
87
*/
88
virtual UClassID getDynamicClassID(void) const;
89
90
91
/**
92
* Copy constructor.
93
* @stable ICU 4.0
94
*/
95
DateInterval(const DateInterval& other);
96
97
/**
98
* Default assignment operator
99
* @stable ICU 4.0
100
*/
101
DateInterval& operator=(const DateInterval&);
102
103
/**
104
* Equality operator.
105
* @return TRUE if the two DateIntervals are the same
106
* @stable ICU 4.0
107
*/
108
virtual UBool operator==(const DateInterval& other) const;
109
110
/**
111
* Non-equality operator
112
* @return TRUE if the two DateIntervals are not the same
113
* @stable ICU 4.0
114
*/
115
UBool operator!=(const DateInterval& other) const;
116
117
118
/**
119
* clone this object.
120
* The caller owns the result and should delete it when done.
121
* @return a cloned DateInterval
122
* @stable ICU 4.0
123
*/
124
virtual DateInterval* clone() const;
125
126
private:
127
/**
128
* Default constructor, not implemented.
129
*/
130
DateInterval();
131
132
UDate fromDate;
133
UDate toDate;
134
135
} ;// end class DateInterval
136
137
138
inline UDate
139
DateInterval::getFromDate() const {
140
return fromDate;
141
}
142
143
144
inline UDate
145
DateInterval::getToDate() const {
146
return toDate;
147
}
148
149
150
inline UBool
151
DateInterval::operator!=(const DateInterval& other) const {
152
return ( !operator==(other) );
153
}
154
155
156
U_NAMESPACE_END
157
158
#endif
159
160