Rust pattern

@ 바인딩으로 검사와 저장을 한 번에

@는 값이 특정 패턴에 맞는지 확인하면서, 그 값을 갈래 본문에서 사용할 이름에도 연결합니다.

예제 17-29 읽는 순서

1

값의 모양 확인

Message::Hello { id: 5 }

먼저 배리언트와 필드 모양이 갈래 패턴과 맞는지 봅니다.

2

범위 검사와 바인딩

id: id_variable @ 3..=7

5가 범위 안에 있으므로 동시에 id_variable에 저장됩니다.

3

갈래 본문에서 사용

Found an id in range: 5

범위만 통과한 것이 아니라 실제 값도 출력에 사용할 수 있습니다.