40 #ifndef picox_string_xdynamic_string_h_ 41 #define picox_string_xdynamic_string_h_ 60 struct XDynamicString;
61 typedef struct XDynamicString XDynamicString;
86 XDynamicString*
xdstr_clone(
const XDynamicString*
self);
91 XDynamicString*
xdstr_cat(XDynamicString*
self,
const char* str);
96 XDynamicString*
xdstr_cat_n(XDynamicString*
self,
const char* str,
size_t len);
101 XDynamicString*
xdstr_cat_printf(XDynamicString*
self,
const char *fmt, ...);
106 XDynamicString*
xdstr_cat_vprintf(XDynamicString*
self,
const char *fmt, va_list args);
111 XDynamicString*
xdstr_copy(XDynamicString*
self,
const char* str);
116 XDynamicString*
xdstr_copy_n(XDynamicString*
self,
const char* str,
size_t len);
121 void xdstr_trim(XDynamicString*
self,
const char* char_set);
135 void xdstr_range(XDynamicString*
self,
int first,
int last);
160 const char*
xdstr_c_str(
const XDynamicString*
self);
172 XDynamicString*
xdstr_reserve(XDynamicString*
self,
size_t size);
XDynamicString * xdstr_create(const char *src)
srcをコピーした文字列を生成して返します
Definition: xdynamic_string.c:50
size_t xdstr_length(const XDynamicString *self)
文字列の長さを返します
Definition: xdynamic_string.c:215
void xdstr_to_upper(XDynamicString *self)
文字列のアルファベットを大文字に変換します
Definition: xdynamic_string.c:180
XDynamicString * xdstr_clone(const XDynamicString *self)
文字列のコピーを生成して返します
Definition: xdynamic_string.c:77
XDynamicString * xdstr_reserve(XDynamicString *self, size_t size)
ストレージをsizeバイトまで(末尾のnullバイトを除く)格納できるサイズまで拡張して返します ...
Definition: xdynamic_string.c:194
XDynamicString * xdstr_cat_vprintf(XDynamicString *self, const char *fmt, va_list args)
文字列末尾にvprintf形式で文字列を連結して返します
Definition: xdynamic_string.c:116
XDynamicString * xdstr_create_length(const char *src, size_t len)
srcからlenバイトをコピーした文字列を生成して返します
Definition: xdynamic_string.c:57
const char * xdstr_c_str(const XDynamicString *self)
文字列のconst char*を返します
Definition: xdynamic_string.c:208
size_t xdstr_capacity(const XDynamicString *self)
文字列に格納できるバイト数を返します
Definition: xdynamic_string.c:151
XDynamicString * xdstr_cat_n(XDynamicString *self, const char *str, size_t len)
文字列末尾にstrから最大len文字を連結して返します
Definition: xdynamic_string.c:93
XDynamicString * xdstr_copy_n(XDynamicString *self, const char *str, size_t len)
文字列にstrから最大len文字をコピーして返します
Definition: xdynamic_string.c:138
void xdstr_trim(XDynamicString *self, const char *char_set)
文字列からchar_setに含まれる各文字を除去します
Definition: xdynamic_string.c:158
void xdstr_to_lower(XDynamicString *self)
文字列のアルファベットを小文字に変換します
Definition: xdynamic_string.c:173
XDynamicString * xdstr_create_empty(void)
長さ0の文字列を生成して返します
Definition: xdynamic_string.c:64
XDynamicString * xdstr_shrink_to_fit(XDynamicString *self)
ストレージサイズを文字列長がちょうど収まるサイズにまで縮小して返します
Definition: xdynamic_string.c:187
void xdstr_range(XDynamicString *self, int first, int last)
文字列からfirst ~ lastまで(last自身も含む)の範囲外の部分を除去します
Definition: xdynamic_string.c:166
XDynamicString * xdstr_cat_printf(XDynamicString *self, const char *fmt,...)
文字列末尾にprintf形式で文字列を連結して返します
Definition: xdynamic_string.c:102
void xdstr_destroy(XDynamicString *self)
文字列のリソースを開放します
Definition: xdynamic_string.c:71
XDynamicString * xdstr_cat(XDynamicString *self, const char *str)
文字列末尾にstrを連結して返します
Definition: xdynamic_string.c:84
XDynamicString * xdstr_copy(XDynamicString *self, const char *str)
文字列にstrをコピーして返します
Definition: xdynamic_string.c:125