add function uniq_skiplist_find_node_ex
parent
3e192fae09
commit
7190fad3d0
3
HISTORY
3
HISTORY
|
|
@ -1,4 +1,7 @@
|
|||
|
||||
Version 1.45 2020-12-24
|
||||
* add function uniq_skiplist_find_node_ex
|
||||
|
||||
Version 1.44 2020-12-06
|
||||
* add test file src/tests/test_pthread_lock.c
|
||||
* add uniq_skiplist.[hc]
|
||||
|
|
|
|||
|
|
@ -108,4 +108,3 @@ static inline int fast_buffer_append_buffer(FastBuffer *buffer, FastBuffer *src)
|
|||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -531,6 +531,16 @@ int uniq_skiplist_replace_ex(UniqSkiplist *sl, void *data,
|
|||
return 0;
|
||||
}
|
||||
|
||||
UniqSkiplistNode *uniq_skiplist_find_node_ex(UniqSkiplist *sl, void *data,
|
||||
UniqSkiplistNode **previous)
|
||||
{
|
||||
int level_index;
|
||||
|
||||
*previous = uniq_skiplist_get_equal_previous(sl, data, &level_index);
|
||||
return (*previous != NULL) ? (UniqSkiplistNode *)
|
||||
(*previous)->links[level_index] : NULL;
|
||||
}
|
||||
|
||||
UniqSkiplistNode *uniq_skiplist_find_node(UniqSkiplist *sl, void *data)
|
||||
{
|
||||
int level_index;
|
||||
|
|
|
|||
|
|
@ -112,6 +112,10 @@ int uniq_skiplist_find_range(UniqSkiplist *sl, void *start_data,
|
|||
void *end_data, UniqSkiplistIterator *iterator);
|
||||
|
||||
UniqSkiplistNode *uniq_skiplist_find_node(UniqSkiplist *sl, void *data);
|
||||
|
||||
UniqSkiplistNode *uniq_skiplist_find_node_ex(UniqSkiplist *sl, void *data,
|
||||
UniqSkiplistNode **previous);
|
||||
|
||||
void uniq_skiplist_delete_node_ex(UniqSkiplist *sl,
|
||||
UniqSkiplistNode *previous, UniqSkiplistNode *deleted,
|
||||
const bool need_free);
|
||||
|
|
|
|||
Loading…
Reference in New Issue