/**
  * Gets an inheritance finder for the Laravel Framework.
  *
  * @return InheritanceFinder
  */
 protected function getInheritanceFinder()
 {
     if (!file_exists(storage_path('class_cache'))) {
         mkdir(storage_path('class_cache'));
     }
     $config = new \Synga\InheritanceFinder\File\FileConfig();
     $config->setApplicationRoot(base_path());
     $config->setCacheDirectory(storage_path('class_cache'));
     return (new InheritanceFinderFactory())->getInheritanceFinder($config);
 }
 /**
  * Registers the commands
  */
 public function register()
 {
     $this->commands(['Synga\\PhpStormMeta\\Laravel\\Command\\ExcludeCommand', 'Synga\\PhpStormMeta\\Laravel\\Command\\IncludeCommand', 'Synga\\PhpStormMeta\\Laravel\\Command\\GenerateCommand']);
     $this->app->singleton('Synga\\InheritanceFinder\\InheritanceFinderInterface', function () {
         if (!file_exists(storage_path('class_cache'))) {
             mkdir(storage_path('class_cache'));
         }
         $config = new \Synga\InheritanceFinder\File\FileConfig();
         $config->setApplicationRoot(base_path());
         $config->setCacheDirectory(storage_path('class_cache'));
         return InheritanceFinderFactory::getInheritanceFinder($config);
     });
 }