Schema

R

C

C++

Fortran

Julia

Matlab

Python

Notes

array

list

json_array_t

rapidjson::Document

yggarr

Array

cell

list

boolean

logical

bool

bool

logical(kind = X)

Bool

logical

bool

bytes

char (utf-8)

string_t

string_t

character(len = X)

CodeUnits{UInt8,String}

char (utf-8)

bytes

Precision X is preserved.

class

python_class_t

python_class_t

yggpython

complex

complex

complex_X

complex_X

complex(kind = X)

Complex

complex

numpy.complexX

Precision X is preserved.

float

double

double

double

real(kind = X)

Float

single, double

numpy.floatX

Precision X is preserved.

function

python_function_t

python_function_t

yggpyfunc

instance

python_instance_t

python_instance_t

yggpyinst

int

integer, bit64::integer64

intX_t

intX_t

integer(kind = X)

Int

intX

numpy.intX

Precision X is preserved.

integer

int

int

integer

ndarray

list

*

*

*

Array{X}

mat

numpy.ndarray

null

NA

void*

void*

yggnull

Nothing

NaN

None

number

double

double

double

real(kind = 8)

This covers the JSON default for floating point or integer values.

obj

ObjDict

obj_t

rapidjson::ObjWavefront

yggobj

ObjDict

containers.Map

ObjDict

object

list

json_object_t

rapidjson::Document

yggmap

Dict{AbstractString,Any}

containers.Map

dict

ply

PlyDict

ply_t

rapidjson::Ply

yggply

PlyDict

containers.Map

PlyDict

scalar

yggdrasil defines scalars as an umbrella type encompassing int, uint, float, bytes, and unicode.

schema

list

schema_t

rapidjson::Document

yggschema

Dict

containers.Map

dict

string

character

char*

char*

character(len = X)

String

char

str

User can specify an encoding for scalar strings.

uint

integer

uintX_t

uintX_t

ygguintX

Uint

uintX

numpy.uintX

Precision X is preserved.

unicode

char

unicode_t

unicode_t

character(kind = selected_char_kind('ISO_10646'), len = X)

String

char

str

Precision X is preserved.