Typed JSON

TSON, short for Typed JSON, is a binary-encoded serialization of JSON like document that support JavaScript typed data ( https://github.com/tercen/TSON).


R implementation of TSON specification.

Note

Type int64 is not yet implemented.

Changes

1.3

  • overcome readBin/writeBin character limit (10 kbytes)

1.2

  • use of connection object : overall performance should be improved
  • new function writeTSON : Write TSON specification binary-encoded format to a connection.
  • new function readTSON : Read TSON specification binary-encoded format from a connection.

1.1

  • package now export tson.scalar
  • tson.scalar, tson.character ... return NULL if given object is NULL
  • values can be NULL in maps
  • correct endianess for readBin

Example

library(rtson)

list = list(integer=42L,
          double=42,
          bool=TRUE,
          uint8=tson.uint8.vec(c(42,0)),
          uint16=tson.uint16.vec(c(42,0)),
          uint32=tson.uint32.vec(c(42,0)),
          int8=tson.int8.vec(c(42,0)),
          int16=tson.int16.vec(c(42,0)),
          int32=as.integer(c(42,0)),
          float32=tson.float32.vec(c(0.0, 42.0)),
          float64=c(42.0,42.0),
          map=list(x=42, y=42, label="42"),
          list=list("42",42)
)

bytes = toTSON(list)

print(as.integer(bytes))

object = fromTSON(bytes)

print(object)

News

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("rtson")

1.3 by Alexandre Maurel, 3 years ago


https://github.com/tercen/TSON


Report a bug at https://github.com/tercen/TSON/issues


Browse source code at https://github.com/cran/rtson


Authors: Alexandre Maurel


Documentation:   PDF Manual  


Apache License Version 2.0 license


Imports R6

Suggests testthat


See at CRAN