original_string: public function load(Application $app, array $providers)
      {
          $manifest = $this->loadManifest();
  
          // First we will load the service manifest, which contains information on all
          // service providers registered with the application and which services it
          // provides. This is used to know which services are "deferred" loaders.
          if ($this->shouldRecompile($manifest, $providers)) {
              $manifest = $this->compileManifest($app, $providers);
          }
  
          // If the application is running in the console, we will not lazy load any of
          // the service providers. This is mainly because it's not as necessary for
          // performance and also so any provided Artisan commands get registered.
          if ($app->runningInConsole()) {
              $manifest['eager'] = $manifest['providers'];
          }
  
          // Next, we will register events to load the providers for each of the events
          // that it has requested. This allows the service provider to defer itself
          // while still getting automatically loaded when a certain event occurs.
          foreach ($manifest['when'] as $provider => $events) {
              $this->registerLoadEvents($app, $provider, $events);
          }
  
          // We will go ahead and register all of the eagerly loaded providers with the
          // application so their services can be registered with the application as
          // a provided service. Then we will set the deferred service list on it.
          foreach ($manifest['eager'] as $provider) {
              $app->register($this->createProvider($app, $provider));
          }
  
          $app->setDeferredServices($manifest['deferred']);
      }
code: public function load(Application $app, array $providers)
      {
          $manifest = $this->loadManifest();
  
          // First we will load the service manifest, which contains information on all
          // service providers registered with the application and which services it
          // provides. This is used to know which services are "deferred" loaders.
          if ($this->shouldRecompile($manifest, $providers)) {
              $manifest = $this->compileManifest($app, $providers);
          }
  
          // If the application is running in the console, we will not lazy load any of
          // the service providers. This is mainly because it's not as necessary for
          // performance and also so any provided Artisan commands get registered.
          if ($app->runningInConsole()) {
              $manifest['eager'] = $manifest['providers'];
          }
  
          // Next, we will register events to load the providers for each of the events
          // that it has requested. This allows the service provider to defer itself
          // while still getting automatically loaded when a certain event occurs.
          foreach ($manifest['when'] as $provider => $events) {
              $this->registerLoadEvents($app, $provider, $events);
          }
  
          // We will go ahead and register all of the eagerly loaded providers with the
          // application so their services can be registered with the application as
          // a provided service. Then we will set the deferred service list on it.
          foreach ($manifest['eager'] as $provider) {
              $app->register($this->createProvider($app, $provider));
          }
  
          $app->setDeferredServices($manifest['deferred']);
      }
code_tokens: public function load ( Application $ app , array $ providers ) { $ manifest = $ this -> loadManifest ( ) ; // First we will load the service manifest, which contains information on all // service providers registered with the application and which services it // provides. This is used to know which services are "deferred" loaders. if ( $ this -> shouldRecompile ( $ manifest , $ providers ) ) { $ manifest = $ this -> compileManifest ( $ app , $ providers ) ; } // If the application is running in the console, we will not lazy load any of // the service providers. This is mainly because it's not as necessary for // performance and also so any provided Artisan commands get registered. if ( $ app -> runningInConsole ( ) ) { $ manifest [ 'eager' ] = $ manifest [ 'providers' ] ; } // Next, we will register events to load the providers for each of the events // that it has requested. This allows the service provider to defer itself // while still getting automatically loaded when a certain event occurs. foreach ( $ manifest [ 'when' ] as $ provider => $ events ) { $ this -> registerLoadEvents ( $ app , $ provider , $ events ) ; } // We will go ahead and register all of the eagerly loaded providers with the // application so their services can be registered with the application as // a provided service. Then we will set the deferred service list on it. foreach ( $ manifest [ 'eager' ] as $ provider ) { $ app -> register ( $ this -> createProvider ( $ app , $ provider ) ) ; } $ app -> setDeferredServices ( $ manifest [ 'deferred' ] ) ; }
docstring: Register the application service providers.
  
  @param  \Nova\Foundation\Application  $app
  @param  array  $providers
  @return void
docstring_tokens: Register the application service providers .