#include "absl/time/civil_time.h"
#include <cstdlib>
#include <ostream>
#include <string>
#include "absl/strings/str_cat.h"
#include "absl/time/time.h"
namespace absl {
ABSL_NAMESPACE_BEGIN
namespace {
inline civil_year_t NormalizeYear(civil_year_t year) { … }
std::string FormatYearAnd(string_view fmt, CivilSecond cs) { … }
template <typename CivilT>
bool ParseYearAnd(string_view fmt, string_view s, CivilT* c) { … }
template <typename CivilT1, typename CivilT2>
bool ParseAs(string_view s, CivilT2* c) { … }
template <typename CivilT>
bool ParseLenient(string_view s, CivilT* c) { … }
}
std::string FormatCivilTime(CivilSecond c) { … }
std::string FormatCivilTime(CivilMinute c) { … }
std::string FormatCivilTime(CivilHour c) { … }
std::string FormatCivilTime(CivilDay c) { … }
std::string FormatCivilTime(CivilMonth c) { … }
std::string FormatCivilTime(CivilYear c) { … }
bool ParseCivilTime(string_view s, CivilSecond* c) { … }
bool ParseCivilTime(string_view s, CivilMinute* c) { … }
bool ParseCivilTime(string_view s, CivilHour* c) { … }
bool ParseCivilTime(string_view s, CivilDay* c) { … }
bool ParseCivilTime(string_view s, CivilMonth* c) { … }
bool ParseCivilTime(string_view s, CivilYear* c) { … }
bool ParseLenientCivilTime(string_view s, CivilSecond* c) { … }
bool ParseLenientCivilTime(string_view s, CivilMinute* c) { … }
bool ParseLenientCivilTime(string_view s, CivilHour* c) { … }
bool ParseLenientCivilTime(string_view s, CivilDay* c) { … }
bool ParseLenientCivilTime(string_view s, CivilMonth* c) { … }
bool ParseLenientCivilTime(string_view s, CivilYear* c) { … }
namespace time_internal {
std::ostream& operator<<(std::ostream& os, CivilYear y) { … }
std::ostream& operator<<(std::ostream& os, CivilMonth m) { … }
std::ostream& operator<<(std::ostream& os, CivilDay d) { … }
std::ostream& operator<<(std::ostream& os, CivilHour h) { … }
std::ostream& operator<<(std::ostream& os, CivilMinute m) { … }
std::ostream& operator<<(std::ostream& os, CivilSecond s) { … }
bool AbslParseFlag(string_view s, CivilSecond* c, std::string*) { … }
bool AbslParseFlag(string_view s, CivilMinute* c, std::string*) { … }
bool AbslParseFlag(string_view s, CivilHour* c, std::string*) { … }
bool AbslParseFlag(string_view s, CivilDay* c, std::string*) { … }
bool AbslParseFlag(string_view s, CivilMonth* c, std::string*) { … }
bool AbslParseFlag(string_view s, CivilYear* c, std::string*) { … }
std::string AbslUnparseFlag(CivilSecond c) { … }
std::string AbslUnparseFlag(CivilMinute c) { … }
std::string AbslUnparseFlag(CivilHour c) { … }
std::string AbslUnparseFlag(CivilDay c) { … }
std::string AbslUnparseFlag(CivilMonth c) { … }
std::string AbslUnparseFlag(CivilYear c) { … }
}
ABSL_NAMESPACE_END
}