no_duplicate_case_values 규칙 — 같은 값을 가진 case 중복 금지
no_duplicate_case_values 규칙 — 같은 값을 가진 case 중복 금지
switch 문 안에서 같은 값을 가진 case를 두 번 쓰면 보통 오타이거나 상수 값을 바꿨는데 정리하지 않은 경우예요. 이 린트 규칙은 그런 중복을 잡아줘요.
본문
같은 값을 가진 case를 두 개 이상 쓰지 마세요.
같은 값을 가진 case를 두 번 쓰는 건 대개 오타이거나 상수의 값을 바꾼 뒤 남은 잔재예요.
좋지 않은 예:
const int A = 1;
switch (v) {
case 1:
case 2:
case A:
case 2:
}
좋은 예:
const int A = 1;
switch (v) {
case A:
case 2:
}
참고: 이 린트는 Dart 2.19 이하로 옵트인한 라이브러리에서만 중복 case를 보고해요. Dart 3.0 이후부터는 중복 case가 analyzer에 의해 죽은 코드(dead code)로 보고돼요.
활성화하기
no_duplicate_case_values 규칙을 활성화하려면 analysis_options.yaml 파일의 linter > rules 아래에 no_duplicate_case_values를 추가하면 돼요:
linter:
rules:
- no_duplicate_case_values
린트 규칙을 YAML 맵 문법으로 설정하고 있다면, linter > rules 아래에 no_duplicate_case_values: true를 추가하면 돼요:
linter:
rules:
no_duplicate_case_values: true