Я хочу заменить print () / cat () на message () / warning (), поскольку хочу, чтобы он подавлялся.
Однако мой код выглядит довольно вложенным print () / cat () и использовал print () / cat () несколько раз.
Интересно, есть ли более простой способ исправить эту проблему разово.
Вместо packageStartupMessage () и suppressPackageStartupMessages () каждый раз, когда я использовал cat () и print ()
Кроме того, я не совсем уверен, следует ли мне просто заменить print () / cat () напрямую, не затрагивая setMethod () и другие функции.
Кроме того, я также получил совет, но как я могу его использовать в моей ситуации?
if(verbose)cat(..) (or maybe stop()) if you really have to write text to the console.
(except for print, summary, interactive functions)
это мой код.
setMethod("print", "ga", function(x, ...) str(x))
setMethod(
"show", "ga",
function(object) {
cat("An object of class \"ga\"\n")
cat("\nCall:\n", deparse(object@call), "\n\n", sep = "")
cat("Available slots:\n")
print(slotNames(object))
}
)
... ...
if (x$type == "real-valued") {
cat(paste("Search domain = \n"))
print(x$domain, digits = digits)
}