Absolute File Name: | /home/qt/qt5_coco/qt5/qtbase/src/corelib/tools/qtimezoneprivate_icu.cpp |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||
2 | - | |||||||||||||
3 | - | |||||||||||||
4 | - | |||||||||||||
5 | - | |||||||||||||
6 | - | |||||||||||||
7 | - | |||||||||||||
8 | static UCalendarDisplayNameType ucalDisplayNameType(QTimeZone::TimeType timeType, QTimeZone::NameType nameType) | - | ||||||||||||
9 | { | - | ||||||||||||
10 | - | |||||||||||||
11 | switch (nameType) { | - | ||||||||||||
12 | case executed 4 times by 1 test: QTimeZone::ShortName :case QTimeZone::ShortName : Executed by:
executed 4 times by 1 test: case QTimeZone::ShortName : Executed by:
| 4 | ||||||||||||
13 | case never executed: QTimeZone::OffsetName :case QTimeZone::OffsetName : never executed: case QTimeZone::OffsetName : | 0 | ||||||||||||
14 | if (timeType == QTimeZone::DaylightTime
| 2 | ||||||||||||
15 | return executed 2 times by 1 test: UCAL_SHORT_DST;return UCAL_SHORT_DST; Executed by:
executed 2 times by 1 test: return UCAL_SHORT_DST; Executed by:
| 2 | ||||||||||||
16 | - | |||||||||||||
17 | return executed 2 times by 1 test: UCAL_SHORT_STANDARD;return UCAL_SHORT_STANDARD; Executed by:
executed 2 times by 1 test: return UCAL_SHORT_STANDARD; Executed by:
| 2 | ||||||||||||
18 | case executed 1233 times by 1 test: QTimeZone::DefaultName :case QTimeZone::DefaultName : Executed by:
executed 1233 times by 1 test: case QTimeZone::DefaultName : Executed by:
| 1233 | ||||||||||||
19 | case never executed: QTimeZone::LongName :case QTimeZone::LongName : never executed: case QTimeZone::LongName : | 0 | ||||||||||||
20 | if (timeType == QTimeZone::DaylightTime
| 432-801 | ||||||||||||
21 | return executed 432 times by 1 test: UCAL_DST;return UCAL_DST; Executed by:
executed 432 times by 1 test: return UCAL_DST; Executed by:
| 432 | ||||||||||||
22 | - | |||||||||||||
23 | return executed 801 times by 1 test: UCAL_STANDARD;return UCAL_STANDARD; Executed by:
executed 801 times by 1 test: return UCAL_STANDARD; Executed by:
| 801 | ||||||||||||
24 | } | - | ||||||||||||
25 | return never executed: UCAL_STANDARD;return UCAL_STANDARD; never executed: return UCAL_STANDARD; | 0 | ||||||||||||
26 | } | - | ||||||||||||
27 | - | |||||||||||||
28 | - | |||||||||||||
29 | static QByteArray ucalDefaultTimeZoneId() | - | ||||||||||||
30 | { | - | ||||||||||||
31 | int32_t size = 30; | - | ||||||||||||
32 | QString result(size, Qt::Uninitialized); | - | ||||||||||||
33 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
34 | - | |||||||||||||
35 | - | |||||||||||||
36 | size = ucal_getDefaultTimeZone_52(reinterpret_cast<UChar *>(result.data()), size, &status); | - | ||||||||||||
37 | - | |||||||||||||
38 | - | |||||||||||||
39 | if (status == U_BUFFER_OVERFLOW_ERROR
| 0-1 | ||||||||||||
40 | result.resize(size); | - | ||||||||||||
41 | status = U_ZERO_ERROR; | - | ||||||||||||
42 | size = ucal_getDefaultTimeZone_52(reinterpret_cast<UChar *>(result.data()), size, &status); | - | ||||||||||||
43 | } never executed: end of block | 0 | ||||||||||||
44 | - | |||||||||||||
45 | - | |||||||||||||
46 | if (U_SUCCESS(status)
| 0-1 | ||||||||||||
47 | result.resize(size); | - | ||||||||||||
48 | return executed 1 time by 1 test: result.toUtf8();return result.toUtf8(); Executed by:
executed 1 time by 1 test: return result.toUtf8(); Executed by:
| 1 | ||||||||||||
49 | } | - | ||||||||||||
50 | - | |||||||||||||
51 | return never executed: QByteArray();return QByteArray(); never executed: return QByteArray(); | 0 | ||||||||||||
52 | } | - | ||||||||||||
53 | - | |||||||||||||
54 | - | |||||||||||||
55 | static QString ucalTimeZoneDisplayName(UCalendar *ucal, QTimeZone::TimeType timeType, | - | ||||||||||||
56 | QTimeZone::NameType nameType, | - | ||||||||||||
57 | const QString &localeCode) | - | ||||||||||||
58 | { | - | ||||||||||||
59 | int32_t size = 50; | - | ||||||||||||
60 | QString result(size, Qt::Uninitialized); | - | ||||||||||||
61 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
62 | - | |||||||||||||
63 | - | |||||||||||||
64 | size = ucal_getTimeZoneDisplayName_52(ucal, | - | ||||||||||||
65 | ucalDisplayNameType(timeType, nameType), | - | ||||||||||||
66 | localeCode.toUtf8(), | - | ||||||||||||
67 | reinterpret_cast<UChar *>(result.data()), | - | ||||||||||||
68 | size, | - | ||||||||||||
69 | &status); | - | ||||||||||||
70 | - | |||||||||||||
71 | - | |||||||||||||
72 | if (status == U_BUFFER_OVERFLOW_ERROR
| 0-1237 | ||||||||||||
73 | result.resize(size); | - | ||||||||||||
74 | status = U_ZERO_ERROR; | - | ||||||||||||
75 | size = ucal_getTimeZoneDisplayName_52(ucal, | - | ||||||||||||
76 | ucalDisplayNameType(timeType, nameType), | - | ||||||||||||
77 | localeCode.toUtf8(), | - | ||||||||||||
78 | reinterpret_cast<UChar *>(result.data()), | - | ||||||||||||
79 | size, | - | ||||||||||||
80 | &status); | - | ||||||||||||
81 | } never executed: end of block | 0 | ||||||||||||
82 | - | |||||||||||||
83 | - | |||||||||||||
84 | if (U_SUCCESS(status)
| 0-1237 | ||||||||||||
85 | result.resize(size); | - | ||||||||||||
86 | return executed 1237 times by 1 test: result;return result; Executed by:
executed 1237 times by 1 test: return result; Executed by:
| 1237 | ||||||||||||
87 | } | - | ||||||||||||
88 | - | |||||||||||||
89 | return never executed: QString();return QString(); never executed: return QString(); | 0 | ||||||||||||
90 | } | - | ||||||||||||
91 | - | |||||||||||||
92 | - | |||||||||||||
93 | static bool ucalOffsetsAtTime(UCalendar *m_ucal, qint64 atMSecsSinceEpoch, | - | ||||||||||||
94 | int *utcOffset, int *dstOffset) | - | ||||||||||||
95 | { | - | ||||||||||||
96 | *utcOffset = 0; | - | ||||||||||||
97 | *dstOffset = 0; | - | ||||||||||||
98 | - | |||||||||||||
99 | - | |||||||||||||
100 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
101 | UCalendar *ucal = ucal_clone_52(m_ucal, &status); | - | ||||||||||||
102 | if (!U_SUCCESS(status)
| 0-8 | ||||||||||||
103 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||
104 | - | |||||||||||||
105 | - | |||||||||||||
106 | status = U_ZERO_ERROR; | - | ||||||||||||
107 | ucal_setMillis_52(ucal, atMSecsSinceEpoch, &status); | - | ||||||||||||
108 | - | |||||||||||||
109 | int32_t utc = 0; | - | ||||||||||||
110 | if (U_SUCCESS(status)
| 0-8 | ||||||||||||
111 | status = U_ZERO_ERROR; | - | ||||||||||||
112 | - | |||||||||||||
113 | utc = ucal_get_52(ucal, UCAL_ZONE_OFFSET, &status) / 1000; | - | ||||||||||||
114 | } executed 8 times by 1 test: end of block Executed by:
| 8 | ||||||||||||
115 | - | |||||||||||||
116 | int32_t dst = 0; | - | ||||||||||||
117 | if (U_SUCCESS(status)
| 0-8 | ||||||||||||
118 | status = U_ZERO_ERROR; | - | ||||||||||||
119 | - | |||||||||||||
120 | dst = ucal_get_52(ucal, UCAL_DST_OFFSET, &status) / 1000; | - | ||||||||||||
121 | } executed 8 times by 1 test: end of block Executed by:
| 8 | ||||||||||||
122 | - | |||||||||||||
123 | ucal_close_52(ucal); | - | ||||||||||||
124 | if (U_SUCCESS(status)
| 0-8 | ||||||||||||
125 | *utcOffset = utc; | - | ||||||||||||
126 | *dstOffset = dst; | - | ||||||||||||
127 | return executed 8 times by 1 test: true;return true; Executed by:
executed 8 times by 1 test: return true; Executed by:
| 8 | ||||||||||||
128 | } | - | ||||||||||||
129 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||
130 | } | - | ||||||||||||
131 | static QList<QByteArray> uenumToIdList(UEnumeration *uenum) | - | ||||||||||||
132 | { | - | ||||||||||||
133 | QList<QByteArray> list; | - | ||||||||||||
134 | int32_t size = 0; | - | ||||||||||||
135 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
136 | - | |||||||||||||
137 | QByteArray result = uenum_next_52(uenum, &size, &status); | - | ||||||||||||
138 | while (U_SUCCESS(status)
| 0-263952 | ||||||||||||
139 | list << result; | - | ||||||||||||
140 | status = U_ZERO_ERROR; | - | ||||||||||||
141 | result = uenum_next_52(uenum, &size, &status); | - | ||||||||||||
142 | } executed 263529 times by 1 test: end of block Executed by:
| 263529 | ||||||||||||
143 | std::sort(list.begin(), list.end()); | - | ||||||||||||
144 | list.erase(std::unique(list.begin(), list.end()), list.end()); | - | ||||||||||||
145 | return executed 423 times by 1 test: list;return list; Executed by:
executed 423 times by 1 test: return list; Executed by:
| 423 | ||||||||||||
146 | } | - | ||||||||||||
147 | - | |||||||||||||
148 | - | |||||||||||||
149 | static int ucalDaylightOffset(const QByteArray &id) | - | ||||||||||||
150 | { | - | ||||||||||||
151 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
152 | const int32_t dstMSecs = ucal_getDSTSavings_52(reinterpret_cast<const UChar *>(id.data()), &status); | - | ||||||||||||
153 | if (U_SUCCESS(status)
| 0-1 | ||||||||||||
154 | return executed 1 time by 1 test: (dstMSecs / 1000);return (dstMSecs / 1000); Executed by:
executed 1 time by 1 test: return (dstMSecs / 1000); Executed by:
| 1 | ||||||||||||
155 | else | - | ||||||||||||
156 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||
157 | } | - | ||||||||||||
158 | - | |||||||||||||
159 | - | |||||||||||||
160 | QIcuTimeZonePrivate::QIcuTimeZonePrivate() | - | ||||||||||||
161 | : m_ucal(0) | - | ||||||||||||
162 | { | - | ||||||||||||
163 | - | |||||||||||||
164 | init(ucalDefaultTimeZoneId()); | - | ||||||||||||
165 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||
166 | - | |||||||||||||
167 | - | |||||||||||||
168 | QIcuTimeZonePrivate::QIcuTimeZonePrivate(const QByteArray &ianaId) | - | ||||||||||||
169 | : m_ucal(0) | - | ||||||||||||
170 | { | - | ||||||||||||
171 | - | |||||||||||||
172 | if (availableTimeZoneIds().contains(ianaId)
| 11-412 | ||||||||||||
173 | init(ianaId); executed 412 times by 1 test: init(ianaId); Executed by:
| 412 | ||||||||||||
174 | } executed 423 times by 1 test: end of block Executed by:
| 423 | ||||||||||||
175 | - | |||||||||||||
176 | QIcuTimeZonePrivate::QIcuTimeZonePrivate(const QIcuTimeZonePrivate &other) | - | ||||||||||||
177 | : QTimeZonePrivate(other), m_ucal(0) | - | ||||||||||||
178 | { | - | ||||||||||||
179 | - | |||||||||||||
180 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
181 | m_ucal = ucal_clone_52(other.m_ucal, &status); | - | ||||||||||||
182 | if (!U_SUCCESS(status)
| 0 | ||||||||||||
183 | m_id.clear(); | - | ||||||||||||
184 | m_ucal = 0; | - | ||||||||||||
185 | } never executed: end of block | 0 | ||||||||||||
186 | } never executed: end of block | 0 | ||||||||||||
187 | - | |||||||||||||
188 | QIcuTimeZonePrivate::~QIcuTimeZonePrivate() | - | ||||||||||||
189 | { | - | ||||||||||||
190 | ucal_close_52(m_ucal); | - | ||||||||||||
191 | } executed 424 times by 1 test: end of block Executed by:
| 424 | ||||||||||||
192 | - | |||||||||||||
193 | QTimeZonePrivate *QIcuTimeZonePrivate::clone() | - | ||||||||||||
194 | { | - | ||||||||||||
195 | return never executed: new QIcuTimeZonePrivate(*this);return new QIcuTimeZonePrivate(*this); never executed: return new QIcuTimeZonePrivate(*this); | 0 | ||||||||||||
196 | } | - | ||||||||||||
197 | - | |||||||||||||
198 | void QIcuTimeZonePrivate::init(const QByteArray &ianaId) | - | ||||||||||||
199 | { | - | ||||||||||||
200 | m_id = ianaId; | - | ||||||||||||
201 | - | |||||||||||||
202 | const QString id = QString::fromUtf8(m_id); | - | ||||||||||||
203 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
204 | - | |||||||||||||
205 | m_ucal = ucal_open_52(reinterpret_cast<const UChar *>(id.data()), id.size(), | - | ||||||||||||
206 | QLocale().name().toUtf8(), UCAL_GREGORIAN, &status); | - | ||||||||||||
207 | - | |||||||||||||
208 | if (!U_SUCCESS(status)
| 0-413 | ||||||||||||
209 | m_id.clear(); | - | ||||||||||||
210 | m_ucal = 0; | - | ||||||||||||
211 | } never executed: end of block | 0 | ||||||||||||
212 | } executed 413 times by 1 test: end of block Executed by:
| 413 | ||||||||||||
213 | - | |||||||||||||
214 | QString QIcuTimeZonePrivate::displayName(QTimeZone::TimeType timeType, | - | ||||||||||||
215 | QTimeZone::NameType nameType, | - | ||||||||||||
216 | const QLocale &locale) const | - | ||||||||||||
217 | { | - | ||||||||||||
218 | - | |||||||||||||
219 | if (nameType == QTimeZone::OffsetName
| 0-1237 | ||||||||||||
220 | const Data nowData = data(QDateTime::currentMSecsSinceEpoch()); | - | ||||||||||||
221 | - | |||||||||||||
222 | - | |||||||||||||
223 | if (timeType == QTimeZone::DaylightTime
| 0 | ||||||||||||
224 | return never executed: isoOffsetFormat(nowData.standardTimeOffset + ucalDaylightOffset(m_id));return isoOffsetFormat(nowData.standardTimeOffset + ucalDaylightOffset(m_id)); never executed: return isoOffsetFormat(nowData.standardTimeOffset + ucalDaylightOffset(m_id)); | 0 | ||||||||||||
225 | else | - | ||||||||||||
226 | return never executed: isoOffsetFormat(nowData.standardTimeOffset);return isoOffsetFormat(nowData.standardTimeOffset); never executed: return isoOffsetFormat(nowData.standardTimeOffset); | 0 | ||||||||||||
227 | } | - | ||||||||||||
228 | return executed 1237 times by 1 test: ucalTimeZoneDisplayName(m_ucal, timeType, nameType, locale.name());return ucalTimeZoneDisplayName(m_ucal, timeType, nameType, locale.name()); Executed by:
executed 1237 times by 1 test: return ucalTimeZoneDisplayName(m_ucal, timeType, nameType, locale.name()); Executed by:
| 1237 | ||||||||||||
229 | } | - | ||||||||||||
230 | - | |||||||||||||
231 | QString QIcuTimeZonePrivate::abbreviation(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
232 | { | - | ||||||||||||
233 | - | |||||||||||||
234 | if (isDaylightTime(atMSecsSinceEpoch)
| 2 | ||||||||||||
235 | return executed 2 times by 1 test: displayName(QTimeZone::DaylightTime, QTimeZone::ShortName, QString());return displayName(QTimeZone::DaylightTime, QTimeZone::ShortName, QString()); Executed by:
executed 2 times by 1 test: return displayName(QTimeZone::DaylightTime, QTimeZone::ShortName, QString()); Executed by:
| 2 | ||||||||||||
236 | else | - | ||||||||||||
237 | return executed 2 times by 1 test: displayName(QTimeZone::StandardTime, QTimeZone::ShortName, QString());return displayName(QTimeZone::StandardTime, QTimeZone::ShortName, QString()); Executed by:
executed 2 times by 1 test: return displayName(QTimeZone::StandardTime, QTimeZone::ShortName, QString()); Executed by:
| 2 | ||||||||||||
238 | } | - | ||||||||||||
239 | - | |||||||||||||
240 | int QIcuTimeZonePrivate::offsetFromUtc(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
241 | { | - | ||||||||||||
242 | int stdOffset = 0; | - | ||||||||||||
243 | int dstOffset = 0; | - | ||||||||||||
244 | ucalOffsetsAtTime(m_ucal, atMSecsSinceEpoch, &stdOffset, & dstOffset); | - | ||||||||||||
245 | return executed 2 times by 1 test: stdOffset + dstOffset;return stdOffset + dstOffset; Executed by:
executed 2 times by 1 test: return stdOffset + dstOffset; Executed by:
| 2 | ||||||||||||
246 | } | - | ||||||||||||
247 | - | |||||||||||||
248 | int QIcuTimeZonePrivate::standardTimeOffset(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
249 | { | - | ||||||||||||
250 | int stdOffset = 0; | - | ||||||||||||
251 | int dstOffset = 0; | - | ||||||||||||
252 | ucalOffsetsAtTime(m_ucal, atMSecsSinceEpoch, &stdOffset, & dstOffset); | - | ||||||||||||
253 | return executed 2 times by 1 test: stdOffset;return stdOffset; Executed by:
executed 2 times by 1 test: return stdOffset; Executed by:
| 2 | ||||||||||||
254 | } | - | ||||||||||||
255 | - | |||||||||||||
256 | int QIcuTimeZonePrivate::daylightTimeOffset(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
257 | { | - | ||||||||||||
258 | int stdOffset = 0; | - | ||||||||||||
259 | int dstOffset = 0; | - | ||||||||||||
260 | ucalOffsetsAtTime(m_ucal, atMSecsSinceEpoch, &stdOffset, & dstOffset); | - | ||||||||||||
261 | return executed 2 times by 1 test: dstOffset;return dstOffset; Executed by:
executed 2 times by 1 test: return dstOffset; Executed by:
| 2 | ||||||||||||
262 | } | - | ||||||||||||
263 | - | |||||||||||||
264 | bool QIcuTimeZonePrivate::hasDaylightTime() const | - | ||||||||||||
265 | { | - | ||||||||||||
266 | - | |||||||||||||
267 | return executed 1 time by 1 test: (ucalDaylightOffset(m_id) != 0);return (ucalDaylightOffset(m_id) != 0); Executed by:
executed 1 time by 1 test: return (ucalDaylightOffset(m_id) != 0); Executed by:
| 1 | ||||||||||||
268 | } | - | ||||||||||||
269 | - | |||||||||||||
270 | bool QIcuTimeZonePrivate::isDaylightTime(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
271 | { | - | ||||||||||||
272 | - | |||||||||||||
273 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
274 | UCalendar *ucal = ucal_clone_52(m_ucal, &status); | - | ||||||||||||
275 | if (!U_SUCCESS(status)
| 0-417 | ||||||||||||
276 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||
277 | - | |||||||||||||
278 | - | |||||||||||||
279 | status = U_ZERO_ERROR; | - | ||||||||||||
280 | ucal_setMillis_52(ucal, atMSecsSinceEpoch, &status); | - | ||||||||||||
281 | - | |||||||||||||
282 | bool result = false; | - | ||||||||||||
283 | if (U_SUCCESS(status)
| 0-417 | ||||||||||||
284 | status = U_ZERO_ERROR; | - | ||||||||||||
285 | result = ucal_inDaylightTime_52(ucal, &status); | - | ||||||||||||
286 | } executed 417 times by 1 test: end of block Executed by:
| 417 | ||||||||||||
287 | - | |||||||||||||
288 | ucal_close_52(ucal); | - | ||||||||||||
289 | return executed 417 times by 1 test: result;return result; Executed by:
executed 417 times by 1 test: return result; Executed by:
| 417 | ||||||||||||
290 | } | - | ||||||||||||
291 | - | |||||||||||||
292 | QTimeZonePrivate::Data QIcuTimeZonePrivate::data(qint64 forMSecsSinceEpoch) const | - | ||||||||||||
293 | { | - | ||||||||||||
294 | - | |||||||||||||
295 | - | |||||||||||||
296 | QTimeZonePrivate::Data data = invalidData(); | - | ||||||||||||
297 | - | |||||||||||||
298 | - | |||||||||||||
299 | - | |||||||||||||
300 | - | |||||||||||||
301 | ucalOffsetsAtTime(m_ucal, forMSecsSinceEpoch, &data.standardTimeOffset, | - | ||||||||||||
302 | &data.daylightTimeOffset); | - | ||||||||||||
303 | data.offsetFromUtc = data.standardTimeOffset + data.daylightTimeOffset; | - | ||||||||||||
304 | data.abbreviation = abbreviation(forMSecsSinceEpoch); | - | ||||||||||||
305 | - | |||||||||||||
306 | data.atMSecsSinceEpoch = forMSecsSinceEpoch; | - | ||||||||||||
307 | return executed 2 times by 1 test: data;return data; Executed by:
executed 2 times by 1 test: return data; Executed by:
| 2 | ||||||||||||
308 | } | - | ||||||||||||
309 | - | |||||||||||||
310 | bool QIcuTimeZonePrivate::hasTransitions() const | - | ||||||||||||
311 | { | - | ||||||||||||
312 | - | |||||||||||||
313 | - | |||||||||||||
314 | - | |||||||||||||
315 | - | |||||||||||||
316 | - | |||||||||||||
317 | return executed 1 time by 1 test: false;return false; Executed by:
executed 1 time by 1 test: return false; Executed by:
| 1 | ||||||||||||
318 | - | |||||||||||||
319 | } | - | ||||||||||||
320 | - | |||||||||||||
321 | QTimeZonePrivate::Data QIcuTimeZonePrivate::nextTransition(qint64 afterMSecsSinceEpoch) const | - | ||||||||||||
322 | { | - | ||||||||||||
323 | - | |||||||||||||
324 | - | |||||||||||||
325 | - | |||||||||||||
326 | - | |||||||||||||
327 | - | |||||||||||||
328 | (void)afterMSecsSinceEpoch; | - | ||||||||||||
329 | return never executed: invalidData();return invalidData(); never executed: return invalidData(); | 0 | ||||||||||||
330 | - | |||||||||||||
331 | } | - | ||||||||||||
332 | - | |||||||||||||
333 | QTimeZonePrivate::Data QIcuTimeZonePrivate::previousTransition(qint64 beforeMSecsSinceEpoch) const | - | ||||||||||||
334 | { | - | ||||||||||||
335 | - | |||||||||||||
336 | - | |||||||||||||
337 | - | |||||||||||||
338 | - | |||||||||||||
339 | - | |||||||||||||
340 | (void)beforeMSecsSinceEpoch; | - | ||||||||||||
341 | return never executed: invalidData();return invalidData(); never executed: return invalidData(); | 0 | ||||||||||||
342 | - | |||||||||||||
343 | } | - | ||||||||||||
344 | - | |||||||||||||
345 | QByteArray QIcuTimeZonePrivate::systemTimeZoneId() const | - | ||||||||||||
346 | { | - | ||||||||||||
347 | - | |||||||||||||
348 | - | |||||||||||||
349 | return never executed: ucalDefaultTimeZoneId();return ucalDefaultTimeZoneId(); never executed: return ucalDefaultTimeZoneId(); | 0 | ||||||||||||
350 | } | - | ||||||||||||
351 | - | |||||||||||||
352 | QList<QByteArray> QIcuTimeZonePrivate::availableTimeZoneIds() const | - | ||||||||||||
353 | { | - | ||||||||||||
354 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
355 | UEnumeration *uenum = ucal_openTimeZones_52(&status); | - | ||||||||||||
356 | QList<QByteArray> result; | - | ||||||||||||
357 | if (U_SUCCESS(status)
| 0-423 | ||||||||||||
358 | result = uenumToIdList(uenum); executed 423 times by 1 test: result = uenumToIdList(uenum); Executed by:
| 423 | ||||||||||||
359 | uenum_close_52(uenum); | - | ||||||||||||
360 | return executed 423 times by 1 test: result;return result; Executed by:
executed 423 times by 1 test: return result; Executed by:
| 423 | ||||||||||||
361 | } | - | ||||||||||||
362 | - | |||||||||||||
363 | QList<QByteArray> QIcuTimeZonePrivate::availableTimeZoneIds(QLocale::Country country) const | - | ||||||||||||
364 | { | - | ||||||||||||
365 | QByteArray regionCode = QLocalePrivate::countryToCode(country).toUtf8(); | - | ||||||||||||
366 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
367 | UEnumeration *uenum = ucal_openCountryTimeZones_52(regionCode, &status); | - | ||||||||||||
368 | QList<QByteArray> result; | - | ||||||||||||
369 | if (U_SUCCESS(status)
| 0 | ||||||||||||
370 | result = uenumToIdList(uenum); never executed: result = uenumToIdList(uenum); | 0 | ||||||||||||
371 | uenum_close_52(uenum); | - | ||||||||||||
372 | return never executed: result;return result; never executed: return result; | 0 | ||||||||||||
373 | } | - | ||||||||||||
374 | - | |||||||||||||
375 | QList<QByteArray> QIcuTimeZonePrivate::availableTimeZoneIds(int offsetFromUtc) const | - | ||||||||||||
376 | { | - | ||||||||||||
377 | - | |||||||||||||
378 | - | |||||||||||||
379 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
380 | UEnumeration *uenum = ucal_openTimeZoneIDEnumeration_52(UCAL_ZONE_TYPE_ANY, 0, | - | ||||||||||||
381 | &offsetFromUtc, &status); | - | ||||||||||||
382 | QList<QByteArray> result; | - | ||||||||||||
383 | if (U_SUCCESS(status)
| 0 | ||||||||||||
384 | result = uenumToIdList(uenum); never executed: result = uenumToIdList(uenum); | 0 | ||||||||||||
385 | uenum_close_52(uenum); | - | ||||||||||||
386 | return never executed: result;return result; never executed: return result; | 0 | ||||||||||||
387 | - | |||||||||||||
388 | - | |||||||||||||
389 | - | |||||||||||||
390 | } | - | ||||||||||||
391 | - | |||||||||||||
392 | - | |||||||||||||
Switch to Source code | Preprocessed file |