diff --git a/render-2023-10-11/internal/thestore/.store.go.swp b/render-2023-10-11/internal/thestore/.store.go.swp new file mode 100644 index 0000000..33d406e Binary files /dev/null and b/render-2023-10-11/internal/thestore/.store.go.swp differ diff --git a/render-2023-10-11/internal/thestore/store.go b/render-2023-10-11/internal/thestore/store.go new file mode 100644 index 0000000..923e6ae --- /dev/null +++ b/render-2023-10-11/internal/thestore/store.go @@ -0,0 +1,24 @@ +package thestore + +import "sync" + +type Store sync.Map + +func NewStore() *Store { + s := sync.Map{} + store := Store(s) + return &store +} + +func (store *Store) Set(k string, v Event) { + (*sync.Map)(store).Store(k, v) +} + +func (store *Store) Get(k string) (Event, bool) { + got, ok := (*sync.Map)(store).Load(k) + if !ok { + return Event{}, false + } + event := got.(Event) + return event, true +}