30 lines
494 B
Lua
30 lines
494 B
Lua
|
|
local tm = {}
|
|
|
|
local SUPPORTED_API = {
|
|
"gd",
|
|
"setgd",
|
|
"delgd",
|
|
}
|
|
|
|
-- underlying function
|
|
|
|
function tm._init_api(rpc)
|
|
tm._rpc = rpc
|
|
|
|
local function _api_request(fname, ...)
|
|
local args = {...}
|
|
return tm._rpc:call(fname, args)
|
|
end
|
|
|
|
for _, fname in ipairs(SUPPORTED_API) do
|
|
-- create a closure that calls common_handler with fname
|
|
tm[fname] = function(...)
|
|
return _api_request(fname, ...)
|
|
end
|
|
end
|
|
|
|
end
|
|
|
|
return tm
|