packet serializer/unserializer for ruby
packet_defination
C에서의 패킷
struct DummyPacket{
int size, id;
int dummy1;
char dummy2[32+1]; // +1 for 'null'
char dummy3[8+1]; // +1 for 'null'
};
CornFlakes를 이용해 위의 패킷을 구현.
size, id필드는 자동으로 기입됨.
class DummyPacket
id PACKET_ID_DUMMY
int dummy1
string dummy2, 32 #string length
string dummy3, 8
end
serialize
pkt = DummyPacket.new
pkt.dummy1 = 1234
pkt.dummy2 = "hello world"
pkt.dummy3 = "serial"
send pkt.serialize
unserialize
def on_recv data
pkt = DummyPacket.unserialize data
puts pkt.dummy1
puts pkt.dummy2
puts pkt.dummy3
end