Вопрос

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

Это было полезно?

Решение

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.

Другие советы

you could always do this

 getOption(showWarnCalls, FALSE)
 getOption(showErrorCalls, FALSE)
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top