#ident "$URL: svn://elmer/devel/SVN/SDDAS/trunk/libant/LinkApply.c $ %D% SwRI" /* LinkApply.c -- apply void function to each element of linked list */ #include "LinkList.h" /* LinkApply -- apply void function to each element of linked list */ void LinkApply( LinkList list, LinkApplyFunc1 fun) { for (; list; list = list->next) (*fun)(list->data); } /* LinkApplyData -- apply void function to each element of linked list function gets link data + 1 user-supplied data item */ void LinkApplyData(LinkList list,LinkApplyFunc2 fun,void *data) { for (; list; list = list->next) (*fun)(list->data,data); } /* LinkApplyData2 -- apply void function to each element of linked list function gets link data + 2 user-supplied data items */ void LinkApplyData2(LinkList list,LinkApplyFunc3 fun,void *data1,void *data2) { for (; list; list = list->next) (*fun)(list->data,data1,data2); }