pike.git
/
src
/
rbtree.h
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/rbtree.h:1:
/* || This file is part of Pike. For copyright information see COPYRIGHT. || Pike is distributed under GPL, LGPL and MPL. See the file COPYING || for more information.
-
|| $Id: rbtree.h,v 1.
8
2002/
10
/
11
01
:
39
:
37
nilsson
Exp $
+
|| $Id: rbtree.h,v 1.
9
2002/
12
/
22
17
:
18
:
55
mast
Exp $
*/ /* An implementation of a threaded red/black balanced binary tree. * * Created 2001-04-27 by Martin Stjernholm */ #ifndef RBTREE_H #define RBTREE_H
pike.git/src/rbtree.h:85:
DO_IF_RB_STATS (rb_num_sidestep_ops++ COMMA) (node)->prev : \ rb_link_prev (node)) #define rb_next(node) \ (DO_IF_RB_STATS (rb_num_sidesteps++ COMMA) \ (node)->flags & RB_THREAD_NEXT ? \ DO_IF_RB_STATS (rb_num_sidestep_ops++ COMMA) (node)->next : \ rb_link_next (node)) #ifdef PIKE_DEBUG /* To get good type checking. */
-
static
inline
struct rb_node_hdr *rb_node_check (struct rb_node_hdr *node)
+
static
INLINE
struct rb_node_hdr *rb_node_check (struct rb_node_hdr *node)
{return node;} #else #define rb_node_check(node) ((struct rb_node_hdr *) (node)) #endif typedef int rb_find_fn (void *key, struct rb_node_hdr *node); typedef int rb_cmp_fn (struct rb_node_hdr *a, struct rb_node_hdr *b, void *extra); typedef int rb_equal_fn (struct rb_node_hdr *a, struct rb_node_hdr *b, void *extra); typedef struct rb_node_hdr *rb_copy_fn (struct rb_node_hdr *node, void *extra); typedef void rb_free_fn (struct rb_node_hdr *node, void *extra);