Пример #1
0
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;
}
Пример #2
0
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);
  }
}