26 |
|
short nargs; /* # of required arguments */ |
27 |
|
short atyp; /* assignment type (':' or '=') */ |
28 |
|
double (*f)(char *); /* pointer to function */ |
29 |
< |
} LIBR; /* a library function */ |
29 |
> |
} ELIBR; /* a library function */ |
30 |
|
|
31 |
|
typedef struct epnode { |
32 |
|
union { |
39 |
|
char *name; /* variable name */ |
40 |
|
int nlinks; /* number of references */ |
41 |
|
struct epnode *def; /* definition */ |
42 |
< |
LIBR *lib; /* library definition */ |
42 |
> |
ELIBR *lib; /* library definition */ |
43 |
|
struct vardef *next; /* next in hash list */ |
44 |
|
} *ln; /* link */ |
45 |
|
} v; /* value */ |
75 |
|
extern double (*eoper[])(EPNODE *); |
76 |
|
extern unsigned long eclock; |
77 |
|
extern unsigned int esupport; |
78 |
< |
extern EPNODE *curfunc; |
78 |
> |
extern EPNODE *ecurfunc; |
79 |
|
extern int nextc; |
80 |
|
extern int eofc; |
81 |
|
/* defined in biggerlib.c */ |
105 |
|
extern EPNODE *dnext(void); |
106 |
|
extern EPNODE *dpop(char *name); |
107 |
|
extern void dpush(char *nm, EPNODE *ep); |
108 |
< |
extern void addchan(EPNODE *sp); |
109 |
< |
extern void getstatement(void); |
110 |
< |
extern EPNODE *getdefn(void); |
111 |
< |
extern EPNODE *getchan(void); |
108 |
> |
extern void eaddchan(EPNODE *sp); |
109 |
> |
extern void egetstatement(void); |
110 |
> |
extern EPNODE *egetdefn(void); |
111 |
> |
extern EPNODE *egetchan(void); |
112 |
|
/* defined in calexpr.c */ |
113 |
|
extern EPNODE *eparse(char *expr); |
114 |
|
extern double eval(char *expr); |
119 |
|
extern void initfile(FILE *fp, char *fn, int ln); |
120 |
|
extern void initstr(char *s, char *fn, int ln); |
121 |
|
extern void getscanpos(char **fnp, int *lnp, char **spp, FILE **fpp); |
122 |
< |
extern int scan(void); |
122 |
> |
extern int escan(void); |
123 |
|
extern char *long2ascii(long l); |
124 |
< |
extern void syntax(char *err); |
124 |
> |
extern void esyntax(char *err); |
125 |
|
extern void addekid(EPNODE *ep, EPNODE *ek); |
126 |
|
extern char *getname(void); |
127 |
|
extern int getinum(void); |
141 |
|
double (*fptr)(char *)); |
142 |
|
extern int nargum(void); |
143 |
|
extern double argument(int n); |
144 |
< |
extern VARDEF *argf(int n); |
145 |
< |
extern char *argfun(int n); |
144 |
> |
extern VARDEF *eargf(int n); |
145 |
> |
extern char *eargfun(int n); |
146 |
|
extern double efunc(EPNODE *ep); |
147 |
|
extern double eargument(EPNODE *ep); |
148 |
< |
extern LIBR *liblookup(char *fname); |
149 |
< |
extern void libupdate(char *fn); |
148 |
> |
extern ELIBR *eliblookup(char *fname); |
149 |
> |
extern void elibupdate(char *fn); |
150 |
|
/* defined in calprnt.c */ |
151 |
|
extern void eprint(EPNODE *ep, FILE *fp); |
152 |
|
extern void dprint(char *name, FILE *fp); |