Commit | Line | Data |
---|---|---|
a24bd519 LM |
1 | #ifndef __PROGRAM_H__ |
2 | #define __PROGRAM_H__ | |
3 | ||
4 | #include "element.h" | |
3559b26c | 5 | #include "tabular.h" |
a24bd519 LM |
6 | |
7 | /* global variables */ | |
8 | ||
a24bd519 LM |
9 | /* workspace type */ |
10 | ||
11 | typedef struct _workspace_t { | |
a24bd519 | 12 | double answer; |
c91672f9 LM |
13 | tab_t *argument; |
14 | int id; | |
a24bd519 | 15 | element_t *root; |
3559b26c | 16 | tab_t *stack; |
c91672f9 | 17 | tab_t *storage; |
a24bd519 LM |
18 | char *string; |
19 | } workspace_t; | |
20 | ||
21 | extern workspace_t *programs; | |
22 | extern int nb_programs; | |
23 | ||
24 | /* program function */ | |
25 | ||
26 | void prog (int id, element_t *root); | |
a24bd519 LM |
27 | double call (int id, int nbargs, element_t **args); |
28 | void list (); | |
29 | void edit (int id); | |
30 | void savestring (int id, char *string); | |
31 | void del (int id); | |
32 | ||
33 | #endif /* __PROGRAM_H__ */ | |
34 | ||
35 | /* vim: set ts=4 sw=4 et: */ |