From ee65a81ee5b0112ba4480619ca672c569fb28b45 Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Fri, 16 Jul 2021 14:19:24 +0000 Subject: Add character input/output --- streams.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'streams.c') diff --git a/streams.c b/streams.c index e090cdb..63a7099 100644 --- a/streams.c +++ b/streams.c @@ -283,3 +283,26 @@ getstream(Term *t) return s; } +Rune +getchar(Term *t) +{ + Stream *s = getstream(t); + return Bgetrune(s->bio); +} + +Rune +peekchar(Term *t) +{ + Stream *s = getstream(t); + Rune r = Bgetrune(s->bio); + Bungetrune(s->bio); + return r; +} + +void +putchar(Term *t, Rune r) +{ + Stream *s = getstream(t); + Bprint(s->bio, "%C", r); + Bflush(s->bio); +} \ No newline at end of file -- cgit v1.2.3