Update headers
This commit is contained in:
@@ -6,9 +6,6 @@
|
||||
#ifndef LIBCDSB_EXTRA_ARRAY_H
|
||||
#define LIBCDSB_EXTRA_ARRAY_H
|
||||
|
||||
#ifdef array_find
|
||||
# undef array_find
|
||||
#endif
|
||||
#ifdef array_push
|
||||
# undef array_push
|
||||
#endif
|
||||
|
||||
@@ -6,9 +6,13 @@
|
||||
#ifndef LIBCDSB_EXTRA_STRING_H
|
||||
#define LIBCDSB_EXTRA_STRING_H
|
||||
|
||||
/*#####################################################################################################################*/
|
||||
|
||||
#define string_split(x, sep, maxn) _LIBCDSB_GenericS(libcdsb_string, split, sep)(x, sep, maxn)
|
||||
#define string_case_compare string_compare_case_insensitive
|
||||
|
||||
#define string_replace_r(x, src, dest, maxn) _LIBCDSB_GenericS2(libcdsb_string, replace_r, src, dest)(x, src, dest, maxn)
|
||||
|
||||
extern size_t string_to_lower (vtype_string* x) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
extern size_t string_to_upper (vtype_string* x) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
extern size_t string_capitalize(vtype_string* x) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
@@ -16,12 +20,46 @@ extern size_t string_capitalize(vtype_string* x) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
|
||||
extern int string_compare_case_insensitive(const vtype_string* s0, const vtype_string* s1) LIBCDSB_cmpattr__;
|
||||
|
||||
/*#####################################################################################################################*/
|
||||
|
||||
inline vtype_array libcdsb_string_split_string (const vtype_string* x, const vtype_string* sep, size_t maxn) __attribute__((always_inline));
|
||||
extern vtype_array libcdsb_string_split_cstring(const vtype_string* string, const char* sep, size_t maxn) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
extern vtype_array libcdsb_string_split_char (const vtype_string* string, int chr, size_t maxn) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
|
||||
inline size_t libcdsb_string_replace_r_string_string (vtype_string*restrict x, const vtype_string*restrict src, const vtype_string*restrict dest, size_t maxn) __attribute__((always_inline));
|
||||
inline size_t libcdsb_string_replace_r_string_cstring (vtype_string*restrict x, const vtype_string*restrict src, const char*restrict dest, size_t maxn) __attribute__((always_inline));
|
||||
inline size_t libcdsb_string_replace_r_string_char (vtype_string*restrict x, const vtype_string*restrict src, int dest, size_t maxn) __attribute__((always_inline));
|
||||
inline size_t libcdsb_string_replace_r_cstring_string (vtype_string*restrict x, const char*restrict src, const vtype_string*restrict dest, size_t maxn) __attribute__((always_inline));
|
||||
extern size_t libcdsb_string_replace_r_cstring_cstring(vtype_string*restrict x, const char*restrict src, const char*restrict dest, size_t maxn) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
extern size_t libcdsb_string_replace_r_cstring_char (vtype_string*restrict x, const char*restrict src, int dest, size_t maxn) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
inline size_t libcdsb_string_replace_r_char_string (vtype_string*restrict x, int src, const vtype_string*restrict dest, size_t maxn) __attribute__((always_inline));
|
||||
extern size_t libcdsb_string_replace_r_char_cstring (vtype_string*restrict x, int src, const char*restrict dest, size_t maxn) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
extern size_t libcdsb_string_replace_r_char_char (vtype_string*restrict x, int src, int dest, size_t maxn) LIBCDSB_nt__ LIBCDSB_nn1__;
|
||||
|
||||
/*#####################################################################################################################*/
|
||||
|
||||
inline vtype_array libcdsb_string_split_string(const vtype_string* x, const vtype_string* sep, size_t maxn) {
|
||||
return string_split(x, sep->buffer, maxn);
|
||||
}
|
||||
|
||||
inline size_t libcdsb_string_replace_r_string_string (vtype_string*restrict x, const vtype_string*restrict src, const vtype_string*restrict dest, size_t maxn) {
|
||||
return string_replace_r(x, src->buffer, dest->buffer, maxn);
|
||||
}
|
||||
|
||||
inline size_t libcdsb_string_replace_r_string_cstring(vtype_string*restrict x, const vtype_string*restrict src, const char*restrict dest, size_t maxn) {
|
||||
return string_replace_r(x, src->buffer, dest, maxn);
|
||||
}
|
||||
|
||||
inline size_t libcdsb_string_replace_r_cstring_string(vtype_string*restrict x, const char*restrict src, const vtype_string*restrict dest, size_t maxn) {
|
||||
return string_replace_r(x, src, dest->buffer, maxn);
|
||||
}
|
||||
|
||||
inline size_t libcdsb_string_replace_r_string_char (vtype_string*restrict x, const vtype_string*restrict src, int dest, size_t maxn) {
|
||||
return string_replace_r(x, src->buffer, dest, maxn);
|
||||
}
|
||||
|
||||
inline size_t libcdsb_string_replace_r_char_string (vtype_string*restrict x, int src, const vtype_string*restrict dest, size_t maxn) {
|
||||
return string_replace_r(x, src, dest->buffer, maxn);
|
||||
}
|
||||
|
||||
#endif /* LIBCDSB_EXTRA_STRING_H */
|
||||
|
||||
Reference in New Issue
Block a user