diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/geset.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/geset.h b/src/geset.h index a87692b..320aa51 100644 --- a/src/geset.h +++ b/src/geset.h @@ -39,6 +39,7 @@ bool n##_has(n_t *, t); \ size_t n##_size(n_t *); \ bool n##_empty(n_t *); \ + bool n##_intersects(n_t *, n_t *); \ int n##_remove(n_t *, t); \ int n##_resize(n_t *, size_t); \ bool int_n##_key_iseq(t, t); \ @@ -99,6 +100,16 @@ return int_n##_empty(set); \ } \ \ + bool \ + n##_intersects(n_t *a, n_t *b) \ + { \ + GESET_FOREACH(n, t, e, *a) { \ + if (n##_has(b, e)) \ + return true; \ + } \ + return false; \ + } \ + \ int \ n##_remove(n_t *set, t e) \ { \ |