2 * Summary: String structure used for libmemcached.
4 * Copy: See Copyright for the status of this software.
9 #ifndef __MEMCACHED_STRING_H__
10 #define __MEMCACHED_STRING_H__
16 struct memcached_string_st
{
18 memcached_allocated is_allocated
;
25 #define memcached_string_length(A) (size_t)((A)->end - (A)->string)
26 #define memcached_string_set_length(A, B) (A)->end= (A)->string + B
27 #define memcached_string_size(A) (A)->current_size
28 #define memcached_string_value(A) (A)->string
30 memcached_return
memcached_string_check(memcached_string_st
*string
, size_t need
);
31 char *memcached_string_c_copy(memcached_string_st
*string
);
32 memcached_return
memcached_string_append_character(memcached_string_st
*string
,
34 memcached_return
memcached_string_append(memcached_string_st
*string
,
35 char *value
, size_t length
);
36 size_t memcached_string_backspace(memcached_string_st
*string
, size_t remove
);
37 memcached_return
memcached_string_reset(memcached_string_st
*string
);
38 void memcached_string_free(memcached_string_st
*string
);
44 #endif /* __MEMCACHED_STRING_H__ */