prefer_null_aware_method_calls: 함수 호출은 `?.call()`로 해요

prefer_null_aware_method_calls: 함수 호출은 ?.call()로 해요

함수나 메서드가 null이 아닐 때만 호출하고 싶을 때 if (f != null) f!();처럼 쓰면 번거로워요. prefer_null_aware_method_calls 린터 규칙은 이런 경우 ?.call()을 쓰도록 알려주는 규칙이에요.

출처: Prefer null-aware method calls

본문

Details

함수나 메서드 f의 null 여부를 확인한 뒤 호출하는 대신 f?.call()을 사용할 수 있어요.

BAD:

if (f != null) f!();

GOOD:

f?.call();

Enable

prefer_null_aware_method_calls 규칙을 켜려면 analysis_options.yaml 파일의 linter > rules 아래에 prefer_null_aware_method_calls을 추가해요.

linter:
  rules:
    - prefer_null_aware_method_calls

대신 YAML 맵(map) 문법으로 린터 규칙을 설정하고 있다면 linter > rules 아래에 prefer_null_aware_method_calls: true를 추가해요.

linter:
  rules:
    prefer_null_aware_method_calls: true

더 알아보기