Execute a command on exit from a workspace

3 views (last 30 days)
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)

Categories

Find more on Debugging and Analysis in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!