| browser.js | 
           | 
          0 | 
        
        
          | define-own-property.js | 
          ---
esid: sec-module-namespace-exotic-objects-defineownproperty-p-desc
description: >
    The [[DefineOwnProperty]] internal method returns `true` if no change is
    requested, and `false` otherwise.
flags: [module]
features: [Symbol.iterator, Reflect, Symbol, Symbol.toStringTag]
--- | 
          3858 | 
        
        
          | delete-exported-init.js | 
          ---
esid: sec-module-namespace-exotic-objects-delete-p
description: >
    [[Delete]] behavior for a key that describes an initialized exported
    binding
info: |
    [...]
    2. Let exports be the value of O's [[Exports]] internal slot.
    3. If P is an element of exports, return false.
flags: [module]
features: [Reflect]
--- | 
          1462 | 
        
        
          | delete-exported-uninit.js | 
          ---
esid: sec-module-namespace-exotic-objects-delete-p
description: >
    [[Delete]] behavior for a key that describes an uninitialized exported
    binding
info: |
    [...]
    2. Let exports be the value of O's [[Exports]] internal slot.
    3. If P is an element of exports, return false.
flags: [module]
features: [Reflect, let]
--- | 
          1853 | 
        
        
          | delete-non-exported.js | 
          ---
esid: sec-module-namespace-exotic-objects-delete-p
description: >
    [[Delete]] behavior for a key that does not describe an exported binding
info: |
    [...]
    2. If Type(P) is Symbol, then
        a. Return ? OrdinaryDelete(O, P).
    3. Let exports be O.[[Exports]].
    4. If P is an element of exports, return false.
    5. Return true.
flags: [module]
features: [Reflect, Symbol, Symbol.toStringTag]
--- | 
          1281 | 
        
        
          | enumerate-binding-uninit.js | 
          ---
esid: sec-enumerate-object-properties
description: >
  Test for-in enumeration with uninitialized binding.
info: |
  13.7.5.15 EnumerateObjectProperties (O)
    ...
    EnumerateObjectProperties must obtain the own property keys of the
    target object by calling its [[OwnPropertyKeys]] internal method.
    Property attributes of the target object must be obtained by
    calling its [[GetOwnProperty]] internal method.
  9.4.6.4 [[GetOwnProperty]] (P)
    ...
    4. Let value be ? O.[[Get]](P, O).
    ...
  9.4.6.7 [[Get]] (P, Receiver)
    ...
    12. Let targetEnvRec be targetEnv's EnvironmentRecord.
    13. Return ? targetEnvRec.GetBindingValue(binding.[[BindingName]], true).
  8.1.1.1.6 GetBindingValue ( N, S )
    ...
    If the binding for N in envRec is an uninitialized binding, throw a ReferenceError exception.
    ...
flags: [module]
--- | 
          1226 | 
        
        
          | get-nested-namespace-dflt-skip-named-end_FIXTURE.js | 
           | 
          229 | 
        
        
          | get-nested-namespace-dflt-skip-named_FIXTURE.js | 
           | 
          250 | 
        
        
          | get-nested-namespace-dflt-skip-prod-end_FIXTURE.js | 
           | 
          223 | 
        
        
          | get-nested-namespace-dflt-skip-prod_FIXTURE.js | 
           | 
          254 | 
        
        
          | get-nested-namespace-dflt-skip.js | 
          ---
description: >
  Default exports are included in an imported module namespace object when a namespace object is created.
