MATLAB Answers

Execute a command on exit from a workspace

10 views (last 30 days)
Leo Simon
Leo Simon on 2 Apr 2014
Answered: Leo Simon on 22 Feb 2016
Hi
I'd like to be able to execute a command immediately after I leave a function. In particular, I've written a function called myKeyboard, which does a few things (e.g., reports the results of dbstack), and then keyboards. But I'd like it to keyboard immediately after myKeyboard is completed, rather than within myKeyboard. From the documentation it looks as though the command
onCleanup
should do this, but it doesn't. It seems as though onCleanup only accepts functions as inputs, and executing a function on exit from myKeyboard would not accomplish what I want to accomplish
Thanks very much for any help...
Leo

Accepted Answer

Leo Simon
Leo Simon on 22 Feb 2016
Here's an answer, obtained with the help of Matlab technical support
%Keyboards in the CALLER workspace not current workspace
tmpStack = dbstack;
eval(['dbstop in ' strtrim(strtok(tmpStack(end).name,'.')) ' at ' num2str(tmpStack(end).line + 1) ]);

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!