splay_tree sp = (splay_tree) xmalloc (sizeof (struct splay_tree_s)); sp->root = 0; sp->comp = compare_fn; sp->delete_key = delete_key_fn; sp->delete_value = delete_value_fn;  return sp;
return (splay_tree_new_with_allocator (compare_fn, delete_key_fn, delete_value_fn, splay_tree_xmalloc_allocate, splay_tree_xmalloc_deallocate, 0));
splay_tree_new (compare_fn, delete_key_fn, delete_value_fn)     splay_tree_compare_fn compare_fn;     splay_tree_delete_key_fn delete_key_fn;     splay_tree_delete_value_fn delete_value_fn;{  splay_tree sp = (splay_tree) xmalloc (sizeof (struct splay_tree_s));  sp->root = 0;  sp->comp = compare_fn;  sp->delete_key = delete_key_fn;  sp->delete_value = delete_value_fn;  return sp;}