code: protected function applyFix(\SplFileInfo $file, Tokens $tokens)
      {
          foreach ($tokens as $index => $token) {
              if (!$token->equals(';') || !$tokens[$index - 1]->isWhitespace(" \t")) {
                  continue;
              }
  
              if ($tokens[$index - 2]->equals(';')) {
                  // do not remove all whitespace before the semicolon because it is also whitespace after another semicolon
                  if (!$tokens[$index - 1]->equals(' ')) {
                      $tokens[$index - 1] = new Token([T_WHITESPACE, ' ']);
                  }
              } elseif (!$tokens[$index - 2]->isComment()) {
                  $tokens->clearAt($index - 1);
              }
          }
      }
docs: {@inheritdoc}