master
 1/**
 2 * A singly linked list node node
 3 */
 4struct node {
 5  int data;
 6  struct node *next;
 7};
 8
 9typedef struct node Node;
10
11/**
12 * A queue
13 */
14typedef struct {
15  Node *head;
16  int size;
17} Queue;
18
19/**
20 * A stack
21 */
22typedef struct {
23  Queue *q1;
24} Stack;
25
26Stack *initialize(void);
27void push(Stack *stack, int data);
28int pop(Stack *stack);
29int size(Stack *stack);
30void destroy(Stack *stack);
31void inspect(Queue *self);