1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 09:57:35 +00:00

LibJS: Require 'T' prefix for ambiguous time-only strings

This is a normative change in the Temporal spec.

See: 514ede3
This commit is contained in:
Linus Groh 2021-12-22 22:44:46 +01:00
parent a73c71e877
commit 3ab1c52e2b
4 changed files with 443 additions and 29 deletions

View file

@ -22,6 +22,13 @@ struct ParseResult {
Optional<StringView> time_minute;
Optional<StringView> time_second;
Optional<StringView> time_fraction;
Optional<StringView> time_hour_not_valid_month;
Optional<StringView> time_hour_not_thirty_one_day_month;
Optional<StringView> time_hour_two_only;
Optional<StringView> time_minute_not_valid_day;
Optional<StringView> time_minute_thirty_only;
Optional<StringView> time_minute_thirty_one_only;
Optional<StringView> time_second_not_valid_month;
Optional<StringView> calendar_name;
Optional<StringView> utc_designator;
Optional<StringView> time_zone_utc_offset_sign;
@ -103,6 +110,13 @@ public:
[[nodiscard]] bool parse_time_hour();
[[nodiscard]] bool parse_time_minute();
[[nodiscard]] bool parse_time_second();
[[nodiscard]] bool parse_time_hour_not_valid_month();
[[nodiscard]] bool parse_time_hour_not_thirty_one_day_month();
[[nodiscard]] bool parse_time_hour_two_only();
[[nodiscard]] bool parse_time_minute_not_valid_day();
[[nodiscard]] bool parse_time_minute_thirty_only();
[[nodiscard]] bool parse_time_minute_thirty_one_only();
[[nodiscard]] bool parse_time_second_not_valid_month();
[[nodiscard]] bool parse_fractional_part();
[[nodiscard]] bool parse_fraction();
[[nodiscard]] bool parse_time_fraction();
@ -114,6 +128,8 @@ public:
[[nodiscard]] bool parse_time_zone_utc_offset_fraction();
[[nodiscard]] bool parse_time_zone_numeric_utc_offset();
[[nodiscard]] bool parse_time_zone_utc_offset();
[[nodiscard]] bool parse_time_zone_numeric_utc_offset_not_ambiguous();
[[nodiscard]] bool parse_time_zone_numeric_utc_offset_not_ambiguous_allowed_negative_hour();
[[nodiscard]] bool parse_time_zone_utc_offset_name();
[[nodiscard]] bool parse_time_zone_iana_name();
[[nodiscard]] bool parse_time_zone_bracketed_name();
@ -124,6 +140,8 @@ public:
[[nodiscard]] bool parse_calendar_name();
[[nodiscard]] bool parse_calendar();
[[nodiscard]] bool parse_time_spec();
[[nodiscard]] bool parse_time_hour_minute_basic_format_not_ambiguous();
[[nodiscard]] bool parse_time_spec_with_optional_time_zone_not_ambiguous();
[[nodiscard]] bool parse_time_spec_separator();
[[nodiscard]] bool parse_date_time();
[[nodiscard]] bool parse_calendar_time();