From 4e6dad939ab5a5428d0c37ae27f95e0399b335ee Mon Sep 17 00:00:00 2001 From: Patrick Pelissier Date: Sat, 27 Oct 2018 22:56:00 +0200 Subject: [PATCH] API Compatibility change: rename _remove for DICT & B+TREE into _erase for API uniformization. --- README.md | 4 ++-- doc/API.txt | 3 +++ doc/Container.ods | Bin 44361 -> 44391 bytes m-bptree.h | 8 +++++++- m-core.h | 7 +++++++ m-dict.h | 10 ++++++++-- 6 files changed, 27 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 51f74be2..2c817bfc 100644 --- a/README.md +++ b/README.md @@ -2013,7 +2013,7 @@ This method is only defined for associative containers (no SET). Push the value referenced by key 'key' into the dictionary 'dict'. This method is only defined for SET. -##### void name\_remove(name\_t dict, const key\_type key) +##### void name\_erase(name\_t dict, const key\_type key) Remove the element referenced by key 'key' in the dictionary 'dict'. Do nothing if 'key' is no present in the dictionary. @@ -2745,7 +2745,7 @@ and save the popped value into 'dest' if the pointer is not null while keeping the tree balanced. Do nothing if 'data' is no present in the B+Tree. -##### bool name\_remove(name\_t tree, const key\_type data) +##### bool name\_erase(name\_t tree, const key\_type data) Remove 'data' from the B+Tree 'tree' while keeping the tree balanced. diff --git a/doc/API.txt b/doc/API.txt index b36d050a..eca4d3c7 100644 --- a/doc/API.txt +++ b/doc/API.txt @@ -27,4 +27,7 @@ V0.2.*: * worker_start takes a 'worker_t' as an additional parameter change name of _get_ ## field into _get_at_ ## fields Since there is a name collision with other methods if a field is named 'str'. + * Rename _remove into _erase for dictionary & B+TREE (adding a compatibility layer) for API uniformization. + The provided _remove doesn't use an iterator but a 'key', incompatible with the one of array or list. + But is like the one provided by the priority queue. diff --git a/doc/Container.ods b/doc/Container.ods index 0951ce972cbce7a1a406ac15d1aa5e16ea16bcd7..42866e02548f2e54a5bb0c7c435aedb8d6993222 100644 GIT binary patch delta 6977 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 G8UJ6c>in7j delta 6913 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 diff --git a/m-bptree.h b/m-bptree.h index 31d77330..b5678f29 100644 --- a/m-bptree.h +++ b/m-bptree.h @@ -663,7 +663,7 @@ return -1; /* unreachable */ \ } \ \ - static inline bool M_C(name, _remove)(tree_t b, key_t const key) \ + static inline bool M_C(name, _erase)(tree_t b, key_t const key) \ { \ BPTREEI_CONTRACT(N, key_oplist, b); \ pit_t pit; \ @@ -715,6 +715,12 @@ } \ } \ \ + static inline bool M_ATTR_DEPRECATED \ + M_C(name, _remove)(tree_t b, key_t const key) \ + { \ + return M_C(name, _erase)(b, key); \ + } \ + \ static inline bool M_C(name, _pop_at)(value_t *ptr, tree_t b, key_t const key) \ { \ if (ptr != NULL) { \ diff --git a/m-core.h b/m-core.h index ae8ea830..b61a10cc 100644 --- a/m-core.h +++ b/m-core.h @@ -85,6 +85,13 @@ # define M_ALIGN_FOR_CACHELINE_EXCLUSION 64 #endif +/* Deprecated attribute for function */ +#if defined(__GNUC__) && __GNUC__ >= 4 +#define M_ATTR_DEPRECATED __attribute__((deprecated)) +#else +#define M_ATTR_DEPRECATED +#endif + /***************************************************************/ /****************** Preprocessing Times Macro ******************/ /***************************************************************/ diff --git a/m-dict.h b/m-dict.h index fddd123d..97cdce82 100644 --- a/m-dict.h +++ b/m-dict.h @@ -457,7 +457,7 @@ } \ \ static inline bool \ - M_C(name, _remove)(dict_t map, key_type const key) \ + M_C(name, _erase)(dict_t map, key_type const key) \ { \ DICTI_CONTRACT(name, map); \ \ @@ -604,6 +604,12 @@ Do not used any fields of the dictionnary but the public API */ #define DICTI_FUNC_ADDITIONAL_DEF2(name, key_type, key_oplist, value_type, value_oplist, isSet, dict_t, dict_it_t) \ \ + static inline bool M_ATTR_DEPRECATED \ + M_C(name, _remove)(dict_t map, key_type const key) \ + { \ + return M_C(name, _erase)(map, key); \ + } \ + \ M_IF_METHOD_BOTH(GET_STR, key_oplist, value_oplist)( \ static inline void \ M_C(name, _get_str)(string_t str, const dict_t dict, const bool append) \ @@ -1271,7 +1277,7 @@ typedef enum { } \ \ static inline bool \ - M_C(name,_remove)(dict_t dict, const key_type key) \ + M_C(name,_erase)(dict_t dict, const key_type key) \ { \ DICTI_OA_CONTRACT(dict); \ /* NOTE: key can't be the representation of empty or deleted */ \