Descrição
Esta função reinicia o loop atual sem forçar a avaliação da instrução de controle. Nenhuma outra instrução no bloco é executada. Um bloco de continuação, se presente, não será executado. Se LABEL for especificado, a execução será reiniciada no início do loop identificado por LABEL.
Sintaxe
A seguir está a sintaxe simples para esta função -
redo LABEL
redo
Valor de retorno
Esta função não retorna nenhum valor.
Exemplo
A seguir está o código de exemplo que mostra seu uso básico -
#!/usr/bin/perl -w
$c = 1;
$d = 4;
LABEL: {
$c++;
$e = 5;
redo LABEL if ($c < 3);
$f = 6;
last LABEL if ($e > 3);
$g = 7;
}
$h = 8;
print ("$c $d $e $f $g $h\n");
Quando o código acima é executado, ele produz o seguinte resultado -
3 4 5 6 8