분산 조건부 타입은 union 멤버를 하나씩 검사한다
T가 union이면 조건부 타입은 전체 union을 한 덩어리로 보지 않고 각 멤버에 따로 적용한 뒤 다시 합친다.
T = A | B | C
입력 union
A extends U ?
A만 먼저 검사
B extends U ?
B도 별도 검사
C extends U ?
C도 별도 검사
Merge
선택 결과를 union으로 합침
| 점검 | 기준 |
|---|---|
| 분산 조건 | T가 naked type parameter일 때 발생 |
| 막는 법 | [T] extends [U]처럼 tuple로 감싸 전체 검사 |
| 핵심 | 유틸리티 타입은 이 분산 성질로 union을 걸러낸다 |
핵심 유틸리티 타입은 이 분산 성질로 union을 걸러낸다