index.js
function raco (genFn, opts) {
    if (!isGeneratorFunction(genFn)) {
      if (isFunction(genFn)) throw new Error('Generator function required')
      else if (!isGenerator(genFn)) return factory(genFn)
    }
    opts = Object.assign({}, _opts, opts)
    opts.Promise = null
    return _raco.call(this, genFn, null, null, opts)
  }
function raco (genFn, opts) {
    if (!isGeneratorFunction(genFn)) {
      if (isFunction(genFn)) throw new Error('Generator function required')
      else if (!isGenerator(genFn)) return factory(genFn)
    }
    opts = Object.assign({}, _opts, opts)
    opts.Promise = null
    return _raco.call(this, genFn, null, null, opts)
  }
function raco ( genFn , opts ) { if ( ! isGeneratorFunction ( genFn ) ) { if ( isFunction ( genFn ) ) throw new Error ( 'Generator function required' ) else if ( ! isGenerator ( genFn ) ) return factory ( genFn ) } opts = Object . assign ( { } , _opts , opts ) opts . Promise = null return _raco . call ( this , genFn , null , null , opts ) }
raco resolver
returns factory if no arguments

@param {function} genFn - generator function or factory options
@param {object} [opts] - options object
@returns {promise} if no callback provided
raco resolver returns factory if no arguments