const 생성자를 const 없이 호출하면 안 돼요
const 생성자를 const 없이 호출하면 안 돼요 (@literal 생성자)
Dart 분석기가 @literal 어노테이션이 붙은 생성자를 const 키워드 없이 호출할 때 이 진단을 내보내요. 모든 인자가 상수라면 생성자를 const로 호출할 수 있는데, 그런 상황인데도 const를 빼먹었을 때 나타나죠. @literal 어노테이션은 "가능하면 상수 값을 만들 때 이 생성자를 사용하라"는 뜻이에요.
본문
아래 코드는 인자에 상수만 넘기고 있는데도 생성자를 const 없이 호출하고 있어서 이 진단이 발생해요.
import 'package:meta/meta.dart';
class C {
@literal
const C();
}
C f() => C();
흔한 해결 방법
생성자 호출 앞에 const 키워드를 붙여주면 돼요.
import 'package:meta/meta.dart';
class C {
@literal
const C();
}
void f() => const C();