-- it ain't done, man Tab = { parameters = {}, tabs = {}, count = 0 } function Tabs:new (o) o = o or {} -- create object if user does not provide one o.count = #o.tabs setmetatable(o, self) self.__index = self return o end function Tabs:append (t) self[tostring(self.count+1)] = t self.count = self.count + 1 return self end function Tabs:removeByIndex (i) self[tostring(i)] = nil self.count = self.count - 1 return self end function Tabs:generate () local outputString = '' return outputString end