Module:Debugging

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Documentation icon Τεκμηρίωση module[δημιουργία]
--Διάφορα βοηθητικά functions, κυρίως για debugging κατά την συγγραφή άλλων module,
--τα functions δεν προορίζονται για τελική χρήση

local p = {}

-- Λεπτομέρειες αντικειμένων όπως πίνακες κτλ
function p.dump(o)
   if type(o) == 'table' then
      local s = '{ '
      for k,v in pairs(o) do
         if type(k) ~= 'number' then k = '"'..k..'"' end
         s = s .. '['..k..'] = ' .. p.dump(v) .. ','
      end
      return s .. '} '
   else
      return tostring(o)
   end
end

-- Αριθμός στοιχείων σε dictionary/associative array, όταν δεν πιάνει το # 
function p.tablelength(T)
  local count = 0
  for _ in pairs(T) do count = count + 1 end
  return count
end

return p