function checkVarClass(var, class, message) if type(var) ~= "table" or var["class"] == nil or not var:isInstanceOf(class) then throw(message == nil and "Wrong variable class." or message, 1, true) end end function accessorFunc(tbl, varName, name, defaultValue) tbl[varName] = defaultValue tbl["get" .. name] = function(self) return self[varName] end tbl["set" .. name] = function(self, value) self[varName] = value end end