aboutsummaryrefslogtreecommitdiffstats
path: root/src/stack.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/stack.c')
-rw-r--r--src/stack.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/stack.c b/src/stack.c
index 6374d7e..8d5e00a 100644
--- a/src/stack.c
+++ b/src/stack.c
@@ -25,6 +25,7 @@ typedef struct StackHeadStruct StackHead;
#define getHead(X) (((StackNode*)(pChar(X)-offsetof(StackNode, buf)))->head)
#define getSize(X) (sizeof(StackNode) + (getHead(X)->size))
+/************** constructure / destructure ****************/
pvoid ctl_stack_initX(ppvoid q, uint size){
StackHead* head = (StackHead*)ctl_malloc(sizeof(StackHead));
head->size = size;
@@ -53,14 +54,14 @@ uint ctl_stack_getEntrySizeX(ppcvoid q){
return getHead(*q)->size;
}
-pcvoid ctl_stack_getX(ppcvoid q){
+pvoid ctl_stack_getX(ppvoid q){
return *q;
}
int ctl_stack_isEmptyX(ppcvoid q){
return (getHead(*q)->top == NULL ? 1 : 0);
}
-int ctl_stack_addX(ppvoid q, pcvoid data){
+pvoid ctl_stack_addX(ppvoid q, pcvoid data){
StackHead* head = getHead(*q);
StackNode* temp = (StackNode*)ctl_malloc(getSize(*q));
temp->head = head;
@@ -68,7 +69,7 @@ int ctl_stack_addX(ppvoid q, pcvoid data){
memcpy(temp->buf, data, head->size);
head->top = temp;
*q = pVoid(head->top->buf);
- return 1;
+ return *q;
}
int ctl_stack_delX(ppvoid q){
StackHead* head = getHead(*q);