Main Page | Modules | Class List | Directories | File List | Class Members | File Members | Related Pages

Dynamic string functions
[LibTDS API]

Handle dynamic string. More...

Defines

#define tds_dstr_buf(s)   ((s)->dstr_s)
#define tds_dstr_cstr(s)   ((const char* ) tds_dstr_buf(s))
#define tds_dstr_init(s)   do { DSTR *_tds_s = (s); _tds_s->dstr_size = 0; _tds_s->dstr_s = (char*) tds_str_empty; } while(0)
 init a string with empty
#define tds_dstr_isempty(s)   ((s)->dstr_size == 0)
 test if string is empty
#define tds_dstr_len(s)   ((s)->dstr_size)

Functions

DSTR * tds_dstr_alloc (DSTR *s, unsigned int length)
 allocate space for length char
DSTR * tds_dstr_copy (DSTR *s, const char *src)
 copy a string from another
DSTR * tds_dstr_copyn (DSTR *s, const char *src, unsigned int length)
 Set string to a given buffer of characters.
DSTR * tds_dstr_dup (DSTR *s, const DSTR *src)
void tds_dstr_free (DSTR *s)
 free string
DSTR * tds_dstr_set (DSTR *s, char *src)
 set a string from another buffer.
DSTR * tds_dstr_setlen (DSTR *s, unsigned int length)
 limit length of string, MUST be <= current length
void tds_dstr_zero (DSTR *s)
 clear all string filling with zeroes (mainly for security reason)

Detailed Description

Handle dynamic string.

In this string are always valid (you don't have NULL pointer, only empty string)


Function Documentation

DSTR * tds_dstr_alloc DSTR *  s,
unsigned int  length
 

allocate space for length char

Parameters:
s dynamic string
length new length
Returns:
string allocated or NULL on memory error

DSTR * tds_dstr_copy DSTR *  s,
const char *  src
 

copy a string from another

Parameters:
s dynamic string
src source buffer
Returns:
string copied or NULL on memory error

DSTR * tds_dstr_copyn DSTR *  s,
const char *  src,
unsigned int  length
 

Set string to a given buffer of characters.

Parameters:
s dynamic string
src source buffer
length length of source buffer
Returns:
string copied or NULL on memory error

DSTR * tds_dstr_set DSTR *  s,
char *  src
 

set a string from another buffer.

The string will use the supplied buffer (it not copy the string), so it should be a pointer returned by malloc.

Parameters:
s dynamic string
src source buffer
Returns:
string copied or NULL on memory error

DSTR * tds_dstr_setlen DSTR *  s,
unsigned int  length
 

limit length of string, MUST be <= current length

Parameters:
s dynamic string
length new length


Generated on Wed May 7 19:22:11 2008 for FreeTDS API by  doxygen 1.4.1