Question

By stack, I refer to the output from traceback() upon error condition. How does one 'clear the stack' so one gets 'No traceback available' from traceback()? thanks

Était-ce utile?

La solution

It can be done by overwriting the .Traceback variable which is currently stored in the base namespace:

stop("Hammer Time!")
Error: Hammer Time!
traceback()
1: stop("Hammer Time!")
assign(".Traceback",NULL,"package:base")
traceback()
No traceback available

Be warned though:

It is undocumented where .Traceback is stored nor that it is visible, and this is subject to change.

Autres conseils

you could always do this

 getOption(showWarnCalls, FALSE)
 getOption(showErrorCalls, FALSE)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top