silphius/app/net/packet.js
2024-06-22 22:33:54 -05:00

27 lines
519 B
JavaScript

import {Encoder, Decoder} from '@msgpack/msgpack';
const decoder = new Decoder();
const encoder = new Encoder();
export default class Packet {
static decode(view) {
return decoder.decode(new DataView(view.buffer, view.byteOffset + 2, view.byteLength - 2));
}
static encode(payload) {
encoder.pos = 2;
encoder.doEncode(payload)
return new DataView(encoder.bytes.buffer, 0, encoder.pos);
}
static pack(payload) {
return payload;
}
static unpack(packed) {
return packed;
}
}