|
@@ -28,6 +28,7 @@ void DurationPrototype::initialize(GlobalObject& global_object)
|
|
|
define_native_accessor(vm.names.years, years_getter, {}, Attribute::Configurable);
|
|
|
define_native_accessor(vm.names.months, months_getter, {}, Attribute::Configurable);
|
|
|
define_native_accessor(vm.names.weeks, weeks_getter, {}, Attribute::Configurable);
|
|
|
+ define_native_accessor(vm.names.days, days_getter, {}, Attribute::Configurable);
|
|
|
}
|
|
|
|
|
|
static Duration* typed_this(GlobalObject& global_object)
|
|
@@ -82,4 +83,17 @@ JS_DEFINE_NATIVE_FUNCTION(DurationPrototype::weeks_getter)
|
|
|
return Value(duration->weeks());
|
|
|
}
|
|
|
|
|
|
+// 7.3.6 get Temporal.Duration.prototype.days, https://tc39.es/proposal-temporal/#sec-get-temporal.duration.prototype.days
|
|
|
+JS_DEFINE_NATIVE_FUNCTION(DurationPrototype::days_getter)
|
|
|
+{
|
|
|
+ // 1. Let duration be the this value.
|
|
|
+ // 2. Perform ? RequireInternalSlot(duration, [[InitializedTemporalDuration]]).
|
|
|
+ auto* duration = typed_this(global_object);
|
|
|
+ if (vm.exception())
|
|
|
+ return {};
|
|
|
+
|
|
|
+ // 3. Return duration.[[Days]].
|
|
|
+ return Value(duration->days());
|
|
|
+}
|
|
|
+
|
|
|
}
|