destructure

패턴 해체는 값의 모양이 맞을 때 내부 값을 이름에 묶는다

구조체, enum, tuple은 겉모양을 맞춰야 바인딩이 생기며, 필요한 필드만 꺼낼 수도 있다.

구조체Point { x, y }

필드 이름으로 꺼냄

enumMessage::Move { x, y }

variant까지 맞춤

tuple(a, _, c)

위치로 꺼냄

구분의미판단
모양 불일치매치 실패다음 arm으로 이동
부분 무시_ 또는 ..필요 없는 값 버림
이름 바인딩x, y본문에서 사용
guardif 조건모양 이후 추가 조건

핵심 패턴 해체는 값을 복사하는 기능이 아니라 구조를 검사하면서 이름을 붙이는 기능이다.