whole_func_string: function HttpLog ()
  {
  	var args = arguer.apply(_constructorFormat, arguments);
  	if (args instanceof Error)
  		return httpLog(args);
  
  	if (args.response instanceof Http.IncomingMessage && args.response.statusCode)
  		return httpLog(args.response.statusCode, Http.STATUS_CODES[args.response.statusCode]);
  
  	if (args.error instanceof HttpLog)
  		return args.error;
  	
  	var log;
  	
  	if (args.error)
  	{
  		log = args.error;
  	}
  	else if (args.message !== undefined || (args.status !== undefined && args.data !== null) || args.data)
  	{
  		log = new Error(args.message);
  	}
  	else
  	{
  		return HttpLog.none;
  	}
  	
  	log.__proto__ = HttpLog.prototype;
  	if (args.status !== undefined)
  		log.status = args.status;
  	
  	log.data = args.data || {};
  	
  	return log;
  }
func_code_string: function HttpLog ()
  {
  	var args = arguer.apply(_constructorFormat, arguments);
  	if (args instanceof Error)
  		return httpLog(args);
  
  	if (args.response instanceof Http.IncomingMessage && args.response.statusCode)
  		return httpLog(args.response.statusCode, Http.STATUS_CODES[args.response.statusCode]);
  
  	if (args.error instanceof HttpLog)
  		return args.error;
  	
  	var log;
  	
  	if (args.error)
  	{
  		log = args.error;
  	}
  	else if (args.message !== undefined || (args.status !== undefined && args.data !== null) || args.data)
  	{
  		log = new Error(args.message);
  	}
  	else
  	{
  		return HttpLog.none;
  	}
  	
  	log.__proto__ = HttpLog.prototype;
  	if (args.status !== undefined)
  		log.status = args.status;
  	
  	log.data = args.data || {};
  	
  	return log;
  }
func_documentation_string: this is just to make JSHint stop complaining about casing