code: public function process(Tokens $tokens, Token $token, $index)
      {
          if ($token->isGivenKind(T_USE) && $this->isUseForLambda($tokens, $index)) {
              $tokens[$index] = new Token([CT::T_USE_LAMBDA, $token->getContent()]);
  
              return;
          }
  
          // Only search inside class/trait body for `T_USE` for traits.
          // Cannot import traits inside interfaces or anywhere else
  
          if (!$token->isGivenKind([T_CLASS, T_TRAIT])) {
              return;
          }
  
          if ($tokens[$tokens->getPrevMeaningfulToken($index)]->isGivenKind(T_DOUBLE_COLON)) {
              return;
          }
  
          $index = $tokens->getNextTokenOfKind($index, ['{']);
          $innerLimit = $tokens->findBlockEnd(Tokens::BLOCK_TYPE_CURLY_BRACE, $index);
  
          while ($index < $innerLimit) {
              $token = $tokens[++$index];
  
              if (!$token->isGivenKind(T_USE)) {
                  continue;
              }
  
              if ($this->isUseForLambda($tokens, $index)) {
                  $tokens[$index] = new Token([CT::T_USE_LAMBDA, $token->getContent()]);
              } else {
                  $tokens[$index] = new Token([CT::T_USE_TRAIT, $token->getContent()]);
              }
          }
      }
docs: {@inheritdoc}