diff --git a/legacy/eina/src/include/eina_list.h b/legacy/eina/src/include/eina_list.h index 835422d418..f0ab97288e 100644 --- a/legacy/eina/src/include/eina_list.h +++ b/legacy/eina/src/include/eina_list.h @@ -50,7 +50,7 @@ * @typedef Eina_List * Type for a generic double linked list. */ -typedef struct _Eina_List Eina_List; +typedef struct _Eina_List Eina_List; typedef struct _Eina_List_Accounting Eina_List_Accounting; @@ -60,9 +60,9 @@ typedef struct _Eina_List_Accounting Eina_List_Accounting; */ struct _Eina_List { - void *data; /**< Pointer to list element payload */ - Eina_List *next; /**< Next member in the list */ - Eina_List *prev; /**< Previous member in the list */ + void *data; /**< Pointer to list element payload */ + Eina_List *next; /**< Next member in the list */ + Eina_List *prev; /**< Previous member in the list */ Eina_List_Accounting *accounting; /**< Private list accounting info - don't touch */ EINA_MAGIC @@ -70,51 +70,50 @@ struct _Eina_List struct _Eina_List_Accounting { - Eina_List *last; + Eina_List *last; unsigned int count; EINA_MAGIC }; -EAPI Eina_List * eina_list_append (Eina_List *list, const void *data) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_prepend (Eina_List *list, const void *data) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_append_relative (Eina_List *list, const void *data, const void *relative) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_append_relative_list (Eina_List *list, const void *data, Eina_List *relative) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_prepend_relative (Eina_List *list, const void *data, const void *relative) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_prepend_relative_list (Eina_List *list, const void *data, Eina_List *relative) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_sorted_insert(Eina_List *list, Eina_Compare_Cb func, const void *data) EINA_ARG_NONNULL(2, 3) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_remove (Eina_List *list, const void *data) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_remove_list (Eina_List *list, Eina_List *remove_list) EINA_ARG_NONNULL( 2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_promote_list (Eina_List *list, Eina_List *move_list) EINA_ARG_NONNULL( 2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_demote_list (Eina_List *list, Eina_List *move_list); -EAPI void * eina_list_data_find(const Eina_List *list, const void *data) EINA_PURE EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_data_find_list (const Eina_List *list, const void *data) EINA_PURE EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_free (Eina_List *list); -EAPI void * eina_list_nth(const Eina_List *list, unsigned int n) EINA_PURE EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_nth_list (const Eina_List *list, unsigned int n) EINA_PURE EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_reverse (Eina_List *list) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_reverse_clone(const Eina_List *list) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_clone(const Eina_List *list) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_sort (Eina_List *list, unsigned int size, Eina_Compare_Cb func) EINA_ARG_NONNULL(3) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_merge (Eina_List *left, Eina_List *right) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_sorted_merge(Eina_List *left, Eina_List *right, Eina_Compare_Cb func) EINA_ARG_NONNULL(3) EINA_WARN_UNUSED_RESULT; -EAPI Eina_List * eina_list_split_list(Eina_List *list, Eina_List *relative, Eina_List **right) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_append(Eina_List *list, const void *data) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_prepend(Eina_List *list, const void *data) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_append_relative(Eina_List *list, const void *data, const void *relative) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_append_relative_list(Eina_List *list, const void *data, Eina_List *relative) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_prepend_relative(Eina_List *list, const void *data, const void *relative) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_prepend_relative_list(Eina_List *list, const void *data, Eina_List *relative) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_sorted_insert(Eina_List *list, Eina_Compare_Cb func, const void *data) EINA_ARG_NONNULL(2, 3) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_remove(Eina_List *list, const void *data) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_remove_list(Eina_List *list, Eina_List *remove_list) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_promote_list(Eina_List *list, Eina_List *move_list) EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_demote_list(Eina_List *list, Eina_List *move_list); +EAPI void * eina_list_data_find(const Eina_List *list, const void *data) EINA_PURE EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_data_find_list(const Eina_List *list, const void *data) EINA_PURE EINA_ARG_NONNULL(2) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_free(Eina_List *list); +EAPI void * eina_list_nth(const Eina_List *list, unsigned int n) EINA_PURE EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_nth_list(const Eina_List *list, unsigned int n) EINA_PURE EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_reverse(Eina_List *list) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_reverse_clone(const Eina_List *list) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_clone(const Eina_List *list) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_sort(Eina_List *list, unsigned int size, Eina_Compare_Cb func) EINA_ARG_NONNULL(3) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_merge(Eina_List *left, Eina_List *right) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_sorted_merge(Eina_List *left, Eina_List *right, Eina_Compare_Cb func) EINA_ARG_NONNULL(3) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_split_list(Eina_List *list, Eina_List *relative, Eina_List **right) EINA_WARN_UNUSED_RESULT; +EAPI Eina_List * eina_list_search_sorted_near_list(const Eina_List *list, Eina_Compare_Cb func, const void *data, int *result_cmp); +EAPI Eina_List * eina_list_search_sorted_list(const Eina_List *list, Eina_Compare_Cb func, const void *data); +EAPI void * eina_list_search_sorted(const Eina_List *list, Eina_Compare_Cb func, const void *data); +EAPI Eina_List * eina_list_search_unsorted_list(const Eina_List *list, Eina_Compare_Cb func, const void *data); +EAPI void * eina_list_search_unsorted(const Eina_List *list, Eina_Compare_Cb func, const void *data); -EAPI Eina_List * eina_list_search_sorted_near_list(const Eina_List *list, Eina_Compare_Cb func, const void *data, int *result_cmp); -EAPI Eina_List * eina_list_search_sorted_list(const Eina_List *list, Eina_Compare_Cb func, const void *data); -EAPI void * eina_list_search_sorted(const Eina_List *list, Eina_Compare_Cb func, const void *data); -EAPI Eina_List * eina_list_search_unsorted_list(const Eina_List *list, Eina_Compare_Cb func, const void *data); -EAPI void * eina_list_search_unsorted(const Eina_List *list, Eina_Compare_Cb func, const void *data); +static inline Eina_List * eina_list_last(const Eina_List *list) EINA_PURE EINA_WARN_UNUSED_RESULT; +static inline Eina_List * eina_list_next(const Eina_List *list) EINA_PURE EINA_WARN_UNUSED_RESULT; +static inline Eina_List * eina_list_prev(const Eina_List *list) EINA_PURE EINA_WARN_UNUSED_RESULT; +static inline void * eina_list_data_get(const Eina_List *list) EINA_PURE EINA_WARN_UNUSED_RESULT; +static inline unsigned int eina_list_count(const Eina_List *list) EINA_PURE; -static inline Eina_List * eina_list_last (const Eina_List *list) EINA_PURE EINA_WARN_UNUSED_RESULT; -static inline Eina_List * eina_list_next (const Eina_List *list) EINA_PURE EINA_WARN_UNUSED_RESULT; -static inline Eina_List * eina_list_prev (const Eina_List *list) EINA_PURE EINA_WARN_UNUSED_RESULT; -static inline void * eina_list_data_get(const Eina_List *list) EINA_PURE EINA_WARN_UNUSED_RESULT; -static inline unsigned int eina_list_count(const Eina_List *list) EINA_PURE; - -EAPI Eina_Iterator * eina_list_iterator_new(const Eina_List *list) EINA_MALLOC EINA_WARN_UNUSED_RESULT; -EAPI Eina_Iterator * eina_list_iterator_reversed_new(const Eina_List *list) EINA_MALLOC EINA_WARN_UNUSED_RESULT; -EAPI Eina_Accessor * eina_list_accessor_new(const Eina_List *list) EINA_MALLOC EINA_WARN_UNUSED_RESULT; +EAPI Eina_Iterator * eina_list_iterator_new(const Eina_List *list) EINA_MALLOC EINA_WARN_UNUSED_RESULT; +EAPI Eina_Iterator * eina_list_iterator_reversed_new(const Eina_List *list) EINA_MALLOC EINA_WARN_UNUSED_RESULT; +EAPI Eina_Accessor * eina_list_accessor_new(const Eina_List *list) EINA_MALLOC EINA_WARN_UNUSED_RESULT; /** * @def EINA_LIST_FOREACH @@ -156,12 +155,12 @@ EAPI Eina_Accessor * eina_list_accessor_new(const Eina_List *list) * For destructive operations such as this, consider * using EINA_LIST_FOREACH_SAFE(). */ -#define EINA_LIST_FOREACH(list, l, data) \ - for (l = list, \ - data = eina_list_data_get(l); \ - l; \ - l = eina_list_next(l), \ - data = eina_list_data_get(l)) +#define EINA_LIST_FOREACH(list, l, data) \ + for (l = list, \ + data = eina_list_data_get(l); \ + l; \ + l = eina_list_next(l), \ + data = eina_list_data_get(l)) /** * @def EINA_LIST_REVERSE_FOREACH @@ -204,12 +203,12 @@ EAPI Eina_Accessor * eina_list_accessor_new(const Eina_List *list) * For destructive operations such as this, consider * using EINA_LIST_REVERSE_FOREACH_SAFE(). */ -#define EINA_LIST_REVERSE_FOREACH(list, l, data) \ - for (l = eina_list_last(list), \ - data = eina_list_data_get(l); \ - l; \ - l = eina_list_prev(l), \ - data = eina_list_data_get(l)) +#define EINA_LIST_REVERSE_FOREACH(list, l, data) \ + for (l = eina_list_last(list), \ + data = eina_list_data_get(l); \ + l; \ + l = eina_list_prev(l), \ + data = eina_list_data_get(l)) /** * @def EINA_LIST_FOREACH_SAFE @@ -246,14 +245,14 @@ EAPI Eina_Accessor * eina_list_accessor_new(const Eina_List *list) * } * @endcode */ -#define EINA_LIST_FOREACH_SAFE(list, l, l_next, data) \ - for (l = list, \ - l_next = eina_list_next(l), \ - data = eina_list_data_get(l); \ - l; \ - l = l_next, \ - l_next = eina_list_next(l), \ - data = eina_list_data_get(l)) +#define EINA_LIST_FOREACH_SAFE(list, l, l_next, data) \ + for (l = list, \ + l_next = eina_list_next(l), \ + data = eina_list_data_get(l); \ + l; \ + l = l_next, \ + l_next = eina_list_next(l), \ + data = eina_list_data_get(l)) /** * @def EINA_LIST_REVERSE_FOREACH_SAFE @@ -292,14 +291,14 @@ EAPI Eina_Accessor * eina_list_accessor_new(const Eina_List *list) * } * @endcode */ -#define EINA_LIST_REVERSE_FOREACH_SAFE(list, l, l_prev, data) \ - for (l = eina_list_last(list), \ - l_prev = eina_list_prev(l), \ - data = eina_list_data_get(l); \ - l; \ - l = l_prev, \ - l_prev = eina_list_prev(l), \ - data = eina_list_data_get(l)) +#define EINA_LIST_REVERSE_FOREACH_SAFE(list, l, l_prev, data) \ + for (l = eina_list_last(list), \ + l_prev = eina_list_prev(l), \ + data = eina_list_data_get(l); \ + l; \ + l = l_prev, \ + l_prev = eina_list_prev(l), \ + data = eina_list_data_get(l)) /** * @def EINA_LIST_FREE @@ -326,11 +325,11 @@ EAPI Eina_Accessor * eina_list_accessor_new(const Eina_List *list) * * @see eina_list_free() */ -#define EINA_LIST_FREE(list, data) \ - for (data = eina_list_data_get(list); \ - list; \ - list = eina_list_remove_list(list, list), \ - data = eina_list_data_get(list)) +#define EINA_LIST_FREE(list, data) \ + for (data = eina_list_data_get(list); \ + list; \ + list = eina_list_remove_list(list, list), \ + data = eina_list_data_get(list)) #include "eina_inline_list.x"