mirror of https://github.com/bjc/prosody
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
381 B
19 lines
381 B
|
|
local actions = {};
|
|
|
|
function register(path, t)
|
|
local curr = actions;
|
|
for comp in path:gmatch("([^/]+)/") do
|
|
if curr[comp] == nil then
|
|
curr[comp] = {};
|
|
end
|
|
curr = curr[comp];
|
|
if type(curr) ~= "table" then
|
|
return nil, "path-taken";
|
|
end
|
|
end
|
|
curr[path:match("/([^/]+)$")] = t;
|
|
return true;
|
|
end
|
|
|
|
return { actions = actions, register= register }; |