non_void_return_for_operator 진단: []= 연산자의 반환 타입은 void여야 해요

non_void_return_for_operator 진단: []= 연산자의 반환 타입은 void여야 해요

Dart 분석기가 만들어 내는 non_void_return_for_operator 진단에 대한 설명이에요.

출처: non_void_return_for_operator

본문

[]= 연산자의 선언이 void가 아닌 반환 타입을 가질 때 분석기가 이 진단을 만들어요.

설명

[]= 연산자는 값을 설정(할당)하는 역할이라 반환 타입은 반드시 void여야 해요. 다른 반환 타입을 쓰면 이 진단이 나와요.

예시

다음 코드는 []= 연산자의 선언이 int 반환 타입을 가지기 때문에 이 진단을 만들어요.

class C {
  int operator []=(int index, int value) => 0;
}

흔한 해결 방법

반환 타입을 void로 바꿔요.

class C {
  void operator []=(int index, int value) => 0;
}

더 알아보기