type_ literal_ in_ constant_ pattern
Saiba mais sobre a regra de lint type_literal_in_constant_pattern.
Não use padrões constantes com literais de tipo.
Detalhes
#Se você quis testar se o objeto tem o tipo Foo, escreva Foo _.
RUIM:
void f(Object? x) {
if (x case num) {
print('int or double');
}
}
BOM:
void f(Object? x) {
if (x case num _) {
print('int or double');
}
}
Se você realmente quer testar se o valor correspondido (que você espera que tenha o tipo Type)
é igual ao literal de tipo Foo, então este lint pode ser silenciado usando
const (Foo).
RUIM:
void f(Object? x) {
if (x case int) {
print('int');
}
}
BOM:
void f(Object? x) {
if (x case const (int)) {
print('int');
}
}
Ativar
#
Para ativar a regra type_literal_in_constant_pattern, adicione type_literal_in_constant_pattern
em
linter > rules no seu arquivo analysis_options.yaml:
linter:
rules:
- type_literal_in_constant_pattern
Se você usa a sintaxe de mapa YAML para configurar as regras de lint,
adicione type_literal_in_constant_pattern: true em linter > rules:
linter:
rules:
type_literal_in_constant_pattern: true
Salvo indicação em contrário, a documentação neste site reflete Dart 3.13.7. Relatar um problema.
Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.