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