enum_constant_with_non_const_constructor 진단: const가 아닌 생성자로 열거형 값 만들기
enum_constant_with_non_const_constructor 진단: const가 아닌 생성자로 열거형 값 만들기
Dart 분석기가 내보내는 진단에는 이름이 있어요. enum_constant_with_non_const_constructor는 호출된 생성자가 const 생성자가 아닐 때 분석기가 알려주는 컴파일 타임 진단이에요. 열거형 값은 상수여야 하는데, const가 아닌 생성자로 만들 수는 없어요.
본문
설명
열거형 값을 만들 때 factory 생성자나 const로 표시되지 않은 generative 생성자를 사용하면 분석기가 이 진단을 만들어요. 열거형 값은 항상 상수여야 하기 때문이에요.
예시
아래 코드는 열거형 값 e가 factory 생성자에 의해 초기화되므로 이 진단이 나와요.
enum E {
e();
factory E() => e;
}
흔한 해결 방법
const로 표시된 generative 생성자를 사용해요.
enum E {
e._();
factory E() => e;
const E._();
}