must_ return_ void
Detalhes sobre o diagnóstico 'must_return_void' produzido pelo analisador do Dart.
The return type of the function passed to 'NativeCallable.listener' must be 'void' rather than '{0}'.
Descrição
#
O analisador emite este diagnóstico quando você passa uma função que não retorna
void para o construtor NativeCallable.listener.
NativeCallable.listener cria um callable nativo que pode ser invocado a partir
de qualquer thread. O código nativo que invoca o callable envia uma mensagem de
volta para o isolate que criou o callable e não espera uma resposta. Por isso,
não é possível retornar um resultado do callable.
Para mais informações sobre FFI, consulte interoperabilidade com C usando dart:ffi.
Exemplo
#
O código a seguir gera este diagnóstico porque a função f retorna int em vez
de void.
import 'dart:ffi';
int f(int i) => i * 2;
void g() {
NativeCallable<Int32 Function(Int32)>.listener(f);
}
Correções comuns
#Altere o tipo de retorno da função para void.
import 'dart:ffi';
void f(int i) => print(i * 2);
void g() {
NativeCallable<Void Function(Int32)>.listener(f);
}
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ê.