/* * Copyright 2015 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #include "SkString.h" #include "SkTime.h" void SkTime::DateTime::toISO8601(SkString* dst) const { if (dst) { int timeZoneMinutes = SkToInt(fTimeZoneMinutes); char timezoneSign = timeZoneMinutes >= 0 ? '+' : '-'; int timeZoneHours = abs(timeZoneMinutes) / 60; timeZoneMinutes = abs(timeZoneMinutes) % 60; dst->printf("%04u-%02u-%02uT%02u:%02u:%02u%c%02d:%02d", static_cast<unsigned>(fYear), static_cast<unsigned>(fMonth), static_cast<unsigned>(fDay), static_cast<unsigned>(fHour), static_cast<unsigned>(fMinute), static_cast<unsigned>(fSecond), timezoneSign, timeZoneHours, timeZoneMinutes); } }