Skip to content

Commit

Permalink
Make Mutator::getDefinition return type non-nullable (#1958)
Browse files Browse the repository at this point in the history
We are going to extract `Mutator` interface to a separate package, so other developers can require `infection/mutator` and use only that small package with interface(s) to write their custom mutators.

And we 100% must require write definitions for their mutators. If we allow null, developers will simply return null which we are not interested in.

For example Rector does the same - Rector requires providing description / diff / docs for their "rectors". It's a win-win - immediately clear what class is going to do.

The same is for us. Later, even Remedies (3rd parameter will be non-nullable), but this is another story.
  • Loading branch information
maks-rafalko committed May 5, 2024
1 parent 4a06906 commit a3dfe76
Show file tree
Hide file tree
Showing 165 changed files with 164 additions and 964 deletions.
800 changes: 0 additions & 800 deletions devTools/phpstan-src-baseline.neon

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Assignment.php
Expand Up @@ -50,7 +50,7 @@ final class Assignment implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/AssignmentEqual.php
Expand Up @@ -50,7 +50,7 @@ final class AssignmentEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/BitwiseAnd.php
Expand Up @@ -50,7 +50,7 @@ final class BitwiseAnd implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces a bitwise AND operator (`&`) with a bitwise OR operator (`|`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/BitwiseNot.php
Expand Up @@ -50,7 +50,7 @@ final class BitwiseNot implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Removes a bitwise NOT operator (`~`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/BitwiseOr.php
Expand Up @@ -50,7 +50,7 @@ final class BitwiseOr implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces a bitwise OR operator (`|`) with a bitwise AND operator (`&`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/BitwiseXor.php
Expand Up @@ -50,7 +50,7 @@ final class BitwiseXor implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces a bitwise XOR operator (`^`) with a bitwise AND operator (`&`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Decrement.php
Expand Up @@ -50,7 +50,7 @@ final class Decrement implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/DivEqual.php
Expand Up @@ -50,7 +50,7 @@ final class DivEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Division.php
Expand Up @@ -50,7 +50,7 @@ final class Division implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces a division operator (`/`) with a multiplication operator (`*`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Exponentiation.php
Expand Up @@ -50,7 +50,7 @@ final class Exponentiation implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Increment.php
Expand Up @@ -50,7 +50,7 @@ final class Increment implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Minus.php
Expand Up @@ -50,7 +50,7 @@ final class Minus implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces a subtraction operator (`-`) with an addition operator (`+`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/MinusEqual.php
Expand Up @@ -50,7 +50,7 @@ final class MinusEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/ModEqual.php
Expand Up @@ -50,7 +50,7 @@ final class ModEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Modulus.php
Expand Up @@ -50,7 +50,7 @@ final class Modulus implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces a modulo operator (`%`) with a multiplication operator (`*`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/MulEqual.php
Expand Up @@ -50,7 +50,7 @@ final class MulEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Multiplication.php
Expand Up @@ -53,7 +53,7 @@ final class Multiplication implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/Plus.php
Expand Up @@ -50,7 +50,7 @@ final class Plus implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/PlusEqual.php
Expand Up @@ -50,7 +50,7 @@ final class PlusEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/PowEqual.php
Expand Up @@ -50,7 +50,7 @@ final class PowEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/RoundingFamily.php
Expand Up @@ -58,7 +58,7 @@ final class RoundingFamily implements Mutator
'round',
];

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/ShiftLeft.php
Expand Up @@ -50,7 +50,7 @@ final class ShiftLeft implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Arithmetic/ShiftRight.php
Expand Up @@ -50,7 +50,7 @@ final class ShiftRight implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/ArrayItem.php
Expand Up @@ -50,7 +50,7 @@ final class ArrayItem implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/EqualIdentical.php
Expand Up @@ -50,7 +50,7 @@ final class EqualIdentical implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/FalseValue.php
Expand Up @@ -50,7 +50,7 @@ final class FalseValue implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces a boolean literal (`false`) with its opposite value (`true`). ',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/IdenticalEqual.php
Expand Up @@ -52,7 +52,7 @@ final class IdenticalEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/InstanceOf_.php
Expand Up @@ -51,7 +51,7 @@ final class InstanceOf_ implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces an instanceof comparison with `true` and `false`.',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalAnd.php
Expand Up @@ -50,7 +50,7 @@ final class LogicalAnd implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces an AND operator (`&&`) with an OR operator (`||`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalAndAllSubExprNegation.php
Expand Up @@ -47,7 +47,7 @@
*/
final class LogicalAndAllSubExprNegation extends AbstractAllSubExprNegation
{
public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalAndNegation.php
Expand Up @@ -51,7 +51,7 @@ final class LogicalAndNegation implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalAndSingleSubExprNegation.php
Expand Up @@ -50,7 +50,7 @@ final class LogicalAndSingleSubExprNegation extends AbstractSingleSubExprNegatio
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalLowerAnd.php
Expand Up @@ -50,7 +50,7 @@ final class LogicalLowerAnd implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces an AND logical operator (`and`) with an OR logical operator (`or`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalLowerOr.php
Expand Up @@ -50,7 +50,7 @@ final class LogicalLowerOr implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces an OR logical operator (`or`) with an AND logical operator (`AND`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalNot.php
Expand Up @@ -50,7 +50,7 @@ final class LogicalNot implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Removes a negation operator (`!`), e.g. transforms `!$foo` with `$foo`.',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalOr.php
Expand Up @@ -52,7 +52,7 @@ final class LogicalOr implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces an OR operator (`||`) with an AND operator (`&&`).',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalOrAllSubExprNegation.php
Expand Up @@ -47,7 +47,7 @@
*/
final class LogicalOrAllSubExprNegation extends AbstractAllSubExprNegation
{
public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalOrNegation.php
Expand Up @@ -51,7 +51,7 @@ final class LogicalOrNegation implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/LogicalOrSingleSubExprNegation.php
Expand Up @@ -50,7 +50,7 @@ final class LogicalOrSingleSubExprNegation extends AbstractSingleSubExprNegation
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/NotEqualNotIdentical.php
Expand Up @@ -50,7 +50,7 @@ final class NotEqualNotIdentical implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/NotIdenticalNotEqual.php
Expand Up @@ -52,7 +52,7 @@ final class NotIdenticalNotEqual implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/TrueValue.php
Expand Up @@ -65,7 +65,7 @@ public function __construct(TrueValueConfig $config)
$this->allowedFunctions = array_flip($config->getAllowedFunctions());
}

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Replaces a boolean literal (`true`) with its opposite value (`false`). ',
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Boolean/Yield_.php
Expand Up @@ -50,7 +50,7 @@ final class Yield_ implements Mutator
{
use GetMutatorName;

public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
<<<'TXT'
Expand Down
2 changes: 1 addition & 1 deletion src/Mutator/Cast/CastArray.php
Expand Up @@ -44,7 +44,7 @@
*/
final class CastArray extends AbstractCastMutator
{
public static function getDefinition(): ?Definition
public static function getDefinition(): Definition
{
return new Definition(
'Removes an array cast operator (`(array)`).',
Expand Down

0 comments on commit a3dfe76

Please sign in to comment.