XROAD
xroad_sstream.h File Reference
#include <common/xroad_common_types.h>
#include <common/xroad_string.h>
#include <common/xroad_aux.h>
#include <stdint.h>
Include dependency graph for xroad_sstream.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define __xroad_sstream_dtor__   __dtor__(xroad_sstream_destructor)
 

Typedefs

typedef struct xroad_sstream_s xroad_sstream_t
 

Functions

xroad_sstream_t * xroad_sstream_create (uint32_t buf_size)
 
void xroad_sstream_clear (xroad_sstream_t *s)
 
void xroad_sstream_destroy (xroad_sstream_t *s)
 
void xroad_sstream_destructor (xroad_sstream_t **s)
 
xroad_str_t xroad_sstream_gets (xroad_sstream_t *s)
 
xroad_str_t xroad_sstream_format (xroad_sstream_t *s, const char *fmt,...)
 
xroad_str_t xroad_sstream_vformat (xroad_sstream_t *s, const char *fmt, va_list ap)
 
xroad_str_t xroad_sstream_unformat (xroad_sstream_t *s, uint32_t cnt)
 
uint32_t xroad_sstream_len (xroad_sstream_t *s)
 
xroad_str_t xroad_sstream_putc (xroad_sstream_t *s, char ch)
 
xroad_str_t xroad_sstream_puts (xroad_sstream_t *s, xroad_str_t str)
 

Detailed Description

Macro Definition Documentation

◆ __xroad_sstream_dtor__

#define __xroad_sstream_dtor__   __dtor__(xroad_sstream_destructor)

automatic destructor

Function Documentation

◆ xroad_sstream_clear()

void xroad_sstream_clear ( xroad_sstream_t *  s)

clear stream buffer

Parameters
[in]s- stream to clear

◆ xroad_sstream_create()

xroad_sstream_t* xroad_sstream_create ( uint32_t  buf_size)

create new string stream

Parameters
[in]buf_size- initial stream buffer size return stream instance

◆ xroad_sstream_destroy()

void xroad_sstream_destroy ( xroad_sstream_t *  s)

destroy stream

Parameters
[in]s- stream to destroy. If NULL, nothing happened

◆ xroad_sstream_format()

xroad_str_t xroad_sstream_format ( xroad_sstream_t *  s,
const char *  fmt,
  ... 
)

append formatted text to stream

Parameters
[in]s- stream
[in]fmt- format
Returns
string formatting result

◆ xroad_sstream_gets()

xroad_str_t xroad_sstream_gets ( xroad_sstream_t *  s)

return stream content

Parameters
[in]s- stream
Returns
stream content as xroad_string_t

◆ xroad_sstream_len()

uint32_t xroad_sstream_len ( xroad_sstream_t *  s)

get stream data length

Parameters
[in]s- stream
Returns
length of chars

◆ xroad_sstream_putc()

xroad_str_t xroad_sstream_putc ( xroad_sstream_t *  s,
char  ch 
)

append char to stream

Parameters
[in]s- stream
[in]ch- characted to append
Returns
string formatting result

◆ xroad_sstream_puts()

xroad_str_t xroad_sstream_puts ( xroad_sstream_t *  s,
xroad_str_t  str 
)

append string to stream

Parameters
[in]s- stream
[in]str- string to append
Returns
string formatting result

◆ xroad_sstream_unformat()

xroad_str_t xroad_sstream_unformat ( xroad_sstream_t *  s,
uint32_t  cnt 
)

drop N last appended chars

Parameters
[in]s- stream
[in]cnt- number of chars to drop
Returns
string formating result

◆ xroad_sstream_vformat()

xroad_str_t xroad_sstream_vformat ( xroad_sstream_t *  s,
const char *  fmt,
va_list  ap 
)

append formatted text to stream

Parameters
[in]s- stream
[in]fmt- format
[in]ap- argumentt list
Returns
string formatting result