int get_catid(str_array cats, char *category) { int i; if(cats == NULL) { return CAT_NOT_FOUND; } for(i = 0; i < cats->count; i++) { if(strcmp(category, str_array_get(cats, i)) == 0) { return i; } } /* Else entry not found */ return CAT_NOT_FOUND; }
void sp_csv_filter_handle_expressions(sp_csv_filter_t *self) { /* - - - - - - - - - - - - - - - - - - - * * default operation derived from * executable name * - - - - - - - - - - - - - - - - - - - */ const char *prog = msg_getprogname(); const char *base = strrchr(prog, '_'); const char *oper = base ? (base + 1) : prog; /* - - - - - - - - - - - - - - - - - - - * * execute filters in original order * - - - - - - - - - - - - - - - - - - - */ for( size_t i = 0; i < self->expressions.size; ++i ) { char *expr = str_array_get(&self->expressions, i); csv_filter(self->table, expr, oper); } }