|
25 | 25 | use PhpCsFixer\FixerDefinition\CodeSampleInterface; |
26 | 26 | use PhpCsFixer\FixerDefinition\FileSpecificCodeSampleInterface; |
27 | 27 | use PhpCsFixer\FixerDefinition\FixerDefinition; |
28 | | -use PhpCsFixer\FixerDefinition\FixerDefinitionInterface; |
29 | 28 | use PhpCsFixer\FixerDefinition\VersionSpecificCodeSampleInterface; |
30 | 29 | use PhpCsFixer\FixerFactory; |
31 | 30 | use PhpCsFixer\Preg; |
@@ -330,12 +329,21 @@ private function describeSet(OutputInterface $output, $name) |
330 | 329 | $help = ''; |
331 | 330 |
|
332 | 331 | foreach ($rules as $rule => $config) { |
333 | | - /** @var FixerDefinitionInterface $definition */ |
334 | | - $definition = $fixers[$rule]->getDefinition(); |
| 332 | + $fixer = $fixers[$rule]; |
| 333 | + |
| 334 | + if (!$fixer instanceof DefinedFixerInterface) { |
| 335 | + throw new \RuntimeException(sprintf( |
| 336 | + 'Cannot describe rule %s, the fixer does not implement %s', |
| 337 | + $rule, |
| 338 | + DefinedFixerInterface::class |
| 339 | + )); |
| 340 | + } |
| 341 | + |
| 342 | + $definition = $fixer->getDefinition(); |
335 | 343 | $help .= sprintf( |
336 | 344 | " * <info>%s</info>%s\n | %s\n%s\n", |
337 | 345 | $rule, |
338 | | - $fixers[$rule]->isRisky() ? ' <error>risky</error>' : '', |
| 346 | + $fixer->isRisky() ? ' <error>risky</error>' : '', |
339 | 347 | $definition->getSummary(), |
340 | 348 | true !== $config ? sprintf(" <comment>| Configuration: %s</comment>\n", HelpCommand::toString($config)) : '' |
341 | 349 | ); |
|
0 commit comments