Lines Matching refs:stack

115 int sapi_stack_init_ex(sapi_stack *stack, int persistent)  in sapi_stack_init_ex()  argument
117 stack->top = 0; in sapi_stack_init_ex()
118 stack->persistent = persistent; in sapi_stack_init_ex()
119 stack->elements = (void **) pemalloc(sizeof(void **) * STACK_BLOCK_SIZE, persistent); in sapi_stack_init_ex()
120 if (!stack->elements) { in sapi_stack_init_ex()
123 stack->max = STACK_BLOCK_SIZE; in sapi_stack_init_ex()
127 int sapi_stack_push(sapi_stack *stack, void *element) in sapi_stack_push() argument
129 if (stack->top >= stack->max) { /* we need to allocate more memory */ in sapi_stack_push()
130 stack->elements = (void **) perealloc(stack->elements, in sapi_stack_push()
131 (sizeof(void **) * (stack->max += STACK_BLOCK_SIZE)), stack->persistent); in sapi_stack_push()
132 if (!stack->elements) { in sapi_stack_push()
136 stack->elements[stack->top] = (void *) element; in sapi_stack_push()
137 return stack->top++; in sapi_stack_push()
139 void* sapi_stack_pop(sapi_stack *stack) { in sapi_stack_pop() argument
140 if(stack->top == 0) { in sapi_stack_pop()
144 return stack->elements[--stack->top]; in sapi_stack_pop()
148 int sapi_stack_destroy(sapi_stack *stack) in sapi_stack_destroy() argument
153 int sapi_stack_apply_with_argument_all(sapi_stack *stack, int type, int (*apply_function)(void *ele… in sapi_stack_apply_with_argument_all() argument
159 for (i=stack->top-1; i>=0; i--) { in sapi_stack_apply_with_argument_all()
160 retval = apply_function(stack->elements[i], arg); in sapi_stack_apply_with_argument_all()
164 for (i=0; i<stack->top; i++) { in sapi_stack_apply_with_argument_all()
165 retval = apply_function(stack->elements[i], arg); in sapi_stack_apply_with_argument_all()
173 int sapi_stack_apply_with_argument_stop_if_equals(sapi_stack *stack, int type, int (*apply_function… in sapi_stack_apply_with_argument_stop_if_equals() argument
179 for (i=stack->top-1; i>=0; i--) { in sapi_stack_apply_with_argument_stop_if_equals()
180 if ((ret = apply_function(stack->elements[i], arg)) == stopval) { in sapi_stack_apply_with_argument_stop_if_equals()
186 for (i=0; i<stack->top; i++) { in sapi_stack_apply_with_argument_stop_if_equals()
187 if ((ret = apply_function(stack->elements[i], arg)) == stopval) { in sapi_stack_apply_with_argument_stop_if_equals()
196 int sapi_stack_apply_with_argument_stop_if_http_error(sapi_stack *stack, int type, int (*apply_func… in sapi_stack_apply_with_argument_stop_if_http_error() argument
202 for (i=stack->top-1; i>=0; i--) { in sapi_stack_apply_with_argument_stop_if_http_error()
203 if ((ret = apply_function(stack->elements[i], arg)) > 0) { in sapi_stack_apply_with_argument_stop_if_http_error()
209 for (i=0; i<stack->top; i++) { in sapi_stack_apply_with_argument_stop_if_http_error()
210 if ((ret = apply_function(stack->elements[i], arg)) > 0) { in sapi_stack_apply_with_argument_stop_if_http_error()
219 void php_handler_stack_destroy(sapi_stack *stack) in php_handler_stack_destroy() argument
222 while((ph = (php_handler *)sapi_stack_pop(stack)) != NULL) { in php_handler_stack_destroy()