-
Notifications
You must be signed in to change notification settings - Fork 46
Open
Description
As I was thinking about the recent comment in #26, I wonder if there could be convenience in having print
and as.character
S3 methods for the return value to facilitate the nested use.
library(logger)
logged <- log_info("test")
# INFO [2024-04-09 09:20:45] test
class(logged)
# [1] "list"
class(logged) <- c("logger", "list")
print.logger <- function(x, ..., index = 1) print.default(unname(x[[index]]$record), ...)
as.character.logger <- function(x, ..., index = 1) unname(x[[index]]$record)
logged
# [1] "INFO [2024-04-09 09:20:45] test"
jsonlite::toJSON(as.character(logged))
# ["INFO [2024-04-09 09:20:45] test"]
Thoughts? They're effectively "free" and come closer to my original thoughts when suggesting pass-through.
FMKerckhof
Metadata
Metadata
Assignees
Labels
No labels