aboutsummaryrefslogtreecommitdiff
path: root/atom/packages/ex-mode/node_modules/event-kit/lib/disposable.js
diff options
context:
space:
mode:
authorBen Beltran <ben@nsovocal.com>2015-07-10 11:12:25 -0500
committerBen Beltran <ben@nsovocal.com>2015-07-10 11:12:25 -0500
commit24c7594d62d8d7fbbcdb64b11ce4adc5d8e6991a (patch)
treeded312222bb108923da1820ba40b04d710d20e5b /atom/packages/ex-mode/node_modules/event-kit/lib/disposable.js
parenteb786e82d170e2abc351a432ade616d6ecdeeb6b (diff)
Adds atom
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.js34
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);