/* * Copyright (c) 2021, Idan Horowitz * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include namespace JS::Temporal { struct ISODateTime { i32 year; i32 month; i32 day; i32 hour; i32 minute; i32 second; i32 millisecond; i32 microsecond; i32 nanosecond; Optional calendar; }; Optional parse_iso_date_time(GlobalObject&, String const& iso_string); struct TemporalInstant { i32 year; i32 month; i32 day; i32 hour; i32 minute; i32 second; i32 millisecond; i32 microsecond; i32 nanosecond; Optional time_zone_offset; }; Optional parse_temporal_instant_string(GlobalObject&, String const& iso_string); struct TemporalTimeZone { bool z; Optional offset; Optional name; }; Optional parse_temporal_time_zone_string(GlobalObject&, String const& iso_string); }