diff options
author | Remko Tronçon <git@el-tramo.be> | 2011-03-05 12:02:12 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2011-03-05 12:02:12 (GMT) |
commit | 4e0888a6e2350f06504d4c6a99e5a21fa51ee9bc (patch) | |
tree | 3de7e764cc35810d097ca41ea965b4fcb1702db7 /Sluift/sluift.cpp | |
parent | f19d2718149f36fa017c64ad95a7fb3ce045347c (diff) | |
download | swift-contrib-4e0888a6e2350f06504d4c6a99e5a21fa51ee9bc.zip swift-contrib-4e0888a6e2350f06504d4c6a99e5a21fa51ee9bc.tar.bz2 |
Sluift: Added CollectVersions example.
Diffstat (limited to 'Sluift/sluift.cpp')
-rw-r--r-- | Sluift/sluift.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/Sluift/sluift.cpp b/Sluift/sluift.cpp index ffadc38..ca7d9ff 100644 --- a/Sluift/sluift.cpp +++ b/Sluift/sluift.cpp @@ -631,6 +631,30 @@ static int sluift_new_client(lua_State *L) { } } +static int sluift_jid_to_bare(lua_State *L) { + JID jid(std::string(luaL_checkstring(L, 1))); + lua_pushstring(L, jid.toBare().toString().c_str()); + return 1; +} + +static int sluift_jid_node(lua_State *L) { + JID jid(std::string(luaL_checkstring(L, 1))); + lua_pushstring(L, jid.getNode().c_str()); + return 1; +} + +static int sluift_jid_domain(lua_State *L) { + JID jid(std::string(luaL_checkstring(L, 1))); + lua_pushstring(L, jid.getDomain().c_str()); + return 1; +} + +static int sluift_jid_resource(lua_State *L) { + JID jid(std::string(luaL_checkstring(L, 1))); + lua_pushstring(L, jid.getResource().c_str()); + return 1; +} + static int sluift_sleep(lua_State *L) { try { eventLoop.runOnce(); @@ -672,6 +696,10 @@ static int sluift_newindex(lua_State *L) { static const luaL_reg sluift_functions[] = { {"new_client", sluift_new_client}, + {"jid_to_bare", sluift_jid_to_bare}, + {"jid_node", sluift_jid_node}, + {"jid_domain", sluift_jid_domain}, + {"jid_resource", sluift_jid_resource}, {"sleep", sluift_sleep}, {NULL, NULL} }; |