このプロジェクトについて
TypeResolver and FqsenResolverは、phpDocumentorによるPHPライブラリで、DocBlock内の型に関するPSR-5仕様を実装しています。2つのリゾルバを提供します。1つは型式を値オブジェクトに変換するもの、もう1つは部分的な構造要素名を完全修飾構造要素名(FQSEN)に解決するものです。
TypeResolverが扱うもの:
- stringやvoidなどのPHPプリミティブおよび擬似プリミティブ(`@var string`、`@return void`)
- ある型の配列などの複合型(`@var string[]`)
- ユニオンなどの合成型(`@var string|integer`)
- 配列式(`@var (string|TypeResolver)[]`)
- オブジェクトとインターフェース。PHP 7.1で導入されたnullable型も含み、これらはNullableオブジェクトでラップされます
FqsenResolverが扱うもの:
- 定数、関数、クラス、インターフェース、トレイトの式
- クラス定数、プロパティ、メソッド(例: `\MyNamespace\MyClass::myMethod()`)
重要な機能は、部分的なクラス名および要素名を完全修飾名に展開することです。これを実現するために、リゾルバは現在の名前空間と名前空間エイリアス/インポートを保持するContextオブジェクトを受け取ります。Contextは手動で作成することも、ContextFactoryを介してリフレクタから、または名前空間とファイルソースコードから作成することもできます。
インストールはComposer経由で行います: `composer require phpdocumentor/type-resolver`。READMEには実行可能な例が含まれており、examplesフォルダを参照しています。このプロジェクトはMITライセンスで、ビルドステータス、カバレッジ、コード品質のためにQA、Coveralls、Scrutinizerのバッジを使用しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.