iset_create, iset_destroy, iset_copy, iset_is_empty, iset_add, iset_add_range,
iset_remove, iset_remove_range, iset_clear, iset_contains, iset_union,
iset_diff, iset_isect, iset_range, iset_nth_range - manipulate sets of
integers
#include <publib.h>
Iset *iset_create(void);
void iset_destroy(Iset *is);
Iset *iset_copy(const Iset *is);
int iset_is_empty(const Iset *is);
int iset_add(Iset *is, long number);
int iset_add_range(Iset *is, long number1, long number2);
int iset_remove(Iset *is, long number);
int iset_remove_range(Iset *is, long number1, long number2);
void iset_clear(Iset *is);
int iset_contains(const Iset *is, long number);
int iset_union(Iset *is1, const Iset *is2);
int iset_diff(Iset *is1, const Iset *is2);
int iset_isect(Iset *is1, const Iset *is2);
void iset_range(const Iset *is, long *lowest, long *highest);
int iset_nth_range(const Iset *is, long n, long *lo, long *hi);
These functions operate on sets of integers (of type long). You clever people
will know how to use them without my help, which saves me from writing a
manual page.
Lars Wirzenius (lars.wirzenius@helsinki.fi)