summaryrefslogtreecommitdiff
path: root/src/Data/Kademlia/RoutingTable.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Data/Kademlia/RoutingTable.hs')
-rw-r--r--src/Data/Kademlia/RoutingTable.hs28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/Data/Kademlia/RoutingTable.hs b/src/Data/Kademlia/RoutingTable.hs
new file mode 100644
index 00000000..98e15a0b
--- /dev/null
+++ b/src/Data/Kademlia/RoutingTable.hs
@@ -0,0 +1,28 @@
1module Data.Kademlia.RoutingTable
2 (
3 ) where
4
5import Data.ByteString
6
7type NodeID = ByteString
8type InfoHash = ByteString
9
10type Bucket = [NodeID]
11
12data Tree
13 = Tip Bucket
14 | Bin Table Table
15
16data Table = Table {
17 tree :: Tree
18 , bucketSize :: Int
19 }
20
21closest :: InfoHash -> Table -> [NodeID]
22closest = undefined
23
24insert :: NodeID -> Table -> Table
25insert x t = undefined
26
27-- TODO table serialization: usually we need to save table between
28-- target program executions