Merge pull request #26 from mc-server/dumpapimove
Moved the dumpAPI function to a new plugin.
This commit is contained in:
commit
d0adae8553
61
MCServer/Plugins/APIDump/main.lua
Normal file
61
MCServer/Plugins/APIDump/main.lua
Normal file
@ -0,0 +1,61 @@
|
||||
-- Global variables
|
||||
PLUGIN = {}; -- Reference to own plugin object
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
function Initialize(Plugin)
|
||||
PLUGIN = Plugin
|
||||
|
||||
Plugin:SetName("APIDump")
|
||||
Plugin:SetVersion(1)
|
||||
|
||||
PluginManager = cRoot:Get():GetPluginManager()
|
||||
LOG("Initialized " .. Plugin:GetName() .. " v." .. Plugin:GetVersion())
|
||||
|
||||
-- dump all available API functions and objects:
|
||||
DumpAPI();
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
function DumpAPI()
|
||||
LOG("Dumping all available functions to API.txt...");
|
||||
function dump (prefix, a, Output)
|
||||
for i, v in pairs (a) do
|
||||
if (type(v) == "table") then
|
||||
if (GetChar(i, 1) ~= ".") then
|
||||
if (v == _G) then
|
||||
LOG(prefix .. i .. " == _G, CYCLE, ignoring");
|
||||
elseif (v == _G.package) then
|
||||
LOG(prefix .. i .. " == _G.package, ignoring");
|
||||
else
|
||||
dump(prefix .. i .. ".", v, Output)
|
||||
end
|
||||
end
|
||||
elseif (type(v) == "function") then
|
||||
if (string.sub(i, 1, 2) ~= "__") then
|
||||
table.insert(Output, prefix .. i .. "()");
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local Output = {};
|
||||
dump("", _G, Output);
|
||||
|
||||
table.sort(Output);
|
||||
local f = io.open("API.txt", "w");
|
||||
for i, n in ipairs(Output) do
|
||||
f:write(n, "\n");
|
||||
end
|
||||
f:close();
|
||||
LOG("API.txt written.");
|
||||
end
|
@ -1,16 +1,14 @@
|
||||
|
||||
-- Global variables
|
||||
PLUGIN = {}; -- Reference to own plugin object
|
||||
ShouldDumpFunctions = true; -- If set to true, all available functions are written to the API.txt file upon plugin initialization
|
||||
|
||||
g_DropSpensersToActivate = {}; -- A list of dispensers and droppers (as {World, X, Y Z} quadruplets) that are to be activated every tick
|
||||
|
||||
g_HungerReportTick = 10;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
function Initialize(Plugin)
|
||||
PLUGIN = Plugin
|
||||
|
||||
@ -41,12 +39,6 @@ function Initialize(Plugin)
|
||||
|
||||
LOG("Initialized " .. Plugin:GetName() .. " v." .. Plugin:GetVersion())
|
||||
|
||||
-- dump all available API functions and objects:
|
||||
if (ShouldDumpFunctions) then
|
||||
DumpAPI();
|
||||
end
|
||||
|
||||
|
||||
-- TestBlockAreas();
|
||||
-- TestSQLiteBindings();
|
||||
-- TestExpatBindings();
|
||||
@ -58,43 +50,6 @@ end;
|
||||
|
||||
|
||||
|
||||
function DumpAPI()
|
||||
LOG("Dumping all available functions to API.txt...");
|
||||
function dump (prefix, a, Output)
|
||||
for i, v in pairs (a) do
|
||||
if (type(v) == "table") then
|
||||
if (GetChar(i, 1) ~= ".") then
|
||||
if (v == _G) then
|
||||
LOG(prefix .. i .. " == _G, CYCLE, ignoring");
|
||||
elseif (v == _G.package) then
|
||||
LOG(prefix .. i .. " == _G.package, ignoring");
|
||||
else
|
||||
dump(prefix .. i .. ".", v, Output)
|
||||
end
|
||||
end
|
||||
elseif (type(v) == "function") then
|
||||
if (string.sub(i, 1, 2) ~= "__") then
|
||||
table.insert(Output, prefix .. i .. "()");
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local Output = {};
|
||||
dump("", _G, Output);
|
||||
|
||||
table.sort(Output);
|
||||
local f = io.open("API.txt", "w");
|
||||
for i, n in ipairs(Output) do
|
||||
f:write(n, "\n");
|
||||
end
|
||||
f:close();
|
||||
LOG("API.txt written.");
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
function TestBlockAreas()
|
||||
LOG("Testing block areas...");
|
||||
|
Loading…
Reference in New Issue
Block a user