Pattern Syntax

패턴 문법 선택 점검 기준

패턴 문법은 값 비교, 구조 분해, 범위, 무시, 가드까지 제공하므로 읽는 사람이 무엇을 검사하는지 바로 보이게 골라야 합니다.

검사인가, 추출인가, 둘 다인가 먼저 목적을 고르면 문법 선택이 좁혀집니다.
start 값을 어떻게 확인할까? 비교, 분해, 무시, 추가 조건 중 주목적을 먼저 고릅니다.

정확한 값인가?

하나의 값 또는 범위와 비교합니다.

literal / range 1, "ok", 'a'..='z'

안쪽 값을 꺼내나?

튜플, 구조체, enum의 일부를 바인딩합니다.

destructure Point { x, y }, Some(v)

나머지는 버리나?

관심 없는 필드를 명확히 제외합니다.

_ / .. (first, ..), Config { port, .. }

검사와 이름이 모두 필요한가?

전체 값도 보존하고 내부 값도 꺼냅니다.

@ binding id @ 3..=7

패턴만으로 부족한가?

값 사이 관계나 추가 조건을 붙입니다.

match guard Some(x) if x > limit
값 비교 리터럴과 범위는 “맞는지”를 먼저 보여줍니다.
데이터 추출 구조 분해와 @는 필요한 이름을 동시에 만듭니다.
조건 보강 guard는 패턴 뒤에 의미 조건을 덧붙입니다.