PhpStorm 2018.3 (EAP)에서 PSR-5 : PHPDoc의 제네릭 구문과 교차 형식이 지원되었습니다.

PhpStorm 2018.3 EAP 183.2635.12 | PhpStorm Blog 에 의하면,PhpStorm 2018.3(EAP)로 PSR-5:PHPDoc 의 제네릭스 구문이나 교차형이 서포트된 것 같다.

제네릭 구문



PhpStorm 2018.3부터 PHPDoc에서 array<Type> 와 같은 형태 선언이 인식되게 되었다. 지금까지는 <>의 내용이 형으로 인식되지 않았다.



다만, 코드 보완이나 인스펙션은 제네릭스 구문에 대응하고 있지 않기 때문에, 현재 상태에서 코드 보완이나 인스펙션을 작동시키려면 Type[] 와 같은 쓰는 방법을 하거나, array<TypeB>|TypeB[] 와 같은 병기를 하지 않으면 안 된다.



교차형(intersection types)



지금까지의 PhpStorm은, PHPDoc내의 공용체형(union types)을 인식하고 있었지만, 2018.3부터는 교차형(intersection types)도 인식해 준다.



지금까지, 사실은 교차형인데 PhpStorm에 인식되지 않았기 때문에 공용체형의 표기로 대처해 온 부분은, 교차형으로서 쓸 수 있다.

이쪽도 인스펙션에는 미대응이므로, 교차형을 채우지 않는 형을 건네주어도 경고가 나오지 않는다. 검사에서 공용체 유형으로 인식됩니다.



소감


  • Phan이나 Psalm, PHPStan 같은 해석 툴을 사용하고 있는 사람에게는 기쁜 업데이트였을지도.
  • 오늘 현재 Draft의 PSR-19에서는 제네릭스형 파라미터 선언의 태그 남아있다.
  • 코드 완성과 검사는 향후 업데이트에 기대하고 싶다.
  • 좋은 웹페이지 즐겨찾기