#pragma once typedef struct bufio·Reader bufio·Reader; bufio·Reader *bufio·newreader(io·Reader r); error bufio·freereader(bufio·Reader *r); int bufio·read(bufio·Reader *r, byte *buf, int n); int bufio·readln(bufio·Reader *r, byte *buf, int n, error* err); byte bufio·get(bufio·Reader *r); error bufio·unget(bufio·Reader *r); byte bufio·peek(bufio·Reader *r); int bufio·peekfor(bufio·Reader *r, byte *buf, int n); void bufio·discard(bufio·Reader *r, int n); void bufio·clear(bufio·Reader *r); typedef struct bufio·Writer bufio·Writer; bufio·Writer *bufio·newwriter(io·Writer w); error bufio·freewriter(bufio·Writer *w); int bufio·write(bufio·Writer *w, byte *buf, int n); error bufio·put(bufio·Writer *w, byte b); error bufio·flush(bufio·Writer* w); /* TODO */ typedef struct bufio·Scanner bufio·Scanner;