Create Xref-Html Frames                    Remove All Frames
file:c:/local/Cygwin/usr/include/search.h        (Tue May 25 21:07:25 2004 )


   1: /*  $NetBSD: search.h,v 1.12 1999/02/22 10:34:28 christos Exp $ */
   2: /* $FreeBSD: src/include/search.h,v 1.4 2002/03/23 17:24:53 imp Exp $ */
   3: 
   4: /*
   5:  * Written by J.T. Conklin <jtc@netbsd.org>
   6:  * Public domain.
   7:  */
   8: 
   9: #ifndef _SEARCH_H_
  10: #define _SEARCH_H_
  11: 
  12: #include <sys/cdefs.h>
  13: #include <machine/ansi.h>
  14: #include <sys/types.h>
  15: 
  16: typedef struct entry {
  17:   char *key;
  18:   void *data;
  19: } ENTRY;
  20: 
  21: typedef enum {
  22:   FIND, ENTER
  23: } ACTION;
  24: 
  25: typedef enum {
  26:   preorder,
  27:   postorder,
  28:   endorder,
  29:   leaf
  30: } VISIT;
  31: 
  32: #ifdef _SEARCH_PRIVATE
  33: typedef struct node {
  34:   char         *key;
  35:   struct node  *llink, *rlink;
  36: } node_t;
  37: #endif
  38: 
  39: struct hsearch_data
  40: {
  41:   struct internal_head *htable;
  42:   size_t htablesize;
  43: };
  44: 
  45: __BEGIN_DECLS
  46: int  hcreate(size_t);
  47: void   hdestroy(void);
  48: ENTRY *hsearch(ENTRY, ACTION);
  49: int  hcreate_r(size_t, struct hsearch_data *);
  50: void   hdestroy_r(struct hsearch_data *);
  51: int hsearch_r(ENTRY, ACTION, ENTRY **, struct hsearch_data *);
  52: void  *tdelete(const void *, void **, int (*)(const void *, const void *));
  53: void  tdestroy (void *, void (*)(void *));
  54: void  *tfind(const void *, void **, int (*)(const void *, const void *));
  55: void  *tsearch(const void *, void **, int (*)(const void *, const void *));
  56: void      twalk(const void *, void (*)(const void *, VISIT, int));
  57: __END_DECLS
  58: 
  59: #endif /* !_SEARCH_H_ */
  60: 








































Html form generated by Xrefactory version 1.6.7 on Fri Sep 03 17:18:59 2004