diff options
Diffstat (limited to 'atom/packages/ex-mode/node_modules/event-kit/lib/disposable.js')
| -rw-r--r-- | atom/packages/ex-mode/node_modules/event-kit/lib/disposable.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/atom/packages/ex-mode/node_modules/event-kit/lib/disposable.js b/atom/packages/ex-mode/node_modules/event-kit/lib/disposable.js new file mode 100644 index 0000000..4ccb3da --- /dev/null +++ b/atom/packages/ex-mode/node_modules/event-kit/lib/disposable.js @@ -0,0 +1,34 @@ +(function() { + var Disposable, Grim; + + Grim = require('grim'); + + module.exports = Disposable = (function() { + Disposable.prototype.disposed = false; + + + /* + Section: Construction and Destruction + */ + + function Disposable(disposalAction) { + this.disposalAction = disposalAction; + } + + Disposable.prototype.dispose = function() { + if (!this.disposed) { + this.disposed = true; + return typeof this.disposalAction === "function" ? this.disposalAction() : void 0; + } + }; + + Disposable.prototype.off = function() { + Grim.deprecate("Use ::dispose to cancel subscriptions instead of ::off"); + return this.dispose(); + }; + + return Disposable; + + })(); + +}).call(this); |