blob: 2d2c2197a0608e77aa822b4ef87259e78bfa2c98 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
{-# LANGUAGE ExistentialQuantification #-}
module Announcer where
import Network.Kademlia.Search
data Announcer = Announcer
forkAnnouncer :: IO Announcer
forkAnnouncer = return Announcer
stopAnnouncer :: Announcer -> IO ()
stopAnnouncer _ = return ()
data AnnounceMethod ni r info = forall nid addr tok. AnnounceMethod
{ aSearch :: Search nid addr tok ni r
, aPublish :: info -> Maybe ni -> IO (Maybe r)
}
schedule :: Announcer -> AnnounceMethod ni r info -> info -> IO ()
schedule _ _ _ = return ()
cancel :: Announcer -> AnnounceMethod ni r info -> info -> IO ()
cancel _ _ _ = return ()
|