2023-03-15 02:40:23 +00:00
|
|
|
#ifndef TELODENDRIA_STREAM_H
|
|
|
|
#define TELODENDRIA_STREAM_H
|
|
|
|
|
2023-03-15 16:47:34 +00:00
|
|
|
#include <Io.h>
|
|
|
|
|
2023-03-15 02:40:23 +00:00
|
|
|
#include <stdarg.h>
|
|
|
|
|
|
|
|
typedef struct Stream Stream;
|
|
|
|
|
|
|
|
extern Stream *
|
2023-03-16 12:28:55 +00:00
|
|
|
StreamIo(Io *io);
|
|
|
|
|
|
|
|
extern Stream *
|
|
|
|
StreamFd(int);
|
|
|
|
|
|
|
|
extern Stream *
|
|
|
|
StreamOpen(const char *, const char *);
|
2023-03-15 02:40:23 +00:00
|
|
|
|
|
|
|
extern int
|
|
|
|
StreamClose(Stream *);
|
|
|
|
|
|
|
|
extern int
|
|
|
|
StreamVprintf(Stream *, const char *, va_list);
|
|
|
|
|
|
|
|
extern int
|
|
|
|
StreamPrintf(Stream *, const char *, ...);
|
|
|
|
|
|
|
|
extern int
|
|
|
|
StreamGetc(Stream *);
|
|
|
|
|
|
|
|
extern int
|
|
|
|
StreamUngetc(Stream *, int);
|
|
|
|
|
2023-03-15 16:47:34 +00:00
|
|
|
extern int
|
|
|
|
StreamPutc(Stream *, int);
|
|
|
|
|
2023-03-15 02:40:23 +00:00
|
|
|
extern int
|
|
|
|
StreamEof(Stream *);
|
|
|
|
|
|
|
|
extern int
|
|
|
|
StreamError(Stream *);
|
|
|
|
|
|
|
|
extern void
|
|
|
|
StreamClearError(Stream *);
|
|
|
|
|
|
|
|
extern int
|
|
|
|
StreamFlush(Stream *);
|
|
|
|
|
2023-03-15 17:14:16 +00:00
|
|
|
extern ssize_t
|
|
|
|
StreamCopy(Stream *, Stream *);
|
|
|
|
|
2023-03-15 02:40:23 +00:00
|
|
|
#endif /* TELODENDRIA_STREAM_H */
|