docs: function (map, array) {
                  if (map == null)
                      return;
                  for (var i in map) {
                      var item = map[i];
                      var key = item.key;
                      if (map == this._objectKeys) {
                          key[this._metaDataName] = null;
                          delete item.key[this._metaDataName];
                      }
                      while (item) {
                          array.push(item.value);
                          item.value = null;
                          item.key = null;
                          var next = item.next;
                          item.next = null;
                          item = next;
                      }
                      map[i] = null;
                      delete map[i];
                  }
              }