unnecessary_unawaited: 불필요한 unawaited() 호출을 빼세요
unnecessary_unawaited: 불필요한 unawaited() 호출을 빼세요
unnecessary_unawaited는 @awaitNotRequired로 표시된 대상에 굳이 unawaited()로 감싸지 말라고 알려주는 린트(lint) 규칙이에요. 불필요한 감싸기를 없애 코드를 더 명확하게 만들어 줘요.
본문
상세 설명
함수, 메서드, 연산자에 대한 호출이나, 필드·getter·최상위 변수에 대한 참조가 @awaitNotRequired로 주석 처리되어 있다면, 그것을 unawaited()로 감쌀 필요가 없어요.
BAD:
@awaitNotRequired
Future<LogMessage> log(String message) { ... }
void f() {
unawaited(log('Message.'));
}
GOOD:
@awaitNotRequired
Future<LogMessage> log(String message) { ... }
void f() {
log('Message.');
}
활성화하기
unnecessary_unawaited 규칙을 활성화하려면 analysis_options.yaml 파일의 linter > rules 아래에 unnecessary_unawaited를 추가해요.
linter:
rules:
- unnecessary_unawaited
대신 YAML map 문법으로 린터 규칙을 설정한다면, linter > rules 아래에 unnecessary_unawaited: true를 추가해요.
linter:
rules:
unnecessary_unawaited: true
참고로 이 규칙은 Dart 3.9에서 추가됐고, 자동 수정(fix)이 제공돼요.