1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 22:57:44 +00:00

LibJS: Capture TimeFraction parse result instead of Fraction

Not much of a difference as TimeFraction just parses Fraction, but let's
do it correctly. Small mistake I did in 4b7f716.

Thanks to YouTube user gla3dr for noticing this :^)
This commit is contained in:
Linus Groh 2021-12-19 09:29:46 +00:00
parent 99b263a2db
commit f7fe7f8c77
3 changed files with 8 additions and 4 deletions

View file

@ -1086,7 +1086,7 @@ ThrowCompletionOr<ISODateTime> parse_iso_date_time(GlobalObject& global_object,
auto hour_part = parse_result.time_hour;
auto minute_part = parse_result.time_minute;
auto second_part = parse_result.time_second;
auto fraction_part = parse_result.fractional_part;
auto fraction_part = parse_result.time_fraction;
auto calendar_part = parse_result.calendar_name;
// 3. If the first code unit of year is 0x2212 (MINUS SIGN), replace it with the code unit 0x002D (HYPHEN-MINUS).

View file

@ -440,7 +440,6 @@ bool ISO8601Parser::parse_fraction()
return false;
if (!parse_fractional_part())
return false;
m_state.parse_result.fractional_part = transaction.parsed_string_view();
transaction.commit();
return true;
}
@ -450,7 +449,12 @@ bool ISO8601Parser::parse_time_fraction()
{
// TimeFraction :
// Fraction
return parse_fraction();
StateTransaction transaction { *this };
if (!parse_fraction())
return false;
m_state.parse_result.time_fraction = transaction.parsed_string_view();
transaction.commit();
return true;
}
// https://tc39.es/proposal-temporal/#prod-TimeZoneUTCOffsetSign

View file

@ -21,7 +21,7 @@ struct ParseResult {
Optional<StringView> time_hour;
Optional<StringView> time_minute;
Optional<StringView> time_second;
Optional<StringView> fractional_part;
Optional<StringView> time_fraction;
Optional<StringView> calendar_name;
Optional<StringView> utc_designator;
Optional<StringView> time_zone_utc_offset_sign;