1717use phpDocumentor \Reflection \FqsenResolver ;
1818use phpDocumentor \Reflection \Php \Expression ;
1919use phpDocumentor \Reflection \Type ;
20+ use phpDocumentor \Reflection \TypeResolver ;
2021use phpDocumentor \Reflection \Types \Context ;
2122use PhpParser \Node \Expr ;
2223use PhpParser \Node \Name ;
2324use PhpParser \PrettyPrinter \Standard ;
2425
26+ use function var_dump ;
27+
2528final class ExpressionPrinter extends Standard
2629{
2730 /** @var array<string, Fqsen|Type> */
2831 private array $ parts = [];
2932 private Context |null $ context = null ;
30- private FqsenResolver $ fqsenResolver ;
33+ private TypeResolver $ typeResolver ;
3134
3235 /** {@inheritDoc} */
3336 public function __construct (array $ options = [])
3437 {
3538 parent ::__construct ($ options );
3639
37- $ this ->fqsenResolver = new FqsenResolver ();
40+ $ this ->typeResolver = new TypeResolver (
41+ new FqsenResolver (),
42+ );
3843 }
3944
4045 protected function resetState (): void
@@ -53,7 +58,7 @@ public function prettyPrintExpr(Expr $node, Context|null $context = null): strin
5358
5459 protected function pName (Name $ node ): string
5560 {
56- $ renderedName = $ this ->fqsenResolver ->resolve (parent ::pName ($ node ), $ this ->context );
61+ $ renderedName = $ this ->typeResolver ->resolve (parent ::pName ($ node ), $ this ->context );
5762 $ placeholder = Expression::generatePlaceholder ((string ) $ renderedName );
5863 $ this ->parts [$ placeholder ] = $ renderedName ;
5964
0 commit comments