Archived
1
0
This repository has been archived on 2023-05-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
home-page/node_modules/wrappy
Sean Edmunds 3e953ad8d2 v1.1 update - stable
this version will run with npm start, but when attempting to run the built version behind nginx, it appears to have issues
2021-12-15 01:48:50 +00:00
..
2021-12-13 17:00:40 -06:00
2021-12-15 01:48:50 +00:00
2021-12-13 17:00:40 -06:00
2021-12-13 17:00:40 -06:00

wrappy

Callback wrapping utility

USAGE

var wrappy = require("wrappy")

// var wrapper = wrappy(wrapperFunction)

// make sure a cb is called only once
// See also: http://npm.im/once for this specific use case
var once = wrappy(function (cb) {
  var called = false
  return function () {
    if (called) return
    called = true
    return cb.apply(this, arguments)
  }
})

function printBoo () {
  console.log('boo')
}
// has some rando property
printBoo.iAmBooPrinter = true

var onlyPrintOnce = once(printBoo)

onlyPrintOnce() // prints 'boo'
onlyPrintOnce() // does nothing

// random property is retained!
assert.equal(onlyPrintOnce.iAmBooPrinter, true)