summaryrefslogtreecommitdiffhomepage
path: root/libs/nixio/src/bit.c
diff options
context:
space:
mode:
authorSteven Barth <steven@midlink.org>2009-07-14 15:21:00 +0000
committerSteven Barth <steven@midlink.org>2009-07-14 15:21:00 +0000
commitdae7f3f4d5e066c945ed8352bf60dee37eb97657 (patch)
tree8aa60b16c0e96aae3a61316f6d31984049e375ac /libs/nixio/src/bit.c
parent7ac3bac56921c889d29636b0e957324553457e88 (diff)
nixio:
Add Rockspec Add bswap to nixio.bit Fix nixio.bit documentation
Diffstat (limited to 'libs/nixio/src/bit.c')
-rw-r--r--libs/nixio/src/bit.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libs/nixio/src/bit.c b/libs/nixio/src/bit.c
index 14fdecab13..9991a7ca41 100644
--- a/libs/nixio/src/bit.c
+++ b/libs/nixio/src/bit.c
@@ -97,6 +97,13 @@ static int nixio_bit_cast(lua_State *L) {
return 1;
}
+static int nixio_bit_swap(lua_State *L) {
+ uint64_t op = luaL_checknumber(L, 1);
+ op = (op >> 24) | ((op >> 8) & 0xff00) | ((op & 0xff00) << 8) | (op << 24);
+ lua_pushnumber(L, op);
+ return 1;
+}
+
/* module table */
static const luaL_reg R[] = {
{"bor", nixio_bit_or},
@@ -111,6 +118,8 @@ static const luaL_reg R[] = {
{"div", nixio_bit_div},
{"check", nixio_bit_check},
{"cast", nixio_bit_cast},
+ {"tobit", nixio_bit_cast},
+ {"bswap", nixio_bit_swap},
{NULL, NULL}
};