Dispose a resource when p-using resolves.
Inspired from Bluebird, p-using
makes sure that the specifed dispose
function is called on a resource
.
$ npm install --save p-using
import using from 'p-using'
// call `db.dispose` method
using(db, db => { db.query('...') })
// call `db.close` method
using(db, db => { db.query('...') }, 'close')
// call the provided dispose function
using(db, db => { db.query('...') }, db => { db.finalize() })
// accept a resource promise
using(createDb(), db => { db.query('...') })
Parameters
resource
(Object | Promise) Resource to be disposed.callback
Function Function to be invoked before disposal.disposeFunction
(String | Function) Name of the method or function called for disposal.
Returns Promise Promise resolved when the resource has been disposed.
MIT © Nicolas Gryman