esid: sec-module-namespace-exotic-objects-get-p-receiver
info: |
  [...]
  6. Let binding be ! m.ResolveExport(P, « »).
  7. Assert: binding is a ResolvedBinding Record.
  8. Let targetModule be binding.[[Module]].
  9. Assert: targetModule is not undefined.
  10. If binding.[[BindingName]] is "*namespace*", then
  11. Return ? GetModuleNamespace(targetModule).
  Runtime Semantics: GetModuleNamespace
  [...]
    3. If namespace is undefined, then
       a. Let exportedNames be ? module.GetExportedNames(« »).
       b. Let unambiguousNames be a new empty List.
       c. For each name that is an element of exportedNames,
          i. Let resolution be ? module.ResolveExport(name, « », « »).
          ii. If resolution is null, throw a SyntaxError exception.
          iii. If resolution is not "ambiguous", append name to
               unambiguousNames.
       d. Let namespace be ModuleNamespaceCreate(module, unambiguousNames).
  [...]
flags: [module]
features: [export-star-as-namespace-from-module]
--- | 
          1803 | 
        
        
          | get-nested-namespace-props-nrml-1_FIXTURE.js | 
           | 
          243 | 
        
        
          | get-nested-namespace-props-nrml-2_FIXTURE.js | 
           | 
          894 | 
        
        
          | get-nested-namespace-props-nrml-3_FIXTURE.js | 
           | 
          227 | 
        
        
          | get-nested-namespace-props-nrml.js | 
          ---
description: >
    Module namespace object reports properties for all ExportEntries of all
    dependencies.
esid: sec-moduledeclarationinstantiation
info: |
  [...]
  12. For each ImportEntry Record in in module.[[ImportEntries]], do
      a. Let importedModule be ? HostResolveImportedModule(module,
         in.[[ModuleRequest]]).
      b. If in.[[ImportName]] is "*", then
         i. Let namespace be ? GetModuleNamespace(importedModule).
  [...]
  Runtime Semantics: GetModuleNamespace
    3. If namespace is undefined, then
       a. Let exportedNames be ? module.GetExportedNames(« »).
       b. Let unambiguousNames be a new empty List.
       c. For each name that is an element of exportedNames,
          i. Let resolution be ? module.ResolveExport(name, « », « »).
          ii. If resolution is null, throw a SyntaxError exception.
          iii. If resolution is not "ambiguous", append name to
               unambiguousNames.
       d. Let namespace be ModuleNamespaceCreate(module, unambiguousNames).
flags: [module]
features: [export-star-as-namespace-from-module]
--- | 
          2606 | 
        
        
          | get-own-property-str-found-init.js | 
          ---
esid: sec-module-namespace-exotic-objects-getownproperty-p
description: >
    Behavior of the [[GetOwnProperty]] internal method with a string argument
    describing an initialized binding
info: |
    1. If Type(P) is Symbol, return OrdinaryGetOwnProperty(O, P).
    2. Let exports be the value of O's [[Exports]] internal slot.
    3. If P is not an element of exports, return undefined.
    4. Let value be ? O.[[Get]](P, O).
    5. Return PropertyDescriptor{[[Value]]: value, [[Writable]]: true,
       [[Enumerable]]: true, [[Configurable]]: false }.
flags: [module]
--- | 
          2451 | 
        
        
          | get-own-property-str-found-uninit.js | 
          ---
esid: sec-module-namespace-exotic-objects-getownproperty-p
description: >
    Behavior of the [[GetOwnProperty]] internal method with a string argument
    describing an uninitialized binding
info: |
    1. If Type(P) is Symbol, return OrdinaryGetOwnProperty(O, P).
    2. Let exports be the value of O's [[Exports]] internal slot.
    3. If P is not an element of exports, return undefined.
    4. Let value be ? O.[[Get]](P, O).
flags: [module]
features: [let]
--- | 
          1944 | 
        
        
          | get-own-property-str-not-found.js | 
          ---
esid: sec-module-namespace-exotic-objects-getownproperty-p
description: >
    Behavior of the [[GetOwnProperty]] internal method with a string argument
    describing a binding that cannot be found
info: |
    1. If Type(P) is Symbol, return OrdinaryGetOwnProperty(O, P).
    2. Let exports be the value of O's [[Exports]] internal slot.
    3. If P is not an element of exports, return undefined.
