24#ifndef __M_LIST_STR_H__
25#define __M_LIST_STR_H__
29#include <mstdlib/base/m_defs.h>
30#include <mstdlib/base/m_types.h>
char * M_list_str_join(const M_list_str_t *d, unsigned char sep)
M_bool M_list_str_replace_at(M_list_str_t *d, const char *val, size_t idx)
void M_list_str_merge(M_list_str_t **dest, M_list_str_t *src, M_bool include_duplicates) M_FREE(2)
M_list_str_t * M_list_str_split(unsigned char delim, const char *s, M_uint32 flags, M_bool keep_empty_parts) M_MALLOC
char * M_list_str_take_at(M_list_str_t *d, size_t idx)
char * M_list_str_join_str(const M_list_str_t *d, const char *sep)
M_list_str_match_type_t
Definition: m_list_str.h:101
char * M_list_str_take_first(M_list_str_t *d)
const char * M_list_str_at(const M_list_str_t *d, size_t idx)
M_list_str_flags_t
Definition: m_list_str.h:84
void M_list_str_insert_begin(M_list_str_t *d)
M_list_str_t * M_list_str_create(M_uint32 flags) M_MALLOC
M_bool M_list_str_remove_last(M_list_str_t *d)
struct M_list_str M_list_str_t
Definition: m_list_str.h:80
void M_list_str_change_sorting(M_list_str_t *d, M_uint32 flags)
M_bool M_list_str_swap(M_list_str_t *d, size_t idx1, size_t idx2)
size_t M_list_str_insert_idx(const M_list_str_t *d, const char *val)
void M_list_str_remove_duplicates(M_list_str_t *d)
void M_list_str_destroy(M_list_str_t *d) M_FREE(1)
void M_list_str_insert_end(M_list_str_t *d)
M_bool M_list_str_remove_range(M_list_str_t *d, size_t start, size_t end)
size_t M_list_str_len(const M_list_str_t *d)
M_list_str_t * M_list_str_duplicate(const M_list_str_t *d) M_MALLOC
size_t M_list_str_remove_val(M_list_str_t *d, const char *val, M_uint32 type)
size_t M_list_str_count(const M_list_str_t *d, const char *val, M_uint32 type)
char * M_list_str_join_range(const M_list_str_t *d, unsigned char sep, size_t start, size_t end)
const char * M_list_str_last(const M_list_str_t *d)
M_bool M_list_str_index_of(const M_list_str_t *d, const char *val, M_uint32 type, size_t *idx)
M_bool M_list_str_insert(M_list_str_t *d, const char *val)
char * M_list_str_take_last(M_list_str_t *d)
M_bool M_list_str_remove_at(M_list_str_t *d, size_t idx)
M_bool M_list_str_remove_first(M_list_str_t *d)
M_bool M_list_str_insert_at(M_list_str_t *d, const char *val, size_t idx)
char * M_list_str_join_range_str(const M_list_str_t *d, const char *sep, size_t start, size_t end)
const char * M_list_str_first(const M_list_str_t *d)
size_t M_list_str_replace_val(M_list_str_t *d, const char *val, const char *new_val, M_uint32 type)
@ M_LIST_STR_MATCH_VAL
Definition: m_list_str.h:102
@ M_LIST_STR_MATCH_PTR
Definition: m_list_str.h:103
@ M_LIST_STR_MATCH_ALL
Definition: m_list_str.h:104
@ M_LIST_STR_NONE
Definition: m_list_str.h:85
@ M_LIST_STR_CASECMP
Definition: m_list_str.h:88
@ M_LIST_STR_SORTDESC
Definition: m_list_str.h:87
@ M_LIST_STR_NEVERSHRINK
Definition: m_list_str.h:96
@ M_LIST_STR_SORTASC
Definition: m_list_str.h:86
@ M_LIST_STR_STACK
Definition: m_list_str.h:90
@ M_LIST_STR_STABLE
Definition: m_list_str.h:89
@ M_LIST_STR_SET
Definition: m_list_str.h:91