| Index: src/weak-collection.js
 | 
| diff --git a/src/weak-collection.js b/src/weak-collection.js
 | 
| deleted file mode 100644
 | 
| index 1c60a2f47a695b19f69b2ea4fc2c1a1486b9002e..0000000000000000000000000000000000000000
 | 
| --- a/src/weak-collection.js
 | 
| +++ /dev/null
 | 
| @@ -1,178 +0,0 @@
 | 
| -// Copyright 2012 the V8 project authors. All rights reserved.
 | 
| -// Use of this source code is governed by a BSD-style license that can be
 | 
| -// found in the LICENSE file.
 | 
| -
 | 
| -(function(global, utils) {
 | 
| -
 | 
| -"use strict";
 | 
| -
 | 
| -%CheckIsBootstrapping();
 | 
| -
 | 
| -var GlobalObject = global.Object;
 | 
| -var GlobalWeakMap = global.WeakMap;
 | 
| -var GlobalWeakSet = global.WeakSet;
 | 
| -var toStringTagSymbol = utils.ImportNow("to_string_tag_symbol");
 | 
| -
 | 
| -// -------------------------------------------------------------------
 | 
| -// Harmony WeakMap
 | 
| -
 | 
| -function WeakMapConstructor(iterable) {
 | 
| -  if (!%_IsConstructCall()) {
 | 
| -    throw MakeTypeError(kConstructorNotFunction, "WeakMap");
 | 
| -  }
 | 
| -
 | 
| -  %WeakCollectionInitialize(this);
 | 
| -
 | 
| -  if (!IS_NULL_OR_UNDEFINED(iterable)) {
 | 
| -    var adder = this.set;
 | 
| -    if (!IS_CALLABLE(adder)) {
 | 
| -      throw MakeTypeError(kPropertyNotFunction, 'set', this);
 | 
| -    }
 | 
| -    for (var nextItem of iterable) {
 | 
| -      if (!IS_SPEC_OBJECT(nextItem)) {
 | 
| -        throw MakeTypeError(kIteratorValueNotAnObject, nextItem);
 | 
| -      }
 | 
| -      %_Call(adder, this, nextItem[0], nextItem[1]);
 | 
| -    }
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -function WeakMapGet(key) {
 | 
| -  if (!IS_WEAKMAP(this)) {
 | 
| -    throw MakeTypeError(kIncompatibleMethodReceiver,
 | 
| -                        'WeakMap.prototype.get', this);
 | 
| -  }
 | 
| -  if (!IS_SPEC_OBJECT(key)) return UNDEFINED;
 | 
| -  var hash = $getExistingHash(key);
 | 
| -  if (IS_UNDEFINED(hash)) return UNDEFINED;
 | 
| -  return %WeakCollectionGet(this, key, hash);
 | 
| -}
 | 
| -
 | 
| -
 | 
| -function WeakMapSet(key, value) {
 | 
| -  if (!IS_WEAKMAP(this)) {
 | 
| -    throw MakeTypeError(kIncompatibleMethodReceiver,
 | 
| -                        'WeakMap.prototype.set', this);
 | 
| -  }
 | 
| -  if (!IS_SPEC_OBJECT(key)) throw MakeTypeError(kInvalidWeakMapKey);
 | 
| -  return %WeakCollectionSet(this, key, value, $getHash(key));
 | 
| -}
 | 
| -
 | 
| -
 | 
| -function WeakMapHas(key) {
 | 
| -  if (!IS_WEAKMAP(this)) {
 | 
| -    throw MakeTypeError(kIncompatibleMethodReceiver,
 | 
| -                        'WeakMap.prototype.has', this);
 | 
| -  }
 | 
| -  if (!IS_SPEC_OBJECT(key)) return false;
 | 
| -  var hash = $getExistingHash(key);
 | 
| -  if (IS_UNDEFINED(hash)) return false;
 | 
| -  return %WeakCollectionHas(this, key, hash);
 | 
| -}
 | 
| -
 | 
| -
 | 
| -function WeakMapDelete(key) {
 | 
| -  if (!IS_WEAKMAP(this)) {
 | 
| -    throw MakeTypeError(kIncompatibleMethodReceiver,
 | 
| -                        'WeakMap.prototype.delete', this);
 | 
| -  }
 | 
| -  if (!IS_SPEC_OBJECT(key)) return false;
 | 
| -  var hash = $getExistingHash(key);
 | 
| -  if (IS_UNDEFINED(hash)) return false;
 | 
| -  return %WeakCollectionDelete(this, key, hash);
 | 
| -}
 | 
| -
 | 
| -
 | 
| -// -------------------------------------------------------------------
 | 
| -
 | 
| -%SetCode(GlobalWeakMap, WeakMapConstructor);
 | 
| -%FunctionSetLength(GlobalWeakMap, 0);
 | 
| -%FunctionSetPrototype(GlobalWeakMap, new GlobalObject());
 | 
| -%AddNamedProperty(GlobalWeakMap.prototype, "constructor", GlobalWeakMap,
 | 
| -                  DONT_ENUM);
 | 
| -%AddNamedProperty(GlobalWeakMap.prototype, toStringTagSymbol, "WeakMap",
 | 
| -                  DONT_ENUM | READ_ONLY);
 | 
| -
 | 
| -// Set up the non-enumerable functions on the WeakMap prototype object.
 | 
| -utils.InstallFunctions(GlobalWeakMap.prototype, DONT_ENUM, [
 | 
| -  "get", WeakMapGet,
 | 
| -  "set", WeakMapSet,
 | 
| -  "has", WeakMapHas,
 | 
| -  "delete", WeakMapDelete
 | 
| -]);
 | 
| -
 | 
| -// -------------------------------------------------------------------
 | 
| -// Harmony WeakSet
 | 
| -
 | 
| -function WeakSetConstructor(iterable) {
 | 
| -  if (!%_IsConstructCall()) {
 | 
| -    throw MakeTypeError(kConstructorNotFunction, "WeakSet");
 | 
| -  }
 | 
| -
 | 
| -  %WeakCollectionInitialize(this);
 | 
| -
 | 
| -  if (!IS_NULL_OR_UNDEFINED(iterable)) {
 | 
| -    var adder = this.add;
 | 
| -    if (!IS_CALLABLE(adder)) {
 | 
| -      throw MakeTypeError(kPropertyNotFunction, 'add', this);
 | 
| -    }
 | 
| -    for (var value of iterable) {
 | 
| -      %_Call(adder, this, value);
 | 
| -    }
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -function WeakSetAdd(value) {
 | 
| -  if (!IS_WEAKSET(this)) {
 | 
| -    throw MakeTypeError(kIncompatibleMethodReceiver,
 | 
| -                        'WeakSet.prototype.add', this);
 | 
| -  }
 | 
| -  if (!IS_SPEC_OBJECT(value)) throw MakeTypeError(kInvalidWeakSetValue);
 | 
| -  return %WeakCollectionSet(this, value, true, $getHash(value));
 | 
| -}
 | 
| -
 | 
| -
 | 
| -function WeakSetHas(value) {
 | 
| -  if (!IS_WEAKSET(this)) {
 | 
| -    throw MakeTypeError(kIncompatibleMethodReceiver,
 | 
| -                        'WeakSet.prototype.has', this);
 | 
| -  }
 | 
| -  if (!IS_SPEC_OBJECT(value)) return false;
 | 
| -  var hash = $getExistingHash(value);
 | 
| -  if (IS_UNDEFINED(hash)) return false;
 | 
| -  return %WeakCollectionHas(this, value, hash);
 | 
| -}
 | 
| -
 | 
| -
 | 
| -function WeakSetDelete(value) {
 | 
| -  if (!IS_WEAKSET(this)) {
 | 
| -    throw MakeTypeError(kIncompatibleMethodReceiver,
 | 
| -                        'WeakSet.prototype.delete', this);
 | 
| -  }
 | 
| -  if (!IS_SPEC_OBJECT(value)) return false;
 | 
| -  var hash = $getExistingHash(value);
 | 
| -  if (IS_UNDEFINED(hash)) return false;
 | 
| -  return %WeakCollectionDelete(this, value, hash);
 | 
| -}
 | 
| -
 | 
| -
 | 
| -// -------------------------------------------------------------------
 | 
| -
 | 
| -%SetCode(GlobalWeakSet, WeakSetConstructor);
 | 
| -%FunctionSetLength(GlobalWeakSet, 0);
 | 
| -%FunctionSetPrototype(GlobalWeakSet, new GlobalObject());
 | 
| -%AddNamedProperty(GlobalWeakSet.prototype, "constructor", GlobalWeakSet,
 | 
| -                 DONT_ENUM);
 | 
| -%AddNamedProperty(GlobalWeakSet.prototype, toStringTagSymbol, "WeakSet",
 | 
| -                  DONT_ENUM | READ_ONLY);
 | 
| -
 | 
| -// Set up the non-enumerable functions on the WeakSet prototype object.
 | 
| -utils.InstallFunctions(GlobalWeakSet.prototype, DONT_ENUM, [
 | 
| -  "add", WeakSetAdd,
 | 
| -  "has", WeakSetHas,
 | 
| -  "delete", WeakSetDelete
 | 
| -]);
 | 
| -
 | 
| -})
 | 
| 
 |