From 97fcb80cb047a1e72ec39dc14a5d790461fa84b9 Mon Sep 17 00:00:00 2001 From: "Nicolas \"Pixel\" Noble" Date: Wed, 7 Aug 2013 22:57:40 +0200 Subject: Adding readU8() --- src/LuaHandle.cc | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/LuaHandle.cc') diff --git a/src/LuaHandle.cc b/src/LuaHandle.cc index 6fb8d44..355b992 100644 --- a/src/LuaHandle.cc +++ b/src/LuaHandle.cc @@ -8,10 +8,12 @@ typedef IOHandle IOInput; enum IOHandle_methods_t { IOHANDLE_CLOSE, + IOHANDLE_READU8, }; struct Balau::lua_functypes_t IOHandle_methods[] = { { IOHANDLE_CLOSE, "close", 0, 0, { } }, + { IOHANDLE_READU8, "readU8", 0, 0, { } }, { -1, 0, 0, 0, 0 }, }; @@ -27,6 +29,12 @@ int sLua_IOHandle::IOHandle_proceed(Balau::Lua & L, int n, IOHandle * obj, int c case IOHANDLE_CLOSE: return L.yield(Balau::Future([h]() mutable { h->close(); return 0; })); break; + case IOHANDLE_READU8: + { + Balau::Future c = h->readU8(); + return L.yield(Balau::Future([L, c]() mutable { L.push((lua_Number) c.get()); return 1; })); + } + break; } return r; @@ -42,6 +50,7 @@ void Balau::LuaHandleFactory::pushObjectAndMembers(Lua & L) { pushObj(L, m_obj, "Handle"); PUSH_METHOD(IOHandle, IOHANDLE_CLOSE); + PUSH_METHOD(IOHandle, IOHANDLE_READU8); } -- cgit v1.2.3