* Dariusz Rumiński * * This source file is subject to the MIT license that is bundled * with this source code in the file LICENSE. */ namespace PhpCsFixer\Fixer; use PhpCsFixer\ConfigurationException\InvalidFixerConfigurationException; use PhpCsFixer\FixerConfiguration\FixerConfigurationResolverInterface; /** * @author Dariusz Rumiński */ interface ConfigurableFixerInterface extends FixerInterface { /** * Set configuration. * * New configuration must override current one, not patch it. * Using empty array makes fixer to use default configuration * (or reset configuration from previously configured back to default one). * * Some fixers may have no configuration, then - simply don't implement this interface. * Other ones may have configuration that will change behavior of fixer, * eg `php_unit_strict` fixer allows to configure which methods should be fixed. * Finally, some fixers need configuration to work, eg `header_comment`. * * @param array $configuration configuration depends on Fixer * * @throws InvalidFixerConfigurationException */ public function configure(array $configuration): void; /** * Defines the available configuration options of the fixer. */ public function getConfigurationDefinition(): FixerConfigurationResolverInterface; }