master
1struct node {
2 int data;
3 struct node *next;
4};
5
6typedef struct node Node;
7
8typedef struct {
9 Node *head;
10 Node *min;
11 int size;
12} Stack;
13
14typedef void (*Visitor)(Node *);
15
16Stack *initialize(void);
17void push(Stack *self, int data);
18int pop(Stack *self);
19int size(Stack *self);
20int min(Stack *self);
21void each(Node *head, Visitor block);
22void inspect(Stack *stack);