guarded pattern의 위에서 아래 선택

같은 type을 값 조건으로 세분화할 때 순서가 의미를 갖는다.

1

Invalid

minutes ≤ 0

first guard

2

Too long

minutes > limit

second guard

3

Normal

남은 AddMinutes

type fallback

4

Other subtype

다음 pattern 검사

continue

핵심: 일반 type pattern을 먼저 두면 뒤 guarded pattern이 dominated되어 compile되지 않는다.