diff options
Diffstat (limited to 'lib/internal/onlyOnce.js')
-rw-r--r-- | lib/internal/onlyOnce.js | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/internal/onlyOnce.js b/lib/internal/onlyOnce.js new file mode 100644 index 0000000..f4241c8 --- /dev/null +++ b/lib/internal/onlyOnce.js @@ -0,0 +1,9 @@ +'use strict'; + +export default function onlyOnce(fn) { + return function() { + if (fn === null) throw new Error("Callback was already called."); + fn.apply(this, arguments); + fn = null; + }; +} |