From b0981f7cb1324ca862b6efc6da94b50f7a475032 Mon Sep 17 00:00:00 2001 From: glenrendes Date: Sun, 5 May 2019 18:05:50 +0200 Subject: [PATCH] trying to get acc stuff --- module/da/src/acc.lib.c | 8 ++++++-- module/da/src/{da.lib.c => last_da.lib.c} | 23 +++++++++-------------- 2 files changed, 15 insertions(+), 16 deletions(-) rename module/da/src/{da.lib.c => last_da.lib.c} (97%) diff --git a/module/da/src/acc.lib.c b/module/da/src/acc.lib.c index f071ac5..4e1cb79 100644 --- a/module/da/src/acc.lib.c +++ b/module/da/src/acc.lib.c @@ -6,13 +6,17 @@ but not freed, or freed but not allocated. */ +//new sed file for changes to rest of project +//da_alloc -> da_init +//da_map -> da_foreach + #include "da.lib.h" #include "da_na.lib.h" #include "acc.lib.h" Da *acc_live_checkers = NULL; -void acc_init(){ +void acc_init(){ //open if( acc_live_checkers == NULL ){ acc_live_checkers = malloc(sizeof(Da)); da_na_init(acc_live_checkers, sizeof(AccChecker)); @@ -22,7 +26,7 @@ void acc_init(){ da_na_alloc(&(acp->spurious_free), sizeof(void *)); da_na_push(acc_live_checkers, acp); } -void acc_free(){ +void acc_free(){//close } void acc_report(){ diff --git a/module/da/src/da.lib.c b/module/da/src/last_da.lib.c similarity index 97% rename from module/da/src/da.lib.c rename to module/da/src/last_da.lib.c index 226391b..17368ca 100644 --- a/module/da/src/da.lib.c +++ b/module/da/src/last_da.lib.c @@ -136,28 +136,23 @@ void da_map(Da *dap, void f(void *, void *), void *closure){ } //∃, OR map ----> should return the element pointer, same for da_pts_exists - -void *da_exists(Da *dap, bool f(void *, void*), void *closure){ +//---> should return the element pointer, same for da_pts_exists +static bool da_quantifier(bool complement, Da *dap, bool pred(void *, void*), void *closure){ char *pt = dap->base; bool result = false; - while( !result && (pt != dap->end) ){ + while( (complement? !result : result) && (pt != dap->end) ){ result = f(pt, closure); pt += dap->element_size; } return result; } - -//∀, AND map -bool da_all(Da *dap, bool f(void *, void*), void *closure){ - char *pt = dap->base; - bool result = true; - while( result && (pt != dap->end) ){ - result = f(pt, closure); - pt += dap->element_size; - } - return result; +bool da_exists(Da *dap, bool pred(void *, void*), void *closure){ + return da_quantifier(true, dap, pred, closure); } +bool da_all(Da *dap, bool pred(void *, void*), void *closure){ + return da_quantifier(false, dap, pred, closure); +} + //-------------------------------------------------------------------------------- // elements are pointers -- 2.20.1