/* $Copyright:	$
 * Copyright (c) 1984, 1985, 1986, 1987, 1988, 1989, 1990 
 * Sequent Computer Systems, Inc.   All rights reserved.
 *  
 * This software is furnished under a license and may be used
 * only in accordance with the terms of that license and with the
 * inclusion of the above copyright notice.   This software may not
 * be provided or otherwise made available to, or used by, any
 * other person.  No title to or ownership of the software is
 * hereby transferred.
 */

/*	Copyright (c) 1984 AT&T	*/
/*	  All Rights Reserved  	*/

/*	THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T	*/
/*	The copyright notice above does not evidence any   	*/
/*	actual or intended publication of such source code.	*/

#ident	"$Header: search.h 1.6 90/06/24 $@(#)head:search.h	1.3"

/*----------------------------------------------------------------------*
 * This file must meet the requirements in volume 2 of the X/Open	*
 * Portability Guide, Issue 3, which should be consulted before any	*
 * changes are made.							*
 *----------------------------------------------------------------------*/

#ifndef	_SEARCH_H_
/* HSEARCH(3C) */
typedef struct entry { char *key, *data; } ENTRY;
typedef enum { FIND, ENTER } ACTION;

#ifndef NO_XPG3_HDR
extern int hcreate();
extern void hdestroy();
extern ENTRY *hsearch();
#endif	/* NO_XPG3_HDR */

/* TSEARCH(3C) */
typedef enum { preorder, postorder, endorder, leaf } VISIT;

#ifndef NO_XPG3_HDR
extern void *tsearch();
extern void *tfind();
extern void *tdelete();
extern void twalk();
#endif	/* NO_XPG3_HDR */

/* LSEARCH(3C) */
#ifndef NO_XPG3_HDR
extern void *lfind();
extern void *lsearch();
#endif	/* NO_XPG3_HDR */

#define	_SEARCH_H_
#endif	/* _SEARCH_H_ */
