tty-solitaire/lib/stack.h

24 lines
488 B
C
Raw Normal View History

2010-04-03 21:44:59 -03:00
#ifndef STACK_H
#define STACK_H
2010-04-04 21:54:22 -03:00
#include "card.h"
2010-04-03 21:44:59 -03:00
struct stack {
struct card *card;
struct stack *next;
};
extern const char *program_name;
void allocate_stack(struct stack **);
void initialize_stack(struct stack *);
2011-05-01 03:06:43 -03:00
struct stack *duplicate_stack(struct stack *);
2011-02-14 00:10:47 -02:00
void free_stack(struct stack *);
2010-04-03 22:12:42 -03:00
bool empty(struct stack *);
int length(struct stack *);
2010-04-04 03:20:56 -03:00
void push(struct stack **, struct card *);
2010-04-04 04:15:43 -03:00
struct stack *pop(struct stack **);
2011-05-01 01:13:15 -03:00
struct stack *reverse(struct stack *);
2010-04-03 22:12:42 -03:00
2010-04-03 21:44:59 -03:00
#endif