Pular para o conteúdo principal

redirect_to_non_class

Detalhes sobre o diagnóstico 'redirect_to_non_class' produzido pelo analisador do Dart.

The name '{0}' isn't a type and can't be used in a redirected constructor.

Descrição

#

Uma forma de implementar um construtor de fábrica é redirecionar para outro construtor, referenciando o nome do construtor. O analisador emite este diagnóstico quando o redirecionamento é para algo que não é um construtor.

Exemplo

#

O código a seguir gera este diagnóstico porque f é uma função:

dart
C f() => throw 0;
​
class C {
  factory C() = f;
}

Correções comuns

#

Se o construtor não estiver definido, defina-o ou substitua-o por um construtor que esteja definido.

Se o construtor estiver definido, mas a classe que o define não estiver visível, provavelmente você precisa adicionar um import.

Se você está tentando retornar o valor devolvido por uma função, reescreva o construtor para que ele retorne o valor a partir do corpo do construtor:

dart
C f() => throw 0;
​
class C {
  factory C() => f();
}

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ê.