"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