RJSONIO: Serialize R objects to JSON, JavaScript Object Notation

Share:

This is a package that allows conversion to and from data in Javascript object notation (JSON) format. This allows R objects to be inserted into Javascript/ECMAScript/ActionScript code and allows R programmers to read and convert JSON content to R objects. This is an alternative to rjson package. Originally, that was too slow for converting large R objects to JSON and was not extensible. rjson's performance is now similar to this package, and perhaps slightly faster in some cases. This package uses methods and is readily extensible by defining methods for different classes, vectorized operations, and C code and callbacks to R functions for deserializing JSON objects to R. The two packages intentionally share the same basic interface. This package (RJSONIO) has many additional options to allow customizing the generation and processing of JSON content. This package uses libjson rather than implementing yet another JSON parser. The aim is to support other general projects by building on their work, providing feedback and benefit from their ongoing development.

Author
Duncan Temple Lang
Date of publication
2014-07-28 17:26:19
Maintainer
Duncan Temple Lang <duncan@r-project.org>
License
BSD_3_clause + file LICENSE
Version
1.3-0

View on CRAN

Man pages

asJSVars
Serialize R objects as Javsscript/ActionScript variables
basicJSONHandler
Create handler for processing JSON elements from a parser
fromJSON
Convert JSON content to R objects
isValidJSON
Test if JSON content is valid
JSON_T_NULL
Symbolic constants identifying the type of a JSON value.
readJSONStream
Read JSON from a Connection/Stream
toJSON
Convert an R object to a string in Javascript Object Notation

Files in this package

