Lines Matching refs:attr

323  *  @param  attr                Attribute key/value pairs
328 handle_match (ParsingContext * pc, const char **attr)
336 for (num_attrib = 0; attr[num_attrib] != NULL; num_attrib++);
341 if (strcmp (attr[0], "key") != 0)
343 key = attr[1];
364 if (strcmp (attr[2], "string") == 0) {
369 value = attr[3];
383 } else if (strcmp (attr[2], "int") == 0) {
387 value = strtol (attr[3], NULL, 0);
402 } else if (strcmp (attr[2], "uint64") == 0) {
406 value = strtoull (attr[3], NULL, 0);
421 } else if (strcmp (attr[2], "bool") == 0) {
426 if (strcmp (attr[3], "false") == 0)
428 else if (strcmp (attr[3], "true") == 0)
445 } else if (strcmp (attr[2], "exists") == 0) {
448 if (strcmp (attr[3], "false") == 0)
462 } else if (strcmp (attr[2], "empty") == 0) {
468 if (strcmp (attr[3], "false") == 0)
500 } else if (strcmp (attr[2], "is_ascii") == 0) {
506 if (strcmp (attr[3], "false") == 0)
531 } else if (strcmp (attr[2], "is_absolute_path") == 0) {
536 if (strcmp (attr[3], "false") == 0)
563 } else if (strcmp (attr[2], "contains") == 0) {
567 needle = attr[3];
597 } else if (strcmp (attr[2], "contains_ncase") == 0) {
601 needle = attr[3];
635 } else if (strcmp (attr[2], "compare_lt") == 0) {
637 if (!match_compare_property (d, prop_to_check, attr[3], &result)) {
642 } else if (strcmp (attr[2], "compare_le") == 0) {
644 if (!match_compare_property (d, prop_to_check, attr[3], &result))
648 } else if (strcmp (attr[2], "compare_gt") == 0) {
650 if (!match_compare_property (d, prop_to_check, attr[3], &result))
654 } else if (strcmp (attr[2], "compare_ge") == 0) {
656 if (!match_compare_property (d, prop_to_check, attr[3], &result))
669 * @param attr Attribute key/value pairs
672 handle_merge (ParsingContext * pc, const char **attr)
679 for (num_attrib = 0; attr[num_attrib] != NULL; num_attrib++) {
686 if (strcmp (attr[0], "key") != 0)
688 strncpy (pc->merge_key, attr[1], MAX_KEY_SIZE);
690 if (strcmp (attr[2], "type") != 0)
693 if (strcmp (attr[3], "string") == 0) {
697 } else if (strcmp (attr[3], "bool") == 0) {
701 } else if (strcmp (attr[3], "int") == 0) {
705 } else if (strcmp (attr[3], "uint64") == 0) {
709 } else if (strcmp (attr[3], "double") == 0) {
713 } else if (strcmp (attr[3], "strlist") == 0) {
717 } else if (strcmp (attr[3], "copy_property") == 0) {
729 * @param attr Attribute key/value pairs
732 handle_append_prepend (ParsingContext * pc, const char **attr)
738 for (num_attrib = 0; attr[num_attrib] != NULL; num_attrib++) {
745 if (strcmp (attr[0], "key") != 0)
747 strncpy (pc->merge_key, attr[1], MAX_KEY_SIZE);
749 if (strcmp (attr[2], "type") != 0)
752 if (strcmp (attr[3], "string") == 0) {
756 } else if (strcmp (attr[3], "strlist") == 0) {
760 } else if (strcmp (attr[3], "copy_property") == 0) {
773 * @param attr Attribute key/value pairs
776 handle_spawn (ParsingContext * pc, const char **attr)
782 for (num_attrib = 0; attr[num_attrib] != NULL; num_attrib++) {
789 if (strcmp (attr[0], "udi") != 0)
792 strncpy (pc->merge_key, attr[1], MAX_KEY_SIZE);
801 * @param attr Attribute key/value pairs
804 handle_remove (ParsingContext * pc, const char **attr)
810 for (num_attrib = 0; attr[num_attrib] != NULL; num_attrib++) {
817 if (strcmp (attr[0], "key") != 0)
819 strncpy (pc->merge_key, attr[1], MAX_KEY_SIZE);
822 if (strcmp (attr[2], "type") != 0)
825 if (strcmp (attr[3], "strlist") == 0) {
843 * @param attr Attribute key/value pairs
846 handle_clear (ParsingContext * pc, const char **attr)
852 for (num_attrib = 0; attr[num_attrib] != NULL; num_attrib++) {
859 if (strcmp (attr[0], "key") != 0)
863 if (strcmp (attr[3], "strlist") != 0)
866 strncpy (pc->merge_key, attr[1], MAX_KEY_SIZE);
889 * @param attr Attribute key/value pairs
892 start (ParsingContext * pc, const char *el, const char **attr)
907 for (i = 0; attr[i]; i += 2) {
908 printf(" %s='%s'", attr[i], attr[i + 1]);
929 if (!handle_match (pc, attr)) {
948 handle_merge (pc, attr);
965 handle_append_prepend (pc, attr);
982 handle_append_prepend (pc, attr);
999 handle_remove (pc, attr);
1016 handle_clear (pc, attr);
1052 handle_spawn (pc, attr);