Reputation: 27017
I'm attempting to debug an R program, and I'm sorely missing the stop if error
capability of matlab. I've gone through the R-debug-tools.pdf (mirror) documentation, but it didn't list anything like this. Is there any way to instruct R that, when any error at all is encountered - even one I didn't anticipate and plan for with a custom trace
function - it should stop execution and throw me into browser()
mode?
Upvotes: 18
Views: 6224
Reputation: 368201
R has the wonderful stopifnot()
which is pretty close to what C has in assert()
:
Description:
If any of the expressions in ‘...’ are not ‘all’ ‘TRUE’, ‘stop’ is called, producing an error message indicating the first of the elements of ‘...’ which were not true.
That is from help(stopifnot)
which also has examples, as usual.
Upvotes: 5