30 lines
700 B
C
30 lines
700 B
C
|
#ifndef SMART_STRING_H
|
||
|
#define SMART_STRING_H
|
||
|
|
||
|
#include <sys/types.h>
|
||
|
|
||
|
/*
|
||
|
* smart string cla^structure
|
||
|
*/
|
||
|
struct smart_string_s {
|
||
|
char *string_ptr;
|
||
|
size_t allocated;
|
||
|
size_t length;
|
||
|
};
|
||
|
|
||
|
void smart_string_init(struct smart_string_s *ss);
|
||
|
|
||
|
void smart_string_resize(struct smart_string_s *ss, size_t size);
|
||
|
|
||
|
//~ void smart_string_resize_direct(struct smart_string_s *ss, size_t size);
|
||
|
//~
|
||
|
//~ void smart_string_resize_add(struct smart_string_s *ss, size_t size);
|
||
|
//~
|
||
|
//~ void smart_string_resize_pow2(struct smart_string_s *ss, size_t size);
|
||
|
//~
|
||
|
//~ void smart_string_resize_pow3(struct smart_string_s *ss, size_t size);
|
||
|
|
||
|
void smart_string_free(struct smart_string_s *ss);
|
||
|
|
||
|
#endif // SMART_STRING_H
|