diff options
Diffstat (limited to 'lzio.h')
| -rw-r--r-- | lzio.h | 21 |
1 files changed, 9 insertions, 12 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lzio.h,v 1.18 2003/08/28 14:38:46 roberto Exp roberto $ | 2 | ** $Id: lzio.h,v 1.19 2003/10/03 16:05:34 roberto Exp roberto $ |
| 3 | ** Buffered streams | 3 | ** Buffered streams |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -17,26 +17,16 @@ | |||
| 17 | 17 | ||
| 18 | typedef struct Zio ZIO; | 18 | typedef struct Zio ZIO; |
| 19 | 19 | ||
| 20 | |||
| 21 | #define char2int(c) cast(int, cast(unsigned char, (c))) | 20 | #define char2int(c) cast(int, cast(unsigned char, (c))) |
| 22 | 21 | ||
| 23 | #define zgetc(z) (((z)->n--)>0 ? char2int(*(z)->p++) : luaZ_fill(z)) | 22 | #define zgetc(z) (((z)->n--)>0 ? char2int(*(z)->p++) : luaZ_fill(z)) |
| 24 | 23 | ||
| 25 | void luaZ_init (lua_State *L, ZIO *z, lua_Chunkreader reader, void *data); | ||
| 26 | size_t luaZ_read (ZIO* z, void* b, size_t n); /* read next n bytes */ | ||
| 27 | int luaZ_lookahead (ZIO *z); | ||
| 28 | |||
| 29 | |||
| 30 | |||
| 31 | typedef struct Mbuffer { | 24 | typedef struct Mbuffer { |
| 32 | char *buffer; | 25 | char *buffer; |
| 33 | size_t n; | 26 | size_t n; |
| 34 | size_t buffsize; | 27 | size_t buffsize; |
| 35 | } Mbuffer; | 28 | } Mbuffer; |
| 36 | 29 | ||
| 37 | |||
| 38 | char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n); | ||
| 39 | |||
| 40 | #define luaZ_initbuffer(L, buff) ((buff)->buffer = NULL, (buff)->buffsize = 0) | 30 | #define luaZ_initbuffer(L, buff) ((buff)->buffer = NULL, (buff)->buffsize = 0) |
| 41 | 31 | ||
| 42 | #define luaZ_buffer(buff) ((buff)->buffer) | 32 | #define luaZ_buffer(buff) ((buff)->buffer) |
| @@ -53,6 +43,13 @@ char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n); | |||
| 53 | #define luaZ_freebuffer(L, buff) luaZ_resizebuffer(L, buff, 0) | 43 | #define luaZ_freebuffer(L, buff) luaZ_resizebuffer(L, buff, 0) |
| 54 | 44 | ||
| 55 | 45 | ||
| 46 | LUAI_FUNC char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n); | ||
| 47 | LUAI_FUNC void luaZ_init (lua_State *L, ZIO *z, lua_Chunkreader reader, | ||
| 48 | void *data); | ||
| 49 | LUAI_FUNC size_t luaZ_read (ZIO* z, void* b, size_t n); /* read next n bytes */ | ||
| 50 | LUAI_FUNC int luaZ_lookahead (ZIO *z); | ||
| 51 | |||
| 52 | |||
| 56 | 53 | ||
| 57 | /* --------- Private Part ------------------ */ | 54 | /* --------- Private Part ------------------ */ |
| 58 | 55 | ||
| @@ -65,6 +62,6 @@ struct Zio { | |||
| 65 | }; | 62 | }; |
| 66 | 63 | ||
| 67 | 64 | ||
| 68 | int luaZ_fill (ZIO *z); | 65 | LUAI_FUNC int luaZ_fill (ZIO *z); |
| 69 | 66 | ||
| 70 | #endif | 67 | #endif |
