diff --git a/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp b/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp index 23b6ff72483..0a6ffc535b8 100644 --- a/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp +++ b/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp @@ -75,7 +75,7 @@ double epoch_days_to_epoch_ms(double day, double time) } // 13.4 CheckISODaysRange ( isoDate ), https://tc39.es/proposal-temporal/#sec-checkisodaysrange -ThrowCompletionOr check_iso_days_range(VM& vm, ISODate const& iso_date) +ThrowCompletionOr check_iso_days_range(VM& vm, ISODate iso_date) { // 1. If abs(ISODateToEpochDays(isoDate.[[Year]], isoDate.[[Month]] - 1, isoDate.[[Day]])) > 10**8, then if (fabs(iso_date_to_epoch_days(iso_date.year, iso_date.month - 1, iso_date.day)) > 100'000'000) { @@ -1725,7 +1725,7 @@ ThrowCompletionOr to_offset_string(VM& vm, Value argument) } // 13.42 ISODateToFields ( calendar, isoDate, type ), https://tc39.es/proposal-temporal/#sec-temporal-isodatetofields -CalendarFields iso_date_to_fields(StringView calendar, ISODate const& iso_date, DateType type) +CalendarFields iso_date_to_fields(StringView calendar, ISODate iso_date, DateType type) { // 1. Let fields be an empty Calendar Fields Record with all fields set to unset. auto fields = CalendarFields::unset(); diff --git a/Libraries/LibJS/Runtime/Temporal/AbstractOperations.h b/Libraries/LibJS/Runtime/Temporal/AbstractOperations.h index c53d531bdcf..bc1949b4e0f 100644 --- a/Libraries/LibJS/Runtime/Temporal/AbstractOperations.h +++ b/Libraries/LibJS/Runtime/Temporal/AbstractOperations.h @@ -172,7 +172,7 @@ struct DifferenceSettings { double iso_date_to_epoch_days(double year, double month, double date); double epoch_days_to_epoch_ms(double day, double time); -ThrowCompletionOr check_iso_days_range(VM&, ISODate const&); +ThrowCompletionOr check_iso_days_range(VM&, ISODate); ThrowCompletionOr get_temporal_overflow_option(VM&, Object const& options); ThrowCompletionOr get_temporal_disambiguation_option(VM&, Object const& options); RoundingMode negate_rounding_mode(RoundingMode); @@ -206,7 +206,7 @@ ThrowCompletionOr> parse_temporal_duration_string(VM&, StringV ThrowCompletionOr parse_temporal_time_zone_string(VM&, StringView time_zone_string); ThrowCompletionOr to_month_code(VM&, Value argument); ThrowCompletionOr to_offset_string(VM&, Value argument); -CalendarFields iso_date_to_fields(StringView calendar, ISODate const&, DateType); +CalendarFields iso_date_to_fields(StringView calendar, ISODate, DateType); ThrowCompletionOr get_difference_settings(VM&, DurationOperation, Object const& options, UnitGroup, ReadonlySpan disallowed_units, Unit fallback_smallest_unit, Unit smallest_largest_default_unit); // 13.38 ToIntegerWithTruncation ( argument ), https://tc39.es/proposal-temporal/#sec-tointegerwithtruncation diff --git a/Libraries/LibJS/Runtime/Temporal/Calendar.cpp b/Libraries/LibJS/Runtime/Temporal/Calendar.cpp index b88b063bc06..5752920a796 100644 --- a/Libraries/LibJS/Runtime/Temporal/Calendar.cpp +++ b/Libraries/LibJS/Runtime/Temporal/Calendar.cpp @@ -316,7 +316,7 @@ CalendarFields calendar_merge_fields(StringView calendar, CalendarFields const& } // 12.2.6 CalendarDateAdd ( calendar, isoDate, duration, overflow ), https://tc39.es/proposal-temporal/#sec-temporal-calendardateadd -ThrowCompletionOr calendar_date_add(VM& vm, StringView calendar, ISODate const& iso_date, DateDuration const& duration, Overflow overflow) +ThrowCompletionOr calendar_date_add(VM& vm, StringView calendar, ISODate iso_date, DateDuration const& duration, Overflow overflow) { ISODate result; @@ -349,7 +349,7 @@ ThrowCompletionOr calendar_date_add(VM& vm, StringView calendar, ISODat } // 12.2.7 CalendarDateUntil ( calendar, one, two, largestUnit ), https://tc39.es/proposal-temporal/#sec-temporal-calendardateuntil -DateDuration calendar_date_until(VM& vm, StringView calendar, ISODate const& one, ISODate const& two, Unit largest_unit) +DateDuration calendar_date_until(VM& vm, StringView calendar, ISODate one, ISODate two, Unit largest_unit) { // 1. If calendar is "iso8601", then if (calendar == "iso8601"sv) { @@ -610,7 +610,7 @@ u8 iso_days_in_month(double year, double month) } // 12.2.16 ISOWeekOfYear ( isoDate ), https://tc39.es/proposal-temporal/#sec-temporal-isoweekofyear -YearWeek iso_week_of_year(ISODate const& iso_date) +YearWeek iso_week_of_year(ISODate iso_date) { // 1. Let year be isoDate.[[Year]]. auto year = iso_date.year; @@ -691,7 +691,7 @@ YearWeek iso_week_of_year(ISODate const& iso_date) } // 12.2.17 ISODayOfYear ( isoDate ), https://tc39.es/proposal-temporal/#sec-temporal-isodayofyear -u16 iso_day_of_year(ISODate const& iso_date) +u16 iso_day_of_year(ISODate iso_date) { // 1. Let epochDays be ISODateToEpochDays(isoDate.[[Year]], isoDate.[[Month]] - 1, isoDate.[[Day]]). auto epoch_days = iso_date_to_epoch_days(iso_date.year, iso_date.month - 1, iso_date.day); @@ -701,7 +701,7 @@ u16 iso_day_of_year(ISODate const& iso_date) } // 12.2.18 ISODayOfWeek ( isoDate ), https://tc39.es/proposal-temporal/#sec-temporal-isodayofweek -u8 iso_day_of_week(ISODate const& iso_date) +u8 iso_day_of_week(ISODate iso_date) { // 1. Let epochDays be ISODateToEpochDays(isoDate.[[Year]], isoDate.[[Month]] - 1, isoDate.[[Day]]). auto epoch_days = iso_date_to_epoch_days(iso_date.year, iso_date.month - 1, iso_date.day); @@ -764,7 +764,7 @@ ThrowCompletionOr calendar_month_day_to_iso_reference_date(VM& vm, Stri } // 12.2.21 CalendarISOToDate ( calendar, isoDate ), https://tc39.es/proposal-temporal/#sec-temporal-calendarisotodate -CalendarDate calendar_iso_to_date(StringView calendar, ISODate const& iso_date) +CalendarDate calendar_iso_to_date(StringView calendar, ISODate iso_date) { // 1. If calendar is "iso8601", then if (calendar == "iso8601"sv) { diff --git a/Libraries/LibJS/Runtime/Temporal/Calendar.h b/Libraries/LibJS/Runtime/Temporal/Calendar.h index 00359f58a69..89e17074037 100644 --- a/Libraries/LibJS/Runtime/Temporal/Calendar.h +++ b/Libraries/LibJS/Runtime/Temporal/Calendar.h @@ -105,18 +105,18 @@ ThrowCompletionOr calendar_month_day_from_fields(VM&, StringView calend String format_calendar_annotation(StringView id, ShowCalendar); bool calendar_equals(StringView one, StringView two); u8 iso_days_in_month(double year, double month); -YearWeek iso_week_of_year(ISODate const&); -u16 iso_day_of_year(ISODate const&); -u8 iso_day_of_week(ISODate const&); +YearWeek iso_week_of_year(ISODate); +u16 iso_day_of_year(ISODate); +u8 iso_day_of_week(ISODate); Vector calendar_field_keys_present(CalendarFields const&); CalendarFields calendar_merge_fields(StringView calendar, CalendarFields const& fields, CalendarFields const& additional_fields); -ThrowCompletionOr calendar_date_add(VM&, StringView calendar, ISODate const&, DateDuration const&, Overflow); -DateDuration calendar_date_until(VM&, StringView calendar, ISODate const&, ISODate const&, Unit largest_unit); +ThrowCompletionOr calendar_date_add(VM&, StringView calendar, ISODate, DateDuration const&, Overflow); +DateDuration calendar_date_until(VM&, StringView calendar, ISODate, ISODate, Unit largest_unit); ThrowCompletionOr to_temporal_calendar_identifier(VM&, Value temporal_calendar_like); ThrowCompletionOr get_temporal_calendar_identifier_with_iso_default(VM&, Object const& item); ThrowCompletionOr calendar_date_to_iso(VM&, StringView calendar, CalendarFields const&, Overflow); ThrowCompletionOr calendar_month_day_to_iso_reference_date(VM&, StringView calendar, CalendarFields const&, Overflow); -CalendarDate calendar_iso_to_date(StringView calendar, ISODate const&); +CalendarDate calendar_iso_to_date(StringView calendar, ISODate); Vector calendar_extra_fields(StringView calendar, CalendarFieldList); Vector calendar_field_keys_to_ignore(StringView calendar, ReadonlySpan); ThrowCompletionOr calendar_resolve_fields(VM&, StringView calendar, CalendarFields&, DateType); diff --git a/Libraries/LibJS/Runtime/Temporal/PlainDateTime.cpp b/Libraries/LibJS/Runtime/Temporal/PlainDateTime.cpp index 69b2478a76c..5786be7343e 100644 --- a/Libraries/LibJS/Runtime/Temporal/PlainDateTime.cpp +++ b/Libraries/LibJS/Runtime/Temporal/PlainDateTime.cpp @@ -29,7 +29,7 @@ PlainDateTime::PlainDateTime(ISODateTime const& iso_date_time, String calendar, } // 5.5.3 CombineISODateAndTimeRecord ( isoDate, time ), https://tc39.es/proposal-temporal/#sec-temporal-combineisodateandtimerecord -ISODateTime combine_iso_date_and_time_record(ISODate iso_date, Time time) +ISODateTime combine_iso_date_and_time_record(ISODate iso_date, Time const& time) { // 1. NOTE: time.[[Days]] is ignored. // 2. Return ISO Date-Time Record { [[ISODate]]: isoDate, [[Time]]: time }. @@ -43,7 +43,7 @@ static auto const DATETIME_NANOSECONDS_MIN = "-8640000086400000000000"_sbigint; static auto const DATETIME_NANOSECONDS_MAX = "8640000086400000000000"_sbigint; // 5.5.4 ISODateTimeWithinLimits ( isoDateTime ), https://tc39.es/proposal-temporal/#sec-temporal-isodatetimewithinlimits -bool iso_date_time_within_limits(ISODateTime iso_date_time) +bool iso_date_time_within_limits(ISODateTime const& iso_date_time) { // 1. If abs(ISODateToEpochDays(isoDateTime.[[ISODate]].[[Year]], isoDateTime.[[ISODate]].[[Month]] - 1, isoDateTime.[[ISODate]].[[Day]])) > 10**8 + 1, return false. if (fabs(iso_date_to_epoch_days(iso_date_time.iso_date.year, iso_date_time.iso_date.month - 1, iso_date_time.iso_date.day)) > 100000001) diff --git a/Libraries/LibJS/Runtime/Temporal/PlainDateTime.h b/Libraries/LibJS/Runtime/Temporal/PlainDateTime.h index 9d38caa2002..b7cc2e8481e 100644 --- a/Libraries/LibJS/Runtime/Temporal/PlainDateTime.h +++ b/Libraries/LibJS/Runtime/Temporal/PlainDateTime.h @@ -32,8 +32,8 @@ private: String m_calendar; // [[Calendar]] }; -ISODateTime combine_iso_date_and_time_record(ISODate, Time); -bool iso_date_time_within_limits(ISODateTime); +ISODateTime combine_iso_date_and_time_record(ISODate, Time const&); +bool iso_date_time_within_limits(ISODateTime const&); ThrowCompletionOr interpret_temporal_date_time_fields(VM&, StringView calendar, CalendarFields&, Overflow); ThrowCompletionOr> to_temporal_date_time(VM&, Value item, Value options = js_undefined()); ISODateTime balance_iso_date_time(double year, double month, double day, double hour, double minute, double second, double millisecond, double microsecond, double nanosecond);