1setGeneric("isValidJSON", 2 function(content, asText = inherits(content, "AsIs"), ...) 3 standardGeneric("isValidJSON")) 4 5setMethod("isValidJSON", "AsIs", 6 function(content, asText = inherits(content, "AsIs"), ...) { 7 .Call("R_isValidJSON", as.character(content)) 8 }) 9 10setMethod("isValidJSON", "character", 11 function(content, asText = inherits(content, "AsIs"), ...) { 12 13 if(!asText) { 14 content = I(suppressWarnings(paste(readLines(content), collapse = "\n"))) 15 } else 16 content = I(content) 17 18 isValidJSON(content, asText = TRUE) 19 }) 20 21setMethod("isValidJSON", "connection", 22 function(content, asText = inherits(content, "AsIs"), ...) { 23 content = I(suppressWarnings(paste(readLines(content), collapse = "\n"))) 24 isValidJSON(content, asText = TRUE) 25 }) 26