mirror of
https://github.com/status-im/nim-libp2p-dht.git
synced 2025-02-23 01:28:09 +00:00
use pure
enums
This commit is contained in:
parent
c646b9c2b9
commit
fca255b2f7
@ -22,7 +22,7 @@ import
|
||||
export providers_messages
|
||||
|
||||
type
|
||||
MessageKind* = enum
|
||||
MessageKind* {.pure.} = enum
|
||||
# TODO This is needed only to make Nim 1.2.6 happy
|
||||
# Without it, the `MessageKind` type cannot be used as
|
||||
# a discriminator in case objects.
|
||||
@ -116,16 +116,16 @@ type
|
||||
discard
|
||||
|
||||
template messageKind*(T: typedesc[SomeMessage]): MessageKind =
|
||||
when T is PingMessage: ping
|
||||
elif T is PongMessage: pong
|
||||
elif T is FindNodeMessage: findNode
|
||||
elif T is FindNodeFastMessage: findNodeFast
|
||||
elif T is NodesMessage: nodes
|
||||
elif T is TalkReqMessage: talkReq
|
||||
elif T is TalkRespMessage: talkResp
|
||||
elif T is AddProviderMessage: addProvider
|
||||
elif T is GetProvidersMessage: getProviders
|
||||
elif T is ProvidersMessage: providers
|
||||
when T is PingMessage: MessageKind.ping
|
||||
elif T is PongMessage: MessageKind.pong
|
||||
elif T is FindNodeMessage: MessageKind.findNode
|
||||
elif T is FindNodeFastMessage: MessageKind.findNodeFast
|
||||
elif T is NodesMessage: MessageKind.nodes
|
||||
elif T is TalkReqMessage: MessageKind.talkReq
|
||||
elif T is TalkRespMessage: MessageKind.talkResp
|
||||
elif T is AddProviderMessage: MessageKind.addProvider
|
||||
elif T is GetProvidersMessage: MessageKind.getProviders
|
||||
elif T is ProvidersMessage: MessageKind.providers
|
||||
|
||||
proc hash*(reqId: RequestId): Hash =
|
||||
hash(reqId.id)
|
||||
|
@ -89,7 +89,7 @@ suite "Discovery v5.1 Protocol Message Encodings":
|
||||
let message = decoded.get()
|
||||
check:
|
||||
message.reqId == reqId
|
||||
message.kind == nodes
|
||||
message.kind == MessageKind.nodes
|
||||
message.nodes.total == total
|
||||
message.nodes.sprs.len() == 0
|
||||
|
||||
@ -111,7 +111,7 @@ suite "Discovery v5.1 Protocol Message Encodings":
|
||||
let message = decoded.get()
|
||||
check:
|
||||
message.reqId == reqId
|
||||
message.kind == nodes
|
||||
message.kind == MessageKind.nodes
|
||||
message.nodes.total == total
|
||||
message.nodes.sprs.len() == 2
|
||||
message.nodes.sprs[0] == s1
|
||||
|
Loading…
x
Reference in New Issue
Block a user