| 
						 | 
						- # wrappy
 - 
 - Callback wrapping utility
 - 
 - ## USAGE
 - 
 - ```javascript
 - 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)
 - ```
 
 
  |