2#ifndef _TIME_SHIELD_TIME_ZONE_STRUCT_HPP_INCLUDED
3#define _TIME_SHIELD_TIME_ZONE_STRUCT_HPP_INCLUDED
35 bool is_positive =
true) {
46 int abs_val = std::abs(offset);
49 bool is_positive = (offset >= 0);
68 return std::string(1, sign) + (tz.
hour < 10 ?
"0" :
"") + std::to_string(tz.
hour) +
":" + (tz.
min < 10 ?
"0" :
"") + std::to_string(tz.
min);
Header file with time-related constants.
constexpr int64_t SEC_PER_HOUR
Seconds per hour.
constexpr int64_t SEC_PER_MIN
Seconds per minute.
const std::string & to_str(Weekday value, FormatType format=UPPERCASE_NAME)
Converts a Weekday enum value to a string.
const tz_t time_zone_struct_to_offset(const TimeZoneStruct &tz)
Converts a TimeZoneStruct to a single integer representation.
const tz_t tz_to_offset(const TimeZoneStruct &tz)
Alias for time_zone_struct_to_offset function.
const TimeZoneStruct to_tz(tz_t offset)
Alias for to_time_zone_struct function.
const tz_t to_offset(const TimeZoneStruct &tz)
Alias for time_zone_struct_to_offset function.
const TimeZoneStruct to_time_zone_struct(tz_t offset)
Converts an integer to a TimeZoneStruct.
const TimeZoneStruct create_time_zone_struct(int hour, int min, bool is_positive=true)
Creates a TimeZoneStruct instance.
int32_t tz_t
Time zone offset in minutes from UTC (e.g., +180 = UTC+3).
Main namespace for the Time Shield library.
Structure to represent time zone information.
int hour
Hour component of time (0-23)
int min
Minute component of time (0-59)
bool is_positive
True if the time zone offset is positive, false if negative.
Type definitions for time-related units and formats.