code: public function process(File $phpcsFile, $stackPtr)
      {
          $tokens = $phpcsFile->getTokens();
  
          $token = $tokens[$stackPtr];
          if (isset($token['scope_opener']) === false) {
              $error = 'Possible parse error: %s missing opening or closing brace';
              $data  = [$token['content']];
              $phpcsFile->addWarning($error, $stackPtr, 'MissingBrace', $data);
              return;
          }
  
          // Determine the name of the trait. Note that we cannot
          // simply look for the first T_STRING because a class name
          // starting with the number will be multiple tokens.
          $opener    = $token['scope_opener'];
          $nameStart = $phpcsFile->findNext(T_WHITESPACE, ($stackPtr + 1), $opener, true);
          $nameEnd   = $phpcsFile->findNext(T_WHITESPACE, $nameStart, $opener);
          if ($nameEnd === false) {
              $name = $tokens[$nameStart]['content'];
          } else {
              $name = trim($phpcsFile->getTokensAsString($nameStart, ($nameEnd - $nameStart)));
          }
  
          $error   = 'Use of trait "%s" is forbidden';
          $phpcsFile->addError($error, $stackPtr, 'NotAllowed', [$name]);
      }
docs: {@inheritdoc}