INTERCAL 0.12 release. Hour/minute/second of the timestamp is unreliable.
[intercal:intercal.git] / src / cesspool.h
1 /* cesspool.h -- interface to INTERCAL storage manager and runtime support */
2
3 #include <malloc.h>
4
5 typedef int bool;
6 #define TRUE    1
7 #define FALSE   0
8
9 extern char *aref();
10 extern unsigned int aget(), pin(), roll(), popnext(), resume(), assign();
11 extern void pushnext(), resize(), stashinit(), stash(), retrieve(), aput();
12 extern void clockface(), pout();
13
14 extern int lineno;
15
16 #define ONESPOT 0
17 #define TWOSPOT 1
18 #define TAIL    2
19 #define HYBRID  3
20
21 /* the following two types must both promote to unsigned int in expressions */
22
23 typedef unsigned short type16;
24 typedef unsigned int   type32;
25
26 typedef struct array_t
27 {
28   int rank;
29   unsigned int *dims;
30   union
31   {
32     type16 *tail;
33     type32 *hybrid;
34   } data;
35 } array;
36
37 typedef struct
38 {
39     char *name;
40     int value;
41 }
42 numeral;
43
44 extern numeral numerals[];
45
46 /* cesspool.h ends here */