Lines Matching refs:element

97     struct format_arg *element;	/* Argument constraints.  */  member
169 verify_element (&list->initial.element[i]); in verify_list()
170 total_repcount += list->initial.element[i].repcount; in verify_list()
178 verify_element (&list->repeated.element[i]); in verify_list()
179 total_repcount += list->repeated.element[i].repcount; in verify_list()
191 free_element (struct format_arg *element) in free_element() argument
193 if (element->type == FAT_LIST) in free_element()
194 free_list (element->list); in free_element()
205 free_element (&list->initial.element[i]); in free_list()
206 if (list->initial.element != NULL) in free_list()
207 free (list->initial.element); in free_list()
210 free_element (&list->repeated.element[i]); in free_list()
211 if (list->repeated.element != NULL) in free_list()
212 free (list->repeated.element); in free_list()
247 newlist->initial.element = NULL; in copy_list()
250 newlist->initial.element = in copy_list()
255 copy_element (&newlist->initial.element[i], in copy_list()
256 &list->initial.element[i]); in copy_list()
257 length += list->initial.element[i].repcount; in copy_list()
266 newlist->repeated.element = NULL; in copy_list()
269 newlist->repeated.element = in copy_list()
274 copy_element (&newlist->repeated.element[i], in copy_list()
275 &list->repeated.element[i]); in copy_list()
276 length += list->repeated.element[i].repcount; in copy_list()
316 const struct format_arg * e1 = &list1->initial.element[i]; in equal_list()
317 const struct format_arg * e2 = &list2->initial.element[i]; in equal_list()
328 const struct format_arg * e1 = &list1->repeated.element[i]; in equal_list()
329 const struct format_arg * e2 = &list2->repeated.element[i]; in equal_list()
349 list->initial.element = in ensure_initial_alloc()
351 xrealloc (list->initial.element, in ensure_initial_alloc()
364 list->initial.element = in grow_initial_alloc()
366 xrealloc (list->initial.element, in grow_initial_alloc()
379 list->repeated.element = in ensure_repeated_alloc()
381 xrealloc (list->repeated.element, in ensure_repeated_alloc()
394 list->repeated.element = in grow_repeated_alloc()
396 xrealloc (list->repeated.element, in grow_repeated_alloc()
418 && equal_element (&list->initial.element[i], in normalize_outermost_list()
419 &list->initial.element[j-1])) in normalize_outermost_list()
421 list->initial.element[j-1].repcount += in normalize_outermost_list()
422 list->initial.element[i].repcount; in normalize_outermost_list()
423 free_element (&list->initial.element[i]); in normalize_outermost_list()
428 list->initial.element[j] = list->initial.element[i]; in normalize_outermost_list()
436 && equal_element (&list->repeated.element[i], in normalize_outermost_list()
437 &list->repeated.element[j-1])) in normalize_outermost_list()
439 list->repeated.element[j-1].repcount += in normalize_outermost_list()
440 list->repeated.element[i].repcount; in normalize_outermost_list()
441 free_element (&list->repeated.element[i]); in normalize_outermost_list()
446 list->repeated.element[j] = list->repeated.element[i]; in normalize_outermost_list()
460 && equal_element (&list->repeated.element[0], in normalize_outermost_list()
461 &list->repeated.element[n-1])) in normalize_outermost_list()
463 repcount0_extra = list->repeated.element[n-1].repcount; in normalize_outermost_list()
475 if (!((list->repeated.element[i].repcount in normalize_outermost_list()
477 == list->repeated.element[i+m].repcount) in normalize_outermost_list()
478 && equal_element (&list->repeated.element[i], in normalize_outermost_list()
479 &list->repeated.element[i+m]))) in normalize_outermost_list()
487 free_element (&list->repeated.element[i]); in normalize_outermost_list()
489 list->repeated.element[m] = list->repeated.element[n]; in normalize_outermost_list()
501 && equal_element (&list->initial.element[list->initial.count-1], in normalize_outermost_list()
502 &list->repeated.element[0])) in normalize_outermost_list()
508 list->initial.element[list->initial.count-1].repcount; in normalize_outermost_list()
515 && equal_element (&list->initial.element[list->initial.count-1], in normalize_outermost_list()
516 &list->repeated.element[list->repeated.count-1])) in normalize_outermost_list()
519 MIN (list->initial.element[list->initial.count-1].repcount, in normalize_outermost_list()
520 list->repeated.element[list->repeated.count-1].repcount); in normalize_outermost_list()
523 if (equal_element (&list->repeated.element[0], in normalize_outermost_list()
524 &list->repeated.element[list->repeated.count-1])) in normalize_outermost_list()
525 list->repeated.element[0].repcount += moved_repcount; in normalize_outermost_list()
531 list->repeated.element[i] = list->repeated.element[i-1]; in normalize_outermost_list()
533 copy_element (&list->repeated.element[0], in normalize_outermost_list()
534 &list->repeated.element[list->repeated.count-1]); in normalize_outermost_list()
535 list->repeated.element[0].repcount = moved_repcount; in normalize_outermost_list()
539 list->repeated.element[list->repeated.count-1].repcount -= in normalize_outermost_list()
541 if (list->repeated.element[list->repeated.count-1].repcount == 0) in normalize_outermost_list()
543 free_element (&list->repeated.element[list->repeated.count-1]); in normalize_outermost_list()
548 list->initial.element[list->initial.count-1].repcount -= in normalize_outermost_list()
550 if (list->initial.element[list->initial.count-1].repcount == 0) in normalize_outermost_list()
552 free_element (&list->initial.element[list->initial.count-1]); in normalize_outermost_list()
573 if (list->initial.element[i].type == FAT_LIST) in normalize_list()
574 normalize_list (list->initial.element[i].list); in normalize_list()
577 if (list->repeated.element[i].type == FAT_LIST) in normalize_list()
578 normalize_list (list->repeated.element[i].list); in normalize_list()
603 list->initial.element = NULL; in make_unconstrained_list()
607 list->repeated.element = in make_unconstrained_list()
609 list->repeated.element[0].repcount = 1; in make_unconstrained_list()
610 list->repeated.element[0].presence = FCT_OPTIONAL; in make_unconstrained_list()
611 list->repeated.element[0].type = FAT_OBJECT; in make_unconstrained_list()
630 list->initial.element = NULL; in make_empty_list()
634 list->repeated.element = NULL; in make_empty_list()
669 copy_element (&list->repeated.element[i], &list->repeated.element[j]); in unfold_loop()
693 copy_element (&list->initial.element[i], &list->repeated.element[0]); in rotate_loop()
694 list->initial.element[i].repcount = m - list->initial.length; in rotate_loop()
712 s < list->repeated.count && t >= list->repeated.element[s].repcount; in rotate_loop()
713 t -= list->repeated.element[s].repcount, s++) in rotate_loop()
731 copy_element (&list->initial.element[i], in rotate_loop()
732 &list->repeated.element[j]); in rotate_loop()
734 copy_element (&list->initial.element[i], &list->repeated.element[j]); in rotate_loop()
737 copy_element (&list->initial.element[i], in rotate_loop()
738 &list->repeated.element[j]); in rotate_loop()
739 list->initial.element[i].repcount = t; in rotate_loop()
767 newelement[i] = list->repeated.element[j]; in rotate_loop()
769 newelement[i] = list->repeated.element[j]; in rotate_loop()
776 free (list->repeated.element); in rotate_loop()
777 list->repeated.element = newelement; in rotate_loop()
807 s < list->initial.count && t >= list->initial.element[s].repcount; in initial_splitelement()
808 t -= list->initial.element[s].repcount, s++) in initial_splitelement()
817 oldrepcount = list->initial.element[s].repcount; in initial_splitelement()
821 list->initial.element[i+1] = list->initial.element[i]; in initial_splitelement()
822 copy_element (&list->initial.element[s+1], &list->initial.element[s]); in initial_splitelement()
823 list->initial.element[s].repcount = t; in initial_splitelement()
824 list->initial.element[s+1].repcount = oldrepcount - t; in initial_splitelement()
856 s < list->initial.count && t >= list->initial.element[s].repcount; in initial_unshare()
857 t -= list->initial.element[s].repcount, s++) in initial_unshare()
863 if (list->initial.element[s].repcount > 1) in initial_unshare()
867 unsigned int oldrepcount = list->initial.element[s].repcount; in initial_unshare()
876 list->initial.element[i+1] = list->initial.element[i]; in initial_unshare()
877 copy_element (&list->initial.element[s+1], &list->initial.element[s]); in initial_unshare()
880 list->initial.element[s].repcount = 1; in initial_unshare()
881 list->initial.element[s+1].repcount = oldrepcount - 1; in initial_unshare()
885 list->initial.element[s].repcount = oldrepcount - 1; in initial_unshare()
886 list->initial.element[s+1].repcount = 1; in initial_unshare()
894 list->initial.element[i+2] = list->initial.element[i]; in initial_unshare()
895 copy_element (&list->initial.element[s+2], &list->initial.element[s]); in initial_unshare()
896 copy_element (&list->initial.element[s+1], &list->initial.element[s]); in initial_unshare()
897 list->initial.element[s].repcount = t; in initial_unshare()
898 list->initial.element[s+1].repcount = 1; in initial_unshare()
899 list->initial.element[s+2].repcount = oldrepcount - 1 - t; in initial_unshare()
907 ASSERT (list->initial.element[s].repcount == 1); in initial_unshare()
928 list->initial.element[i] = list->initial.element[i-1]; in shift_list()
929 list->initial.element[0].repcount = n; in shift_list()
930 list->initial.element[0].presence = FCT_REQUIRED; in shift_list()
931 list->initial.element[0].type = FAT_OBJECT; in shift_list()
1061 list->initial.element[i] = list->repeated.element[j]; in append_repeated_to_initial()
1064 free (list->repeated.element); in append_repeated_to_initial()
1065 list->repeated.element = NULL; in append_repeated_to_initial()
1086 if (list->initial.element[i].presence == FCT_REQUIRED) in backtrack_in_initial()
1089 list->initial.length -= list->initial.element[i].repcount; in backtrack_in_initial()
1090 free_element (&list->initial.element[i]); in backtrack_in_initial()
1097 if (list->initial.element[i].repcount > 1) in backtrack_in_initial()
1098 list->initial.element[i].repcount--; in backtrack_in_initial()
1101 free_element (&list->initial.element[i]); in backtrack_in_initial()
1166 result->initial.element = NULL; in make_intersected_list()
1170 result->repeated.element = NULL; in make_intersected_list()
1180 e1 = list1->initial.element; c1 = list1->initial.count; in make_intersected_list()
1181 e2 = list2->initial.element; c2 = list2->initial.count; in make_intersected_list()
1188 re = &result->initial.element[result->initial.count]; in make_intersected_list()
1241 if ((c2 > 0 ? e2->presence : list2->repeated.element[0].presence) in make_intersected_list()
1251 if ((c1 > 0 ? e1->presence : list1->repeated.element[0].presence) in make_intersected_list()
1268 e1 = list1->repeated.element; c1 = list1->repeated.count; in make_intersected_list()
1269 e2 = list2->repeated.element; c2 = list2->repeated.count; in make_intersected_list()
1276 re = &result->repeated.element[result->repeated.count]; in make_intersected_list()
1334 ? list->initial.element[0].presence == FCT_REQUIRED in make_intersection_with_empty_list()
1336 && list->repeated.element[0].presence == FCT_REQUIRED) in make_intersection_with_empty_list()
1523 if (list1->repeated.element[0].presence == FCT_REQUIRED) in make_union_list()
1534 if (list2->repeated.element[0].presence == FCT_REQUIRED) in make_union_list()
1544 result->initial.element = NULL; in make_union_list()
1548 result->repeated.element = NULL; in make_union_list()
1558 e1 = list1->initial.element; c1 = list1->initial.count; in make_union_list()
1559 e2 = list2->initial.element; c2 = list2->initial.count; in make_union_list()
1566 re = &result->initial.element[result->initial.count]; in make_union_list()
1601 re = &result->initial.element[result->initial.count]; in make_union_list()
1621 re = &result->initial.element[result->initial.count]; in make_union_list()
1641 re = &result->initial.element[result->initial.count]; in make_union_list()
1661 re = &result->initial.element[result->initial.count]; in make_union_list()
1680 e1 = list1->repeated.element; c1 = list1->repeated.count; in make_union_list()
1681 e2 = list2->repeated.element; c2 = list2->repeated.count; in make_union_list()
1688 re = &result->repeated.element[result->repeated.count]; in make_union_list()
1720 result->repeated.element = in make_union_list()
1724 copy_element (&result->repeated.element[i], in make_union_list()
1725 &list1->repeated.element[i]); in make_union_list()
1736 result->repeated.element = in make_union_list()
1740 copy_element (&result->repeated.element[i], in make_union_list()
1741 &list2->repeated.element[i]); in make_union_list()
1765 ? list->initial.element[0].presence == FCT_REQUIRED in make_union_with_empty_list()
1767 && list->repeated.element[0].presence == FCT_REQUIRED) in make_union_with_empty_list()
1771 ASSERT (list->initial.element[0].repcount == 1); in make_union_with_empty_list()
1772 ASSERT (list->initial.element[0].presence == FCT_REQUIRED); in make_union_with_empty_list()
1773 list->initial.element[0].presence = FCT_OPTIONAL; in make_union_with_empty_list()
1826 s < list->initial.count && t >= list->initial.element[s].repcount; in is_required()
1827 t -= list->initial.element[s].repcount, s++) in is_required()
1828 if (list->initial.element[s].presence != FCT_REQUIRED) in is_required()
1836 if (list->initial.element[s].presence != FCT_REQUIRED) in is_required()
1847 s < list->repeated.count && t >= list->repeated.element[s].repcount; in is_required()
1848 t -= list->repeated.element[s].repcount, s++) in is_required()
1849 if (list->repeated.element[s].presence != FCT_REQUIRED) in is_required()
1857 if (list->repeated.element[s].presence != FCT_REQUIRED) in is_required()
1895 list->initial.element[i].presence = FCT_REQUIRED; in add_required_constraint()
1896 rest -= list->initial.element[i].repcount; in add_required_constraint()
1928 ? /* n < list->initial.length */ list->initial.element[s].presence in add_end_constraint()
1929 : /* n >= list->initial.length */ list->repeated.element[0].presence); in add_end_constraint()
1933 list->initial.length -= list->initial.element[i].repcount; in add_end_constraint()
1934 free_element (&list->initial.element[i]); in add_end_constraint()
1939 free_element (&list->repeated.element[i]); in add_end_constraint()
1940 if (list->repeated.element != NULL) in add_end_constraint()
1941 free (list->repeated.element); in add_end_constraint()
1942 list->repeated.element = NULL; in add_end_constraint()
1977 &list->initial.element[s], &newconstraint)) in add_type_constraint()
1979 free_element (&list->initial.element[s]); in add_type_constraint()
1980 list->initial.element[s].type = tmpelement.type; in add_type_constraint()
1981 list->initial.element[s].list = tmpelement.list; in add_type_constraint()
2014 &list->initial.element[s], &newconstraint)) in add_listtype_constraint()
2016 free_element (&list->initial.element[s]); in add_listtype_constraint()
2017 list->initial.element[s].type = tmpelement.type; in add_listtype_constraint()
2018 list->initial.element[s].list = tmpelement.list; in add_listtype_constraint()
2065 listlist->initial.element = NULL; in make_repeated_list_of_lists()
2069 listlist->repeated.element = in make_repeated_list_of_lists()
2071 listlist->repeated.element[0].repcount = 1; in make_repeated_list_of_lists()
2072 listlist->repeated.element[0].presence = FCT_OPTIONAL; in make_repeated_list_of_lists()
2073 listlist->repeated.element[0].type = FAT_LIST; in make_repeated_list_of_lists()
2074 listlist->repeated.element[0].list = sublist; in make_repeated_list_of_lists()
2133 tmp.element = in make_repeated_list()
2137 tmp.element[i] = sublist->initial.element[i]; in make_repeated_list()
2139 tmp.element[i] = sublist->initial.element[j]; in make_repeated_list()
2163 list->initial.element = NULL; in make_repeated_list()
2167 list->repeated.element = NULL; in make_repeated_list()
2183 unsigned int k = MIN (srcseg->element[si].repcount - ti, p - i); in make_repeated_list()
2187 copy_element (&list->initial.element[list->initial.count], in make_repeated_list()
2188 &srcseg->element[si]); in make_repeated_list()
2189 list->initial.element[list->initial.count].repcount = k; in make_repeated_list()
2195 if (ti == srcseg->element[si].repcount) in make_repeated_list()
2203 if (list->initial.element[0].presence == FCT_REQUIRED) in make_repeated_list()
2206 ASSERT (list->initial.element[0].presence == FCT_REQUIRED); in make_repeated_list()
2207 ASSERT (list->initial.element[0].repcount == 1); in make_repeated_list()
2208 list->initial.element[0].presence = FCT_OPTIONAL; in make_repeated_list()
2215 MIN (srcseg->element[si].repcount - ti, in make_repeated_list()
2216 list->initial.element[sj].repcount - tj); in make_repeated_list()
2220 if (!make_intersected_element (&list->initial.element[list->initial.count], in make_repeated_list()
2221 &srcseg->element[si], in make_repeated_list()
2222 &list->initial.element[sj])) in make_repeated_list()
2224 if (list->initial.element[list->initial.count].presence == FCT_REQUIRED) in make_repeated_list()
2238 list->initial.element[list->initial.count].repcount = k; in make_repeated_list()
2244 if (ti == srcseg->element[si].repcount) in make_repeated_list()
2252 if (tj == list->initial.element[sj].repcount) in make_repeated_list()
2266 list->initial.element[si].presence = FCT_OPTIONAL; in make_repeated_list()
2277 list->repeated.element = in make_repeated_list()
2281 list->repeated.element[j] = list->initial.element[i]; in make_repeated_list()
3393 print_element (struct format_arg *element) in print_element() argument
3395 switch (element->presence) in print_element()
3406 switch (element->type) in print_element()
3430 print_list (element->list); in print_element()
3451 for (j = 0; j < list->initial.element[i].repcount; j++) in print_list()
3455 print_element (&list->initial.element[i]); in print_list()
3462 for (j = 0; j < list->repeated.element[i].repcount; j++) in print_list()
3465 print_element (&list->repeated.element[i]); in print_list()