Go to the documentation of this file.
105 #define SETelemsize ((int)sizeof(setelemT))
142 #define FOREACHsetelement_(type, set, variable) \
143 if (((variable= NULL), set)) for (\
144 variable##p= (type **)&((set)->e[0].p); \
145 (variable= *variable##p++);)
175 #define FOREACHsetelement_i_(qh, type, set, variable) \
176 if (((variable= NULL), set)) for (\
177 variable##_i= 0, variable= (type *)((set)->e[0].p), \
178 variable##_n= qh_setsize(qh, set);\
179 variable##_i < variable##_n;\
180 variable= (type *)((set)->e[++variable##_i].p) )
208 #define FOREACHsetelementreverse_(qh, type, set, variable) \
209 if (((variable= NULL), set)) for (\
210 variable##temp= qh_setsize(qh, set)-1, variable= qh_setlast(qh, set);\
211 variable; variable= \
212 ((--variable##temp >= 0) ? SETelemt_(set, variable##temp, type) : NULL))
239 #define FOREACHsetelementreverse12_(type, set, variable) \
240 if (((variable= NULL), set)) for (\
241 variable##p= (type **)&((set)->e[1].p); \
242 (variable= *variable##p); \
243 variable##p == ((type **)&((set)->e[0].p))?variable##p += 2: \
244 (variable##p == ((type **)&((set)->e[1].p))?variable##p--:variable##p++))
271 #define FOREACHelem_(set) FOREACHsetelement_(void, set, elem)
298 #define FOREACHset_(sets) FOREACHsetelement_(setT, sets, set)
313 #define SETindex_(set, elem) ((int)((void **)elem##p - (void **)&(set)->e[1].p))
324 #define SETref_(elem) (elem##p[-1])
336 #define SETelem_(set, n) ((set)->e[n].p)
347 #define SETelemt_(set, n, type) ((type*)((set)->e[n].p))
358 #define SETelemaddr_(set, n, type) ((type **)(&((set)->e[n].p)))
367 #define SETfirst_(set) ((set)->e[0].p)
376 #define SETfirstt_(set, type) ((type*)((set)->e[0].p))
385 #define SETsecond_(set) ((set)->e[1].p)
393 #define SETsecondt_(set, type) ((type*)((set)->e[1].p))
401 #define SETaddr_(set,type) ((type **)(&((set)->e[0].p)))
413 #define SETreturnsize_(set, size) (((size)= ((set)->e[(set)->maxsize].i))?(--(size)):((size)= (set)->maxsize))
424 #define SETempty_(set) (!set || (SETfirst_(set) ? 0 : 1))
438 #define SETsizeaddr_(set) (&((set)->e[(set)->maxsize]))
450 #define SETtruncate_(set, size) {set->e[set->maxsize].i= size+1; \
451 set->e[size].p= NULL;}
int qh_setequal_except(setT *setA, void *skipelemA, setT *setB, void *skipelemB)
void * qh_setdelnth(qhT *qh, setT *set, int nth)
int qh_setsize(qhT *qh, setT *set)
void qh_settempfree_all(qhT *qh)
int qh_setequal_skip(setT *setA, int skipA, setT *setB, int skipB)
void * qh_setlast(setT *set)
void qh_settruncate(qhT *qh, setT *set, int size)
int qh_setindex(setT *set, void *setelem)
void qh_setfree(qhT *qh, setT **set)
void qh_setlarger(qhT *qh, setT **setp)
void qh_settemppush(qhT *qh, setT *set)
void qh_setfree2(qhT *qh, setT **setp, int elemsize)
void ** qh_setendpointer(setT *set)
void qh_setcheck(qhT *qh, setT *set, const char *tname, unsigned id)
setT * qh_settemppop(qhT *qh)
void * qh_setdelsorted(setT *set, void *newelem)
setT * qh_setnew(qhT *qh, int size)
void qh_setprint(qhT *qh, FILE *fp, const char *string, setT *set)
setT * qh_setduplicate(qhT *qh, setT *set, int elemsize)
void qh_setappend2ndlast(qhT *qh, setT **setp, void *elem)
setT * qh_settemp(qhT *qh, int setsize)
void qh_settempfree(qhT *qh, setT **set)
void qh_setaddsorted(qhT *qh, setT **setp, void *elem)
void qh_setzero(qhT *qh, setT *set, int idx, int size)
int qh_setunique(qhT *qh, setT **set, void *elem)
setT * qh_setcopy(qhT *qh, setT *set, int extra)
void qh_setaddnth(qhT *qh, setT **setp, int nth, void *newelem)
int qh_setequal(setT *setA, setT *setB)
void qh_setreplace(qhT *qh, setT *set, void *oldelem, void *newelem)
void qh_setfreelong(qhT *qh, setT **set)
int qh_setin(setT *set, void *setelem)
void * qh_setdellast(setT *set)
void qh_setappend_set(qhT *qh, setT **setp, setT *setA)
void qh_setcompact(qhT *qh, setT *set)
void * qh_setdel(setT *set, void *elem)
void * qh_setdelnthsorted(qhT *qh, setT *set, int nth)
void qh_setappend(qhT *qh, setT **setp, void *elem)
setT * qh_setnew_delnthsorted(qhT *qh, setT *set, int size, int nth, int prepend)
hpp-fcl
Author(s):
autogenerated on Sat Nov 23 2024 03:44:59