whole_func_string: function _objectCopy(sourceRef, copyRef, rc) {
      let origIndex = rc.xStack.indexOf(sourceRef);
      if (origIndex === -1) {
          rc.push(sourceRef, copyRef);
          for (let [key, val] of _entries(sourceRef))
              copyRef[key] = _clone(val, rc);
          let symbols = Object.getOwnPropertySymbols(sourceRef);
          for (let symbol of symbols)
              copyRef[symbol] = _clone(sourceRef[symbol], rc);
          rc.pop();
          return copyRef;
      }
      else
          return rc.yStack[origIndex];
  }
func_code_string: function _objectCopy(sourceRef, copyRef, rc) {
      let origIndex = rc.xStack.indexOf(sourceRef);
      if (origIndex === -1) {
          rc.push(sourceRef, copyRef);
          for (let [key, val] of _entries(sourceRef))
              copyRef[key] = _clone(val, rc);
          let symbols = Object.getOwnPropertySymbols(sourceRef);
          for (let symbol of symbols)
              copyRef[symbol] = _clone(sourceRef[symbol], rc);
          rc.pop();
          return copyRef;
      }
      else
          return rc.yStack[origIndex];
  }
func_documentation_string: Copies data from one object to another.
  
  @param sourceRef A reference to the object source.
  @param copyRef A reference to the object copy.
  @param rc The current recurse and reference counter.
  @returns {Object} The reference to the object copy.