diff options
Diffstat (limited to 'node_modules/call-me-maybe/README.md')
-rw-r--r-- | node_modules/call-me-maybe/README.md | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/node_modules/call-me-maybe/README.md b/node_modules/call-me-maybe/README.md new file mode 100644 index 0000000..ac74451 --- /dev/null +++ b/node_modules/call-me-maybe/README.md @@ -0,0 +1,26 @@ +# call-me-maybe [![Build Status](https://travis-ci.org/limulus/call-me-maybe.svg?branch=master)](https://travis-ci.org/limulus/call-me-maybe) + +Let your JS API users either give you a callback or receive a promise. + +## Usage + +```javascript +var maybe = require("call-me-maybe") + +module.exports = function asyncFunc (cb) { + return maybe(cb, new Promise(function(resolve, reject) { + // ... + })) +} +``` + +## API + +### maybe(cb, promise) + +If the callback `cb` is truthy, returns `undefined` and will call `cb` when `promise` is settled. The parameters passed to `cb` are standard error-first: + + - If `promise` is fulfilled, then it is called with the result of the promise: `cb(null, result)` + - If `promise` is rejected, then it is called with the rejection error: `cb(err)` + +If `cb` is falsey, then `promise` is retuned. |