yzt
2023-05-26 de4278af2fd46705a40bac58ec01122db6b7f3d7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import DeveloperError from "./DeveloperError.js";
 
/**
 * Wraps a function on the provided objects with another function called in the
 * object's context so that the new function is always called immediately
 * before the old one.
 *
 * @private
 */
function wrapFunction(obj, oldFunction, newFunction) {
  //>>includeStart('debug', pragmas.debug);
  if (typeof oldFunction !== "function") {
    throw new DeveloperError("oldFunction is required to be a function.");
  }
 
  if (typeof newFunction !== "function") {
    throw new DeveloperError("oldFunction is required to be a function.");
  }
  //>>includeEnd('debug');
 
  return function () {
    newFunction.apply(obj, arguments);
    oldFunction.apply(obj, arguments);
  };
}
export default wrapFunction;