From: Arnaud Giersch Date: Mon, 14 Nov 2011 14:37:41 +0000 (+0100) Subject: Use xbt_XXX_is_empty() instead of testing xbt_XXX_length() against 0. X-Git-Tag: exp_20120216~305 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/997eaf52ad0ae1eb34820b135c7ba884b2a17f3c Use xbt_XXX_is_empty() instead of testing xbt_XXX_length() against 0. Where XXX is 'dict' or 'dynar'. (was a request from emptty) --- diff --git a/doc/gtut-files/11-explicitwait.c b/doc/gtut-files/11-explicitwait.c index d84463ed07..f13c7e9612 100644 --- a/doc/gtut-files/11-explicitwait.c +++ b/doc/gtut-files/11-explicitwait.c @@ -43,7 +43,7 @@ int server_release_cb(gras_msg_cb_ctx_t ctx, void *payload) { server_data_t *globals = (server_data_t *) gras_userdata_get(); - if (xbt_dynar_length(globals->waiting_queue)) { + if (!xbt_dynar_is_empty(globals->waiting_queue)) { gras_socket_t s; xbt_dynar_pop(globals->waiting_queue, &s); diff --git a/examples/gras/replay/replay.c b/examples/gras/replay/replay.c index 0b3f2b3be6..3b19f419cc 100644 --- a/examples/gras/replay/replay.c +++ b/examples/gras/replay/replay.c @@ -239,7 +239,7 @@ int worker(int argc, char *argv[]) switch (cmd->action) { case XBT_WORKLOAD_COMPUTE: /* If any communication were queued, do them in parallel */ - if (xbt_dynar_length(cmd_to_go)) { + if (!xbt_dynar_is_empty(cmd_to_go)) { TRY { xbt_dynar_dopar(cmd_to_go, do_command); xbt_dynar_reset(cmd_to_go); @@ -268,7 +268,7 @@ int worker(int argc, char *argv[]) /* do in parallel any communication still queued */ XBT_INFO("Do %ld pending communications after end of TODO list", xbt_dynar_length(cmd_to_go)); - if (xbt_dynar_length(cmd_to_go)) { + if (!xbt_dynar_is_empty(cmd_to_go)) { xbt_dynar_dopar(cmd_to_go, do_command); xbt_dynar_reset(cmd_to_go); } diff --git a/examples/gras/replay/xbt_workload.c b/examples/gras/replay/xbt_workload.c index f16e41fee1..ea04624ede 100644 --- a/examples/gras/replay/xbt_workload.c +++ b/examples/gras/replay/xbt_workload.c @@ -29,7 +29,7 @@ xbt_workload_elm_t xbt_workload_elm_parse(char *line) xbt_dynar_t w = xbt_str_split(line, " "); - if (xbt_dynar_length(w) == 0) { + if (xbt_dynar_is_empty(w)) { free(res); xbt_dynar_free(&w); return NULL; diff --git a/examples/msg/mc/centralized_mutex.c b/examples/msg/mc/centralized_mutex.c index bc2e3292e0..5cfb74f409 100644 --- a/examples/msg/mc/centralized_mutex.c +++ b/examples/msg/mc/centralized_mutex.c @@ -34,7 +34,7 @@ int coordinator(int argc, char *argv[]) CS_used = 1; } } else { // that's a release. Check if someone was waiting for the lock - if (xbt_dynar_length(requests) > 0) { + if (!xbt_dynar_is_empty(requests)) { XBT_INFO("CS release. Grant to queued requests (queue size: %lu)", xbt_dynar_length(requests)); char *req; diff --git a/examples/simdag/goal/goal_test.c b/examples/simdag/goal/goal_test.c index 838082f59b..2f8b28fbbc 100644 --- a/examples/simdag/goal/goal_test.c +++ b/examples/simdag/goal/goal_test.c @@ -33,7 +33,7 @@ static void send_one(int from, int to) { count++; bcast_task_t bt; - if (xbt_dynar_length(reclaimed)>0) { + if (!xbt_dynar_is_empty(reclaimed)) { bt = xbt_dynar_pop_as(reclaimed,bcast_task_t); } else { bt = xbt_new(s_bcast_task_t,1); @@ -66,7 +66,7 @@ int main(int argc, char **argv) { xbt_dynar_t done = NULL; send_one(0,SD_workstation_get_number()); do { - if (done != NULL && xbt_dynar_length(done) > 0) { + if (done != NULL && !xbt_dynar_is_empty(done)) { unsigned int cursor; SD_task_t task; @@ -88,7 +88,7 @@ int main(int argc, char **argv) { xbt_dynar_free(&done); } done=SD_simulate(-1); - } while(xbt_dynar_length(done) > 0); + } while(!xbt_dynar_is_empty(done)); xbt_dynar_free(&done); xbt_dynar_free(&reclaimed); diff --git a/examples/simdag/scheduling/minmin_test.c b/examples/simdag/scheduling/minmin_test.c index 089066555b..3a0788d18f 100644 --- a/examples/simdag/scheduling/minmin_test.c +++ b/examples/simdag/scheduling/minmin_test.c @@ -84,7 +84,7 @@ static double finish_on_at(SD_task_t task, SD_workstation_t workstation) parents = SD_task_get_parents(task); - if (xbt_dynar_length(parents)) { + if (!xbt_dynar_is_empty(parents)) { /* compute last_data_available */ last_data_available = -1.0; xbt_dynar_foreach(parents, i, parent) { @@ -292,7 +292,7 @@ int main(int argc, char **argv) while (!xbt_dynar_is_empty((changed = SD_simulate(-1.0)))) { /* Get the set of ready tasks */ ready_tasks = get_ready_tasks(dax); - if (!xbt_dynar_length(ready_tasks)) { + if (xbt_dynar_is_empty(ready_tasks)) { xbt_dynar_free_container(&ready_tasks); xbt_dynar_free_container(&changed); /* there is no ready task, let advance the simulation */ diff --git a/examples/simdag/sd_seq_access.c b/examples/simdag/sd_seq_access.c index c1157cbffa..01b0433261 100644 --- a/examples/simdag/sd_seq_access.c +++ b/examples/simdag/sd_seq_access.c @@ -86,7 +86,7 @@ int main(int argc, char **argv) &(computation_amount[1]), SD_SCHED_NO_COST, rate); /* let's launch the simulation! */ - while (xbt_dynar_length(changed_tasks = SD_simulate(-1.0)) > 0) { + while (!xbt_dynar_is_empty(changed_tasks = SD_simulate(-1.0))) { for (i = 0; i < 2; i++) { task = SD_workstation_get_current_task(workstations[i]); if (task) diff --git a/examples/simdag/simdag_trace.c b/examples/simdag/simdag_trace.c index b05e5fb754..7452e70eb4 100644 --- a/examples/simdag/simdag_trace.c +++ b/examples/simdag/simdag_trace.c @@ -92,7 +92,7 @@ int main(int argc, char **argv) &(computation_amount[1]), SD_SCHED_NO_COST, rate); /* let's launch the simulation! */ - while (xbt_dynar_length(changed_tasks = SD_simulate(-1.0)) > 0) { + while (!xbt_dynar_is_empty(changed_tasks = SD_simulate(-1.0))) { for (i = 0; i < 2; i++) { task = SD_workstation_get_current_task(workstations[i]); if (task) diff --git a/src/bindings/lua/lua_console.c b/src/bindings/lua/lua_console.c index c96a02ee8e..82b7f6bc28 100644 --- a/src/bindings/lua/lua_console.c +++ b/src/bindings/lua/lua_console.c @@ -226,7 +226,7 @@ int console_add_route(lua_State *L) { lua_pushstring(L,"links"); lua_gettable(L,-2); links = xbt_str_split(lua_tostring(L, -1), ", \t\r\n"); - if (xbt_dynar_length(links)==0) + if (xbt_dynar_is_empty(links)) xbt_dynar_push_as(links,char*,xbt_strdup(lua_tostring(L, -1))); lua_pop(L,1); diff --git a/src/gras/DataDesc/cbps.c b/src/gras/DataDesc/cbps.c index 145560fa92..bb96f6df60 100644 --- a/src/gras/DataDesc/cbps.c +++ b/src/gras/DataDesc/cbps.c @@ -139,7 +139,7 @@ gras_cbps_v_pop(gras_cbps_t ps, } xbt_dynar_pop(varstack, &var); - if (!xbt_dynar_length(varstack)) { + if (xbt_dynar_is_empty(varstack)) { XBT_DEBUG("Last incarnation of %s poped. Kill it", name); xbt_dict_remove(ps->space, name); xbt_dynar_free(&varstack); @@ -277,7 +277,7 @@ void gras_cbps_block_end(gras_cbps_t ps) varstack = xbt_dict_get(ps->space, name); xbt_dynar_pop(varstack, &var); - if (!xbt_dynar_length(varstack)) { + if (xbt_dynar_is_empty(varstack)) { xbt_dict_remove(ps->space, name); xbt_dynar_free_container(&varstack); /*already empty, save a test ;) */ } @@ -303,7 +303,7 @@ int gras_cbps_i_pop(gras_cbps_t ps) { int ret; - xbt_assert(xbt_dynar_length(ps->lints) > 0, + xbt_assert(!xbt_dynar_is_empty(ps->lints), "gras_cbps_i_pop: no value to pop"); ret = xbt_dynar_pop_as(ps->lints, int); XBT_DEBUG("pop %d as a size", ret); diff --git a/src/gras/Msg/gras_msg_exchange.c b/src/gras/Msg/gras_msg_exchange.c index 127ce0f21c..66f6e64a26 100644 --- a/src/gras/Msg/gras_msg_exchange.c +++ b/src/gras/Msg/gras_msg_exchange.c @@ -326,7 +326,7 @@ void gras_msg_handle(volatile double timeOut) /* get a message (from the queue or from the net) */ timeouted = 0; - if (xbt_dynar_length(pd->msg_queue)) { + if (!xbt_dynar_is_empty(pd->msg_queue)) { XBT_DEBUG("Get a message from the queue"); xbt_dynar_shift(pd->msg_queue, &msg); } else { diff --git a/src/gras/Transport/transport_plugin_tcp.c b/src/gras/Transport/transport_plugin_tcp.c index adf691ccd1..b74bf905e9 100644 --- a/src/gras/Transport/transport_plugin_tcp.c +++ b/src/gras/Transport/transport_plugin_tcp.c @@ -767,12 +767,12 @@ void gras_trp_buf_socket_close(gras_socket_t sock) #ifdef HAVE_READV if (data->in_buf_v) { - if (xbt_dynar_length(data->in_buf_v)) + if (!xbt_dynar_is_empty(data->in_buf_v)) XBT_WARN("Socket closed, but some bytes were unread"); xbt_dynar_free(&data->in_buf_v); } if (data->out_buf_v) { - if (xbt_dynar_length(data->out_buf_v)) { + if (!xbt_dynar_is_empty(data->out_buf_v)) { XBT_DEBUG("Flush the socket before closing"); gras_trp_bufiov_flush(sock); } diff --git a/src/gras/Virtu/sg_process.c b/src/gras/Virtu/sg_process.c index 1ea5b265f3..c6446eee4c 100644 --- a/src/gras/Virtu/sg_process.c +++ b/src/gras/Virtu/sg_process.c @@ -100,7 +100,7 @@ void gras_process_exit() XBT_VERB("GRAS: Finalizing process '%s' (%d)", SIMIX_req_process_get_name(SIMIX_process_self()), gras_os_getpid()); - if (xbt_dynar_length(msg_pd->msg_queue)) { + if (!xbt_dynar_is_empty(msg_pd->msg_queue)) { unsigned int cpt; s_gras_msg_t msg; XBT_WARN diff --git a/src/instr/instr_config.c b/src/instr/instr_config.c index 1511425c8b..7c38522121 100644 --- a/src/instr/instr_config.c +++ b/src/instr/instr_config.c @@ -459,7 +459,7 @@ void TRACE_generate_triva_cat_conf (void) char *name, *name2, *value, *value2; //check if we do have categories declared - if (xbt_dict_length(created_categories) == 0){ + if (xbt_dict_is_empty(created_categories)){ XBT_INFO("No categories declared, ignoring generation of triva graph configuration"); return; } diff --git a/src/instr/instr_paje_trace.c b/src/instr/instr_paje_trace.c index d3928a4686..4a60ed3c16 100644 --- a/src/instr/instr_paje_trace.c +++ b/src/instr/instr_paje_trace.c @@ -189,7 +189,7 @@ void TRACE_paje_dump_buffer (int force) buffer = xbt_dynar_new (sizeof(paje_event_t), NULL); }else{ paje_event_t event; - while (xbt_dynar_length (buffer) > 0){ + while (!xbt_dynar_is_empty(buffer)){ double head_timestamp = (*(paje_event_t*)xbt_dynar_get_ptr(buffer, 0))->timestamp; if (head_timestamp > TRACE_last_timestamp_to_dump){ break; diff --git a/src/instr/instr_routing.c b/src/instr/instr_routing.c index f63b722bb7..051b266cc9 100644 --- a/src/instr/instr_routing.c +++ b/src/instr/instr_routing.c @@ -85,7 +85,7 @@ static void linkContainers (container_t father, container_t src, container_t dst static void recursiveGraphExtraction (AS_t rc, container_t container, xbt_dict_t filter) { - if (xbt_dict_length (rc->routing_sons)){ + if (!xbt_dict_is_empty(rc->routing_sons)){ xbt_dict_cursor_t cursor = NULL; AS_t rc_son; char *child_name; @@ -394,7 +394,7 @@ static xbt_edge_t new_xbt_graph_edge (xbt_graph_t graph, xbt_node_t s, xbt_node_ static void recursiveXBTGraphExtraction (xbt_graph_t graph, xbt_dict_t nodes, xbt_dict_t edges, AS_t rc, container_t container) { - if (xbt_dict_length (rc->routing_sons)){ + if (!xbt_dict_is_empty(rc->routing_sons)){ xbt_dict_cursor_t cursor = NULL; AS_t rc_son; char *child_name; diff --git a/src/instr/instr_smpi.c b/src/instr/instr_smpi.c index 7cdf66f0f1..8cddd98a46 100644 --- a/src/instr/instr_smpi.c +++ b/src/instr/instr_smpi.c @@ -101,7 +101,7 @@ static char *TRACE_smpi_get_key(int src, int dst, char *key, int n) snprintf(aux, INSTR_DEFAULT_STR_SIZE, "%d#%d", src, dst); xbt_dynar_t d = xbt_dict_get_or_null(keys, aux); - xbt_assert(xbt_dynar_length(d)!=0, + xbt_assert(!xbt_dynar_is_empty(d), "Trying to get a link key (for message reception) that has no corresponding send (%s).", __FUNCTION__); char *s = xbt_dynar_get_as (d, 0, char *); snprintf (key, n, "%s", s); diff --git a/src/instr/jedule/jedule_sd_binding.c b/src/instr/jedule/jedule_sd_binding.c index 8cf0f77a1a..9ecf7cba9d 100644 --- a/src/instr/jedule/jedule_sd_binding.c +++ b/src/instr/jedule/jedule_sd_binding.c @@ -60,7 +60,7 @@ static void create_hierarchy(AS_t current_comp, AS_t elem; network_element_t network_elem; - if( xbt_dict_length(current_comp->routing_sons) == 0 ) { + if(xbt_dict_is_empty(current_comp->routing_sons)) { // I am no AS // add hosts to jedule platform xbt_dynar_t hosts; diff --git a/src/mc/mc_global.c b/src/mc/mc_global.c index 1142da7c2a..ffb8a37601 100644 --- a/src/mc/mc_global.c +++ b/src/mc/mc_global.c @@ -80,7 +80,7 @@ void MC_wait_for_requests(void) smx_req_t req; unsigned int iter; - while (xbt_dynar_length(simix_global->process_to_run)) { + while (!xbt_dynar_is_empty(simix_global->process_to_run)) { SIMIX_process_runall(); xbt_dynar_foreach(simix_global->process_that_ran, iter, process) { req = &process->request; diff --git a/src/msg/msg_actions.c b/src/msg/msg_actions.c index cacf21e547..580915586c 100644 --- a/src/msg/msg_actions.c +++ b/src/msg/msg_actions.c @@ -103,7 +103,7 @@ static const char **action_get_action(char *name) char *evtname = NULL; xbt_dynar_t myqueue = xbt_dict_get_or_null(action_queues, name); - if (myqueue == NULL || xbt_dynar_length(myqueue) == 0) { // nothing stored for me. Read the file further + if (myqueue == NULL || xbt_dynar_is_empty(myqueue)) { // nothing stored for me. Read the file further if (action_fp == NULL) { // File closed now. There's nothing more to read. I'm out of here goto todo_done; diff --git a/src/simdag/sd_daxloader.c b/src/simdag/sd_daxloader.c index b8b8d04f35..a47704d031 100644 --- a/src/simdag/sd_daxloader.c +++ b/src/simdag/sd_daxloader.c @@ -117,14 +117,14 @@ bool acyclic_graph_detail(xbt_dynar_t dag){ xbt_dynar_foreach(dag,count,task){ if(task->kind == SD_TASK_COMM_E2E) continue; task->marked = 0; - if(xbt_dynar_length(task->tasks_after) == 0){ + if(xbt_dynar_is_empty(task->tasks_after)){ xbt_dynar_push(current, &task); } } task = NULL; count = 0; //test if something has to be done for the next iteration - while(xbt_dynar_length(current) != 0){ + while(!xbt_dynar_is_empty(current)){ next = xbt_dynar_new(sizeof(SD_task_t),NULL); //test if the current iteration is done count_current=0; @@ -177,7 +177,7 @@ bool acyclic_graph_detail(xbt_dynar_t dag){ current = xbt_dynar_new(sizeof(SD_task_t),NULL); xbt_dynar_foreach(dag,count,task){ if(task->kind == SD_TASK_COMM_E2E) continue; - if(xbt_dynar_length(task->tasks_before) == 0){ + if(xbt_dynar_is_empty(task->tasks_before)){ xbt_dynar_push(current, &task); } } @@ -186,7 +186,7 @@ bool acyclic_graph_detail(xbt_dynar_t dag){ task = NULL; xbt_dynar_foreach(dag,count,task){ if(task->kind == SD_TASK_COMM_E2E) continue; - if(xbt_dynar_length(task->tasks_before) == 0){ + if(xbt_dynar_is_empty(task->tasks_before)){ task->marked = 1; xbt_dynar_push(current, &task); } @@ -194,7 +194,7 @@ bool acyclic_graph_detail(xbt_dynar_t dag){ task = NULL; count = 0; //test if something has to be done for the next iteration - while(xbt_dynar_length(current) != 0){ + while(!xbt_dynar_is_empty(current)){ next = xbt_dynar_new(sizeof(SD_task_t),NULL); //test if the current iteration is done count_current=0; @@ -314,7 +314,7 @@ xbt_dynar_t SD_daxload(const char *filename) unsigned int cpt1, cpt2; SD_task_t newfile = NULL; SD_dependency_t depbefore, depafter; - if (xbt_dynar_length(file->tasks_before) == 0) { + if (xbt_dynar_is_empty(file->tasks_before)) { xbt_dynar_foreach(file->tasks_after, cpt2, depafter) { SD_task_t newfile = SD_task_create_comm_e2e(file->name, NULL, file->amount); @@ -331,7 +331,7 @@ xbt_dynar_t SD_daxload(const char *filename) #endif xbt_dynar_push(result, &newfile); } - } else if (xbt_dynar_length(file->tasks_after) == 0) { + } else if (xbt_dynar_is_empty(file->tasks_after)) { xbt_dynar_foreach(file->tasks_before, cpt2, depbefore) { SD_task_t newfile = SD_task_create_comm_e2e(file->name, NULL, file->amount); diff --git a/src/simdag/sd_dotloader.c b/src/simdag/sd_dotloader.c index 25795b68eb..006a682cac 100644 --- a/src/simdag/sd_dotloader.c +++ b/src/simdag/sd_dotloader.c @@ -197,7 +197,7 @@ xbt_dynar_t SD_dotload_generic(const char * filename) unsigned int cpt1, cpt2; SD_task_t newfile = NULL; SD_dependency_t depbefore, depafter; - if (xbt_dynar_length(file->tasks_before) == 0) { + if (xbt_dynar_is_empty(file->tasks_before)) { xbt_dynar_foreach(file->tasks_after, cpt2, depafter) { SD_task_t newfile = SD_task_create_comm_e2e(file->name, NULL, file->amount); @@ -205,7 +205,7 @@ xbt_dynar_t SD_dotload_generic(const char * filename) SD_task_dependency_add(NULL, NULL, newfile, depafter->dst); xbt_dynar_push(result, &newfile); } - } else if (xbt_dynar_length(file->tasks_after) == 0) { + } else if (xbt_dynar_is_empty(file->tasks_after)) { xbt_dynar_foreach(file->tasks_before, cpt2, depbefore) { SD_task_t newfile = SD_task_create_comm_e2e(file->name, NULL, file->amount); diff --git a/src/simdag/sd_task.c b/src/simdag/sd_task.c index fc156666b9..9109ff9a63 100644 --- a/src/simdag/sd_task.c +++ b/src/simdag/sd_task.c @@ -373,13 +373,13 @@ void SD_task_dump(SD_task_t task) } XBT_INFO(" - amount: %.0f", SD_task_get_amount(task)); XBT_INFO(" - Dependencies to satisfy: %d", task->unsatisfied_dependencies); - if (xbt_dynar_length(task->tasks_before)) { + if (!xbt_dynar_is_empty(task->tasks_before)) { XBT_INFO(" - pre-dependencies:"); xbt_dynar_foreach(task->tasks_before, counter, dependency) { XBT_INFO(" %s", SD_task_get_name(dependency->src)); } } - if (xbt_dynar_length(task->tasks_after)) { + if (!xbt_dynar_is_empty(task->tasks_after)) { XBT_INFO(" - post-dependencies:"); xbt_dynar_foreach(task->tasks_after, counter, dependency) { XBT_INFO(" %s", SD_task_get_name(dependency->dst)); @@ -1188,12 +1188,12 @@ static void __SD_task_remove_dependencies(SD_task_t task) /* we must destroy the dependencies carefuly (with SD_dependency_remove) because each one is stored twice */ SD_dependency_t dependency; - while (xbt_dynar_length(task->tasks_before) > 0) { + while (!xbt_dynar_is_empty(task->tasks_before)) { xbt_dynar_get_cpy(task->tasks_before, 0, &dependency); SD_task_dependency_remove(dependency->src, dependency->dst); } - while (xbt_dynar_length(task->tasks_after) > 0) { + while (!xbt_dynar_is_empty(task->tasks_after)) { xbt_dynar_get_cpy(task->tasks_after, 0, &dependency); SD_task_dependency_remove(dependency->src, dependency->dst); } diff --git a/src/simix/smx_context_raw.c b/src/simix/smx_context_raw.c index 5cf7c0726e..19a07cf732 100644 --- a/src/simix/smx_context_raw.c +++ b/src/simix/smx_context_raw.c @@ -428,7 +428,7 @@ void smx_ctx_raw_new_sr(void) #else static void smx_ctx_raw_runall_serial(void) { - if (xbt_dynar_length(simix_global->process_to_run) > 0) { + if (!xbt_dynar_is_empty(simix_global->process_to_run)) { smx_process_t first_process = xbt_dynar_get_as(simix_global->process_to_run, 0, smx_process_t); raw_process_index = 1; diff --git a/src/simix/smx_context_sysv.c b/src/simix/smx_context_sysv.c index a6fef0dcc6..f46dbad9fa 100644 --- a/src/simix/smx_context_sysv.c +++ b/src/simix/smx_context_sysv.c @@ -235,7 +235,7 @@ static void smx_ctx_sysv_resume_serial(smx_process_t first_process) static void smx_ctx_sysv_runall_serial(void) { - if (xbt_dynar_length(simix_global->process_to_run) > 0) { + if (!xbt_dynar_is_empty(simix_global->process_to_run)) { smx_process_t first_process = xbt_dynar_get_as(simix_global->process_to_run, 0, smx_process_t); smx_ctx_sysv_process_index = 1; diff --git a/src/simix/smx_global.c b/src/simix/smx_global.c index 24f9df4311..45733ca37d 100644 --- a/src/simix/smx_global.c +++ b/src/simix/smx_global.c @@ -197,7 +197,7 @@ void SIMIX_run(void) #ifdef TIME_BENCH smx_ctx_raw_new_sr(); #endif - while (xbt_dynar_length(simix_global->process_to_run)) { + while (!xbt_dynar_is_empty(simix_global->process_to_run)) { XBT_DEBUG("New Sub-Schedule Round; size(queue)=%lu", xbt_dynar_length(simix_global->process_to_run)); SIMIX_process_runall(); @@ -240,7 +240,7 @@ void SIMIX_run(void) /* Clean processes to destroy */ SIMIX_process_empty_trash(); - } while (time != -1.0 || xbt_dynar_length(simix_global->process_to_run) > 0); + } while (time != -1.0 || !xbt_dynar_is_empty(simix_global->process_to_run)); if (xbt_swag_size(simix_global->process_list) != 0) { diff --git a/src/simix/smx_user.c b/src/simix/smx_user.c index 464fc34895..4184a76591 100644 --- a/src/simix/smx_user.c +++ b/src/simix/smx_user.c @@ -843,7 +843,7 @@ unsigned int SIMIX_req_comm_waitany(xbt_dynar_t comms) int SIMIX_req_comm_testany(xbt_dynar_t comms) { smx_req_t req = SIMIX_req_mine(); - if (xbt_dynar_length(comms)==0) + if (xbt_dynar_is_empty(comms)) return -1; req->call = REQ_COMM_TESTANY; diff --git a/src/surf/network.c b/src/surf/network.c index d9f0192461..0c45addafb 100644 --- a/src/surf/network.c +++ b/src/surf/network.c @@ -598,7 +598,7 @@ static surf_action_t net_communicate(const char *src_name, XBT_IN("(%s,%s,%g,%g)", src_name, dst_name, size, rate); /* LARGE PLATFORMS HACK: assert on total_route_size */ - xbt_assert(xbt_dynar_length(route) || latency, + xbt_assert(!xbt_dynar_is_empty(route) || latency, "You're trying to send data from %s to %s but there is no connection at all between these two hosts.", src_name, dst_name); @@ -644,7 +644,7 @@ static surf_action_t net_communicate(const char *src_name, bandwidth_constraint_callback(action->rate, bandwidth_bound, size); - if(xbt_dynar_length(route) > 0) { + if(!xbt_dynar_is_empty(route)) { link = *(link_CM02_t*)xbt_dynar_get_ptr(route, 0); gap_append(size, link, action); XBT_DEBUG("Comm %p: %s -> %s gap=%f (lat=%f)", diff --git a/src/surf/network_ns3.c b/src/surf/network_ns3.c index c1ede45b22..f8d5841976 100644 --- a/src/surf/network_ns3.c +++ b/src/surf/network_ns3.c @@ -489,7 +489,7 @@ static void ns3_update_actions_state(double now, double delta) } } - while (xbt_dynar_length(socket_to_destroy)){ + while (!xbt_dynar_is_empty(socket_to_destroy)){ xbt_dynar_pop(socket_to_destroy,&key); void *data = xbt_dict_get (dict_socket, key); diff --git a/src/surf/sg_platf.c b/src/surf/sg_platf.c index 5276efc1dc..1db868e816 100644 --- a/src/surf/sg_platf.c +++ b/src/surf/sg_platf.c @@ -101,7 +101,7 @@ void sg_platf_new_AS_begin(const char *id, const char *routing) { unsigned int iterator; sg_platf_AS_begin_cb_t fun; - if (!surf_parse_models_setup_already_called && xbt_dynar_length(sg_platf_AS_begin_cb_list)) { + if (!surf_parse_models_setup_already_called && !xbt_dynar_is_empty(sg_platf_AS_begin_cb_list)) { /* Initialize the surf models. That must be done after we got all config, and before we need the models. * That is, after the last tag, if any, and before the first of cluster|peer|AS|trace|trace_connect * diff --git a/src/surf/surf_routing_full.c b/src/surf/surf_routing_full.c index bfc4e41db2..9d42e98786 100644 --- a/src/surf/surf_routing_full.c +++ b/src/surf/surf_routing_full.c @@ -180,7 +180,7 @@ void model_full_set_route(AS_t rc, const char *src, xbt_assert(src_id, "Network elements %s not found", src); xbt_assert(dst_id, "Network elements %s not found", dst); - xbt_assert(xbt_dynar_length(route->generic_route.link_list) > 0, + xbt_assert(!xbt_dynar_is_empty(route->generic_route.link_list), "Invalid count of links, must be greater than zero (%s,%s)", src, dst); diff --git a/src/surf/surf_routing_generic.c b/src/surf/surf_routing_generic.c index 4355976900..a9f4e7c113 100644 --- a/src/surf/surf_routing_generic.c +++ b/src/surf/surf_routing_generic.c @@ -69,7 +69,7 @@ void generic_parse_bypassroute(AS_t rc, char *route_name; route_name = bprintf("%s#%s", src, dst); - xbt_assert(xbt_dynar_length(e_route->generic_route.link_list) > 0, + xbt_assert(!xbt_dynar_is_empty(e_route->generic_route.link_list), "Invalid count of links, must be greater than zero (%s,%s)", src, dst); xbt_assert(!xbt_dict_get_or_null(dict_bypassRoutes, route_name), diff --git a/src/surf/surf_routing_rulebased.c b/src/surf/surf_routing_rulebased.c index 357c33dc5b..110c28822a 100644 --- a/src/surf/surf_routing_rulebased.c +++ b/src/surf/surf_routing_rulebased.c @@ -93,7 +93,7 @@ static void model_rulebased_parse_route(AS_t rc, int erroffset; if(!strcmp(rc->model_desc->name,"Vivaldi")){ - if(xbt_dynar_length(route->generic_route.link_list) != 0) + if(!xbt_dynar_is_empty(route->generic_route.link_list)) xbt_die("You can't have link_ctn with Model Vivaldi."); } @@ -121,7 +121,7 @@ static void model_rulebased_parse_ASroute(AS_t rc, int erroffset; if(!strcmp(rc->model_desc->name,"Vivaldi")){ - if(xbt_dynar_length(route->generic_route.link_list) != 0) + if(!xbt_dynar_is_empty(route->generic_route.link_list)) xbt_die("You can't have link_ctn with Model Vivaldi."); } diff --git a/src/surf/surfxml_parse.c b/src/surf/surfxml_parse.c index b83d1686db..9e4cd80a99 100644 --- a/src/surf/surfxml_parse.c +++ b/src/surf/surfxml_parse.c @@ -128,7 +128,7 @@ int ETag_surfxml_include_state(void) { fflush(NULL); XBT_INFO("ETag_surfxml_include_state '%s'",A_surfxml_include_file); - if(xbt_dynar_length(surf_input_buffer_stack)!= 0) + if(!xbt_dynar_is_empty(surf_input_buffer_stack)) return 1; fclose(surf_file_to_parse); xbt_dynar_pop(surf_file_to_parse_stack, &surf_file_to_parse); diff --git a/src/xbt/config.c b/src/xbt/config.c index aa55aa65e1..c149aaa27c 100644 --- a/src/xbt/config.c +++ b/src/xbt/config.c @@ -828,7 +828,7 @@ void xbt_cfg_set_int(xbt_cfg_t cfg, const char *name, int val) variable = xbt_cfgelm_get(cfg, name, xbt_cfgelm_int); if (variable->max == 1) { - if (variable->cb_rm && xbt_dynar_length(variable->content)) + if (variable->cb_rm && !xbt_dynar_is_empty(variable->content)) variable->cb_rm(name, 0); xbt_dynar_set(variable->content, 0, &val); @@ -863,7 +863,7 @@ void xbt_cfg_set_double(xbt_cfg_t cfg, const char *name, double val) variable = xbt_cfgelm_get(cfg, name, xbt_cfgelm_double); if (variable->max == 1) { - if (variable->cb_rm && xbt_dynar_length(variable->content)) + if (variable->cb_rm && !xbt_dynar_is_empty(variable->content)) variable->cb_rm(name, 0); xbt_dynar_set(variable->content, 0, &val); @@ -902,7 +902,7 @@ void xbt_cfg_set_string(xbt_cfg_t cfg, const char *name, const char *val) xbt_cfgelm_type_name[variable->type], variable->type, variable); if (variable->max == 1) { - if (xbt_dynar_length(variable->content)) { + if (!xbt_dynar_is_empty(variable->content)) { if (variable->cb_rm) variable->cb_rm(name, 0); else if (variable->type == xbt_cfgelm_string) { @@ -949,7 +949,7 @@ xbt_cfg_set_peer(xbt_cfg_t cfg, const char *name, const char *peer, variable = xbt_cfgelm_get(cfg, name, xbt_cfgelm_peer); if (variable->max == 1) { - if (variable->cb_rm && xbt_dynar_length(variable->content)) + if (variable->cb_rm && !xbt_dynar_is_empty(variable->content)) variable->cb_rm(name, 0); xbt_dynar_set(variable->content, 0, &val); @@ -1245,7 +1245,7 @@ char *xbt_cfg_get_string(xbt_cfg_t cfg, const char *name) XBT_WARN ("You asked for the first value of the config element '%s', but there is %lu values\n", name, xbt_dynar_length(variable->content)); - } else if (xbt_dynar_length(variable->content) == 0) { + } else if (xbt_dynar_is_empty(variable->content)) { return NULL; } diff --git a/src/xbt/dict_multi.c b/src/xbt/dict_multi.c index 20d1185483..0c2e692526 100644 --- a/src/xbt/dict_multi.c +++ b/src/xbt/dict_multi.c @@ -125,7 +125,7 @@ void *xbt_multidict_get_ext(xbt_dict_t mdict, int keys_len = xbt_dynar_length(keys); xbt_assert(xbt_dynar_length(keys) == xbt_dynar_length(lens)); - xbt_assert(xbt_dynar_length(keys) >= 1, + xbt_assert(!xbt_dynar_is_empty(keys), "Can't get a zero-long key set in a multidict"); XBT_DEBUG("xbt_multidict_get(%p, %ld)", mdict, xbt_dynar_length(keys)); diff --git a/src/xbt/dynar.c b/src/xbt/dynar.c index 5831a788e0..c16e2458bb 100644 --- a/src/xbt/dynar.c +++ b/src/xbt/dynar.c @@ -1002,7 +1002,7 @@ XBT_TEST_UNIT("insert",test_dynar_insert,"Using the xbt_dynar_insert and xbt_dyn "The retrieved value is not the same than the injected one (%d!=%d)", cursor, cpt); } - xbt_test_assert(xbt_dynar_length(d) == 0, + xbt_test_assert(xbt_dynar_is_empty(d), "There is still %lu elements in the dynar after removing everything", xbt_dynar_length(d)); xbt_dynar_free(&d); @@ -1030,7 +1030,7 @@ XBT_TEST_UNIT("insert",test_dynar_insert,"Using the xbt_dynar_insert and xbt_dyn "The retrieved value is not the same than the injected one (%d!=%d)", cursor, cpt); } - xbt_test_assert(xbt_dynar_length(d) == 0, + xbt_test_assert(xbt_dynar_is_empty(d), "There is still %lu elements in the dynar after removing everything", xbt_dynar_length(d)); xbt_dynar_free(&d); diff --git a/src/xbt/log.c b/src/xbt/log.c index 1a29248df9..d7722115cd 100644 --- a/src/xbt/log.c +++ b/src/xbt/log.c @@ -1060,7 +1060,7 @@ void xbt_log_control_set(const char *control_string) /* split the string, and remove empty entries */ set_strings = xbt_str_split_quoted(control_string); - if (xbt_dynar_length(set_strings) == 0) { /* vicious user! */ + if (xbt_dynar_is_empty(set_strings)) { /* vicious user! */ xbt_dynar_free(&set_strings); return; } diff --git a/src/xbt/set.c b/src/xbt/set.c index 8b3efbfce0..21c83eb6ea 100644 --- a/src/xbt/set.c +++ b/src/xbt/set.c @@ -57,7 +57,7 @@ void xbt_set_free(xbt_set_t * set) static int _xbt_set_get_id(xbt_set_t set) { int id; - if (xbt_dynar_length(set->available_ids) > 0) { + if (!xbt_dynar_is_empty(set->available_ids)) { /* if there are some available ids */ xbt_dynar_pop(set->available_ids, &id); } else { diff --git a/src/xbt/xbt_queue.c b/src/xbt/xbt_queue.c index 7a38199528..76a828c046 100644 --- a/src/xbt/xbt_queue.c +++ b/src/xbt/xbt_queue.c @@ -100,7 +100,7 @@ void xbt_queue_push(xbt_queue_t queue, const void *src) void xbt_queue_pop(xbt_queue_t queue, void *const dst) { xbt_mutex_acquire(queue->mutex); - while (xbt_dynar_length(queue->data) == 0) { + while (xbt_dynar_is_empty(queue->data)) { XBT_DEBUG("Queue %p empty. Waiting", queue); xbt_cond_wait(queue->not_empty, queue->mutex); } @@ -140,7 +140,7 @@ void xbt_queue_unshift(xbt_queue_t queue, const void *src) void xbt_queue_shift(xbt_queue_t queue, void *const dst) { xbt_mutex_acquire(queue->mutex); - while (xbt_dynar_length(queue->data) == 0) { + while (xbt_dynar_is_empty(queue->data)) { XBT_DEBUG("Queue %p empty. Waiting", queue); xbt_cond_wait(queue->not_empty, queue->mutex); } @@ -207,12 +207,12 @@ void xbt_queue_pop_timed(xbt_queue_t queue, void *const dst, double delay) xbt_mutex_acquire(queue->mutex); if (delay == 0) { - if (xbt_dynar_length(queue->data) == 0) { + if (xbt_dynar_is_empty(queue->data)) { xbt_mutex_release(queue->mutex); THROWF(timeout_error, 0, "Delay = 0, and queue is empty"); } } else { - while ((xbt_dynar_length(queue->data) == 0) && + while ((xbt_dynar_is_empty(queue->data)) && (delay < 0 || (xbt_time() - begin) <= delay)) { XBT_DEBUG("Queue %p empty. Waiting", queue); TRY { @@ -288,12 +288,12 @@ void xbt_queue_shift_timed(xbt_queue_t queue, void *const dst, xbt_mutex_acquire(queue->mutex); if (delay == 0) { - if (xbt_dynar_length(queue->data) == 0) { + if (xbt_dynar_is_empty(queue->data)) { xbt_mutex_release(queue->mutex); THROWF(timeout_error, 0, "Delay = 0, and queue is empty"); } } else { - while ((xbt_dynar_length(queue->data) == 0) && + while ((xbt_dynar_is_empty(queue->data)) && (delay < 0 || (xbt_time() - begin) <= delay)) { XBT_DEBUG("Queue %p empty. Waiting", queue); TRY { @@ -307,7 +307,7 @@ void xbt_queue_shift_timed(xbt_queue_t queue, void *const dst, } } - if (xbt_dynar_length(queue->data) == 0) { + if (xbt_dynar_is_empty(queue->data)) { xbt_mutex_release(queue->mutex); THROWF(timeout_error, 0, "Timeout (%f) elapsed, but queue still empty", delay); diff --git a/src/xbt/xbt_replay_trace_reader.c b/src/xbt/xbt_replay_trace_reader.c index 70f2af8fd9..1d34538bab 100644 --- a/src/xbt/xbt_replay_trace_reader.c +++ b/src/xbt/xbt_replay_trace_reader.c @@ -56,7 +56,7 @@ const char **xbt_replay_trace_reader_get(xbt_replay_trace_reader_t reader) return xbt_replay_trace_reader_get(reader); /* Get next line */ d=xbt_str_split_quoted_in_place(reader->line); - if (xbt_dynar_length(d)==0) { + if (xbt_dynar_is_empty(d)) { xbt_dynar_free(&d); return xbt_replay_trace_reader_get(reader); /* Get next line */ } diff --git a/src/xbt/xbt_synchro.c b/src/xbt/xbt_synchro.c index f0d73b1d02..e76bb4ee55 100644 --- a/src/xbt/xbt_synchro.c +++ b/src/xbt/xbt_synchro.c @@ -38,7 +38,7 @@ void xbt_dynar_dopar(xbt_dynar_t datas, void_f_int_pvoid_t function) xbt_dynar_new(sizeof(worker_data_t), worker_wait_n_free); unsigned int cursor; void *data; - if (xbt_dynar_length(datas) == 0) + if (xbt_dynar_is_empty(datas)) return; /* nothing to do */ if (xbt_dynar_length(datas) == 1) { /* don't start any new thread, do it directly */ diff --git a/teshsuite/gras/datadesc/datadesc_usage.c b/teshsuite/gras/datadesc/datadesc_usage.c index 3c2bc0f911..9327d3cbef 100644 --- a/teshsuite/gras/datadesc/datadesc_usage.c +++ b/teshsuite/gras/datadesc/datadesc_usage.c @@ -147,7 +147,7 @@ static void test_dynar_empty(gras_socket_t sock, int direction) write_read("xbt_dynar_of_int", &i, &j, sock, direction); /* xbt_dynar_dump(j); */ if (direction == READ || direction == COPY) { - xbt_assert(xbt_dynar_length(j) == 0); + xbt_assert(xbt_dynar_is_empty(j)); xbt_dynar_free(&j); } xbt_dynar_free(&i); diff --git a/teshsuite/simdag/platforms/flatifier.c b/teshsuite/simdag/platforms/flatifier.c index b02c8965e0..7b3e375913 100644 --- a/teshsuite/simdag/platforms/flatifier.c +++ b/teshsuite/simdag/platforms/flatifier.c @@ -88,7 +88,7 @@ int main(int argc, char **argv) SD_workstation_get_name(hosts[i]), SD_workstation_get_power(hosts[i])); props = SD_workstation_get_properties(hosts[i]); - if (props && xbt_dict_length(props) > 0) { + if (props && !xbt_dict_is_empty(props)) { printf(">\n"); xbt_dict_foreach(props, cursor, key, data) { printf(" \n", key, data); diff --git a/testsuite/xbt/graphxml_usage.c b/testsuite/xbt/graphxml_usage.c index e3927e28d8..0b505b5d92 100644 --- a/testsuite/xbt/graphxml_usage.c +++ b/testsuite/xbt/graphxml_usage.c @@ -129,7 +129,7 @@ void test(char *graph_file) XBT_INFO("Before Node deletion: %lu nodes, %lu edges", xbt_dynar_length(nodes), xbt_dynar_length(edges)); - while (xbt_dynar_length(nodes)) + while (!xbt_dynar_is_empty(nodes)) xbt_graph_free_node(graph, *((xbt_node_t *) xbt_dynar_get_ptr(nodes, 0)), free_label, NULL); @@ -144,7 +144,7 @@ void test(char *graph_file) XBT_INFO("Before Edge deletion: %lu nodes, %lu edges", xbt_dynar_length(nodes), xbt_dynar_length(edges)); - while (xbt_dynar_length(edges)) + while (!xbt_dynar_is_empty(edges)) xbt_graph_free_edge(graph, *((xbt_edge_t *) xbt_dynar_get_ptr(edges, 0)), NULL); diff --git a/tools/tesh/run_context.c b/tools/tesh/run_context.c index e06b9f66f0..fcf6d3cec1 100644 --- a/tools/tesh/run_context.c +++ b/tools/tesh/run_context.c @@ -115,7 +115,7 @@ void rctx_wait_bg(void) { /* Do not use xbt_dynar_free or it will lock the dynar, preventing armageddon * from working */ - while (xbt_dynar_length(bg_jobs)) { + while (!xbt_dynar_is_empty(bg_jobs)) { rctx_t rctx = xbt_dynar_getlast_as(bg_jobs, rctx_t); wait_it(rctx); xbt_dynar_pop(bg_jobs, &rctx);