Explorar o código

LibJS: Implement Temporal.TimeZone.prototype[@@toStringTag]

Linus Groh %!s(int64=4) %!d(string=hai) anos
pai
achega
2e968700aa

+ 5 - 0
Userland/Libraries/LibJS/Runtime/Temporal/TimeZonePrototype.cpp

@@ -18,6 +18,11 @@ TimeZonePrototype::TimeZonePrototype(GlobalObject& global_object)
 void TimeZonePrototype::initialize(GlobalObject& global_object)
 {
     Object::initialize(global_object);
+
+    auto& vm = this->vm();
+
+    // 11.4.2 Temporal.TimeZone.prototype[ @@toStringTag ], https://tc39.es/proposal-temporal/#sec-temporal.timezone.prototype-@@tostringtag
+    define_direct_property(*vm.well_known_symbol_to_string_tag(), js_string(vm.heap(), "Temporal.TimeZone"), Attribute::Configurable);
 }
 
 }

+ 3 - 0
Userland/Libraries/LibJS/Tests/builtins/Temporal/TimeZone/TimeZone.prototype.@@toStringTag.js

@@ -0,0 +1,3 @@
+test("basic functionality", () => {
+    expect(Temporal.TimeZone.prototype[Symbol.toStringTag]).toBe("Temporal.TimeZone");
+});