ack/mach/proto/cg/state.h

36 lines
1.2 KiB
C
Raw Normal View History

1987-03-09 19:15:41 +00:00
/*
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
* See the copyright notice in the ACK home directory, in the file "Copyright".
*/
2019-05-10 17:11:54 +00:00
#ifndef STATE_H_
#define STATE_H_
1984-05-19 11:42:19 +00:00
1984-05-18 21:27:39 +00:00
#define STONSTACK /* if defined state is saved in stackframe */
typedef struct state {
struct state *st_next; /* for linked list */
int st_sh; /* stackheight */
token_t st_fs[MAXFSTACK]; /* fakestack */
int st_na; /* nallreg */
int st_ar[MAXALLREG]; /* allreg[] */
token_p st_ct; /* curtoken */
result_t st_do[LONGESTPATTERN]; /* dollar[] */
struct reginfo st_mr[NREGS]; /* machregs[] */
int st_ne; /* nemlines */
struct emline st_el[MAXEMLINES]; /* emlines[] */
struct emline *st_em; /* emp */
struct emline *st_se; /* saveemp */
int st_tl; /* tokpatlen */
int st_ns; /* nstab */
} state_t,*state_p;
#ifndef STONSTACK
2019-05-10 17:11:54 +00:00
state_p state_p savestatus(void);
1984-05-18 21:27:39 +00:00
#endif
2019-05-10 17:11:54 +00:00
void restorestatus(register state_p sp);
state_p savestatus(register state_p sp);
#endif /* STATE_H_ */