Objectively 1.0.0
Ultra-lightweight object oriented framework for GNU C.
Data Structures | Enumerations | Functions
JSONSerialization.h File Reference

JSON serialization and introspection. More...

#include <Objectively/Data.h>
#include <Objectively/Object.h>

Go to the source code of this file.

Data Structures

struct  JSONSerialization
 JSON serialization and introspection. More...
 

Enumerations

enum  JSONWriteOptions { JSON_WRITE_PRETTY = 0x1 , JSON_WRITE_SORTED = 0x2 }
 JSON write options. More...
 

Functions

OBJECTIVELY_EXPORT Class_JSONSerialization (void)
 

Detailed Description

JSON serialization and introspection.

Definition in file JSONSerialization.h.

Enumeration Type Documentation

◆ JSONWriteOptions

JSON write options.

Enumerator
JSON_WRITE_PRETTY 

Enables pretty (indented) formatting of JSON output.

JSON_WRITE_SORTED 

Enables lexicographic sorting of JSON output.

Definition at line 42 of file JSONSerialization.h.

42 {
43
48
JSONWriteOptions
JSON write options.
@ JSON_WRITE_PRETTY
Enables pretty (indented) formatting of JSON output.
@ JSON_WRITE_SORTED
Enables lexicographic sorting of JSON output.

Function Documentation

◆ _JSONSerialization()

OBJECTIVELY_EXPORT Class * _JSONSerialization ( void  )

Definition at line 511 of file JSONSerialization.c.

511 {
512 static Class *clazz;
513 static Once once;
514
515 do_once(&once, {
516 clazz = _initialize(&(const ClassDef) {
517 .name = "JSONSerialization",
518 .superclass = _Object(),
519 .instanceSize = sizeof(JSONSerialization),
520 .interfaceOffset = offsetof(JSONSerialization, interface),
521 .interfaceSize = sizeof(JSONSerializationInterface),
523 });
524 });
525
526 return clazz;
527}
Class * _initialize(const ClassDef *def)
Initializes the given Class.
Definition: Class.c:91
static void initialize(Class *clazz)
long Once
The Once type.
Definition: Once.h:37
#define do_once(once, block)
Executes the given block at most one time.
Definition: Once.h:43
ClassDefs are passed to _initialize via an archetype to initialize a Class.
Definition: Class.h:41
The runtime representation of a Class.
Definition: Class.h:95
JSON serialization and introspection.
Class * _Object(void)
The Object archetype.
Definition: Object.c:136