"Armadilha" para erros
errcatch(n [,'action'] [,'option']) errcatch()
inteiro
strings
errcatch
fornece uma "ação" (manipulador de
erros) quando um erro do tipo n
ocorre.
n
tem o seguinte significado:
Se n>0
, n
é o número do
erro a ser apanhado
Se n<0
todos os erros devem ser
apanhados
action
é um dos seguintes strings:
uma pausa é executada quando se apanha o erro. Esta opção é
útil para propósitos de depuramento. Use
whereami()
para obter informações sobre o
contexto corrente.
a próxima instrução na função ou em arquivos executáveis é
executada, a instrução corrente é ignorada. É possível verificar se
um erro ocorreu utilizando a função iserror
function . Não se esqueça de apagar o erro utilizando a função
errclear
o quanto antes. Esta função é útil para
recuperação de erros. Em muitos casos, o uso de errcatch(n,"continue",..)
pode ser substituído pelo uso da
função execstr ou da estrutura de
controle try control structure.
modo padrão, todas as funções intermediárias são canceladas e o Scilab retorna ao prompt de nível 0.
interrompe a sessão do Scilab corrente (útil quando o Scilab é chamado por um programa externo).
option
é o string 'nomessage'
para cancelar mensagens de erro.
Para retornar ao modo padrão, entre
errcatch(-1,"kill")
ou, de modo semelhante,
errcatch(-1)
.errcatch()
é um
equivalente obsoleto a errcatch(-1)
.
As ações de errcatch
se aplicm ao contexto
corrente de avaliação (function, exec, pause ) e a todos os subníveis. Uma
segunda chamada a errcatch
em um sub-nível esconde a
inicial para este sub-nível. Se uma segunda chamada a
errcatch
é feita no mesmo nível o efeito da primeira é
removido.
Quando chamado no contexto de uma função do Scilab ou em exec o
errcatch
é automaticamente reiniciado quando a função
retorna
Version | Description |
5.5.2 | errcatch was removed after Scilab 5.5.2. |