本文整理汇总了C++中TimeZoneTransition::setFrom方法的典型用法代码示例。如果您正苦于以下问题:C++ TimeZoneTransition::setFrom方法的具体用法?C++ TimeZoneTransition::setFrom怎么用?C++ TimeZoneTransition::setFrom使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TimeZoneTransition
的用法示例。
在下文中一共展示了TimeZoneTransition::setFrom方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: checkTransitionRules
UBool
SimpleTimeZone::getNextTransition(UDate base, UBool inclusive, TimeZoneTransition& result) const {
if (!useDaylight) {
return FALSE;
}
UErrorCode status = U_ZERO_ERROR;
checkTransitionRules(status);
if (U_FAILURE(status)) {
return FALSE;
}
UDate firstTransitionTime = firstTransition->getTime();
if (base < firstTransitionTime || (inclusive && base == firstTransitionTime)) {
result = *firstTransition;
}
UDate stdDate, dstDate;
UBool stdAvail = stdRule->getNextStart(base, dstRule->getRawOffset(), dstRule->getDSTSavings(), inclusive, stdDate);
UBool dstAvail = dstRule->getNextStart(base, stdRule->getRawOffset(), stdRule->getDSTSavings(), inclusive, dstDate);
if (stdAvail && (!dstAvail || stdDate < dstDate)) {
result.setTime(stdDate);
result.setFrom((const TimeZoneRule&)*dstRule);
result.setTo((const TimeZoneRule&)*stdRule);
return TRUE;
}
if (dstAvail && (!stdAvail || dstDate < stdDate)) {
result.setTime(dstDate);
result.setFrom((const TimeZoneRule&)*stdRule);
result.setTo((const TimeZoneRule&)*dstRule);
return TRUE;
}
return FALSE;
}
示例2: complete
UBool
RuleBasedTimeZone::getPreviousTransition(UDate base, UBool inclusive, TimeZoneTransition& result) /*const*/ {
UErrorCode status = U_ZERO_ERROR;
complete(status);
if (U_FAILURE(status)) {
return FALSE;
}
UDate transitionTime;
TimeZoneRule *fromRule, *toRule;
UBool found = findPrev(base, inclusive, transitionTime, fromRule, toRule);
if (found) {
result.setTime(transitionTime);
result.setFrom((const TimeZoneRule&)*fromRule);
result.setTo((const TimeZoneRule&)*toRule);
return TRUE;
}
return FALSE;
}