1 /* 2 setutil.h - Functions for creating and working with sets. 3 Used in WordNet library to find noun relatives 4 5 $Id: setutil.h,v 1.2 1997/09/02 16:31:18 wn Rel $ 6 7 */ 8 9 #ifndef _SETUTIL_ 10 #define _SETUTIL_ 11 12 typedef struct set_tag *Set_t; 13 14 Set_t set_create(unsigned max_elem); 15 Set_t set_resize(Set_t s, unsigned new_max_elem); 16 void set_destroy(Set_t s); 17 18 void set_addobj(Set_t s, unsigned objnum); /*s += obj.*/ 19 void set_removeobj(Set_t s, unsigned objnum); /*s -= obj.*/ 20 21 void set_union(Set_t u, Set_t a, Set_t b); /* u = a + b.*/ 22 void set_intersection(Set_t n, Set_t a, Set_t b); /* u = a x b.*/ 23 24 int set_nelem(Set_t s); /*returns |s|.*/ 25 int set_isempty(Set_t s); /* returns |s| == 0.*/ 26 int set_haselem(Set_t s, unsigned objnum); /* returns obj E s ?*/ 27 int set_maxelem(Set_t s); /*Returns max num of elems set can hold.*/ 28 29 #endif /* SET_UTIL */ 30