myMPD
Internal API documentation
Loading...
Searching...
No Matches
json_print.h File Reference

Json print implementation for sds. More...

#include "dist/sds/sds.h"
#include "src/lib/list/list.h"
#include <stdbool.h>
Include dependency graph for json_print.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

sds json_comma (sds buffer)
sds tojson_raw (sds buffer, const char *key, const char *value, bool comma)
sds tojson_sds (sds buffer, const char *key, sds value, bool comma)
sds tojson_char (sds buffer, const char *key, const char *value, bool comma)
sds tojson_char_len (sds buffer, const char *key, const char *value, size_t len, bool comma)
sds tojson_bool (sds buffer, const char *key, bool value, bool comma)
sds tojson_int (sds buffer, const char *key, int value, bool comma)
sds tojson_uint (sds buffer, const char *key, unsigned value, bool comma)
sds tojson_time (sds buffer, const char *key, time_t value, bool comma)
sds tojson_float (sds buffer, const char *key, float value, bool comma)
sds tojson_int64 (sds buffer, const char *key, int64_t value, bool comma)
sds tojson_uint64 (sds buffer, const char *key, uint64_t value, bool comma)
sds list_to_json_array (sds s, struct t_list *l)

Detailed Description

Json print implementation for sds.

Function Documentation

◆ json_comma()

sds json_comma ( sds buffer)

This unit provides functions for json printing Appends a comma on demand. Comma is omitted on start of string or end of string is already a comma.

Parameters
buffersds string to append
Returns
pointer to buffer

◆ list_to_json_array()

sds list_to_json_array ( sds s,
struct t_list * l )

Prints the keys of a list as a json array Leading and ending square brackets are added

Parameters
ssds string to append
lpointer to list to add keys from
Returns
pointer to s

◆ tojson_bool()

sds tojson_bool ( sds buffer,
const char * key,
bool value,
bool comma )

Prints a json key/value pair for a bool value

Parameters
buffersds string to append
keyjson key
valuebool value
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_char()

sds tojson_char ( sds buffer,
const char * key,
const char * value,
bool comma )

Prints a json key/value pair for 0-terminated char values value is encoded as json

Parameters
buffersds string to append
keyjson key
valueto encode as json
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_char_len()

sds tojson_char_len ( sds buffer,
const char * key,
const char * value,
size_t len,
bool comma )

Prints a json key/value pair for not 0-terminated values Key and value is encoded as json

Parameters
buffersds string to append
keyjson key
valueas sds string to encode as json
lenlength of value
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_float()

sds tojson_float ( sds buffer,
const char * key,
float value,
bool comma )

Prints a json key/value pair for a float value

Parameters
buffersds string to append
keyjson key
valuedouble value
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_int()

sds tojson_int ( sds buffer,
const char * key,
int value,
bool comma )

Prints a json key/value pair for an int value

Parameters
buffersds string to append
keyjson key
valueinteger value
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_int64()

sds tojson_int64 ( sds buffer,
const char * key,
int64_t value,
bool comma )

Prints a json key/value pair for an int64_t value

Parameters
buffersds string to append
keyjson key
valueint64_t value
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_raw()

sds tojson_raw ( sds buffer,
const char * key,
const char * value,
bool comma )

Prints a json key/value pair for already encoded values value is printed raw without any encoding done

Parameters
buffersds string to append
keyjson key
valueraw data
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_sds()

sds tojson_sds ( sds buffer,
const char * key,
sds value,
bool comma )

Prints a json key/value pair for sds values value is encoded as json

Parameters
buffersds string to append
keyjson key
valueas sds string to encode as json
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_time()

sds tojson_time ( sds buffer,
const char * key,
time_t value,
bool comma )

Prints a json key/value pair for a time_t value

Parameters
buffersds string to append
keyjson key
valuetime_t value
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_uint()

sds tojson_uint ( sds buffer,
const char * key,
unsigned value,
bool comma )

Prints a json key/value pair for an unsigned

Parameters
buffersds string to append
keyjson key
valueunsigned integer value
commatrue to append a comma
Returns
pointer to buffer

◆ tojson_uint64()

sds tojson_uint64 ( sds buffer,
const char * key,
uint64_t value,
bool comma )

Prints a json key/value pair for an uint64_t value

Parameters
buffersds string to append
keyjson key
valueuint64_t value
commatrue to append a comma
Returns
pointer to buffer