function tostr(t) | |
local str = "" | |
for k, v in next, t do | |
if #str > 0 then | |
str = str .. ", " | |
end | |
if type(k) == "number" then | |
str = str .. "[" .. k .. "] = " | |
else | |
str = str .. tostring(k) .. " = " | |
end | |
if type(v) == "table" then | |
str = str .. "{ " .. tostr(v) .. " }" | |
else | |
str = str .. tostring(v) | |
end | |
end | |
return str | |
end | |
function sk_scrape_startcanvas(c, fileName) end | |
function sk_scrape_endcanvas(c, fileName) end | |
local effects = {} | |
function count_fields(t) | |
for k, v in next, t do | |
effects[k] = (effects[k] or 0) + 1 | |
end | |
end | |
local total_paints = 0; | |
function sk_scrape_accumulate(t) | |
if (t.paint) then | |
total_paints = total_paints + 1 | |
count_fields(t.paint:getEffects()) | |
end | |
end | |
function sk_scrape_summarize() | |
io.write("total paints ", total_paints, " ", tostr(effects), "\n"); | |
end | |