Lines Matching defs:iter
173 tre_iteration_t *iter;
175 iter = tre_mem_calloc(mem, sizeof *iter);
176 node = tre_ast_new_node(mem, ITERATION, iter);
179 iter->arg = arg;
180 iter->min = min;
181 iter->max = max;
182 iter->minimal = minimal;
1405 tre_iteration_t *iter = node->obj;
1409 STACK_PUSHX(stack, int, regset[0] >= 0 || iter->minimal);
1414 STACK_PUSHX(stack, int, iter->minimal);
1419 STACK_PUSHX(stack, voidptr, iter->arg);
1423 if (regset[0] >= 0 || iter->minimal)
1429 if (iter->minimal)
1802 tre_iteration_t *iter = node->obj;
1803 STACK_PUSHX(stack, voidptr, iter->arg);
1805 *result = tre_ast_new_iter(mem, iter->arg, iter->min,
1806 iter->max, iter->minimal);
1812 iter = (*result)->obj;
1813 result = &iter->arg;
1893 tre_iteration_t *iter = node->obj;
1897 STACK_PUSHX(stack, voidptr, iter->arg);
1902 if (iter->min > 1 || iter->max > 1)
1914 tre_iteration_t *iter = node->obj;
1918 if (iter->min > 1 || iter->max > 1)
1925 for (j = 0; j < iter->min; j++)
1929 int flags = ((j + 1 < iter->min)
1933 status = tre_copy_ast(mem, stack, iter->arg, flags,
1946 if (iter->max == -1)
1950 status = tre_copy_ast(mem, stack, iter->arg, 0,
1960 for (j = iter->min; j < iter->max; j++)
1964 status = tre_copy_ast(mem, stack, iter->arg, 0,
2140 tre_iteration_t *iter;
2218 iter = (tre_iteration_t *)node->obj;
2219 if (iter->arg->nullable)
2220 STACK_PUSHX(stack, voidptr, iter->arg);
2364 tre_iteration_t *iter = (tre_iteration_t *)node->obj;
2366 if (iter->min == 0 || iter->arg->nullable)
2370 node->firstpos = iter->arg->firstpos;
2371 node->lastpos = iter->arg->lastpos;
2629 tre_iteration_t *iter;
2660 iter = (tre_iteration_t *)node->obj;
2661 assert(iter->max == -1 || iter->max == 1);
2663 if (iter->max == -1)
2665 assert(iter->min == 0 || iter->min == 1);
2668 errcode = tre_make_trans(iter->arg->lastpos, iter->arg->firstpos,
2673 errcode = tre_ast_to_tnfa(iter->arg, transitions, counts, offs);