瀏覽代碼

LibJS: Handle PlainMonthDay in ISO{Year,Month,MonthCode,Day}

Linus Groh 3 年之前
父節點
當前提交
b76bae13fd
共有 1 個文件被更改,包括 8 次插入4 次删除
  1. 8 4
      Userland/Libraries/LibJS/Runtime/Temporal/Calendar.cpp

+ 8 - 4
Userland/Libraries/LibJS/Runtime/Temporal/Calendar.cpp

@@ -727,7 +727,8 @@ i32 iso_year(Object& temporal_object)
         return static_cast<PlainDateTime&>(temporal_object).iso_year();
     if (is<PlainYearMonth>(temporal_object))
         return static_cast<PlainYearMonth&>(temporal_object).iso_year();
-    // TODO: PlainMonthDay
+    if (is<PlainMonthDay>(temporal_object))
+        return static_cast<PlainMonthDay&>(temporal_object).iso_year();
     VERIFY_NOT_REACHED();
 }
 
@@ -744,7 +745,8 @@ u8 iso_month(Object& temporal_object)
         return static_cast<PlainDateTime&>(temporal_object).iso_month();
     if (is<PlainYearMonth>(temporal_object))
         return static_cast<PlainYearMonth&>(temporal_object).iso_month();
-    // TODO: PlainMonthDay
+    if (is<PlainMonthDay>(temporal_object))
+        return static_cast<PlainMonthDay&>(temporal_object).iso_month();
     VERIFY_NOT_REACHED();
 }
 
@@ -761,7 +763,8 @@ String iso_month_code(Object& temporal_object)
         return build_iso_month_code(static_cast<PlainDateTime&>(temporal_object).iso_month());
     if (is<PlainYearMonth>(temporal_object))
         return build_iso_month_code(static_cast<PlainYearMonth&>(temporal_object).iso_month());
-    // TODO: PlainMonthDay
+    if (is<PlainMonthDay>(temporal_object))
+        return build_iso_month_code(static_cast<PlainMonthDay&>(temporal_object).iso_month());
     VERIFY_NOT_REACHED();
 }
 
@@ -778,7 +781,8 @@ u8 iso_day(Object& temporal_object)
         return static_cast<PlainDateTime&>(temporal_object).iso_day();
     if (is<PlainYearMonth>(temporal_object))
         return static_cast<PlainYearMonth&>(temporal_object).iso_day();
-    // TODO: PlainMonthDay
+    if (is<PlainMonthDay>(temporal_object))
+        return static_cast<PlainMonthDay&>(temporal_object).iso_day();
     VERIFY_NOT_REACHED();
 }