control_ flow_ in_ finally
Saiba mais sobre a regra de lint control_flow_in_finally.
Evite controle de fluxo em blocos finally.
Detalhes
#EVITE controle de fluxo saindo de blocos finally.
Usar controle de fluxo em blocos finally inevitavelmente causará comportamentos
inesperados que são difíceis de depurar.
RUIM:
class BadReturn {
double nonCompliantMethod() {
try {
return 1 / 0;
} catch (e) {
print(e);
} finally {
return 1.0; // LINT
}
}
}
RUIM:
class BadContinue {
double nonCompliantMethod() {
for (var o in [1, 2]) {
try {
print(o / 0);
} catch (e) {
print(e);
} finally {
continue; // LINT
}
}
return 1.0;
}
}
RUIM:
class BadBreak {
double nonCompliantMethod() {
for (var o in [1, 2]) {
try {
print(o / 0);
} catch (e) {
print(e);
} finally {
break; // LINT
}
}
return 1.0;
}
}
BOM:
class Ok {
double compliantMethod() {
var i = 5;
try {
i = 1 / 0;
} catch (e) {
print(e); // OK
}
return i;
}
}
Ativar
#
Para ativar a regra control_flow_in_finally, adicione control_flow_in_finally
em
linter > rules no seu arquivo analysis_options.yaml:
linter:
rules:
- control_flow_in_finally
Se você usa a sintaxe de mapa YAML para configurar as regras de lint,
adicione control_flow_in_finally: true em linter > rules:
linter:
rules:
control_flow_in_finally: 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ê.