diff options
Diffstat (limited to 'core/data.go')
| -rw-r--r-- | core/data.go | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/core/data.go b/core/data.go new file mode 100644 index 0000000..a617f17 --- /dev/null +++ b/core/data.go @@ -0,0 +1,30 @@ +package core + +type Marshaler interface { + Marshal() []any +} + +type DataType uint8 + +const ( + TypeHandshake DataType = 0x01 + TypePing = 0x02 + TypePong = 0x03 + TypeTest = 0xFF +) + +type Handshake struct { + Version uint8 +} + +func (h Handshake) Marshal() []any { + return []any{h.Version} +} + +type Test struct { + Message string +} + +func (h Test) Marshal() []any { + return []any{[]byte(h.Message)} +} |
