MCPcopy Create free account
hub / github.com/microsoft/SandDance / installSetterSpy

Function installSetterSpy

docs/app/js/sanddance-app.js:60185–60199  ·  view source on GitHub ↗
(gl, functionName, setter)

Source from the content-addressed store, hash-verified

60183 });
60184}
60185function installSetterSpy(gl, functionName, setter) {
60186 var originalSetterFunc = gl[functionName].bind(gl);
60187 gl[functionName] = function set() {
60188 for(var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++)params[_key] = arguments[_key];
60189 var _setter = setter.apply(void 0, [
60190 gl.state._updateCache
60191 ].concat(params)), valueChanged = _setter.valueChanged, oldValue = _setter.oldValue;
60192 if (valueChanged) originalSetterFunc.apply(void 0, params);
60193 return oldValue;
60194 };
60195 Object.defineProperty(gl[functionName], "name", {
60196 value: "".concat(functionName, "-to-cache"),
60197 configurable: false
60198 });
60199}
60200function installProgramSpy(gl) {
60201 var originalUseProgram = gl.useProgram.bind(gl);
60202 gl.useProgram = function useProgramLuma(handle) {

Callers 1

trackContextStateFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected