Enhancement: Add support for PHP 8.0 #1830
Annotations
10 warnings
src/Constructs.php#L56
Escaped Mutant for Mutator "GreaterThanOrEqualTo":
--- Original
+++ New
@@ @@
/**
* @see https://wiki.php.net/rfc/enumerations
*/
- if (\PHP_VERSION_ID >= 80100 && \defined('T_ENUM')) {
+ if (\PHP_VERSION_ID > 80100 && \defined('T_ENUM')) {
$classyTokens = [\T_CLASS, \T_ENUM, \T_INTERFACE, \T_TRAIT];
}
for ($index = 0; $index < $count; ++$index) {
|
src/Constructs.php#L56
Escaped Mutant for Mutator "GreaterThanOrEqualToNegotiation":
--- Original
+++ New
@@ @@
/**
* @see https://wiki.php.net/rfc/enumerations
*/
- if (\PHP_VERSION_ID >= 80100 && \defined('T_ENUM')) {
+ if (\PHP_VERSION_ID < 80100 && \defined('T_ENUM')) {
$classyTokens = [\T_CLASS, \T_ENUM, \T_INTERFACE, \T_TRAIT];
}
for ($index = 0; $index < $count; ++$index) {
|
src/Constructs.php#L56
Escaped Mutant for Mutator "LogicalAnd":
--- Original
+++ New
@@ @@
/**
* @see https://wiki.php.net/rfc/enumerations
*/
- if (\PHP_VERSION_ID >= 80100 && \defined('T_ENUM')) {
+ if (\PHP_VERSION_ID >= 80100 || \defined('T_ENUM')) {
$classyTokens = [\T_CLASS, \T_ENUM, \T_INTERFACE, \T_TRAIT];
}
for ($index = 0; $index < $count; ++$index) {
|
src/Constructs.php#L75
Escaped Mutant for Mutator "LessThan":
--- Original
+++ New
@@ @@
if (\is_array($token) && \T_NAMESPACE === $token[0]) {
$namespaceSegments = [];
// collect namespace segments
- for ($index = self::significantAfter($index, $sequence, $count); $index < $count; ++$index) {
+ for ($index = self::significantAfter($index, $sequence, $count); $index <= $count; ++$index) {
$token = $sequence[$index];
if (\is_array($token) && !\in_array($token[0], $namespaceSegmentOrNamespaceTokens, true)) {
continue;
|
src/Constructs.php#L79
Escaped Mutant for Mutator "Continue_":
--- Original
+++ New
@@ @@
for ($index = self::significantAfter($index, $sequence, $count); $index < $count; ++$index) {
$token = $sequence[$index];
if (\is_array($token) && !\in_array($token[0], $namespaceSegmentOrNamespaceTokens, true)) {
- continue;
+ break;
}
$content = self::content($token);
if (\in_array($content, ['{', ';'], true)) {
|
src/Constructs.php#L107
Escaped Mutant for Mutator "Continue_":
--- Original
+++ New
@@ @@
$token = $sequence[$current];
// if significant token before T_CLASS is T_NEW, it's an instantiation of an anonymous class
if (\is_array($token) && \T_NEW === $token[0]) {
- continue;
+ break;
}
}
$index = self::significantAfter($index, $sequence, $count);
|
src/Constructs.php#L155
Escaped Mutant for Mutator "Continue_":
--- Original
+++ New
@@ @@
continue;
}
if ($fileInfo->getBasename('.php') === $fileInfo->getBasename()) {
- continue;
+ break;
}
/** @var string $fileName */
$fileName = $fileInfo->getRealPath();
|
src/Constructs.php#L174
Escaped Mutant for Mutator "Continue_":
--- Original
+++ New
@@ @@
throw Exception\ParseError::fromFileNameAndParseError($fileName, $exception);
}
if (0 === \count($constructsFromFile)) {
- continue;
+ break;
}
foreach ($constructsFromFile as $construct) {
$name = $construct->name();
|
src/Constructs.php#L203
Escaped Mutant for Mutator "UnwrapArrayValues":
--- Original
+++ New
@@ @@
if (0 < \count($constructsWithMultipleDefinitions)) {
throw Exception\MultipleDefinitionsFound::fromConstructs($constructsWithMultipleDefinitions);
}
- return \array_values($constructs);
+ return $constructs;
}
/**
* Returns the index of the significant token after the index.
|
src/Constructs.php#L216
Escaped Mutant for Mutator "IncrementInteger":
--- Original
+++ New
@@ @@
*/
private static function significantAfter(int $index, array $sequence, int $count) : int
{
- for ($current = $index + 1; $current < $count; ++$current) {
+ for ($current = $index + 2; $current < $count; ++$current) {
$token = $sequence[$current];
if (\is_array($token) && \in_array($token[0], [\T_COMMENT, \T_DOC_COMMENT, \T_WHITESPACE], true)) {
continue;
|
This job succeeded
Loading