lib/di.js
function requireOverrideInjection(requireMe, provides, injects, directory) {
    return _require(requireMe, provides, injects, directory, overrideInjection);
  }
function requireOverrideInjection(requireMe, provides, injects, directory) {
    return _require(requireMe, provides, injects, directory, overrideInjection);
  }
function requireOverrideInjection ( requireMe , provides , injects , directory ) { return _require ( requireMe , provides , injects , directory , overrideInjection ) ; }
overides the given require with the injectables provided
@param requireMe is string passed to require()
@param [provides] - is either an array or string of things this object provides
@param [injects] - is either a single string or array of strings of module names to be injected
@param [directory] - to attempt first require from
@returns {*}
overides the given require with the injectables provided