From 0990c23fc31cd5e9e90b06697604dbd3150ea4fd Mon Sep 17 00:00:00 2001 From: Linus Groh Date: Sun, 1 Aug 2021 18:16:47 +0100 Subject: [PATCH] js: Implement pretty-printing of Temporal.ZonedDateTime objects --- Userland/Utilities/js.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Userland/Utilities/js.cpp b/Userland/Utilities/js.cpp index 6b27295386..bd5aef8b8e 100644 --- a/Userland/Utilities/js.cpp +++ b/Userland/Utilities/js.cpp @@ -48,6 +48,7 @@ #include #include #include +#include #include #include #include @@ -489,6 +490,18 @@ static void print_temporal_time_zone(JS::Object const& object, HashTable& seen_objects) +{ + auto& zoned_date_time = static_cast(object); + print_type("Temporal.ZonedDateTime"); + out("\n epochNanoseconds: "); + print_value(&zoned_date_time.nanoseconds(), seen_objects); + out("\n timeZone: "); + print_value(&zoned_date_time.time_zone(), seen_objects); + out("\n calendar: "); + print_value(&zoned_date_time.calendar(), seen_objects); +} + static void print_primitive_wrapper_object(FlyString const& name, JS::Object const& object, HashTable& seen_objects) { // BooleanObject, NumberObject, StringObject @@ -560,6 +573,8 @@ static void print_value(JS::Value value, HashTable& seen_objects) return print_temporal_plain_time(object, seen_objects); if (is(object)) return print_temporal_time_zone(object, seen_objects); + if (is(object)) + return print_temporal_zoned_date_time(object, seen_objects); return print_object(object, seen_objects); }