summaryrefslogtreecommitdiff
path: root/include/linux/skip_lists.h
diff options
context:
space:
mode:
authorAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-09-17 02:25:44 -0300
committerAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-09-17 02:25:44 -0300
commit5b465b045af3a649a89b8a5c5bfdece20ffc0345 (patch)
tree934f851eaec863864e15fa7ef9514a445a9e88ff /include/linux/skip_lists.h
parent0520a938e11c34a5ffc422b9316b85e294b0fbb2 (diff)
Linux-libre 4.7.4-gnupck-4.7.4-gnu
Diffstat (limited to 'include/linux/skip_lists.h')
-rw-r--r--include/linux/skip_lists.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/include/linux/skip_lists.h b/include/linux/skip_lists.h
index c19a6ea62..84c550655 100644
--- a/include/linux/skip_lists.h
+++ b/include/linux/skip_lists.h
@@ -20,8 +20,14 @@ typedef struct listStructure {
skiplist_node *header; /* pointer to header */
} skiplist;
-skiplist_node *skiplist_init(void);
+void skiplist_init(skiplist_node *slnode);
skiplist *new_skiplist(skiplist_node *slnode);
-skiplist_node *skiplist_insert(skiplist_node *slnode, skiplist *l, keyType key, valueType value, unsigned int randseed);
-void skiplist_delnode(skiplist_node *slnode, skiplist *l, skiplist_node *node);
+void free_skiplist(skiplist *l);
+void skiplist_node_init(skiplist_node *node);
+void skiplist_insert(skiplist *l, skiplist_node *node, keyType key, valueType value, unsigned int randseed);
+void skiplist_delete(skiplist *l, skiplist_node *node);
+
+static inline bool skiplist_node_empty(skiplist_node *node) {
+ return (!node->next[0]);
+}
#endif /* _LINUX_SKIP_LISTS_H */