У меня есть класс Lua, как показано ниже.Я использую json для сериализации объекта и помещения его в хранилище значений ключей.Я могу сериализовать объект и успешно поместить его в хранилище значений ключей, но не могу вызвать какие-либо методы объекта после извлечения объекта из хранилища значений ключей.Я понимаю, что модуль json пропускает методы при кодировании, и у моего объекта нет методов после декодирования.
Есть ли способ добавить методы в класс после того, как я декодирую объект из json в lua?что-то похожее на указатели на функции в языке Си.
local class_name = "user_object";
user_object = {}; --user class
function user_object.new (mobile, password, uid)
local self = {};
self.mobile = mobile;
self.uid = uid; -- generate a uid which is a running number.
self.password = password;
self.messages_sent = 0;
self.put_request_count = 0;
self.get_request_count = 0;
self.last_time_active = "";
self.get_tickets = {};
self.put_tickets = {};
self.group_message_stream = {};
self.group_ownerships = {}; -- group names which he is owner of
self.group_memberships = {}; -- group names which he is member of
self.sent_poke_count = 0;
self.sent_poke_stream = {};
self.recv_poke_count = 0;
self.recv_poke_stream = {};
function self:add_put_ticket(ticketid)
table.insert(self.put_tickets, ticketid);
self:incr_put_count();
self:save();
return;
end
function self:add_get_ticket(ticketid)
table.insert(self.get_tickets, ticketid);
self:incr_get_count();
self:save();
return;
end