function QB (options) {
  if (!(this instanceof QB)) {
    return new QB(options);
  }

  // Super constructor
  MiddlewareProvider.call(this);

  var qb = this;

  // Init
  qb._options = defaults(options, default_options)
  qb._types = {}
  qb._aliases = {}
  qb.name = qb._options.name

  // TODO process this into .alias
  _processAliasOptions(qb, qb._options.aliases)

  qb.log = book.default();

  if (qb._options.catch_sigterm_end)
    handleSigterm(qb);

  _listen(qb)
}
/*
* QB - The primary type of the qb package
*
* @param options - See README.md for options documentation
*/
The primary type of the qb package
The primary type of the qb package
function QB (options) {
  if (!(this instanceof QB)) {
    return new QB(options);
  }
  MiddlewareProvider.call(this);
  var qb = this;
  qb._options = defaults(options, default_options)
  qb._types = {}
  qb._aliases = {}
  qb.name = qb._options.name
  _processAliasOptions(qb, qb._options.aliases)
  qb.log = book.default();
  if (qb._options.catch_sigterm_end)
    handleSigterm(qb);
  _listen(qb)
}
function QB ( options ) { if ( ! ( this instanceof QB ) ) { return new QB ( options ) ; } MiddlewareProvider . call ( this ) ; var qb = this ; qb . _options = defaults ( options , default_options ) qb . _types = { } qb . _aliases = { } qb . name = qb . _options . name _processAliasOptions ( qb , qb . _options . aliases ) qb . log = book . default ( ) ; if ( qb . _options . catch_sigterm_end ) handleSigterm ( qb ) ; _listen ( qb ) }
QB - The primary type of the qb package
QB - The primary type of the qb package
// Super constructor // Init // TODO process this into .alias