DataMuseum.dk

Presents historical artifacts from the history of:

Commodore CBM-900

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Commodore CBM-900

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦e5df62856⟧ TextFile

    Length: 1497 (0x5d9)
    Types: TextFile
    Notes: UNIX file
    Names: »lex.h«

Derivation

└─⟦f27320a65⟧ Bits:30001972 Commodore 900 hard disk image with partial source code
    └─⟦f4b8d8c84⟧ UNIX V7 Filesystem
        └─ ⟦this⟧ »cmd/lex/lex.h« 

TextFile

/*
 * lex.h
 */
#include <mdata.h>
#include <stdio.h>
#include <ctype.h>
#include "lextype.h"

#define	OUTFILE	"lex.yy.c"

/*
 * maximum size of automaton
 */
#define	ARRSZ	1000

/*
 * number of chars in a quantum of stringspace
 */
#define	NCBLK	16

/*
 * macros for manipulating bit-packed character classes
 */
#define	classindex(n)	((n)/NBCHAR*(MAXUCHAR+1))
#define	classbit(n)	(1<<((n)&(NBCHAR-1)))

/*
 * check for octal digit
 */
#define	isoctl(c)	('0'<=(c)&&(c)<='7')

/*
 * symbol storage
 */
struct	def {
	struct	def *d_next;
	char	*d_name;
	int	d_data;
};

/*
 * types of input lines in the specification
 */
enum	{
	LN_DFLT,LN_LSPC,LN_CTXT,LN_SCON,
	LN_LCOM,LN_RCOM,LN_DLIM,LN_OPTN,LN_EOFL
};

/*
 * external declarations
 */
extern	int	nxt;
extern	int	yylval;
extern	int	ltype;
extern	int	inquotes;
extern	int	indefs;
extern	int	actn;
extern	int	clas;
extern	int	nfa[ARRSZ][2];
extern	struct	def *defstart;
extern	struct	def *ctxstart;
extern	struct	def *scnstart;
extern	unsigned char *classptr;
extern	FILE	*filein;
extern	FILE	*fileout;
extern	char	opnerr[];
extern	char	outmem[];
extern	char	noactn[];
extern	char	illchr[];
extern	char	illnln[];
extern	char	illrng[];
extern	char	illoct[];
extern	char	unddef[];
extern	char	undctx[];
extern	char	undstc[];
extern	char	illstc[];
extern	char	regsyn[];
extern	char	rulsyn[];
extern	char	actsyn[];
extern	char	unmopr[];
extern	char	reperr[];
extern	char	eoferr[];
extern	char	*alloc();
extern	char	*ralloc();
extern	char	*getident();