diff --git a/spec/abstract-operations.html b/spec/abstract-operations.html index f1970a6..850f57d 100644 --- a/spec/abstract-operations.html +++ b/spec/abstract-operations.html @@ -769,8 +769,8 @@
The Box type is the set of all the possible singleton primitive wrappers around any ECMAScript value. Each box value holds an associated [[Value]] containing an ECMAScript value. The [[Value]] internal slot is never modified.
- +The Box type is the set of all the possible singleton primitive wrappers around any ECMAScript value. Each box value holds an associated [[Value]] containing an ECMAScript value and a [[Realm]] containing the Realm of the Box function which created the Box value. The [[Value]] and [[Realm]] internal slots are never modified.
When the `Box` function is called, the following steps are taken:
The `unbox` function extracts the wrapped ECMAScript language value from _box_, throwing if it has been wrapped by a different Realm's Box constructor. When called, the following steps are taken:
+The initial value of *Box.prototype* is %Box.prototype%
@@ -715,14 +727,6 @@The initial value of *Box.prototype[@@toStringTag]* is the String value *"Box"*.
This property has the attributes { [[Writable]]: *false*, [[Enumerable]]: *false*, [[Configurable]]: *true* }.
When the `unbox` function is called, the following steps are taken:
-A Box object is an exotic object that encapsuates a Box value and exposes virtual integer-indexed data properties corresponding to the individual entries set on the underlying Box value. All keys properties are non-writable and non-configurable.
+A Box object is an exotic object that encapsulates a Box value. It doesn't have any own key.
An object is a Box exotic object (or simply, a Box object) if its following internal methods use the following implementations and it is an