dbstop inside an anonymous function

조회 수: 2 (최근 30일)
Leo Simon
Leo Simon 2013년 2월 10일
Is there a way to set the debugger to stop inside an anonymous function?
The following obviously won't work
dbstop in myAnonFunction
because myAnonFunction is internal to my script. I can of course accomplish what I want with
dbstop if error
and then insert an error into my anonymous function. But this is hardly good practice! There must be a better way...
Thanks, Leo

답변 (2개)

the cyclist
the cyclist 2013년 2월 10일
편집: the cyclist 2013년 2월 10일
As you may know, in the editor, inside a script you can click on the little hyphen next to the line number, and that will set a breakpoint.
If there is an anonymous function definition on that line of the script, you will be asked if you want the breakpoint at the beginning of that line of code, or at the anonymous function (i.e. whenever that function is called from elsewhere in the code).
EDIT in response to comment:
You can do this programmatically as follows:
>> dbstop in filename at 3@
will put a breakpoint at the anonymous function on line 3 of the file filename.m.
This is described in the section on "location" in
>> doc dbstop
  댓글 수: 3
the cyclist
the cyclist 2013년 2월 10일
Edited my response to explain how to do this programmatically.
per isakson
per isakson 2013년 2월 10일
Thanks! Yes, it does but I missed it.

댓글을 달려면 로그인하십시오.


Leo Simon
Leo Simon 2013년 2월 10일
Thanks, that's good to know. But I'm a dinosaur who hates GUIs so do everything from the command line. I use the -nodesktop flag and don't display the editor. Presumably there's a way to mimic that hyphen from the command line??
  댓글 수: 1
the cyclist
the cyclist 2013년 2월 10일
Leo, I edited my response to show how to do it programmatically.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Debugging and Analysis에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by