Home | History | Annotate | Download | only in src

Lines Matching refs:constraint

464 		sens_constraint_t *constraint = calloc(1, sizeof(sens_constraint_t));
465 if (!constraint) {
469 if (sscanf(raw,"s%u", &constraint->sens) != 1) {
471 free(constraint);
474 if (parse_ebitmap(&constraint->cat, &empty, tok) < 0) {
476 free(constraint);
479 if (asprintf(&constraint->text, "%s%c%s", raw, op, tok) < 0) {
483 constraint->op = op;
487 *p = constraint;
490 cat_constraint_t *constraint = calloc(1, sizeof(cat_constraint_t));
491 if (!constraint) {
495 if (parse_ebitmap(&constraint->mask, &empty, raw) < 0) {
497 free(constraint);
500 if (parse_ebitmap(&constraint->cat, &empty, tok) < 0) {
502 ebitmap_destroy(&constraint->mask);
503 free(constraint);
506 if (asprintf(&constraint->text, "%s%c%s", raw, op, tok) < 0) {
510 constraint->nbits = ebitmap_cardinality(&constraint->cat);
511 constraint->op = op;
515 *p = constraint;
567 destroy_sens_constraint(sens_constraint_t **list, sens_constraint_t *constraint) {
568 if (!constraint) {
572 if (*list == constraint) {
573 *list = constraint->next;
577 ebitmap_destroy(&constraint->cat);
578 free(constraint->text);
579 memset(constraint, 0, sizeof(sens_constraint_t));
580 free(constraint);
584 destroy_cat_constraint(cat_constraint_t **list, cat_constraint_t *constraint) {
585 if (!constraint) {
589 if (*list == constraint) {
590 *list = constraint->next;
594 ebitmap_destroy(&constraint->mask);
595 ebitmap_destroy(&constraint->cat);
596 free(constraint->text);
597 memset(constraint, 0, sizeof(cat_constraint_t));
598 free(constraint);