RJSONIO
RJSONIO/README.libjson
RJSONIO/inst
RJSONIO/inst/sampleData
RJSONIO/inst/sampleData/keys.json
RJSONIO/inst/sampleData/array.json
RJSONIO/inst/sampleData/menu1.json
RJSONIO/inst/sampleData/glossay.json
RJSONIO/inst/sampleData/widget.json
RJSONIO/inst/sampleData/nestedObj.json
RJSONIO/inst/sampleData/usaColors.as
RJSONIO/inst/sampleData/obj.json
RJSONIO/inst/sampleData/obj2.json
RJSONIO/inst/sampleData/obj1.json
RJSONIO/inst/sampleData/usaPolygons.as
RJSONIO/inst/sampleData/menu.json
RJSONIO/inst/sampleData/obj3.json
RJSONIO/inst/sampleData/int.json
RJSONIO/inst/sampleData/nestedArray.json
RJSONIO/inst/sampleData/array3.json
RJSONIO/inst/sampleData/intScalar.json
RJSONIO/inst/sampleData/embedded.json
RJSONIO/inst/sampleData/array2.json
RJSONIO/inst/doc
RJSONIO/inst/doc/toJSONTimes.rda
RJSONIO/inst/doc/missingValues.Rdb
RJSONIO/inst/doc/timings.docx
RJSONIO/inst/doc/overview.html
RJSONIO/inst/doc/overview.Rdb
RJSONIO/inst/doc/biblio.xml
RJSONIO/inst/doc/fromJSONTimes.rda
RJSONIO/inst/doc/overview.pdf
RJSONIO/inst/doc/overview.bib
RJSONIO/inst/doc/missingValues.html
RJSONIO/inst/doc/overview.tex
RJSONIO/inst/doc/performance.R
RJSONIO/cp_libjson
RJSONIO/Changes.html
RJSONIO/configure.in
RJSONIO/tests
RJSONIO/tests/utf8.R
RJSONIO/tests/keys.R
RJSONIO/tests/empty.R
RJSONIO/tests/con1.R
RJSONIO/tests/bigInt.R
RJSONIO/tests/simple.R
RJSONIO/tests/encoding.R
RJSONIO/tests/exp.R
RJSONIO/tests/newsUTF8.rda
RJSONIO/tests/simplify.R
RJSONIO/tests/flat.json
RJSONIO/tests/containers.R
RJSONIO/tests/con2.R
RJSONIO/tests/nested.json
RJSONIO/tests/array.R
RJSONIO/tests/scalarCollapse.R
RJSONIO/tests/charNULL.R
RJSONIO/tests/serialize.R
RJSONIO/tests/toJSON.R
RJSONIO/tests/prealloc.R
RJSONIO/tests/performance.R
RJSONIO/tests/s4.R
RJSONIO/tests/stringFun.R
RJSONIO/src
RJSONIO/src/ConvertUTF.c
RJSONIO/src/ConvertUTF.h
RJSONIO/src/libjson
RJSONIO/src/libjson/Source
RJSONIO/src/libjson/Source/libjson.cpp
RJSONIO/src/libjson/Source/JSONWriter.cpp
RJSONIO/src/libjson/Source/JSONDefs.h
RJSONIO/src/libjson/Source/JSONMemoryPool.h
RJSONIO/src/libjson/Source/JSONNode.cpp
RJSONIO/src/libjson/Source/NumberToString.h
RJSONIO/src/libjson/Source/JSONNode_Mutex.cpp
RJSONIO/src/libjson/Source/JSONStream.cpp
RJSONIO/src/libjson/Source/JSONNode.h
RJSONIO/src/libjson/Source/JSONChildren.cpp
RJSONIO/src/libjson/Source/JSONPreparse.cpp
RJSONIO/src/libjson/Source/JSONChildren.h
RJSONIO/src/libjson/Source/JSONStats.h
RJSONIO/src/libjson/Source/JSONIterators.cpp
RJSONIO/src/libjson/Source/JSONSharedString.h
RJSONIO/src/libjson/Source/internalJSONNode.cpp
RJSONIO/src/libjson/Source/JSONStream.h
RJSONIO/src/libjson/Source/JSONMemory.cpp
RJSONIO/src/libjson/Source/JSONMemory.h
RJSONIO/src/libjson/Source/JSONDefs
RJSONIO/src/libjson/Source/JSONDefs/Unknown_C.h
RJSONIO/src/libjson/Source/JSONDefs/Visual_C.h
RJSONIO/src/libjson/Source/JSONDefs/GNU_C.h
RJSONIO/src/libjson/Source/JSONDefs/Strings_Defs.h
RJSONIO/src/libjson/Source/JSONGlobals.h
RJSONIO/src/libjson/Source/JSONValidator.h
RJSONIO/src/libjson/Source/JSONSingleton.h
RJSONIO/src/libjson/Source/internalJSONNode.h
RJSONIO/src/libjson/Source/JSONAllocator.h
RJSONIO/src/libjson/Source/JSONWorker.h
RJSONIO/src/libjson/Source/JSONValidator.cpp
RJSONIO/src/libjson/Source/JSONAllocator.cpp
RJSONIO/src/libjson/Source/JSONWorker.cpp
RJSONIO/src/libjson/Source/JSON_Base64.h
RJSONIO/src/libjson/Source/JSONDebug.h
RJSONIO/src/libjson/Source/JSONDebug.cpp
RJSONIO/src/libjson/Source/JSONPreparse.h
RJSONIO/src/libjson/License.txt
RJSONIO/src/libjson/makefile
RJSONIO/src/libjson/bdr
RJSONIO/src/libjson/README
RJSONIO/src/libjson/libjson.h
RJSONIO/src/libjson/JSONOptions.h
RJSONIO/src/libjson/copy
RJSONIO/src/JSON_parser.h
RJSONIO/src/JSON_parser.c
RJSONIO/src/Rlibjson.h
RJSONIO/src/rparser.c
RJSONIO/src/Makevars.in
RJSONIO/src/RJSON.c
RJSONIO/src/Makevars.win
RJSONIO/src/rlibjson.c
RJSONIO/Dependencies
RJSONIO/Dependencies/libbase64++
RJSONIO/Dependencies/libbase64++/libbase64++.h
RJSONIO/Dependencies/mempool++
RJSONIO/Dependencies/mempool++/mempool.h
RJSONIO/NAMESPACE
RJSONIO/R
RJSONIO/R/isValid.R
RJSONIO/R/stream.R
RJSONIO/R/json.R
RJSONIO/R/readJSON.R
RJSONIO/R/simpleHandler.R
RJSONIO/R/asVars.R
RJSONIO/MD5
RJSONIO/README
RJSONIO/DESCRIPTION
RJSONIO/Changes
RJSONIO/cleanup.in
RJSONIO/libjsonNotes
RJSONIO/configure
RJSONIO/man
RJSONIO/man/isValidJSON.Rd
RJSONIO/man/toJSON.Rd
RJSONIO/man/fromJSON.Rd
RJSONIO/man/JSON_T_NULL.Rd
RJSONIO/man/readJSONStream.Rd
RJSONIO/man/asJSVars.Rd
RJSONIO/man/basicJSONHandler.Rd
RJSONIO/configure.win
RJSONIO/cleanup
RJSONIO/.Rinstignore
RJSONIO/Todo.xml
RJSONIO/LICENSE
RJSONIO/libjsonFixes