ack/lang/cem/cemcom.ansi/make.tokcase

44 lines
640 B
Plaintext
Raw Permalink Normal View History

#!/bin/sh
1989-02-07 11:04:05 +00:00
cat <<'--EOT--'
/* Generated by make.tokcase */
1994-06-27 08:03:14 +00:00
/* $Id$ */
1989-02-07 11:04:05 +00:00
#include "Lpars.h"
char *
symbol2str(tok)
int tok;
{
1989-11-17 11:27:26 +00:00
#define SIZBUF 8
/* allow for a few invocations in f.i. an argument list */
static char buf[SIZBUF];
static int index;
1989-02-07 11:04:05 +00:00
switch (tok) {
--EOT--
sed '
/{[A-Z]/!d
s/.*{\(.*\),.*\(".*"\).*$/ case \1 :\
return \2;/
'
cat <<'--EOT--'
1989-11-17 11:27:26 +00:00
default:
1989-11-17 11:41:47 +00:00
if (tok <= 0) return "end of file";
1989-11-17 11:27:26 +00:00
if (tok < 040 || tok >= 0177) {
return "bad token";
}
/* fall through */
1989-02-07 11:04:05 +00:00
case '\n':
case '\f':
case '\v':
case '\r':
case '\t':
1989-11-17 11:27:26 +00:00
index = (index+2) & (SIZBUF-1);
buf[index] = tok;
return &buf[index];
1989-02-07 11:04:05 +00:00
}
}
--EOT--