Internal classes should be final
.
Warning
Using this rule is risky.
Changing classes to final
might cause code execution to break.
Class level annotations tags that must be set in order to fix the class. (case insensitive)
Allowed types: array
Default value: ['@internal']
Class level annotations tags that must be omitted to fix the class, even if all of the white list ones are used as well. (case insensitive)
Allowed types: array
Default value: ['@final', '@Entity', '@ORM\\Entity', '@ORM\\Mapping\\Entity', '@Mapping\\Entity', '@Document', '@ODM\\Document']
Should classes without any DocBlock be fixed to final?
Allowed types: bool
Default value: false
Default configuration.
--- Original
+++ New
<?php
/**
* @internal
*/
-class Sample
+final class Sample
{
}
With configuration: ['annotation_include' => ['@Custom'], 'annotation_exclude' => ['@not-fix']]
.
--- Original
+++ New
<?php
/**
* @CUSTOM
*/
-class A{}
+final class A{}
/**
* @CUSTOM
* @not-fix
*/
class B{}
The rule is part of the following rule set:
- @PhpCsFixer:risky
Using the @PhpCsFixer:risky rule set will enable the
final_internal_class
rule with the default config.