flags: [module]
--- | 
          2186 | 
        
        
          | get-own-property-sym.js | 
          ---
esid: sec-module-namespace-exotic-objects-getownproperty-p
description: >
    Behavior of the [[GetOwnProperty]] internal method with a Symbol argument
flags: [module]
features: [Symbol, Symbol.toStringTag]
--- | 
          1094 | 
        
        
          | get-prototype-of.js | 
          ---
esid: sec-module-namespace-exotic-objects-getprototypeof
description: The [[GetPrototypeOf]] internal method returns `null`
flags: [module]
--- | 
          477 | 
        
        
          | get-str-found-init.js | 
          ---
esid: sec-module-namespace-exotic-objects-get-p-receiver
description: >
    Behavior of the [[Get]] internal method with a string argument for exported
    initialized bindings.
info: |
    [...]
    12. Let targetEnvRec be targetEnv's EnvironmentRecord.
    13. Return ? targetEnvRec.GetBindingValue(binding.[[BindingName]], true).
flags: [module]
--- | 
          880 | 
        
        
          | get-str-found-uninit.js | 
          ---
esid: sec-module-namespace-exotic-objects-get-p-receiver
description: >
    Behavior of the [[Get]] internal method with a string argument for exported
    uninitialized bindings.
info: |
    [...]
    12. Let targetEnvRec be targetEnv's EnvironmentRecord.
    13. Return ? targetEnvRec.GetBindingValue(binding.[[BindingName]], true).
flags: [module]
features: [let]
--- | 
          1011 | 
        
        
          | get-str-initialize.js | 
          ---
esid: sec-module-namespace-exotic-objects-get-p-receiver
description: >
    References observe the initialization of lexical bindings
info: |
    [...]
    12. Let targetEnvRec be targetEnv's EnvironmentRecord.
    13. Return ? targetEnvRec.GetBindingValue(binding.[[BindingName]], true).
flags: [module]
features: [let]
--- | 
          911 | 
        
        
          | get-str-not-found.js | 
          ---
esid: sec-module-namespace-exotic-objects-get-p-receiver
description: >
    Behavior of the [[Get]] internal method with a string argument for
    non-exported bindings
info: |
    [...]
    3. Let exports be the value of O's [[Exports]] internal slot.
    4. If P is not an element of exports, return undefined.
flags: [module]
--- | 
          916 | 
        
        
          | get-str-update.js | 
          ---
esid: sec-module-namespace-exotic-objects-get-p-receiver
description: References observe the mutation of initialized bindings
info: |
    [...]
    12. Let targetEnvRec be targetEnv's EnvironmentRecord.
    13. Return ? targetEnvRec.GetBindingValue(binding.[[BindingName]], true).
flags: [module]
--- | 
          799 | 
        
        
          | get-sym-found.js | 
          ---
esid: sec-module-namespace-exotic-objects-get-p-receiver
description: >
    Behavior of the [[Get]] internal method with a symbol argument that can be
    found
info: |
    [...]
    2. If Type(P) is Symbol, then
       a. Return ? OrdinaryGet(O, P, Receiver).
flags: [module]
features: [Symbol.toStringTag]
--- | 
          603 | 
        
        
          | get-sym-not-found.js | 
          ---
esid: sec-module-namespace-exotic-objects-get-p-receiver
description: >
    Behavior of the [[Get]] internal method with a symbol argument that cannot
    be found
info: |
    [...]
    2. If Type(P) is Symbol, then
       a. Return ? OrdinaryGet(O, P, Receiver).
flags: [module]
features: [Symbol]
--- | 
          610 | 
        
        
          | has-property-str-found-init.js | 
          ---
esid: sec-module-namespace-exotic-objects-hasproperty-p
description: >
    Behavior of the [[HasProperty]] internal method with a string argument for
    exported initialized bindings.
info: |
    [...]
    2. Let exports be the value of O's [[Exports]] internal slot.
    3. If P is an element of exports, return true.
