Как работает muffleWarning
в invokeRestart("muffleWarning")
? Я спрашиваю, потому что в следующем коде:Функция автоматического перезапуска R, которая не прерывается
e <-expression({
warning("Step 1",immediate.=TRUE)
warning("Step 2",immediate.=TRUE)
})
r <- withRestarts(withCallingHandlers(eval(e)
,warning=function(co){
print(co) #1
invokeRestart("mymuffleWarn",co)
})
, mymuffleWarn=function(co) print(conditionMessage(co)))
я получаю выход (от # 1) для первого предупреждения. Однако, если я заменил mymufflewarn
на muffleWarning
(в invokeRestart
) все выходы print(co)
.
Благодаря