cctools
jx_print.h File Reference
#include "jx.h"
#include "buffer.h"
#include "link.h"
#include <stdio.h>

Go to the source code of this file.

Functions

char * jx_print_string (struct jx *j)
 Convert a JX expression into a string. More...
 
void jx_print_stream (struct jx *j, FILE *file)
 Print a JX expression to a standard I/O stream. More...
 
void jx_print_shell (struct jx *j, FILE *file)
 Print a JX object as shell environment variables. More...
 
void jx_print_buffer (struct jx *j, buffer_t *buffer)
 Print a JX expression to a buffer. More...
 
void jx_print_link (struct jx *j, struct link *l, time_t stoptime)
 Print a JX expression to a link. More...
 
void jx_escape_string (const char *s, buffer_t *b)
 Print a C string in JSON format (with escape codes) into a buffer. More...
 
void jx_print_args (struct jx *j, buffer_t *b)
 Print a list of arguments to a buffer. More...
 
const char * jx_operator_string (jx_operator_t type)
 Get a string representation of an operator. More...
 
const char * jx_type_string (jx_type_t type)
 Get a string representation of an object type. More...
 

Detailed Description

Print JX expressions to strings, files, and buffers.

Function Documentation

◆ jx_print_string()

char* jx_print_string ( struct jx j)

Convert a JX expression into a string.

Parameters
jA JX expression.
Returns
A C string representing the expression in JSON form. The string must be deleted with free().

◆ jx_print_stream()

void jx_print_stream ( struct jx j,
FILE *  file 
)

Print a JX expression to a standard I/O stream.

Parameters
jA JX expression.
fileA standard IO stream.

◆ jx_print_shell()

void jx_print_shell ( struct jx j,
FILE *  file 
)

Print a JX object as shell environment variables.

Parameters
jA JX expression.
fileA standard IO stream.

◆ jx_print_buffer()

void jx_print_buffer ( struct jx j,
buffer_t buffer 
)

Print a JX expression to a buffer.

Parameters
jA JX expression.
bufferThe buffer for output.
See also
buffer.h

◆ jx_print_link()

void jx_print_link ( struct jx j,
struct link *  l,
time_t  stoptime 
)

Print a JX expression to a link.

Parameters
jA JX expression.
lThe network link to write.
stoptimeThe absolute time to stop.
See also
link.h

◆ jx_escape_string()

void jx_escape_string ( const char *  s,
buffer_t b 
)

Print a C string in JSON format (with escape codes) into a buffer.

Parameters
sA C string.
bThe buffer for output.
See also
buffer.h

◆ jx_print_args()

void jx_print_args ( struct jx j,
buffer_t b 
)

Print a list of arguments to a buffer.

Parameters
jArray of arguments to print.
bThe buffer for output.

◆ jx_operator_string()

const char* jx_operator_string ( jx_operator_t  type)

Get a string representation of an operator.

Parameters
typeThe operator to get.

◆ jx_type_string()

const char* jx_type_string ( jx_type_t  type)

Get a string representation of an object type.

Parameters
typeThe object type to get.