#include "absl/time/time.h"
#if defined(_MSC_VER)
#include <winsock2.h>
#endif
#include <cstring>
#include <ctime>
#include <limits>
#include "absl/time/internal/cctz/include/cctz/civil_time.h"
#include "absl/time/internal/cctz/include/cctz/time_zone.h"
cctz;
namespace absl {
ABSL_NAMESPACE_BEGIN
namespace {
inline cctz::time_point<cctz::seconds> unix_epoch() { … }
inline int64_t FloorToUnit(absl::Duration d, absl::Duration unit) { … }
ABSL_INTERNAL_DISABLE_DEPRECATED_DECLARATION_WARNING
inline absl::Time::Breakdown InfiniteFutureBreakdown() { … }
inline absl::Time::Breakdown InfinitePastBreakdown() { … }
ABSL_INTERNAL_RESTORE_DEPRECATED_DECLARATION_WARNING
inline absl::TimeZone::CivilInfo InfiniteFutureCivilInfo() { … }
inline absl::TimeZone::CivilInfo InfinitePastCivilInfo() { … }
ABSL_INTERNAL_DISABLE_DEPRECATED_DECLARATION_WARNING
inline absl::TimeConversion InfiniteFutureTimeConversion() { … }
inline TimeConversion InfinitePastTimeConversion() { … }
ABSL_INTERNAL_RESTORE_DEPRECATED_DECLARATION_WARNING
Time MakeTimeWithOverflow(const cctz::time_point<cctz::seconds>& sec,
const cctz::civil_second& cs,
const cctz::time_zone& tz,
bool* normalized = nullptr) { … }
inline int MapWeekday(const cctz::weekday& wd) { … }
bool FindTransition(const cctz::time_zone& tz,
bool (cctz::time_zone::*find_transition)(
const cctz::time_point<cctz::seconds>& tp,
cctz::time_zone::civil_transition* trans) const,
Time t, TimeZone::CivilTransition* trans) { … }
}
ABSL_INTERNAL_DISABLE_DEPRECATED_DECLARATION_WARNING
absl::Time::Breakdown Time::In(absl::TimeZone tz) const { … }
ABSL_INTERNAL_RESTORE_DEPRECATED_DECLARATION_WARNING
absl::Time FromUDate(double udate) { … }
absl::Time FromUniversal(int64_t universal) { … }
int64_t ToUnixNanos(Time t) { … }
int64_t ToUnixMicros(Time t) { … }
int64_t ToUnixMillis(Time t) { … }
int64_t ToUnixSeconds(Time t) { … }
time_t ToTimeT(Time t) { … }
double ToUDate(Time t) { … }
int64_t ToUniversal(absl::Time t) { … }
absl::Time TimeFromTimespec(timespec ts) { … }
absl::Time TimeFromTimeval(timeval tv) { … }
timespec ToTimespec(Time t) { … }
timeval ToTimeval(Time t) { … }
Time FromChrono(const std::chrono::system_clock::time_point& tp) { … }
std::chrono::system_clock::time_point ToChronoTime(absl::Time t) { … }
absl::TimeZone::CivilInfo TimeZone::At(Time t) const { … }
absl::TimeZone::TimeInfo TimeZone::At(CivilSecond ct) const { … }
bool TimeZone::NextTransition(Time t, CivilTransition* trans) const { … }
bool TimeZone::PrevTransition(Time t, CivilTransition* trans) const { … }
ABSL_INTERNAL_DISABLE_DEPRECATED_DECLARATION_WARNING
absl::TimeConversion ConvertDateTime(int64_t year, int mon, int day, int hour,
int min, int sec, TimeZone tz) { … }
ABSL_INTERNAL_RESTORE_DEPRECATED_DECLARATION_WARNING
absl::Time FromTM(const struct tm& tm, absl::TimeZone tz) { … }
struct tm ToTM(absl::Time t, absl::TimeZone tz) { … }
ABSL_NAMESPACE_END
}