Moved NameContextVisitor to NameResolution namespace #82
continuous-integration.yml
on: push
Matrix: composer-normalize
Matrix: composer-validate
Matrix: infection
Matrix: php-cs-fixer
Matrix: psalm
Matrix: test
Annotations
19 warnings
test (8.3)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
test (8.2)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
psalm (8.1)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
composer-normalize (8.1)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
psalm (8.3)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
test (8.1)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
php-cs-fixer (8.1)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
psalm (8.2)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
infection (8.1)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
infection (8.1):
src/PhpDocParser/PhpDocParser.php#L26
Escaped Mutant for Mutator "TrueValue":
--- Original
+++ New
@@ @@
*/
final class PhpDocParser
{
- public function __construct(private readonly TagPrioritizer $tagPrioritizer = new PHPStanOverPsalmOverOthersTagPrioritizer(), private readonly PHPStanPhpDocParser $parser = new PHPStanPhpDocParser(typeParser: new TypeParser(new ConstExprParser()), constantExprParser: new ConstExprParser(), requireWhitespaceBeforeDescription: true), private readonly Lexer $lexer = new Lexer())
+ public function __construct(private readonly TagPrioritizer $tagPrioritizer = new PHPStanOverPsalmOverOthersTagPrioritizer(), private readonly PHPStanPhpDocParser $parser = new PHPStanPhpDocParser(typeParser: new TypeParser(new ConstExprParser()), constantExprParser: new ConstExprParser(), requireWhitespaceBeforeDescription: false), private readonly Lexer $lexer = new Lexer())
{
}
public function parsePhpDoc(string $phpDoc) : PhpDoc
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L102
Escaped Mutant for Mutator "InstanceOf_":
--- Original
+++ New
@@ @@
if ($node instanceof GenericTypeNode) {
return $this->reflectIdentifier($node->type->name, $node->genericTypes);
}
- if ($node instanceof ConditionalTypeNode || $node instanceof ConditionalTypeForParameterNode) {
+ if (true || $node instanceof ConditionalTypeForParameterNode) {
return $this->reflectConditional($node);
}
throw new ReflectionException(sprintf('Type node %s is not supported.', $node::class));
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L102
Escaped Mutant for Mutator "InstanceOf_":
--- Original
+++ New
@@ @@
if ($node instanceof GenericTypeNode) {
return $this->reflectIdentifier($node->type->name, $node->genericTypes);
}
- if ($node instanceof ConditionalTypeNode || $node instanceof ConditionalTypeForParameterNode) {
+ if ($node instanceof ConditionalTypeNode || true) {
return $this->reflectConditional($node);
}
throw new ReflectionException(sprintf('Type node %s is not supported.', $node::class));
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L102
Escaped Mutant for Mutator "LogicalOrAllSubExprNegation":
--- Original
+++ New
@@ @@
if ($node instanceof GenericTypeNode) {
return $this->reflectIdentifier($node->type->name, $node->genericTypes);
}
- if ($node instanceof ConditionalTypeNode || $node instanceof ConditionalTypeForParameterNode) {
+ if (!$node instanceof ConditionalTypeNode || !$node instanceof ConditionalTypeForParameterNode) {
return $this->reflectConditional($node);
}
throw new ReflectionException(sprintf('Type node %s is not supported.', $node::class));
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L211
Escaped Mutant for Mutator "InstanceOf_":
--- Original
+++ New
@@ @@
}
return $type;
}
- if ($type instanceof Type\NamedObjectType) {
+ if (true) {
return types::object($type->class, ...array_map($this->doReflect(...), $genericTypes));
}
if ($type instanceof Type\StaticType) {
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L321
Escaped Mutant for Mutator "MatchArmRemoval":
--- Original
+++ New
@@ @@
private function reflectNonEmptyList(array $templateArguments) : Type\Type
{
return match ($number = \count($templateArguments)) {
- 0 => types::nonEmptyList(),
1 => types::nonEmptyList($this->doReflect($templateArguments[0])),
default => throw new ReflectionException(sprintf('non-empty-list type should have at most 1 argument, got %d.', $number)),
};
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L322
Escaped Mutant for Mutator "DecrementInteger":
--- Original
+++ New
@@ @@
private function reflectNonEmptyList(array $templateArguments) : Type\Type
{
return match ($number = \count($templateArguments)) {
- 0 => types::nonEmptyList(),
+ -1 => types::nonEmptyList(),
1 => types::nonEmptyList($this->doReflect($templateArguments[0])),
default => throw new ReflectionException(sprintf('non-empty-list type should have at most 1 argument, got %d.', $number)),
};
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L390
Escaped Mutant for Mutator "MatchArmRemoval":
--- Original
+++ New
@@ @@
$keyName = $item->keyName;
$key = match ($keyName::class) {
ConstExprIntegerNode::class => $keyName->value,
- ConstExprStringNode::class => $keyName->value,
IdentifierTypeNode::class => $keyName->name,
default => throw new ReflectionException(sprintf('%s is not supported.', $keyName::class)),
};
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L390
Escaped Mutant for Mutator "MatchArmRemoval":
--- Original
+++ New
@@ @@
ConstExprIntegerNode::class => $keyName->value,
ConstExprStringNode::class => $keyName->value,
IdentifierTypeNode::class => $keyName->name,
- default => throw new ReflectionException(sprintf('%s is not supported.', $keyName::class)),
};
$elements[$key] = $type;
}
|
infection (8.1):
src/Reflector/PhpDocTypeReflector.php#L410
Escaped Mutant for Mutator "MatchArmRemoval":
--- Original
+++ New
@@ @@
foreach ($node->items as $item) {
$keyName = $item->keyName;
$name = match ($keyName::class) {
- ConstExprStringNode::class => $keyName->value,
IdentifierTypeNode::class => $keyName->name,
default => throw new ReflectionException(sprintf('%s is not supported.', $keyName::class)),
};
|