flags: [module]
features: [Reflect]
--- | 
          1162 | 
        
        
          | has-property-str-found-uninit.js | 
          ---
esid: sec-module-namespace-exotic-objects-hasproperty-p
description: >
    Behavior of the [[HasProperty]] internal method with a string argument for
    exported uninitialized bindings.
info: |
    [...]
    2. Let exports be the value of O's [[Exports]] internal slot.
    3. If P is an element of exports, return true.
    4. Return false.
flags: [module]
features: [Reflect, let]
--- | 
          1205 | 
        
        
          | has-property-str-not-found.js | 
          ---
esid: sec-module-namespace-exotic-objects-hasproperty-p
description: >
    Behavior of the [[HasProperty]] internal method with a string argument for
    non-exported bindings
info: |
    [...]
    2. Let exports be the value of O's [[Exports]] internal slot.
    3. If P is an element of exports, return true.
    4. Return false.
flags: [module]
features: [Reflect]
--- | 
          1375 | 
        
        
          | has-property-sym-found.js | 
          ---
esid: sec-module-namespace-exotic-objects-hasproperty-p
description: >
    Behavior of the [[HasProperty]] internal method with a symbol argument that
    can be found
info: |
    1. If Type(P) is Symbol, return OrdinaryHasProperty(O, P).
flags: [module]
features: [Symbol.toStringTag, Reflect]
--- | 
          680 | 
        
        
          | has-property-sym-not-found.js | 
          ---
esid: sec-module-namespace-exotic-objects-hasproperty-p
description: >
    Behavior of the [[HasProperty]] internal method with a symbol argument that
    cannot be found
info: |
    1. If Type(P) is Symbol, return OrdinaryHasProperty(O, P).
flags: [module]
features: [Symbol, Reflect]
--- | 
          668 | 
        
        
          | is-extensible.js | 
          ---
esid: sec-module-namespace-exotic-objects-isextensible
description: The [[IsExtensible]] internal method returns `false`
flags: [module]
--- | 
          423 | 
        
        
          | object-hasOwnProperty-binding-uninit.js | 
          ---
esid: sec-object.prototype.hasownproperty
description: >
  Test Object.prototype.hasOwnProperty() with uninitialized binding.
info: |
  19.1.3.2 Object.prototype.hasOwnProperty ( V )
    ...
    3. Return ? HasOwnProperty(O, P).
  7.3.11 HasOwnProperty ( O, P )
    ...
    3. Let desc be ? O.[[GetOwnProperty]](P).
    ...
  9.4.6.4 [[GetOwnProperty]] (P)
    ...
    4. Let value be ? O.[[Get]](P, O).
    ...
  9.4.6.7 [[Get]] (P, Receiver)
    ...
    12. Let targetEnvRec be targetEnv's EnvironmentRecord.
    13. Return ? targetEnvRec.GetBindingValue(binding.[[BindingName]], true).
  8.1.1.1.6 GetBindingValue ( N, S )
    ...
    If the binding for N in envRec is an uninitialized binding, throw a ReferenceError exception.
    ...
flags: [module]
--- | 
          1137 | 
        
        
          | object-keys-binding-uninit.js | 
          ---
esid: sec-object.keys
description: >
  Test Object.keys() with uninitialized binding.
info: |
  19.1.2.16 Object.keys ( O )
    ...
    2. Let nameList be ? EnumerableOwnProperties(obj, "key").
    ...
  7.3.21 EnumerableOwnProperties ( O, kind )
    ...
    4. For each element key of ownKeys in List order, do
      a. If Type(key) is String, then
        i. Let desc be ? O.[[GetOwnProperty]](key).
        ...
  9.4.6.4 [[GetOwnProperty]] (P)
    ...
    4. Let value be ? O.[[Get]](P, O).
    ...
  9.4.6.7 [[Get]] (P, Receiver)
    ...
    12. Let targetEnvRec be targetEnv's EnvironmentRecord.
    13. Return ? targetEnvRec.GetBindingValue(binding.[[BindingName]], true).
  8.1.1.1.6 GetBindingValue ( N, S )
    ...
    If the binding for N in envRec is an uninitialized binding, throw a ReferenceError exception.
    ...
