SymbolixAU/jsonify

Prevent recursion on "json" objects

mmuurr opened this issue · 1 comments

mmuurr commented

It's useful at times to include an already-JSON-encoded object in a new object for JSON-encoding, e.g. to prevent an unneeded decoding step (which can be expensive if performed (m|b|tr)-illions of times):

library(jsonify)
x_json <- read_json_object(from, somewhere)  ## ideally we want to not decode x_json
y_json <- list(foo = "bar", x = x_json) |> to_json()  ## re-encodes x_json as length-one string array :-|

This is doable with {jsonlite} provided:

  1. x_json has class "json"
  2. toJSON(...) includes the argument json_verbatim = TRUE.

This would be a useful addition to {jsonify} ... and I'm happy to take a stab at it with a PR if you're open to the idea.

take a stab at it with a PR if you're open to the idea.

yeah go for it