Lines Matching defs:stack
87 DE_INLINE void ContainerStack_reset (ContainerStack* stack)
89 deMemset(stack, 0, sizeof(ContainerStack));
92 DE_INLINE deBool ContainerStack_isEmpty (const ContainerStack* stack)
94 return stack->numElements == 0;
97 DE_INLINE deBool ContainerStack_push (ContainerStack* stack, ContainerType type)
99 if (stack->numElements == MAX_CONTAINER_STACK_DEPTH)
102 if (stack->numElements > 0 && !childContainersOk(stack->elements[stack->numElements-1]))
105 stack->elements[stack->numElements] = type;
106 stack->numElements += 1;
111 DE_INLINE ContainerType ContainerStack_pop (ContainerStack* stack)
113 DE_ASSERT(stack->numElements > 0);
114 stack->numElements -= 1;
115 return stack->elements[stack->numElements];
118 DE_INLINE ContainerType ContainerStack_getTop (const ContainerStack* stack)
120 if (stack->numElements > 0)
121 return stack->elements[stack->numElements-1];