mirror of
https://github.com/Kyren223/eko.git
synced 2026-07-19 10:01:12 +00:00
31 lines
767 B
Go
31 lines
767 B
Go
package state
|
|
|
|
import (
|
|
"github.com/google/btree"
|
|
"github.com/kyren223/eko/internal/data"
|
|
"github.com/kyren223/eko/internal/packet"
|
|
"github.com/kyren223/eko/pkg/snowflake"
|
|
)
|
|
|
|
type Frequency struct {
|
|
IncompleteMessage string
|
|
Offset int
|
|
MaxHeight int
|
|
}
|
|
|
|
type state struct {
|
|
// Key is either a frequency or receiver
|
|
FrequencyState map[snowflake.ID]Frequency
|
|
LastFrequency map[snowflake.ID]snowflake.ID // key is network
|
|
|
|
Messages map[snowflake.ID]*btree.BTreeG[data.Message]
|
|
Networks []packet.FullNetwork
|
|
}
|
|
|
|
var State state = state{
|
|
FrequencyState: map[snowflake.ID]Frequency{},
|
|
LastFrequency: map[snowflake.ID]snowflake.ID{},
|
|
Messages: map[snowflake.ID]*btree.BTreeG[data.Message]{},
|
|
Networks: []packet.FullNetwork{},
|
|
}
|