whole_func_string: function Set(initialKeys) {
    this._size = 0;
    this._keys = {};
  
    if (initialKeys) {
      for (var i = 0, il = initialKeys.length; i < il; ++i) {
        this.add(initialKeys[i]);
      }
    }
  }
func_code_string: function Set(initialKeys) {
    this._size = 0;
    this._keys = {};
  
    if (initialKeys) {
      for (var i = 0, il = initialKeys.length; i < il; ++i) {
        this.add(initialKeys[i]);
      }
    }
  }
func_documentation_string: Constructs a new Set with an optional set of `initialKeys`.
  
  It is important to note that keys are coerced to String for most purposes
  with this object, similar to the behavior of JavaScript's Object. For
  example, the following will add only one key:
  
  var s = new Set();
  s.add(1);
  s.add("1");
  
  However, the type of the key is preserved internally so that `keys` returns
  the original key set uncoerced. For the above example, `keys` would return
  `[1]`.