mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 12:17:44 +00:00
LibJS: Add spec comments to ArrayBuffer.prototype.byteLength
This commit is contained in:
parent
7aa4c22f6b
commit
04c5bc5e55
1 changed files with 11 additions and 1 deletions
|
@ -127,12 +127,22 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayBufferPrototype::slice)
|
||||||
// 25.1.5.1 get ArrayBuffer.prototype.byteLength, https://tc39.es/ecma262/#sec-get-arraybuffer.prototype.bytelength
|
// 25.1.5.1 get ArrayBuffer.prototype.byteLength, https://tc39.es/ecma262/#sec-get-arraybuffer.prototype.bytelength
|
||||||
JS_DEFINE_NATIVE_FUNCTION(ArrayBufferPrototype::byte_length_getter)
|
JS_DEFINE_NATIVE_FUNCTION(ArrayBufferPrototype::byte_length_getter)
|
||||||
{
|
{
|
||||||
|
// 1. Let O be the this value.
|
||||||
|
// 2. Perform ? RequireInternalSlot(O, [[ArrayBufferData]]).
|
||||||
auto* array_buffer_object = TRY(typed_this_value(global_object));
|
auto* array_buffer_object = TRY(typed_this_value(global_object));
|
||||||
|
|
||||||
|
// 3. If IsSharedArrayBuffer(O) is true, throw a TypeError exception.
|
||||||
// FIXME: Check for shared buffer
|
// FIXME: Check for shared buffer
|
||||||
|
|
||||||
|
// 4. If IsDetachedBuffer(O) is true, return +0𝔽.
|
||||||
if (array_buffer_object->is_detached())
|
if (array_buffer_object->is_detached())
|
||||||
return Value(0);
|
return Value(0);
|
||||||
|
|
||||||
return Value(array_buffer_object->byte_length());
|
// 5. Let length be O.[[ArrayBufferByteLength]].
|
||||||
|
auto length = array_buffer_object->byte_length();
|
||||||
|
|
||||||
|
// 6. Return 𝔽(length).
|
||||||
|
return Value(length);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue