프로젝트 소개

TypeResolver와 FqsenResolver는 phpDocumentor의 PHP 라이브러리로, DocBlock의 타입에 대한 PSR-5 명세를 구현한다. 두 가지 리졸버를 제공한다. 하나는 타입 표현식을 값 객체로 변환하고, 다른 하나는 부분 구조 요소 이름을 완전 수식 구조 요소 이름(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 배지를 사용한다.