whole_func_string: function map (options, results) {
      var promise, resolve, reject;
  
      promise = new Promise(function (r1, r2) { resolve = r1; reject = r2; } );
  
      try {
          // Song and dance to ensure that map options match fetch options.
          results = results || get.results(options);
          results.options.log = get.log(options);
          results.options.mapper = get.mapper(options);
          options = results.options;
  
          resolve(options.mapper.map(options, results));
      } catch (error) {
          reject(error);
      }
  
      return promise;
  }
func_code_string: function map (options, results) {
      var promise, resolve, reject;
  
      promise = new Promise(function (r1, r2) { resolve = r1; reject = r2; } );
  
      try {
          // Song and dance to ensure that map options match fetch options.
          results = results || get.results(options);
          results.options.log = get.log(options);
          results.options.mapper = get.mapper(options);
          options = results.options;
  
          resolve(options.mapper.map(options, results));
      } catch (error) {
          reject(error);
      }
  
      return promise;
  }
func_documentation_string: Public function `map`.
  
  Maps WebPageTest result data to other formats, returns an ES6 promise.
  
  @option results    {string}  Read WebPageTest results from file.
  @option mapper     {string}  Mapper to use, defaults to `html-comparison`.
  @option silent     {boolean} Disable logging, overrides `syslog` and `log`.
  @option syslog     {string}  Send logs to syslog, overrides `log`.
  @option log        {object}  Logging implementation, needs `log.info()`,
  `log.warn()` and `log.error()`.
  @option config     {string}  Load options from JSON config file.