aboutsummaryrefslogtreecommitdiff
path: root/include/splay-tree.h
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2010-06-10 18:30:24 +0000
committerDJ Delorie <dj@redhat.com>2010-06-10 18:30:24 +0000
commit219a461e6c1b65b12a6b08ba167560c00dd2174d (patch)
tree87f7cd0012ca973b3885c99639fb89be6bc534a6 /include/splay-tree.h
parentf3a2388fc96c63c0233cdc3449ea61cf36e4975b (diff)
downloadgdb-219a461e6c1b65b12a6b08ba167560c00dd2174d.zip
gdb-219a461e6c1b65b12a6b08ba167560c00dd2174d.tar.gz
gdb-219a461e6c1b65b12a6b08ba167560c00dd2174d.tar.bz2
merge from gcc
Diffstat (limited to 'include/splay-tree.h')
-rw-r--r--include/splay-tree.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/include/splay-tree.h b/include/splay-tree.h
index 57a96c4..480b2c43 100644
--- a/include/splay-tree.h
+++ b/include/splay-tree.h
@@ -1,5 +1,5 @@
/* A splay-tree datatype.
- Copyright 1998, 1999, 2000, 2002, 2005, 2007, 2009
+ Copyright 1998, 1999, 2000, 2002, 2005, 2007, 2009, 2010
Free Software Foundation, Inc.
Contributed by Mark Mitchell (mark@markmitchell.com).
@@ -119,9 +119,13 @@ struct GTY(()) splay_tree_s {
/* The deallocate-value function. NULL if no cleanup is necessary. */
splay_tree_delete_value_fn delete_value;
- /* Allocate/free functions, and a data pointer to pass to them. */
+ /* Node allocate function. Takes allocate_data as a parameter. */
splay_tree_allocate_fn allocate;
+
+ /* Free function for nodes and trees. Takes allocate_data as a parameter. */
splay_tree_deallocate_fn deallocate;
+
+ /* Parameter for allocate/free functions. */
void * GTY((skip)) allocate_data;
};
@@ -136,6 +140,13 @@ extern splay_tree splay_tree_new_with_allocator (splay_tree_compare_fn,
splay_tree_allocate_fn,
splay_tree_deallocate_fn,
void *);
+extern splay_tree splay_tree_new_typed_alloc (splay_tree_compare_fn,
+ splay_tree_delete_key_fn,
+ splay_tree_delete_value_fn,
+ splay_tree_allocate_fn,
+ splay_tree_allocate_fn,
+ splay_tree_deallocate_fn,
+ void *);
extern void splay_tree_delete (splay_tree);
extern splay_tree_node splay_tree_insert (splay_tree,
splay_tree_key,