From f91811f57de0561cc7c8efb5897a6b62f5c0e0b2 Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Sat, 30 Jan 1999 21:35:36 +0000 Subject: Initial checkin of skeleton application. About to start reading files [originally from svn r22] --- input.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 input.c (limited to 'input.c') diff --git a/input.c b/input.c new file mode 100644 index 0000000..dc745f1 --- /dev/null +++ b/input.c @@ -0,0 +1,33 @@ +/* + * input.c: read the source form + */ + +#include +#include +#include "buttress.h" + +static void unget(input *in, char c) { + assert(in->npushback < INPUT_PUSHBACK_MAX); + in->pushback[in->npushback++] = c; +} + +/* + * Can return EOF + */ +static int get(input *in) { + if (in->npushback) + return (unsigned char)in->pushback[--in->npushback]; + else if (in->currfp) { + int c = getc(in->currfp); + if (c == EOF) { + fclose(in->currfp); + in->currfp = NULL; + in->currindex++; + } + return c; + } +} + +paragraph *read_input(input *in) { + /* FIXME: do some reading */ +} -- cgit v1.1