202226701046 6c9d2a2519 fix 10 ماه پیش
..
LICENSE 6c9d2a2519 fix 10 ماه پیش
README.md 6c9d2a2519 fix 10 ماه پیش
dezalgo.js 6c9d2a2519 fix 10 ماه پیش
package.json 6c9d2a2519 fix 10 ماه پیش

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)
  })
}