module Network.ZGossip.Types ( ZGossipState(..) , emptyGossipState , cvtPub) where import qualified Data.Map as M import qualified Data.Set as S import Data.ZGossip data ZGossipState = ZGossipState { gossipPeers :: S.Set Peer , gossipPairs :: M.Map Key (Value, TTL) } deriving (Show) emptyGossipState :: ZGossipState emptyGossipState = ZGossipState S.empty M.empty cvtPub :: (Key, (Value, TTL)) -> ZGSCmd cvtPub (k, (v, ttl)) = Publish k v ttl