original_string: public function dump()
      {
          if (empty($this->files)) {
              return;
          }
  
          $buffer = <<<'PHP'
  <?php
  
  $runonce = function(array $files, $delete = false) {
      foreach ($files as $file) {
          try {
              include $file;
          } catch (\Exception $e) {}
  
          $relpath = str_replace(TL_ROOT . DIRECTORY_SEPARATOR, '', $file);
  
          if ($delete && !unlink($file)) {
              throw new \Exception(
                  'The file ' . $relpath . ' cannot be deleted. ' .
                  'Please remove the file manually and correct the file permission settings on your server.'
              );
          }
      }
  };
  
  PHP;
  
          if (file_exists($this->targetFile)) {
              if (!is_writable($this->targetFile) || !is_file($this->targetFile)) {
                  throw new \RuntimeException(
                      sprintf('Runonce file "%s" exists but is not writable.', $this->targetFile)
                  );
              }
  
              $current = str_replace('.php', '_'.substr(md5(mt_rand()), 0, 8).'.php', $this->targetFile);
              $this->filesystem->rename($this->targetFile, $current);
  
              $buffer .= "\n\$runonce(array('" . $current . "'), true);\n";
          }
  
          $buffer .= "\n\$runonce(" . var_export(array_unique($this->files), true) . ");\n";
  
          $this->filesystem->ensureDirectoryExists(dirname($this->targetFile));
  
          if (false === file_put_contents($this->targetFile, $buffer)) {
              throw new \RuntimeException(sprintf('Could not write runonce file to "%s"', $this->targetFile));
          }
  
          $this->files = [];
      }
code: public function dump()
      {
          if (empty($this->files)) {
              return;
          }
  
          $buffer = <<<'PHP'
  <?php
  
  $runonce = function(array $files, $delete = false) {
      foreach ($files as $file) {
          try {
              include $file;
          } catch (\Exception $e) {}
  
          $relpath = str_replace(TL_ROOT . DIRECTORY_SEPARATOR, '', $file);
  
          if ($delete && !unlink($file)) {
              throw new \Exception(
                  'The file ' . $relpath . ' cannot be deleted. ' .
                  'Please remove the file manually and correct the file permission settings on your server.'
              );
          }
      }
  };
  
  PHP;
  
          if (file_exists($this->targetFile)) {
              if (!is_writable($this->targetFile) || !is_file($this->targetFile)) {
                  throw new \RuntimeException(
                      sprintf('Runonce file "%s" exists but is not writable.', $this->targetFile)
                  );
              }
  
              $current = str_replace('.php', '_'.substr(md5(mt_rand()), 0, 8).'.php', $this->targetFile);
              $this->filesystem->rename($this->targetFile, $current);
  
              $buffer .= "\n\$runonce(array('" . $current . "'), true);\n";
          }
  
          $buffer .= "\n\$runonce(" . var_export(array_unique($this->files), true) . ");\n";
  
          $this->filesystem->ensureDirectoryExists(dirname($this->targetFile));
  
          if (false === file_put_contents($this->targetFile, $buffer)) {
              throw new \RuntimeException(sprintf('Could not write runonce file to "%s"', $this->targetFile));
          }
  
          $this->files = [];
      }
code_tokens: public function dump ( ) { if ( empty ( $ this -> files ) ) { return ; } $ buffer =  <<<'PHP'
  <?php
  
  $runonce = function(array $files, $delete = false) {
      foreach ($files as $file) {
          try {
              include $file;
          } catch (\Exception $e) {}
  
          $relpath = str_replace(TL_ROOT . DIRECTORY_SEPARATOR, '', $file);
  
          if ($delete && !unlink($file)) {
              throw new \Exception(
                  'The file ' . $relpath . ' cannot be deleted. ' .
                  'Please remove the file manually and correct the file permission settings on your server.'
              );
          }
      }
  };
  
  PHP ; if ( file_exists ( $ this -> targetFile ) ) { if ( ! is_writable ( $ this -> targetFile ) || ! is_file ( $ this -> targetFile ) ) { throw new \ RuntimeException ( sprintf ( 'Runonce file "%s" exists but is not writable.' , $ this -> targetFile ) ) ; } $ current = str_replace ( '.php' , '_' . substr ( md5 ( mt_rand ( ) ) , 0 , 8 ) . '.php' , $ this -> targetFile ) ; $ this -> filesystem -> rename ( $ this -> targetFile , $ current ) ; $ buffer .= "\n\$runonce(array('" . $ current . "'), true);\n" ; } $ buffer .= "\n\$runonce(" . var_export ( array_unique ( $ this -> files ) , true ) . ");\n" ; $ this -> filesystem -> ensureDirectoryExists ( dirname ( $ this -> targetFile ) ) ; if ( false === file_put_contents ( $ this -> targetFile , $ buffer ) ) { throw new \ RuntimeException ( sprintf ( 'Could not write runonce file to "%s"' , $ this -> targetFile ) ) ; } $ this -> files = [ ] ; }
docstring: Dumps runonce file to the target file given in the constructor.
  
  @throws \RuntimeException If the combined runonce file exists but is not writable.
  
  @return void
docstring_tokens: Dumps runonce file to the target file given in the constructor .