diff options
author | yazevnul <yazevnul@yandex-team.ru> | 2022-02-10 16:46:46 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:46:46 +0300 |
commit | 8cbc307de0221f84c80c42dcbe07d40727537e2c (patch) | |
tree | 625d5a673015d1df891e051033e9fcde5c7be4e5 /library/cpp/timezone_conversion | |
parent | 30d1ef3941e0dc835be7609de5ebee66958f215a (diff) | |
download | ydb-8cbc307de0221f84c80c42dcbe07d40727537e2c.tar.gz |
Restoring authorship annotation for <yazevnul@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'library/cpp/timezone_conversion')
-rw-r--r-- | library/cpp/timezone_conversion/README.md | 26 | ||||
-rw-r--r-- | library/cpp/timezone_conversion/civil.cpp | 14 | ||||
-rw-r--r-- | library/cpp/timezone_conversion/ut/civil_ut.cpp | 14 | ||||
-rw-r--r-- | library/cpp/timezone_conversion/ut/convert_ut.cpp | 2 |
4 files changed, 28 insertions, 28 deletions
diff --git a/library/cpp/timezone_conversion/README.md b/library/cpp/timezone_conversion/README.md index 828f1880bc..66ee7ca440 100644 --- a/library/cpp/timezone_conversion/README.md +++ b/library/cpp/timezone_conversion/README.md @@ -1,16 +1,16 @@ -A library for translating between absolute times (i.e., `TInstant`) and civil times (i.e., -`NDatetime::TSimpleTM`) using the rules defined by a time zone (i.e., `NDatetime::TTimeZone`). +A library for translating between absolute times (i.e., `TInstant`) and civil times (i.e., +`NDatetime::TSimpleTM`) using the rules defined by a time zone (i.e., `NDatetime::TTimeZone`). -(the terms `absolute` and `civil` come from [cctz#fundamental-concepts][cctz-fundamental-concepts]) +(the terms `absolute` and `civil` come from [cctz#fundamental-concepts][cctz-fundamental-concepts]) -This is basically a wrapper around [CCTZ][cctz] with one important change: the time zone database is -in Arcadia and is compiled with the library (which means your executable will end up ~2MB larger). - -See [contrib/libs/cctz/README][update] if you think zone database is outdated. +This is basically a wrapper around [CCTZ][cctz] with one important change: the time zone database is +in Arcadia and is compiled with the library (which means your executable will end up ~2MB larger). +See [contrib/libs/cctz/README][update] if you think zone database is outdated. + Quick start: ============ -``` +``` #include <library/cpp/timezone_conversion/convert.h> // NDatetime::{GetLocalTimeZone(),GetUtcTimeZone()} are also available. @@ -20,8 +20,8 @@ NDatetime::TSimpleTM civil = NDatetime::ToCivilTime(now, msk); Cout << "Local time in Moscow is " << civil.ToString() << Endl; TInstant absolute = NDatetime::ToAbsoluteTime(civil, msk); Cout << "The current UNIX time is " << absolute.Seconds() << Endl; -``` - -[cctz-fundamental-concepts]: https://github.com/google/cctz#fundamental-concepts -[cctz]: https://github.com/google/cctz -[update]: https://a.yandex-team.ru/arc/trunk/arcadia/contrib/libs/cctz/tzdata/README?rev=2286180 +``` + +[cctz-fundamental-concepts]: https://github.com/google/cctz#fundamental-concepts +[cctz]: https://github.com/google/cctz +[update]: https://a.yandex-team.ru/arc/trunk/arcadia/contrib/libs/cctz/tzdata/README?rev=2286180 diff --git a/library/cpp/timezone_conversion/civil.cpp b/library/cpp/timezone_conversion/civil.cpp index 5986318b9a..4d3d0454d1 100644 --- a/library/cpp/timezone_conversion/civil.cpp +++ b/library/cpp/timezone_conversion/civil.cpp @@ -176,37 +176,37 @@ namespace NDatetime { } template <> -void Out<NDatetime::TCivilYear>(IOutputStream& out, const NDatetime::TCivilYear& y) { +void Out<NDatetime::TCivilYear>(IOutputStream& out, const NDatetime::TCivilYear& y) { out << y.year(); } template <> -void Out<NDatetime::TCivilMonth>(IOutputStream& out, const NDatetime::TCivilMonth& m) { +void Out<NDatetime::TCivilMonth>(IOutputStream& out, const NDatetime::TCivilMonth& m) { out << NDatetime::TCivilYear(m) << '-' << LeftPad(m.month(), 2, '0'); } template <> -void Out<NDatetime::TCivilDay>(IOutputStream& out, const NDatetime::TCivilDay& d) { +void Out<NDatetime::TCivilDay>(IOutputStream& out, const NDatetime::TCivilDay& d) { out << NDatetime::TCivilMonth(d) << '-' << LeftPad(d.day(), 2, '0'); } template <> -void Out<NDatetime::TCivilHour>(IOutputStream& out, const NDatetime::TCivilHour& h) { +void Out<NDatetime::TCivilHour>(IOutputStream& out, const NDatetime::TCivilHour& h) { out << NDatetime::TCivilDay(h) << 'T' << LeftPad(h.hour(), 2, '0'); } template <> -void Out<NDatetime::TCivilMinute>(IOutputStream& out, const NDatetime::TCivilMinute& m) { +void Out<NDatetime::TCivilMinute>(IOutputStream& out, const NDatetime::TCivilMinute& m) { out << NDatetime::TCivilHour(m) << ':' << LeftPad(m.minute(), 2, '0'); } template <> -void Out<NDatetime::TCivilSecond>(IOutputStream& out, const NDatetime::TCivilSecond& s) { +void Out<NDatetime::TCivilSecond>(IOutputStream& out, const NDatetime::TCivilSecond& s) { out << NDatetime::TCivilMinute(s) << ':' << LeftPad(s.second(), 2, '0'); } template <> -void Out<NDatetime::TWeekday>(IOutputStream& out, NDatetime::TWeekday wd) { +void Out<NDatetime::TWeekday>(IOutputStream& out, NDatetime::TWeekday wd) { using namespace cctz; switch (wd) { case weekday::monday: diff --git a/library/cpp/timezone_conversion/ut/civil_ut.cpp b/library/cpp/timezone_conversion/ut/civil_ut.cpp index a21bd4bd7d..4f46dbb91f 100644 --- a/library/cpp/timezone_conversion/ut/civil_ut.cpp +++ b/library/cpp/timezone_conversion/ut/civil_ut.cpp @@ -15,20 +15,20 @@ inline void Out<NDatetime::TCivilDiff>(IOutputStream& out, const NDatetime::TCiv out << "(" << diff.Value << "," << diff.Unit << ")"; } -Y_UNIT_TEST_SUITE(DateTime) { - Y_UNIT_TEST(Calc) { +Y_UNIT_TEST_SUITE(DateTime) { + Y_UNIT_TEST(Calc) { NDatetime::TCivilSecond s(2017, 2, 1, 10, 12, 9); UNIT_ASSERT_VALUES_EQUAL(NDatetime::Calc<NDatetime::TCivilDay>(s, 2), NDatetime::TCivilDay(2017, 2, 3)); UNIT_ASSERT_VALUES_EQUAL(NDatetime::Calc<NDatetime::TCivilDay>(s, -2), NDatetime::TCivilDay(2017, 1, 30)); } - Y_UNIT_TEST(Adds) { + Y_UNIT_TEST(Adds) { NDatetime::TCivilSecond s(2017, 2, 1, 10, 12, 9); UNIT_ASSERT_VALUES_EQUAL(NDatetime::AddDays(s, 2), NDatetime::TCivilSecond(2017, 2, 3, 10, 12, 9)); UNIT_ASSERT_VALUES_EQUAL(NDatetime::AddMonths(s, -2), NDatetime::TCivilSecond(2016, 12, 1, 10, 12, 9)); UNIT_ASSERT_VALUES_EQUAL(NDatetime::AddYears(s, -55), NDatetime::TCivilSecond(1962, 2, 1, 10, 12, 9)); UNIT_ASSERT_VALUES_EQUAL(NDatetime::AddHours(s, 40), NDatetime::TCivilSecond(2017, 2, 3, 2, 12, 9)); } - Y_UNIT_TEST(Convert) { + Y_UNIT_TEST(Convert) { TInstant absTime = TInstant::Seconds(1500299239); NDatetime::TTimeZone lax = NDatetime::GetTimeZone("America/Los_Angeles"); NDatetime::TCivilSecond dt1 = NDatetime::Convert(absTime, lax); @@ -66,13 +66,13 @@ Y_UNIT_TEST_SUITE(DateTime) { UNIT_ASSERT_EXCEPTION(NDatetime::GetTimeZone("UTC+20:60"), NDatetime::TInvalidTimezone); UNIT_ASSERT_EXCEPTION(NDatetime::GetTimeZone("UTC+20:30:"), NDatetime::TInvalidTimezone); } - Y_UNIT_TEST(Format) { + Y_UNIT_TEST(Format) { NDatetime::TTimeZone lax = NDatetime::GetTimeZone("America/Los_Angeles"); NDatetime::TCivilSecond tp(2013, 1, 2, 3, 4, 5); UNIT_ASSERT_VALUES_EQUAL(NDatetime::Format("%H:%M:%S", tp, lax), "03:04:05"); UNIT_ASSERT_VALUES_EQUAL(NDatetime::Format("%H:%M:%E3S", tp, lax), "03:04:05.000"); } - Y_UNIT_TEST(Weekday) { + Y_UNIT_TEST(Weekday) { NDatetime::TCivilDay d(2013, 1, 2); NDatetime::TWeekday wd = NDatetime::GetWeekday(d); UNIT_ASSERT_VALUES_EQUAL(wd, NDatetime::TWeekday::wednesday); @@ -82,7 +82,7 @@ Y_UNIT_TEST_SUITE(DateTime) { UNIT_ASSERT_VALUES_EQUAL(NDatetime::WeekdayOnTheWeek(d, NDatetime::TWeekday::wednesday), NDatetime::TCivilDay(2013, 1, 2)); UNIT_ASSERT_VALUES_EQUAL(NDatetime::WeekdayOnTheWeek(d, NDatetime::TWeekday::friday), NDatetime::TCivilDay(2013, 1, 4)); } - Y_UNIT_TEST(CivilUnit) { + Y_UNIT_TEST(CivilUnit) { using namespace NDatetime; UNIT_ASSERT_VALUES_EQUAL(GetCivilUnit<TCivilMonth>(), ECivilUnit::Month); diff --git a/library/cpp/timezone_conversion/ut/convert_ut.cpp b/library/cpp/timezone_conversion/ut/convert_ut.cpp index bbf9e9b826..cf25cbaefe 100644 --- a/library/cpp/timezone_conversion/ut/convert_ut.cpp +++ b/library/cpp/timezone_conversion/ut/convert_ut.cpp @@ -4,7 +4,7 @@ using namespace NDatetime; template <> -void Out<TSimpleTM>(IOutputStream& os, TTypeTraits<TSimpleTM>::TFuncParam value) { +void Out<TSimpleTM>(IOutputStream& os, TTypeTraits<TSimpleTM>::TFuncParam value) { os << value.ToString() << ", dst: " << int(value.IsDst); } |