handleError - generic error-handling function

A general-purpose error-handling function with an ability to register automatic cleanup actions

Ahora está siguiendo esta publicación

handleError is a general-purpose error-handling function. The user can register cleanup actions that will automatically be activated in case of error. If an error occurred and handleError is called, then a hyper-linked stack-trace is displayed in the command window.

Syntax:
ERRMSG = handleError
ACTIONIDX = handleError('register',ACTION)
ERRMSG = handleError('unregister',ACTIONIDX)

ACTIONIDX = handleError('register',ACTION) will register cleanup actions to be performed in case of error. ACTION may be a single string (e.g., 'msgbox(lasterr)') or a cell array with arguments for the sprintf function (e.g., {'set(%.19g,''Pointer'',''arrow'')',gcf}). The returned ACTIONIDX is the sequential cleanup action index.

ERRMSG = handleError('unregister',ACTIONIDX) will perform and unregister cleanup action(s) ACTIONIDX. The returned ERRMSG is the last error msg.

ERRMSG = handleError; will automatically perform and unregister any registered cleanup actions. Then, the last error message will be displayed in the Command Window, followed by a hyper-linked stack trace of that error. This format is the one that should be used within catch blocks (see Example):

Example:
try
. cleanups(1)=handleError('register',{'set(%.19g,''Pointer'',''arrow'')',gcf});
. cleanups(2)=handleError('register','disp(''finished processing!'')');
. set(gcf,'Pointer','watch'); drawnow;
. ... some complex computation ...
. handleError('unregister',cleanups); %eval & unregister cleanup actions
catch
. handleError; %display error stack; eval & unregister cleanup actions
end

Compatibility:
Created on Matlab 7, but should work on earlier versions too. Please report any issues to altmany (at) gmail dot com.

Citar como

Yair Altman (2026). handleError - generic error-handling function (https://es.mathworks.com/matlabcentral/fileexchange/15059-handleerror-generic-error-handling-function), MATLAB Central File Exchange. Recuperado .

Categorías

Más información sobre Scope Variables and Generate Names en Help Center y MATLAB Answers.

Información general

Compatibilidad con la versión de MATLAB

  • Compatible con cualquier versión

Compatibilidad con las plataformas

  • Windows
  • macOS
  • Linux
Versión Publicado Notas de la versión Action
1.0.0.0

updated description text