blob: 8dc2a1803052c1a23ed44b48e5fd04ea7146a46f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
/* ISC license. */
#include <errno.h>
#include <skalibs/functypes.h>
#include <skalibs/gensetdyn.h>
int gensetdyn_iter_withcancel (gensetdyn *g, iterfunc_t_ref f, iterfunc_t_ref cancelf, void *stuff)
{
unsigned int n = gensetdyn_iter_nocancel(g, gensetdyn_n(g), f, stuff) ;
if (n < gensetdyn_n(g))
{
int e = errno ;
gensetdyn_iter_nocancel(g, n, cancelf, stuff) ;
errno = e ;
return 0 ;
}
return 1 ;
}
|