#![allow(dead_code)]
use crate::{builtins::temporal::to_zero_padded_decimal_string, Context};
#[allow(unused)]
pub(super) fn default_time_zone(context: &mut Context) -> String {
"UTC".to_owned()
}
fn format_time_zone_offset_string(offset_nanoseconds: i64) -> String {
let sign = if offset_nanoseconds >= 0 { "+" } else { "-" };
let offset_nanoseconds = offset_nanoseconds.unsigned_abs();
let nanoseconds = offset_nanoseconds % 1_000_000_000;
let seconds = (offset_nanoseconds / 1_000_000_000) % 60;
let minutes = (offset_nanoseconds / 60_000_000_000) % 60;
let hours = (offset_nanoseconds / 3_600_000_000_000) % 60;
let h = to_zero_padded_decimal_string(hours, 2);
let m = to_zero_padded_decimal_string(minutes, 2);
let s = to_zero_padded_decimal_string(seconds, 2);
let post = if nanoseconds != 0 {
let fraction = to_zero_padded_decimal_string(nanoseconds, 9);
let fraction = fraction.trim_end_matches('0');
format!(":{s}.{fraction}")
} else if seconds != 0 {
format!(":{s}")
} else {
String::new()
};
format!("{sign}{h}:{m}{post}")
}
fn canonicalize_time_zone_name(time_zone: &str) -> String {
assert!(time_zone.to_ascii_uppercase() == "UTC");
"UTC".to_owned()
}