original_string: public function load()
      {
          // NOTE: ALL THE LOCAL VARIABLES ARE USED INSIDE INCLUDED FILE, DO NOT REMOVE THEM!
          $grav = $this->grav;
          $config = $this->config;
          $name = $this->current();
  
          /** @var UniformResourceLocator $locator */
          $locator = $grav['locator'];
          $file = $locator('theme://theme.php') ?: $locator("theme://{$name}.php");
  
          $inflector = $grav['inflector'];
  
          if ($file) {
              // Local variables available in the file: $grav, $config, $name, $file
              $class = include $file;
  
              if (!is_object($class)) {
                  $themeClassFormat = [
                      'Grav\\Theme\\' . ucfirst($name),
                      'Grav\\Theme\\' . $inflector->camelize($name)
                  ];
  
                  foreach ($themeClassFormat as $themeClass) {
                      if (class_exists($themeClass)) {
                          $themeClassName = $themeClass;
                          $class = new $themeClassName($grav, $config, $name);
                          break;
                      }
                  }
              }
          } elseif (!$locator('theme://') && !defined('GRAV_CLI')) {
              exit("Theme '$name' does not exist, unable to display page.");
          }
  
          $this->config->set('theme', $config->get('themes.' . $name));
  
          if (empty($class)) {
              $class = new Theme($grav, $config, $name);
          }
  
          return $class;
      }
code: public function load()
      {
          // NOTE: ALL THE LOCAL VARIABLES ARE USED INSIDE INCLUDED FILE, DO NOT REMOVE THEM!
          $grav = $this->grav;
          $config = $this->config;
          $name = $this->current();
  
          /** @var UniformResourceLocator $locator */
          $locator = $grav['locator'];
          $file = $locator('theme://theme.php') ?: $locator("theme://{$name}.php");
  
          $inflector = $grav['inflector'];
  
          if ($file) {
              // Local variables available in the file: $grav, $config, $name, $file
              $class = include $file;
  
              if (!is_object($class)) {
                  $themeClassFormat = [
                      'Grav\\Theme\\' . ucfirst($name),
                      'Grav\\Theme\\' . $inflector->camelize($name)
                  ];
  
                  foreach ($themeClassFormat as $themeClass) {
                      if (class_exists($themeClass)) {
                          $themeClassName = $themeClass;
                          $class = new $themeClassName($grav, $config, $name);
                          break;
                      }
                  }
              }
          } elseif (!$locator('theme://') && !defined('GRAV_CLI')) {
              exit("Theme '$name' does not exist, unable to display page.");
          }
  
          $this->config->set('theme', $config->get('themes.' . $name));
  
          if (empty($class)) {
              $class = new Theme($grav, $config, $name);
          }
  
          return $class;
      }
code_tokens: public function load ( ) { // NOTE: ALL THE LOCAL VARIABLES ARE USED INSIDE INCLUDED FILE, DO NOT REMOVE THEM! $ grav = $ this -> grav ; $ config = $ this -> config ; $ name = $ this -> current ( ) ; /** @var UniformResourceLocator $locator */ $ locator = $ grav [ 'locator' ] ; $ file = $ locator ( 'theme://theme.php' ) ? : $ locator ( "theme://{$name}.php" ) ; $ inflector = $ grav [ 'inflector' ] ; if ( $ file ) { // Local variables available in the file: $grav, $config, $name, $file $ class = include $ file ; if ( ! is_object ( $ class ) ) { $ themeClassFormat = [ 'Grav\\Theme\\' . ucfirst ( $ name ) , 'Grav\\Theme\\' . $ inflector -> camelize ( $ name ) ] ; foreach ( $ themeClassFormat as $ themeClass ) { if ( class_exists ( $ themeClass ) ) { $ themeClassName = $ themeClass ; $ class = new $ themeClassName ( $ grav , $ config , $ name ) ; break ; } } } } elseif ( ! $ locator ( 'theme://' ) && ! defined ( 'GRAV_CLI' ) ) { exit ( "Theme '$name' does not exist, unable to display page." ) ; } $ this -> config -> set ( 'theme' , $ config -> get ( 'themes.' . $ name ) ) ; if ( empty ( $ class ) ) { $ class = new Theme ( $ grav , $ config , $ name ) ; } return $ class ; }
docstring: Load current theme.
  
  @return Theme
docstring_tokens: Load current theme .