|
22 | 22 | use PHPStan\PhpDocParser\Ast\PhpDoc\UsesTagValueNode;
|
23 | 23 | use PHPStan\PhpDocParser\Ast\PhpDoc\VarTagValueNode;
|
24 | 24 | use PHPStan\PhpDocParser\Ast\Type\ArrayTypeNode;
|
| 25 | +use PHPStan\PhpDocParser\Ast\Type\CallableTypeNode; |
| 26 | +use PHPStan\PhpDocParser\Ast\Type\CallableTypeParameterNode; |
25 | 27 | use PHPStan\PhpDocParser\Ast\Type\GenericTypeNode;
|
26 | 28 | use PHPStan\PhpDocParser\Ast\Type\IdentifierTypeNode;
|
27 | 29 | use PHPStan\PhpDocParser\Ast\Type\UnionTypeNode;
|
@@ -1603,6 +1605,57 @@ public function provideSingleLinePhpDocData(): \Iterator
|
1603 | 1605 | ),
|
1604 | 1606 | ]),
|
1605 | 1607 | ];
|
| 1608 | + |
| 1609 | + yield [ |
| 1610 | + 'callable with space between keyword and parameters', |
| 1611 | + '/** @var callable (int): void */', |
| 1612 | + new PhpDocNode([ |
| 1613 | + new PhpDocTagNode( |
| 1614 | + '@var', |
| 1615 | + new VarTagValueNode( |
| 1616 | + new CallableTypeNode( |
| 1617 | + new IdentifierTypeNode('callable'), |
| 1618 | + [ |
| 1619 | + new CallableTypeParameterNode(new IdentifierTypeNode('int'), false, false, '', false) |
| 1620 | + ], |
| 1621 | + new IdentifierTypeNode('void') |
| 1622 | + ), |
| 1623 | + '', |
| 1624 | + '' |
| 1625 | + ) |
| 1626 | + ), |
| 1627 | + ]), |
| 1628 | + ]; |
| 1629 | + |
| 1630 | + yield [ |
| 1631 | + 'callable with description in parentheses', |
| 1632 | + '/** @var callable (int) */', |
| 1633 | + new PhpDocNode([ |
| 1634 | + new PhpDocTagNode( |
| 1635 | + '@var', |
| 1636 | + new VarTagValueNode( |
| 1637 | + new IdentifierTypeNode('callable'), |
| 1638 | + '', |
| 1639 | + '(int)' |
| 1640 | + ) |
| 1641 | + ), |
| 1642 | + ]), |
| 1643 | + ]; |
| 1644 | + |
| 1645 | + yield [ |
| 1646 | + 'callable with incomplete signature without return type', |
| 1647 | + '/** @var callable(int) */', |
| 1648 | + new PhpDocNode([ |
| 1649 | + new PhpDocTagNode( |
| 1650 | + '@var', |
| 1651 | + new VarTagValueNode( |
| 1652 | + new IdentifierTypeNode('callable'), |
| 1653 | + '', |
| 1654 | + '(int)' |
| 1655 | + ) |
| 1656 | + ), |
| 1657 | + ]), |
| 1658 | + ]; |
1606 | 1659 | }
|
1607 | 1660 |
|
1608 | 1661 |
|
|
0 commit comments