flags: [module]
--- | 
          1181 | 
        
        
          | object-propertyIsEnumerable-binding-uninit.js | 
          ---
esid: sec-object.prototype.propertyisenumerable
description: >
  Test Object.prototype.propertyIsEnumerable() with uninitialized binding.
info: |
  19.1.3.4 Object.prototype.propertyIsEnumerable ( V )
    ...
    3. Let desc be ? O.[[GetOwnProperty]](P).
    ...
  9.4.6.4 [[GetOwnProperty]] (P)
    ...
    4. Let value be ? O.[[Get]](P, O).
    ...
  9.4.6.7 [[Get]] (P, Receiver)
    ...
    12. Let targetEnvRec be targetEnv's EnvironmentRecord.
    13. Return ? targetEnvRec.GetBindingValue(binding.[[BindingName]], true).
  8.1.1.1.6 GetBindingValue ( N, S )
    ...
    If the binding for N in envRec is an uninitialized binding, throw a ReferenceError exception.
    ...
flags: [module]
--- | 
          1087 | 
        
        
          | own-property-keys-binding-types.js | 
          ---
esid: sec-module-namespace-exotic-objects-ownpropertykeys
description: >
    The [[OwnPropertyKeys]] internal method includes entries for all binding
    types
info: |
    1. Let exports be a copy of the value of O's [[Exports]] internal slot.
    2. Let symbolKeys be ! OrdinaryOwnPropertyKeys(O).
    3. Append all the entries of symbolKeys to the end of exports.
    4. Return exports.
    Note: identifiers have been selected such that runtimes which do not sort
    the [[Exports]] list may still pass. A separate test is dedicated to sort
    order.
flags: [module]
features: [Reflect, Symbol.toStringTag, let]
--- | 
          2809 | 
        
        
          | own-property-keys-binding-types_FIXTURE.js | 
           | 
          314 | 
        
        
          | own-property-keys-sort.js | 
          ---
esid: sec-module-namespace-exotic-objects-ownpropertykeys
description: >
    The [[OwnPropertyKeys]] internal method reflects the sorted order
info: |
    1. Let exports be a copy of the value of O's [[Exports]] internal slot.
    2. Let symbolKeys be ! OrdinaryOwnPropertyKeys(O).
    3. Append all the entries of symbolKeys to the end of exports.
    4. Return exports.
flags: [module]
features: [Reflect, Symbol.toStringTag]
--- | 
          3403 | 
        
        
          | prevent-extensions.js | 
          ---
esid: sec-module-namespace-exotic-objects-preventextensions
description: The [[PreventExtensions]] internal method returns `true`
flags: [module]
features: [Reflect]
--- | 
          542 | 
        
        
          | set-prototype-of-null.js | 
          ---
esid: sec-module-namespace-exotic-objects-setprototypeof-v
description: >
  The [[SetPrototypeOf]] internal method returns `true` if
  passed `null`
flags: [module]
--- | 
          524 | 
        
        
          | set-prototype-of.js | 
          ---
esid: sec-module-namespace-exotic-objects-setprototypeof
description: The [[SetPrototypeOf]] internal method returns `false`
flags: [module]
--- | 
          541 | 
        
        
          | set.js | 
          ---
esid: sec-module-namespace-exotic-objects-set-p-v-receiver
description: The [[Set]] internal method consistently returns `false`
info: |
    1. Return false.
flags: [module]
features: [Reflect, Symbol, Symbol.toStringTag]
--- | 
          1846 | 
        
        
          | shell.js | 
           | 
          0 |