docs: function(overrides) { 
        var result = this.cache;
        if(!result) {
          result = construct(type, functionParameters(type).map(function(paramName) {
            return self.resolve(paramName, overrides);
          }));
        }
        if(doCache) {
          this.cache = result;
        }
        return result;
      }