나는 아래와 같은 루아 클래스를 가지고있다. json을 사용하여 객체를 직렬화하고 키 값 저장소에 저장합니다. 개체를 serialize하고 키 값 저장소에 넣을 수는 있지만 키 값 저장소에서 개체를 검색 한 후에 개체의 메서드를 호출 할 수는 없습니다. json 모듈이 인코딩하는 동안 메서드를 건너 뛰고 내 객체가 디코딩 후 메서드를 갖지 않는다는 것을 이해합니다.json에서 디코딩 한 후에 메소드를 호출 할 수 없다.
json에서 lua로 객체를 디코딩 한 후 클래스에 메소드를 추가 할 수 있습니까? 어떤 것은 C 언어로 함수 포인터와 유사합니다.
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