You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
TheDude
7c4183405f
|
1 year ago | |
---|---|---|
.. | ||
LICENSE | 1 year ago | |
README.md | 1 year ago | |
dezalgo.js | 1 year ago | |
package.json | 1 year ago |
README.md
dezalgo
Contain async insanity so that the dark pony lord doesn't eat souls
See this blog post.
USAGE
Pass a callback to dezalgo
and it will ensure that it is always
called in a future tick, and never in this tick.
var dz = require('dezalgo')
var cache = {}
function maybeSync(arg, cb) {
cb = dz(cb)
// this will actually defer to nextTick
if (cache[arg]) cb(null, cache[arg])
fs.readFile(arg, function (er, data) {
// since this is *already* defered, it will call immediately
if (er) cb(er)
cb(null, cache[arg] = data)
})
}