From 00af9fa4e0344b1ff642a7ccd63626f77521ea8a Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 16 Aug 2020 12:42:58 +0200 Subject: Simplify reader interface --- src/byte_source.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/byte_source.h') diff --git a/src/byte_source.h b/src/byte_source.h index a5c98ef6..69f92295 100644 --- a/src/byte_source.h +++ b/src/byte_source.h @@ -23,7 +23,8 @@ #include #include #include -#include + +typedef int (*SerdStreamCloseFunc)(void*); typedef struct { const char* filename; @@ -34,6 +35,7 @@ typedef struct { typedef struct { SerdReadFunc read_func; ///< Read function (e.g. fread) SerdStreamErrorFunc error_func; ///< Error function (e.g. ferror) + SerdStreamCloseFunc close_func; ///< Function for closing stream void* stream; ///< Stream (e.g. FILE) size_t page_size; ///< Number of bytes to read at a time size_t buf_size; ///< Number of bytes in file_buf @@ -47,9 +49,6 @@ typedef struct { bool eof; ///< True iff end of file reached } SerdByteSource; -SerdStatus -serd_byte_source_open_file(SerdByteSource* source, FILE* file, bool bulk); - SerdStatus serd_byte_source_open_string(SerdByteSource* source, const char* utf8); @@ -57,6 +56,7 @@ SerdStatus serd_byte_source_open_source(SerdByteSource* source, SerdReadFunc read_func, SerdStreamErrorFunc error_func, + SerdStreamCloseFunc close_func, void* stream, const char* name, size_t page_size); -- cgit v1.2.1