htils 1
A small set of utilities for C programming.
Loading...
Searching...
No Matches
string.h
Go to the documentation of this file.
1#ifndef H2OTILS_STRING_H
2#define H2OTILS_STRING_H
3
9#include <h2o/memory.h>
10
11//
12//
13//
14
15#include <htils/string.h>
16
17//
18//
19//
20
22typedef h2o_iovec_t h2o_string;
23
39h2o_string *h2o_string_new(h2o_mem_pool_t *pool, const u64 len);
40
53h2o_string *h2o_string_from_string(h2o_mem_pool_t *pool, const string *str);
54
70h2o_string *h2o_string_dup(h2o_mem_pool_t *pool, const h2o_string *str);
71
93h2o_string *h2o_string_from_cstr(h2o_mem_pool_t *pool, const cstr *str);
94
95//
96//
97//
98
112
113//
114//
115//
116
130u64 h2o_string_concat(h2o_mem_pool_t *pool, h2o_string *dest,
131 const h2o_string *src);
132
152u64 h2o_string_concatb(h2o_mem_pool_t *pool, h2o_string *dest,
153 const h2o_string *src, const u64 len);
154
171u64 h2o_string_concatf(h2o_mem_pool_t *pool, h2o_string *dest, const cstr *fmt,
172 ...);
173
174//
175//
176//
177
191b32 h2o_stringcmp(const h2o_string *first, const h2o_string *second);
192
209b32 h2o_stringcmpb(const h2o_string *first, const h2o_string *second,
210 const u64 len);
211
212//
213//
214//
215
233u64 h2o_string_split(h2o_string *src, char delim, h2o_string ***h2o_darray,
234 h2o_mem_pool_t *pool);
235
236//
237//
238//
239
250void h2o_string_trim(h2o_string *str);
251
263
275
276//
277//
278//
279
295i64 h2o_string_findc(h2o_string *haystack, char needle);
296
311
312#endif // H2OTILS_STRING_H
uint64_t u64
Definition basictypes.h:17
u32 b32
Definition basictypes.h:38
int64_t i64
Definition basictypes.h:29
char cstr
Definition basictypes.h:50
h2o_iovec_t h2o_string
Definition string.h:22
i64 h2o_string_find_sstr(h2o_string *haystack, h2o_string *needle)
Finds the first occurance of a h2o_string in a h2o_string.
Definition string.c:263
b32 h2o_stringcmp(const h2o_string *first, const h2o_string *second)
Compare two h2o_string.
Definition string.c:157
b32 h2o_stringcmpb(const h2o_string *first, const h2o_string *second, const u64 len)
Compare len bytes of each h2o_string.
Definition string.c:164
void h2o_string_trim(h2o_string *str)
Trims whitespace from the start and end of a h2o_string.
Definition string.c:207
h2o_string * h2o_string_dup(h2o_mem_pool_t *pool, const h2o_string *str)
Duplicates from to a new h2o_string.
Definition string.c:50
i64 h2o_string_findc(h2o_string *haystack, char needle)
Finds the first occurance of a character in a h2o_string.
Definition string.c:250
void h2o_string_trim_left(h2o_string *str)
Trims whitespace from the start of a h2o_string.
Definition string.c:215
u64 h2o_string_concat(h2o_mem_pool_t *pool, h2o_string *dest, const h2o_string *src)
Concatenates the first h2o_string to the second.
Definition string.c:82
u64 h2o_string_concatf(h2o_mem_pool_t *pool, h2o_string *dest, const cstr *fmt,...)
Concatenates a formatted C-string to a h2o_string.
Definition string.c:125
h2o_string * h2o_string_from_string(h2o_mem_pool_t *pool, const string *str)
Converts a string to a h2o_string.
Definition string.c:36
cstr * h2o_string_to_cstr(const h2o_string *str)
Convert a h2o_string to a C-string.
Definition string.c:68
h2o_string * h2o_string_new(h2o_mem_pool_t *pool, const u64 len)
Creates a new h2o_string.
Definition string.c:23
u64 h2o_string_concatb(h2o_mem_pool_t *pool, h2o_string *dest, const h2o_string *src, const u64 len)
Concatenates len bytes of src to dest.
Definition string.c:103
void h2o_string_trim_right(h2o_string *str)
Trims whitespace from the end of a h2o_string.
Definition string.c:231
u64 h2o_string_split(h2o_string *src, char delim, h2o_string ***h2o_darray, h2o_mem_pool_t *pool)
Splits a h2o_string by a delimiter.
Definition string.c:173
h2o_string * h2o_string_from_cstr(h2o_mem_pool_t *pool, const cstr *str)
Create a h2o_string from a C-string.