55---
66
77<p align =" center " >
8- <a href="https://packagist.org/packages/type-lang/reflection-converter "><img src="https://poser.pugx.org/type-lang/reflection-converter /require/php?style=for-the-badge" alt="PHP 8.1+"></a>
9- <a href="https://packagist.org/packages/type-lang/reflection-converter "><img src="https://poser.pugx.org/type-lang/reflection-converter /version?style=for-the-badge" alt="Latest Stable Version"></a>
10- <a href="https://packagist.org/packages/type-lang/reflection-converter "><img src="https://poser.pugx.org/type-lang/reflection-converter /v/unstable?style=for-the-badge" alt="Latest Unstable Version"></a>
11- <a href="https://raw.githubusercontent.com/php-type-language/reflection-converter /blob/master/LICENSE"><img src="https://poser.pugx.org/type-lang/reflection-converter /license?style=for-the-badge" alt="License MIT"></a>
8+ <a href="https://packagist.org/packages/type-lang/reader "><img src="https://poser.pugx.org/type-lang/reader /require/php?style=for-the-badge" alt="PHP 8.1+"></a>
9+ <a href="https://packagist.org/packages/type-lang/reader "><img src="https://poser.pugx.org/type-lang/reader /version?style=for-the-badge" alt="Latest Stable Version"></a>
10+ <a href="https://packagist.org/packages/type-lang/reader "><img src="https://poser.pugx.org/type-lang/reader /v/unstable?style=for-the-badge" alt="Latest Unstable Version"></a>
11+ <a href="https://raw.githubusercontent.com/php-type-language/reader /blob/master/LICENSE"><img src="https://poser.pugx.org/type-lang/reader /license?style=for-the-badge" alt="License MIT"></a>
1212</p >
1313<p align =" center " >
14- <a href="https://github.com/php-type-language/reflection-converter /actions"><img src="https://github.com/php-type-language/reflection-converter /workflows/tests/badge.svg"></a>
14+ <a href="https://github.com/php-type-language/reader /actions"><img src="https://github.com/php-type-language/reader /workflows/tests/badge.svg"></a>
1515</p >
1616
1717Provides a set of methods for converting PHP reflection objects into the
@@ -25,18 +25,17 @@ Type Language Reflection Converter is available as Composer repository and can
2525be installed using the following command in a root of your project:
2626
2727``` sh
28- $ composer require type-lang/reflection-converter
28+ $ composer require type-lang/reader
2929```
3030
3131## Quick Start
3232
3333``` php
34- // Type contains ReflectionNamedType{ name: "void" }
35- $function = new \ReflectionFunction(function(): void {});
36- $type = $function->getReturnType();
34+ $reader = new \TypeLang\Reader\ReflectionReader();
3735
38- $converter = new \TypeLang\ReflectionConverter\Converter();
39- $node = $converter->convert($type);
36+ $node = $reader->findFunctionType(
37+ function: new \ReflectionFunction(function(): void {}),
38+ );
4039
4140var_dump($node);
4241```
@@ -59,42 +58,42 @@ TypeLang\Parser\Node\Stmt\NamedTypeNode {
5958}
6059```
6160
62- ### Creating From Reflection
61+ ### Creating From Reflection
6362
6463``` php
6564$class = new \ReflectionClass(Path\To\Example::class);
6665
6766// Printer component provided by "type-lang/printer" package.
6867$printer = new \TypeLang\Printer\PrettyPrinter();
6968
70- $converter = new \TypeLang\ReflectionConverter\Converter ();
69+ $converter = new \TypeLang\Reader\ReflectionReader ();
7170
7271// Dump all constants with its types.
7372foreach ($class->getReflectionConstants() as $constant) {
7473 // Creates type node AST from a constant's type.
75- if ($type = $converter->convertConstantType ($constant)) {
74+ if ($type = $converter->findConstantType ($constant)) {
7675 echo 'const ' . $constant->name . ' has type ' . $printer->print($type) . "\n";
7776 }
7877}
7978
8079// Dump all properties with its types.
8180foreach ($class->getProperties() as $property) {
8281 // Creates type node AST from a property's type.
83- if ($type = $converter->convertPropertyType ($property)) {
82+ if ($type = $converter->findPropertyType ($property)) {
8483 echo 'property ' . $property->name . ' has type ' . $printer->print($type) . "\n";
8584 }
8685}
8786
8887// Dump all methods with its types.
8988foreach ($class->getMethods() as $method) {
9089 // Creates type node AST from any function's return type.
91- if ($type = $converter->convertFunctionType ($method)) {
90+ if ($type = $converter->findFunctionType ($method)) {
9291 echo 'function ' . $method->name . ' has type ' . $printer->print($type) . "\n";
9392 }
9493
9594 // Creates type node AST from a parameter's type.
9695 foreach ($method->getParameters() as $parameter) {
97- if ($type = $converter->convertParameterType ($parameter)) {
96+ if ($type = $converter->findParameterType ($parameter)) {
9897 echo 'parameter ' . $parameter->name . ' has type ' . $printer->print($type) . "\n";
9998 }
10099 }
0 commit comments