OperatorLinebreakFixer
extends AbstractFixer
in package
implements
ConfigurableFixerInterface
Tags
Table of Contents
Interfaces
Constants
- BOOLEAN_OPERATORS = [[T_BOOLEAN_AND], [T_BOOLEAN_OR], [T_LOGICAL_AND], [T_LOGICAL_OR], [T_LOGICAL_XOR]]
Properties
- $operators : array<int, array{: int}|string>
- $position : string
Methods
- configure() : void
- Set configuration.
- getDefinition() : FixerDefinitionInterface
- Returns the definition of the fixer.
- isCandidate() : bool
- Check if the fixer is a candidate for given Tokens collection.
- applyFix() : void
- createConfigurationDefinition() : FixerConfigurationResolverInterface
- fixMoveToTheBeginning() : void
- fixMoveToTheEnd() : void
- fixOperatorLinebreak() : void
- getNonBooleanOperators() : array<int, array{: int}|string>
- getReplacementsAndClear() : array<int, Token>
- isMultiline() : bool
Constants
BOOLEAN_OPERATORS
private
mixed
BOOLEAN_OPERATORS
= [[T_BOOLEAN_AND], [T_BOOLEAN_OR], [T_LOGICAL_AND], [T_LOGICAL_OR], [T_LOGICAL_XOR]]
Properties
$operators
private
array<int, array{: int}|string>
$operators
= []
$position
private
string
$position
= 'beginning'
Methods
configure()
Set configuration.
public
configure(array<string|int, mixed> $configuration) : void
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
.
Parameters
- $configuration : array<string|int, mixed>
-
configuration depends on Fixer
getDefinition()
Returns the definition of the fixer.
public
getDefinition() : FixerDefinitionInterface
Return values
FixerDefinitionInterfaceisCandidate()
Check if the fixer is a candidate for given Tokens collection.
public
isCandidate(Tokens $tokens) : bool
Fixer is a candidate when the collection contains tokens that may be fixed during fixer work. This could be considered as some kind of bloom filter. When this method returns true then to the Tokens collection may or may not need a fixing, but when this method returns false then the Tokens collection need no fixing for sure.
Parameters
- $tokens : Tokens
Return values
boolapplyFix()
protected
applyFix(SplFileInfo $file, Tokens $tokens) : void
Parameters
- $file : SplFileInfo
- $tokens : Tokens
createConfigurationDefinition()
protected
createConfigurationDefinition() : FixerConfigurationResolverInterface
Return values
FixerConfigurationResolverInterfacefixMoveToTheBeginning()
private
fixMoveToTheBeginning(Tokens $tokens, array<int, int> $operatorIndices) : void
Parameters
- $tokens : Tokens
- $operatorIndices : array<int, int>
fixMoveToTheEnd()
private
fixMoveToTheEnd(Tokens $tokens, array<int, int> $operatorIndices) : void
Parameters
- $tokens : Tokens
- $operatorIndices : array<int, int>
fixOperatorLinebreak()
private
fixOperatorLinebreak(Tokens $tokens, array<int, int> $operatorIndices) : void
Parameters
- $tokens : Tokens
- $operatorIndices : array<int, int>
getNonBooleanOperators()
private
static getNonBooleanOperators() : array<int, array{: int}|string>
Return values
array<int, array{: int}|string>getReplacementsAndClear()
private
getReplacementsAndClear(Tokens $tokens, array<int, int> $indices, int $direction) : array<int, Token>
Parameters
- $tokens : Tokens
- $indices : array<int, int>
- $direction : int
Return values
array<int, Token>isMultiline()
private
isMultiline(Tokens $tokens, int $indexStart, int $indexEnd) : bool
Parameters
- $tokens : Tokens
- $indexStart : int
- $indexEnd : int