PhpCsFixer\Tokenizer\Tokens::generatePartialCode PHP Method

generatePartialCode() public method

Generate code from tokens between given indexes.
public generatePartialCode ( integer $start, integer $end ) : string
$start integer start index
$end integer end index
return string
    public function generatePartialCode($start, $end)
    {
        $code = '';
        for ($i = $start; $i <= $end; ++$i) {
            $code .= $this[$i]->getContent();
        }
        return $code;
    }

Usage Example

 /**
  * {@inheritdoc}
  */
 public function fix(\SplFileInfo $file, Tokens $tokens)
 {
     $tokensAnalyzer = new TokensAnalyzer($tokens);
     $uses = array_reverse($tokensAnalyzer->getImportUseIndexes());
     foreach ($uses as $index) {
         $endIndex = $tokens->getNextTokenOfKind($index, array(';'));
         $declarationContent = $tokens->generatePartialCode($index + 1, $endIndex - 1);
         $declarationParts = explode(',', $declarationContent);
         if (1 === count($declarationParts)) {
             continue;
         }
         $declarationContent = array();
         foreach ($declarationParts as $declarationPart) {
             $declarationContent[] = 'use ' . trim($declarationPart) . ';';
         }
         $declarationContent = implode("\n" . $this->detectIndent($tokens, $index), $declarationContent);
         for ($i = $index; $i <= $endIndex; ++$i) {
             $tokens[$i]->clear();
         }
         $declarationTokens = Tokens::fromCode('<?php ' . $declarationContent);
         $declarationTokens[0]->clear();
         $declarationTokens->clearEmptyTokens();
         $tokens->insertAt($index, $declarationTokens);
     }
 }
All Usage Examples Of PhpCsFixer\Tokenizer\Tokens::generatePartialCode