on.exit
を使用する関数の最後のステートメントの後にトレース式を挿入したいとします。簡素化されたバージョン(実際の機能は、パッケージのロックされた名前空間にある):`trace`最後のステートメントの後
f <- function() {
on.exit(NULL)
x <- 1
x <- 2
}
trace(f, at=4, quote(cat(x, "\n")))
f()
## Tracing f() step 4
## 1
trace(f, at=5, quote(cat(x, "\n")))
## Error in fBody[[i]] : subscript out of bounds
アイデアはtrace
を使用して、画面に出編「2」cat
を取得することです。これを行う方法がないように見えます。私は間違っていると思っています。私はedit
引数を使用することができます実現しており、この恐ろしいからくりを思い付いたヘルプページの必死の再読み込みで
私は(例えば ''、untrace' tracingState'、また半認可形でロックの名前空間内の関数を変更する)既存の機能を活用できるように 'trace'を使用しようとしています。 'call'の使い方がいいです、+1。 – BrodieG
最後のポイント(名前空間がロックされている)をクリアするための変更された質問。行方不明から申し訳ありません。 – BrodieG