seal-sharedarraybuffer.js (1377B)
1 // |reftest| skip-if(!this.hasOwnProperty('SharedArrayBuffer')) -- SharedArrayBuffer is not enabled unconditionally 2 // Copyright (C) 2020 Rick Waldron. All rights reserved. 3 // This code is governed by the BSD license found in the LICENSE file. 4 5 /*--- 6 esid: sec-object.seal 7 description: > 8 Object.seal SharedArrayBuffer 9 info: | 10 If Type(O) is not Object, return O. 11 Let status be ? SetIntegrityLevel(O, sealed). 12 13 SetIntegrityLevel ( O, level ) 14 15 Assert: Type(O) is Object. 16 Assert: level is either sealed or frozen. 17 Let status be ? O.[[PreventExtensions]](). 18 If status is false, return false. 19 Let keys be ? O.[[OwnPropertyKeys]](). 20 If level is sealed, then 21 For each element k of keys, do 22 Perform ? DefinePropertyOrThrow(O, k, PropertyDescriptor { [[Configurable]]: false }). 23 Else, 24 Assert: level is frozen. 25 For each element k of keys, do 26 Let currentDesc be ? O.[[GetOwnProperty]](k). 27 If currentDesc is not undefined, then 28 If IsAccessorDescriptor(currentDesc) is true, then 29 Let desc be the PropertyDescriptor { [[Configurable]]: false }. 30 Else, 31 Let desc be the PropertyDescriptor { [[Configurable]]: false, [[Writable]]: false }. 32 Perform ? DefinePropertyOrThrow(O, k, desc). 33 Return true. 34 features: [SharedArrayBuffer] 35 ---*/ 36 37 Object.seal(new SharedArrayBuffer(4)); 38 39 reportCompare(0, 0);