aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordaurnimator <quae@daurnimator.com>2017-09-08 18:24:30 +1000
committerdaurnimator <quae@daurnimator.com>2017-09-08 18:24:30 +1000
commitc0a59dda383c37fdeb786de7b3fc4e58e2ab886d (patch)
treed153c872d4f5a7a2bdb4db12f69df193976c7579
parentc0db566ba0a42d5beebce46ba1af9273c85d7536 (diff)
downloadlua-compat-5.3-c0a59dda383c37fdeb786de7b3fc4e58e2ab886d.tar.gz
lua-compat-5.3-c0a59dda383c37fdeb786de7b3fc4e58e2ab886d.tar.bz2
lua-compat-5.3-c0a59dda383c37fdeb786de7b3fc4e58e2ab886d.zip
Add (partial) luaL_Stream definition
-rw-r--r--README.md14
-rw-r--r--c-api/compat-5.3.h9
2 files changed, 17 insertions, 6 deletions
diff --git a/README.md b/README.md
index 8f0cc32..bc3ee28 100644
--- a/README.md
+++ b/README.md
@@ -144,8 +144,9 @@ For Lua 5.1 additionally:
144* `LUA_OP*` macros for `lua_arith` and `lua_compare` 144* `LUA_OP*` macros for `lua_arith` and `lua_compare`
145* `LUA_FILEHANDLE` 145* `LUA_FILEHANDLE`
146* `lua_Unsigned` 146* `lua_Unsigned`
147* `luaL_Stream` (limited compatibility, see[here][19])
147* `lua_absindex` 148* `lua_absindex`
148* `lua_arith` (see [here][19]) 149* `lua_arith` (see [here][20])
149* `lua_compare` 150* `lua_compare`
150* `lua_len`, `lua_rawlen`, and `luaL_len` 151* `lua_len`, `lua_rawlen`, and `luaL_len`
151* `lua_pushstring`, `lua_pushlstring` (return value) 152* `lua_pushstring`, `lua_pushlstring` (return value)
@@ -159,10 +160,10 @@ For Lua 5.1 additionally:
159* `luaL_execresult` 160* `luaL_execresult`
160* `luaL_fileresult` 161* `luaL_fileresult`
161* `luaL_checkversion` (with empty body, only to avoid compile errors, 162* `luaL_checkversion` (with empty body, only to avoid compile errors,
162 see [here][20]) 163 see [here][21])
163* `luaL_tolstring` 164* `luaL_tolstring`
164* `luaL_buffinitsize`, `luaL_prepbuffsize`, and `luaL_pushresultsize` 165* `luaL_buffinitsize`, `luaL_prepbuffsize`, and `luaL_pushresultsize`
165 (see [here][21]) 166 (see [here][22])
166* `lua_pushunsigned`, `lua_tounsignedx`, `lua_tounsigned`, 167* `lua_pushunsigned`, `lua_tounsignedx`, `lua_tounsigned`,
167 `luaL_checkunsigned`, `luaL_optunsigned`, if 168 `luaL_checkunsigned`, `luaL_optunsigned`, if
168 `LUA_COMPAT_APIINTCASTS` is defined. 169 `LUA_COMPAT_APIINTCASTS` is defined.
@@ -224,7 +225,8 @@ This package contains code written by:
224 [17]: https://github.com/keplerproject/lua-compat-5.3/wiki/lua_setuservalue 225 [17]: https://github.com/keplerproject/lua-compat-5.3/wiki/lua_setuservalue
225 [18]: https://github.com/keplerproject/lua-compat-5.3/wiki/lua_stringtonumber 226 [18]: https://github.com/keplerproject/lua-compat-5.3/wiki/lua_stringtonumber
226 [19]: https://github.com/keplerproject/lua-compat-5.3/wiki/lua_arith 227 [19]: https://github.com/keplerproject/lua-compat-5.3/wiki/lua_arith
227 [20]: https://github.com/keplerproject/lua-compat-5.3/wiki/luaL_checkversion 228 [20]: https://github.com/keplerproject/lua-compat-5.3/wiki/luaL_Stream
228 [21]: https://github.com/keplerproject/lua-compat-5.3/wiki/luaL_Buffer 229 [21]: https://github.com/keplerproject/lua-compat-5.3/wiki/luaL_checkversion
229 [22]: https://github.com/keplerproject/lua-compat-5.3/wiki/coroutine.running 230 [22]: https://github.com/keplerproject/lua-compat-5.3/wiki/luaL_Buffer
231 [23]: https://github.com/keplerproject/lua-compat-5.3/wiki/coroutine.running
230 232
diff --git a/c-api/compat-5.3.h b/c-api/compat-5.3.h
index 886b5ba..02712f3 100644
--- a/c-api/compat-5.3.h
+++ b/c-api/compat-5.3.h
@@ -102,6 +102,15 @@ typedef struct luaL_Buffer_53 {
102} luaL_Buffer_53; 102} luaL_Buffer_53;
103#define luaL_Buffer luaL_Buffer_53 103#define luaL_Buffer luaL_Buffer_53
104 104
105/*
106 * In PUC-Rio 5.1, userdata is a simple FILE*
107 * In LuaJIT, it's a struct where the first member is a FILE*
108 * We can't support the `closef` member
109 */
110typedef struct luaL_Stream {
111 FILE *f;
112} luaL_Stream;
113
105#define lua_absindex COMPAT53_CONCAT(COMPAT53_PREFIX, _absindex) 114#define lua_absindex COMPAT53_CONCAT(COMPAT53_PREFIX, _absindex)
106COMPAT53_API int lua_absindex (lua_State *L, int i); 115COMPAT53_API int lua_absindex (lua_State *L, int i);
107 116