##// END OF EJS Templates
prevent safe::debounce async tasks to run in parallel
prevent safe::debounce async tasks to run in parallel

File last commit:

r51:43a2828f8abe v1.2.0-rc di-typescript
r167:d6fe22864d82 v1.4.3 default
Show More
override.js
72 lines | 1.7 KiB | application/javascript | JavascriptLexer
"use strict";
define([], function () {
var slice = Array.prototype.slice;
var override = function (method) {
var proxy;
/** @this target object */
proxy = function () {
var me = this;
var inherited = (this.getInherited && this.getInherited(proxy.nom, {
callee: proxy
})) || function () {};
return method.apply(me, [function () {
return inherited.apply(me, arguments);
}].concat(slice.apply(arguments)));
};
proxy.method = method;
proxy.overrides = true;
return proxy;
};
override.before = function (method) {
var proxy;
/** @this target object */
proxy = function () {
var me = this;
var inherited = (this.getInherited && this.getInherited(proxy.nom, {
callee: proxy
})) || function () {};
method.apply(me, arguments);
return inherited.apply(me, arguments);
};
proxy.method = method;
proxy.overrides = true;
return proxy;
};
override.after = function (method) {
var proxy;
/** @this target object */
proxy = function () {
var me = this;
var inherited = (this.getInherited && this.getInherited(proxy.nom, {
callee: proxy
})) || function () {};
inherited.apply(me, arguments);
return method.apply(me, arguments);
};
proxy.method = method;
proxy.overrides = true;
return proxy;
};
override.hide = function (method) {
method.overrides = false;
return method;
};
return override;
});