각 arm은 패턴과 실행식을 화살표로 연결합니다.
match는 값을 패턴과 비교해 갈래를 고르고, Rust는 가능한 경우가 빠지지 않았는지 컴파일 단계에서 검사합니다.
패턴 안에서 값을 이름에 묶으면 오른쪽 분기가 배리언트 내부 데이터를 참조합니다.
각 arm은 패턴과 실행식을 화살표로 연결합니다.
Coin::Quarter(state)처럼 내부 값을 새 이름으로 받을 수 있습니다.
Some 값과 None을 분리해 부재 상태를 명시적으로 다룹니다.
other나 _로 남은 경우를 모으되 필요한 정보 보존 여부를 구분합니다.
어떤 enum 또는 값 범위를 나눌지 정합니다.
의미 있는 경우를 먼저 구체적인 패턴으로 적습니다.
남은 경우를 other 또는 _로 처리할지 결정합니다.
match는 조건문보다 강하게 경우의 수를 문서화하고, 빠진 분기를 컴파일러가 함께 확인하게 합니다.