index.js
function httpMiddleware (req, res, arr, done) {
  done = done || noop

  assert.ok(isReq(req), 'is incoming message')
  assert.ok(isRes(res), 'is server response')
  assert.ok(Array.isArray(arr), 'is array')
  assert.equal(typeof done, 'function', 'is function')

  mapLimit(arr, 1, iterator, done)

  function iterator (fn, next) {
    next = dezalgo(next)
    if (fn.length === 3) return fn(req, res, next)
    fn(req, res)
    next()
  }
}
function httpMiddleware (req, res, arr, done) {
  done = done || noop

  assert.ok(isReq(req), 'is incoming message')
  assert.ok(isRes(res), 'is server response')
  assert.ok(Array.isArray(arr), 'is array')
  assert.equal(typeof done, 'function', 'is function')

  mapLimit(arr, 1, iterator, done)

  function iterator (fn, next) {
    next = dezalgo(next)
    if (fn.length === 3) return fn(req, res, next)
    fn(req, res)
    next()
  }
}
function httpMiddleware ( req , res , arr , done ) { done = done || noop assert . ok ( isReq ( req ) , 'is incoming message' ) assert . ok ( isRes ( res ) , 'is server response' ) assert . ok ( Array . isArray ( arr ) , 'is array' ) assert . equal ( typeof done , 'function' , 'is function' ) mapLimit ( arr , 1 , iterator , done ) function iterator ( fn , next ) { next = dezalgo ( next ) if ( fn . length === 3 ) return fn ( req , res , next ) fn ( req , res ) next ( ) } }
create a middleware stack (obj, obj, [fn(obj, obj, fn?)], fn) -> null
create a middleware stack ( obj obj [ fn ( obj obj fn? ) ] fn ) - > null