code: public function setAutoloadDir($dir)
      {
          if (! is_string($dir) || empty($dir)) {
              throw new InvalidArgumentException(sprintf(
                  'Invalid directory for autoload of configuration provided; '
                  . 'must be a non-empty string, "%s" received.',
                  is_object($dir) ? get_class($dir) : gettype($dir)
              ));
          }
  
          $dir = Normalizer::path($dir);
  
          if (! file_exists($dir) || ! is_dir($dir)) {
              throw new InvalidArgumentException(sprintf(
                  'The directory "%s", specified for autoload of configurations, '
                  . 'does not exists.',
                  $dir
              ));
          }
          $this->autoloadDir = $dir;
      }
docs: Sets the directory for autoloading of configuration files.
  
  @param string $dir The path to directory
  
  @throws \InvalidArgumentException If the received directory is not
  non-empty string or if this directory
  not exists