Rの引数を非推奨にする標準的な方法はありますか?引数を非難する方法は?
例:Web APIパッケージの場合は、これまですべての結果にページ区切りをつけてすべてをダウンロードする引数をpaging=TRUE
に含めました。
今度はlimit
引数を持ち、limit=0
に設定されている場合はすべてをダウンロードする必要があります。これは実質的にはpaging
引数の必要性を排除するので、私は人々に今は基本的に何もしないようにする必要があります。それ、どうやったら出来るの?
Rの引数を非推奨にする標準的な方法はありますか?引数を非難する方法は?
例:Web APIパッケージの場合は、これまですべての結果にページ区切りをつけてすべてをダウンロードする引数をpaging=TRUE
に含めました。
今度はlimit
引数を持ち、limit=0
に設定されている場合はすべてをダウンロードする必要があります。これは実質的にはpaging
引数の必要性を排除するので、私は人々に今は基本的に何もしないようにする必要があります。それ、どうやったら出来るの?
次のようなものが多分あなたのためにしますか?
foo <- function(paging = T, limit = 0) {
if (!missing("paging"))
warning("argument deprecated")
}
例出力:
# > foo()
# > foo(limit = 0)
# > foo(T)
# Warning message:
# In foo(T) : argument deprecated
# > foo(paging = T)
# Warning message:
# In foo(paging = T) : argument deprecated
@Rolandが指摘するように、それはまた、引数が廃止された機能のドキュメントで言及されるべきです。
メッセージに 'print'を使わないでください。それはユーザーによって抑圧することはできません。 – Roland
本当に良い点 –
lme4の作成者の例に従えます。彼らは今、パラメータの名前を変更し続けているので、ある日は廃止されるかもしれない3つのパラメータを持っています:http://search.r-project.org/R/library/lme4/html/predict.merMod.html – Roland
もっと明確にするために、 'limit = if(ページング)0 else theDefault'を実行し、ドキュメンテーションで' paging'パラメータを使用すべきでないと言ってください。もしあなたがこれについて強く感じるなら、 '警告'や 'メッセージ'を提供することもできます。 – Roland