X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2FSDCCset.h;h=7b4fc589555ee20d0f9e38b72e1b4cdca230d8ea;hb=80972b2e54c9b88f11c27b878874fd2a6a681391;hp=f5179baae9c8b7a7fa7b1bb6151d0f8953a9defd;hpb=29779804200986ce903b5086441b49265a122dc5;p=fw%2Fsdcc diff --git a/src/SDCCset.h b/src/SDCCset.h index f5179baa..7b4fc589 100644 --- a/src/SDCCset.h +++ b/src/SDCCset.h @@ -26,12 +26,6 @@ #define SDCCSET_H #include -#if defined(_MSC_VER) -#include "sdcc_vc.h" -#else -#include "sdccconf.h" -#endif // _MSC_VER - #ifndef THROWS #define THROWS @@ -54,29 +48,35 @@ set; #define V_ARG(type,var) type var = va_arg(ap,type) /* set related functions */ +set *newSet (void); void *addSet (set **, void *); void *addSetHead (set **, void *); void *getSet (set **); void deleteSetItem (set **, void *); void deleteItemIf (set **, int (*cond) (void *, va_list),...); int isinSet (set *, void *); -int isinSetWith (set *, void *, int (*cfunc) (void *, void *)); +typedef int (* insetwithFunc) (void *, void *); +int isinSetWith (set *, void *, insetwithFunc cfunc); int applyToSet (set * list, int (*somefunc) (void *, va_list),...); int applyToSetFTrue (set * list, int (*somefunc) (void *, va_list),...); +void mergeSets (set **sset, set *list); set *unionSets (set *, set *, int); set *unionSetsWith (set *, set *, int (*cFunc) (), int); set *intersectSets (set *, set *, int); void *addSetIfnotP (set **, void *); set *setFromSet (set *); +set *setFromSetNonRev (set *); int isSetsEqual (set *, set *); set *subtractFromSet (set *, set *, int); int elementsInSet (set *); +void *indexSet(set *, int); set *intersectSetsWith (set *, set *, int (*cFunc) (void *, void *), int); int isSetsEqualWith (set *, set *, int (*cFunc) (void *, void *)); void *peekSet (set *); void *setFirstItem (set *); void *setNextItem (set *); void setToNull (void **); - +set *reverseSet (set *); +void deleteSet (set **s); #endif