update docs for 1052-single-topic-message

This commit is contained in:
= 2024-03-07 14:41:43 +00:00
parent 049aebccd2
commit 96fbb00cd8
82 changed files with 822 additions and 136 deletions

View File

@ -260,7 +260,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:51 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -801,7 +801,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:34 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -874,7 +874,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -391,7 +391,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -1703,7 +1703,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:31 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -398,7 +398,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -1450,7 +1450,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:45 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:30 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -3040,7 +3040,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:45 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:29 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -940,7 +940,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:45 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:30 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -275,7 +275,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -1195,7 +1195,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:44 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:29 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -1029,7 +1029,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:45 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:29 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -908,7 +908,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:45 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:30 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -381,7 +381,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -450,7 +450,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -340,7 +340,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:31 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -2551,7 +2551,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -396,7 +396,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:46 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:30 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -481,7 +481,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:46 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:30 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -689,7 +689,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:46 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:31 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -539,7 +539,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -399,7 +399,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -455,7 +455,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -535,7 +535,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -606,7 +606,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -375,7 +375,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -360,7 +360,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -806,7 +806,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:31 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -484,7 +484,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -931,7 +931,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:43 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:28 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -508,7 +508,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -302,7 +302,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -468,7 +468,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:34 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -722,7 +722,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -383,7 +383,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -567,7 +567,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:34 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -414,7 +414,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:34 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -368,7 +368,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -636,7 +636,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -414,7 +414,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -467,7 +467,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

File diff suppressed because one or more lines are too long

View File

@ -255,7 +255,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -264,6 +264,11 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#publish.e%2CFloodSub%2Cstring%2Cseq%5Bbyte%5D" <li><a class="reference" href="#publish.e%2CFloodSub%2Cstring%2Cseq%5Bbyte%5D"
title="publish(f: FloodSub; topic: string; data: seq[byte]): Future[int]">publish(f: FloodSub; topic: string; data: seq[byte]): Future[int]</a></li> title="publish(f: FloodSub; topic: string; data: seq[byte]): Future[int]">publish(f: FloodSub; topic: string; data: seq[byte]): Future[int]</a></li>
</ul>
<ul class="simple nested-toc-section">rpcHandler
<li><a class="reference" href="#rpcHandler.e%2CFloodSub%2CPubSubPeer%2Cseq%5Bbyte%5D"
title="rpcHandler(f: FloodSub; peer: PubSubPeer; data: seq[byte]): Future[void]">rpcHandler(f: FloodSub; peer: PubSubPeer; data: seq[byte]): Future[void]</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">unsubscribePeer <ul class="simple nested-toc-section">unsubscribePeer
<li><a class="reference" href="#unsubscribePeer.e%2CFloodSub%2CPeerId" <li><a class="reference" href="#unsubscribePeer.e%2CFloodSub%2CPeerId"
@ -424,6 +429,20 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/floodsub.nim#L186" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/floodsub.nim#L186" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="rpcHandler.e,FloodSub,PubSubPeer,seq[byte]" class="tohide">
<dt><pre><span class="Keyword">method</span> <a href="#rpcHandler.e%2CFloodSub%2CPubSubPeer%2Cseq%5Bbyte%5D"><span class="Identifier">rpcHandler</span></a><span class="Other">(</span><span class="Identifier">f</span><span class="Other">:</span> <a href="floodsub.html#FloodSub"><span class="Identifier">FloodSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">data</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span><span class="Identifier">void</span><span class="Other">]</span> {.
<span class="Identifier">stackTrace</span><span class="Other">:</span> <span class="DecNumber">false</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/floodsub.nim#L98"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/floodsub.nim#L98" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="unsubscribePeer.e,FloodSub,PeerId" class="tohide"> <div id="unsubscribePeer.e,FloodSub,PeerId" class="tohide">
@ -449,7 +468,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:51 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -219,6 +219,13 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#init%2Ctype%5BGossipSubParams%5D" <li><a class="reference" href="#init%2Ctype%5BGossipSubParams%5D"
title="init(_: type[GossipSubParams]): GossipSubParams">init(_: type[GossipSubParams]): GossipSubParams</a></li> title="init(_: type[GossipSubParams]): GossipSubParams">init(_: type[GossipSubParams]): GossipSubParams</a></li>
</ul>
<ul class="simple nested-toc-section">rateLimit
<li><a class="reference" href="#rateLimit%2CGossipSub%2CPubSubPeer%2COpt%5BRPCMsg%5D%2Cint"
title="rateLimit(g: GossipSub; peer: PubSubPeer; rpcMsgOpt: Opt[RPCMsg]; msgSize: int): Future[
void]">rateLimit(g: GossipSub; peer: PubSubPeer; rpcMsgOpt: Opt[RPCMsg]; msgSize: int): Future[
void]</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">validateParameters <ul class="simple nested-toc-section">validateParameters
<li><a class="reference" href="#validateParameters%2CGossipSubParams" <li><a class="reference" href="#validateParameters%2CGossipSubParams"
@ -267,6 +274,11 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#publish.e%2CGossipSub%2Cstring%2Cseq%5Bbyte%5D" <li><a class="reference" href="#publish.e%2CGossipSub%2Cstring%2Cseq%5Bbyte%5D"
title="publish(g: GossipSub; topic: string; data: seq[byte]): Future[int]">publish(g: GossipSub; topic: string; data: seq[byte]): Future[int]</a></li> title="publish(g: GossipSub; topic: string; data: seq[byte]): Future[int]">publish(g: GossipSub; topic: string; data: seq[byte]): Future[int]</a></li>
</ul>
<ul class="simple nested-toc-section">rpcHandler
<li><a class="reference" href="#rpcHandler.e%2CGossipSub%2CPubSubPeer%2Cseq%5Bbyte%5D"
title="rpcHandler(g: GossipSub; peer: PubSubPeer; data: seq[byte]): Future[void]">rpcHandler(g: GossipSub; peer: PubSubPeer; data: seq[byte]): Future[void]</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">start <ul class="simple nested-toc-section">start
<li><a class="reference" href="#start.e%2CGossipSub" <li><a class="reference" href="#start.e%2CGossipSub"
@ -350,6 +362,20 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub.nim#L52" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub.nim#L52" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="rateLimit,GossipSub,PubSubPeer,Opt[RPCMsg],int" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#rateLimit%2CGossipSub%2CPubSubPeer%2COpt%5BRPCMsg%5D%2Cint"><span class="Identifier">rateLimit</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="gossipsub/types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">rpcMsgOpt</span><span class="Other">:</span> <span class="Identifier">Opt</span><span class="Other">[</span><a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">]</span><span class="Other">;</span>
<span class="Identifier">msgSize</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span><span class="Identifier">void</span><span class="Other">]</span> {.<span class="Identifier">stackTrace</span><span class="Other">:</span> <span class="DecNumber">false</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/gossipsub.nim#L399"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub.nim#L399" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="validateParameters,GossipSubParams" class="tohide"> <div id="validateParameters,GossipSubParams" class="tohide">
@ -436,7 +462,7 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="onPubSubPeerEvent.e,GossipSub,PubSubPeer,PubSubPeerEvent" class="tohide"> <div id="onPubSubPeerEvent.e,GossipSub,PubSubPeer,PubSubPeerEvent" class="tohide">
<dt><pre><span class="Keyword">method</span> <a href="#onPubSubPeerEvent.e%2CGossipSub%2CPubSubPeer%2CPubSubPeerEvent"><span class="Identifier">onPubSubPeerEvent</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="gossipsub/types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">event</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeerEvent"><span class="Identifier">PubSubPeerEvent</span></a><span class="Other">)</span> {. <dt><pre><span class="Keyword">method</span> <a href="#onPubSubPeerEvent.e%2CGossipSub%2CPubSubPeer%2CPubSubPeerEvent"><span class="Identifier">onPubSubPeerEvent</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="gossipsub/types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">event</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeerEvent"><span class="Identifier">PubSubPeerEvent</span></a><span class="Other">)</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -472,6 +498,20 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub.nim#L576" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub.nim#L576" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="rpcHandler.e,GossipSub,PubSubPeer,seq[byte]" class="tohide">
<dt><pre><span class="Keyword">method</span> <a href="#rpcHandler.e%2CGossipSub%2CPubSubPeer%2Cseq%5Bbyte%5D"><span class="Identifier">rpcHandler</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="gossipsub/types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">data</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span><span class="Identifier">void</span><span class="Other">]</span> {.
<span class="Identifier">stackTrace</span><span class="Other">:</span> <span class="DecNumber">false</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/gossipsub.nim#L433"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub.nim#L433" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="start.e,GossipSub" class="tohide"> <div id="start.e,GossipSub" class="tohide">
@ -528,7 +568,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:51 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -224,6 +224,13 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#handleBackingOff%2CBackoffTable%2Cstring" <li><a class="reference" href="#handleBackingOff%2CBackoffTable%2Cstring"
title="handleBackingOff(t: var BackoffTable; topic: string)">handleBackingOff(t: var BackoffTable; topic: string)</a></li> title="handleBackingOff(t: var BackoffTable; topic: string)">handleBackingOff(t: var BackoffTable; topic: string)</a></li>
</ul>
<ul class="simple nested-toc-section">handleGraft
<li><a class="reference" href="#handleGraft%2CGossipSub%2CPubSubPeer%2Cseq%5BControlGraft%5D"
title="handleGraft(g: GossipSub; peer: PubSubPeer; grafts: seq[ControlGraft]): seq[
ControlPrune]">handleGraft(g: GossipSub; peer: PubSubPeer; grafts: seq[ControlGraft]): seq[
ControlPrune]</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">handleIDontWant <ul class="simple nested-toc-section">handleIDontWant
<li><a class="reference" href="#handleIDontWant%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIWant%5D" <li><a class="reference" href="#handleIDontWant%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIWant%5D"
@ -241,6 +248,11 @@ window.addEventListener("DOMContentLoaded", main2);
Message]">handleIWant(g: GossipSub; peer: PubSubPeer; iwants: seq[ControlIWant]): seq[ Message]">handleIWant(g: GossipSub; peer: PubSubPeer; iwants: seq[ControlIWant]): seq[
Message]</a></li> Message]</a></li>
</ul>
<ul class="simple nested-toc-section">handlePrune
<li><a class="reference" href="#handlePrune%2CGossipSub%2CPubSubPeer%2Cseq%5BControlPrune%5D"
title="handlePrune(g: GossipSub; peer: PubSubPeer; prunes: seq[ControlPrune])">handlePrune(g: GossipSub; peer: PubSubPeer; prunes: seq[ControlPrune])</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">heartbeat <ul class="simple nested-toc-section">heartbeat
<li><a class="reference" href="#heartbeat%2CGossipSub" <li><a class="reference" href="#heartbeat%2CGossipSub"
@ -306,7 +318,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="getGossipPeers,GossipSub" class="tohide"> <div id="getGossipPeers,GossipSub" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#getGossipPeers%2CGossipSub"><span class="Identifier">getGossipPeers</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">,</span> <span class="Identifier">ControlMessage</span><span class="Other">]</span> {. <dt><pre><span class="Keyword">proc</span> <a href="#getGossipPeers%2CGossipSub"><span class="Identifier">getGossipPeers</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">,</span> <a href="../rpc/messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a><span class="Other">]</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -342,11 +354,24 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub/behavior.nim#L73" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub/behavior.nim#L73" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="handleGraft,GossipSub,PubSubPeer,seq[ControlGraft]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#handleGraft%2CGossipSub%2CPubSubPeer%2Cseq%5BControlGraft%5D"><span class="Identifier">handleGraft</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">grafts</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="../rpc/messages.html#ControlGraft"><span class="Identifier">ControlGraft</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span>
<a href="../rpc/messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">,</span> <span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/gossipsub/behavior.nim#L101"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub/behavior.nim#L101" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="handleIDontWant,GossipSub,PubSubPeer,seq[ControlIWant]" class="tohide"> <div id="handleIDontWant,GossipSub,PubSubPeer,seq[ControlIWant]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#handleIDontWant%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIWant%5D"><span class="Identifier">handleIDontWant</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <dt><pre><span class="Keyword">proc</span> <a href="#handleIDontWant%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIWant%5D"><span class="Identifier">handleIDontWant</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span>
<span class="Identifier">iDontWants</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">ControlIWant</span><span class="Other">]</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">iDontWants</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="../rpc/messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a><span class="Other">]</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -358,7 +383,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="handleIHave,GossipSub,PubSubPeer,seq[ControlIHave]" class="tohide"> <div id="handleIHave,GossipSub,PubSubPeer,seq[ControlIHave]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#handleIHave%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIHave%5D"><span class="Identifier">handleIHave</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">ihaves</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">ControlIHave</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">ControlIWant</span> {. <dt><pre><span class="Keyword">proc</span> <a href="#handleIHave%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIHave%5D"><span class="Identifier">handleIHave</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">ihaves</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="../rpc/messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="../rpc/messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -371,8 +396,8 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="handleIWant,GossipSub,PubSubPeer,seq[ControlIWant]" class="tohide"> <div id="handleIWant,GossipSub,PubSubPeer,seq[ControlIWant]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#handleIWant%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIWant%5D"><span class="Identifier">handleIWant</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">iwants</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">ControlIWant</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span> <dt><pre><span class="Keyword">proc</span> <a href="#handleIWant%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIWant%5D"><span class="Identifier">handleIWant</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">iwants</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="../rpc/messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span>
<span class="Identifier">Message</span><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <a href="../rpc/messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -381,6 +406,19 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub/behavior.nim#L275" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub/behavior.nim#L275" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="handlePrune,GossipSub,PubSubPeer,seq[ControlPrune]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#handlePrune%2CGossipSub%2CPubSubPeer%2Cseq%5BControlPrune%5D"><span class="Identifier">handlePrune</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">prunes</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="../rpc/messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a><span class="Other">]</span><span class="Other">)</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/gossipsub/behavior.nim#L208"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/gossipsub/behavior.nim#L208" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="heartbeat,GossipSub" class="tohide"> <div id="heartbeat,GossipSub" class="tohide">
@ -458,7 +496,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:51 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -371,7 +371,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="punishInvalidMessage,GossipSub,PubSubPeer,Message" class="tohide"> <div id="punishInvalidMessage,GossipSub,PubSubPeer,Message" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#punishInvalidMessage%2CGossipSub%2CPubSubPeer%2CMessage"><span class="Identifier">punishInvalidMessage</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span> <dt><pre><span class="Keyword">proc</span> <a href="#punishInvalidMessage%2CGossipSub%2CPubSubPeer%2CMessage"><span class="Identifier">punishInvalidMessage</span></a><span class="Other">(</span><span class="Identifier">g</span><span class="Other">:</span> <a href="types.html#GossipSub"><span class="Identifier">GossipSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="../pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <a href="../rpc/messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span>
<span class="Identifier">void</span><span class="Other">]</span> {.<span class="Identifier">stackTrace</span><span class="Other">:</span> <span class="DecNumber">false</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">void</span><span class="Other">]</span> {.<span class="Identifier">stackTrace</span><span class="Other">:</span> <span class="DecNumber">false</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -447,7 +447,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:51 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -397,8 +397,8 @@ class="link-seesrc" target="_blank">Source</a>
<span class="Identifier">subscribedDirectPeers</span><span class="Operator">*</span><span class="Other">:</span> <a href="../peertable.html#PeerTable"><span class="Identifier">PeerTable</span></a> <span class="Identifier">subscribedDirectPeers</span><span class="Operator">*</span><span class="Other">:</span> <a href="../peertable.html#PeerTable"><span class="Identifier">PeerTable</span></a>
<span class="Identifier">backingOff</span><span class="Operator">*</span><span class="Other">:</span> <a href="types.html#BackoffTable"><span class="Identifier">BackoffTable</span></a> <span class="Identifier">backingOff</span><span class="Operator">*</span><span class="Other">:</span> <a href="types.html#BackoffTable"><span class="Identifier">BackoffTable</span></a>
<span class="Identifier">lastFanoutPubSub</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">,</span> <span class="Identifier">Moment</span><span class="Other">]</span> <span class="Identifier">lastFanoutPubSub</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">,</span> <span class="Identifier">Moment</span><span class="Other">]</span>
<span class="Identifier">gossip</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">,</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">ControlIHave</span><span class="Other">]</span><span class="Other">]</span> <span class="Identifier">gossip</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">,</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="../rpc/messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a><span class="Other">]</span><span class="Other">]</span>
<span class="Identifier">control</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">,</span> <span class="Identifier">ControlMessage</span><span class="Other">]</span> <span class="Identifier">control</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">,</span> <a href="../rpc/messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a><span class="Other">]</span>
<span class="Identifier">mcache</span><span class="Operator">*</span><span class="Other">:</span> <a href="../mcache.html#MCache"><span class="Identifier">MCache</span></a> <span class="Identifier">mcache</span><span class="Operator">*</span><span class="Other">:</span> <a href="../mcache.html#MCache"><span class="Identifier">MCache</span></a>
<span class="Identifier">validationSeen</span><span class="Operator">*</span><span class="Other">:</span> <a href="types.html#ValidationSeenTable"><span class="Identifier">ValidationSeenTable</span></a> <span class="Identifier">validationSeen</span><span class="Operator">*</span><span class="Other">:</span> <a href="types.html#ValidationSeenTable"><span class="Identifier">ValidationSeenTable</span></a>
<span class="Identifier">heartbeatFut</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span><span class="Identifier">void</span><span class="Other">]</span> <span class="Identifier">heartbeatFut</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span><span class="Identifier">void</span><span class="Other">]</span>
@ -780,7 +780,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:51 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -297,7 +297,7 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="MCache" class="tohide"> <div id="MCache" class="tohide">
<dt><pre><a href="mcache.html#MCache"><span class="Identifier">MCache</span></a> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <span class="Identifier">RootObj</span> <dt><pre><a href="mcache.html#MCache"><span class="Identifier">MCache</span></a> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <span class="Identifier">RootObj</span>
<span class="Identifier">msgs</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">,</span> <span class="Identifier">Message</span><span class="Other">]</span> <span class="Identifier">msgs</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">,</span> <a href="rpc/messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">]</span>
<span class="Identifier">history</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">seq</span><span class="Other">[</span><a href="mcache.html#CacheEntry"><span class="Identifier">CacheEntry</span></a><span class="Other">]</span><span class="Other">]</span> <span class="Identifier">history</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">seq</span><span class="Other">[</span><a href="mcache.html#CacheEntry"><span class="Identifier">CacheEntry</span></a><span class="Other">]</span><span class="Other">]</span>
<span class="Identifier">windowSize</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Natural</span> <span class="Identifier">windowSize</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Natural</span>
</pre></dt> </pre></dt>
@ -329,7 +329,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="get,MCache,MessageId" class="tohide"> <div id="get,MCache,MessageId" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#get%2CMCache%2CMessageId"><span class="Identifier">get</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="mcache.html#MCache"><span class="Identifier">MCache</span></a><span class="Other">;</span> <span class="Identifier">mid</span><span class="Other">:</span> <a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><span class="Identifier">Message</span><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">func</span> <a href="#get%2CMCache%2CMessageId"><span class="Identifier">get</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="mcache.html#MCache"><span class="Identifier">MCache</span></a><span class="Other">;</span> <span class="Identifier">mid</span><span class="Other">:</span> <a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><a href="rpc/messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -353,7 +353,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="put,MCache,MessageId,Message" class="tohide"> <div id="put,MCache,MessageId,Message" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#put%2CMCache%2CMessageId%2CMessage"><span class="Identifier">put</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="mcache.html#MCache"><span class="Identifier">MCache</span></a><span class="Other">;</span> <span class="Identifier">msgId</span><span class="Other">:</span> <a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">func</span> <a href="#put%2CMCache%2CMessageId%2CMessage"><span class="Identifier">put</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="mcache.html#MCache"><span class="Identifier">MCache</span></a><span class="Other">;</span> <span class="Identifier">msgId</span><span class="Other">:</span> <a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <a href="rpc/messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -393,7 +393,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="section" id="19"> <div class="section" id="19">
<h1><a class="toc-backref" href="#19">Exports</a></h1> <h1><a class="toc-backref" href="#19">Exports</a></h1>
<dl class="item"> <dl class="item">
<a href="rpc/messages.html#PeerInfoMsg"><span class="Identifier">PeerInfoMsg</span></a>, <a href="rpc/messages.html#byteSize,seq[ControlIHave]"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#shortLog,ControlIHave"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#SubOpts"><span class="Identifier">SubOpts</span></a>, <a href="rpc/messages.html#byteSize,seq[ControlIWant]"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#shortLog,Message"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#byteSize,seq[Message]"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a>, <a href="rpc/messages.html#byteSize,RPCMsg"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#byteSize,Message"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#withSubs,typeRPCMsg,openArray[string],bool"><span class="Identifier">withSubs</span></a>, <a href="rpc/messages.html#shortLog,ControlMessage"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#shortLog,RPCMsg"><span class="Identifier">shortLog</span></a> <a href="rpc/messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a>, <a href="rpc/messages.html#shortLog,ControlIHave"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#ControlGraft"><span class="Identifier">ControlGraft</span></a>, <a href="rpc/messages.html#shortLog,Message"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a>, <a href="rpc/messages.html#shortLog,RPCMsg"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#byteSize,seq[ControlIHave]"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a>, <a href="rpc/messages.html#byteSize,Message"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#withSubs,typeRPCMsg,openArray[string],bool"><span class="Identifier">withSubs</span></a>, <a href="rpc/messages.html#shortLog,ControlGraft"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#shortLog,ControlPrune"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#PeerInfoMsg"><span class="Identifier">PeerInfoMsg</span></a>, <a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a>, <a href="rpc/messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a>, <a href="rpc/messages.html#byteSize,RPCMsg"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#SubOpts"><span class="Identifier">SubOpts</span></a>, <a href="rpc/messages.html#byteSize,seq[ControlIWant]"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a>, <a href="rpc/messages.html#Message"><span class="Identifier">Message</span></a>, <a href="rpc/messages.html#byteSize,seq[Message]"><span class="Identifier">byteSize</span></a>, <a href="rpc/messages.html#shortLog,ControlIWant"><span class="Identifier">shortLog</span></a>, <a href="rpc/messages.html#shortLog,ControlMessage"><span class="Identifier">shortLog</span></a>
</dl></div> </dl></div>
</div> </div>
@ -403,7 +403,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:51 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -370,7 +370,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -360,6 +360,11 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#unsubscribeAll%2CPubSub%2Cstring" <li><a class="reference" href="#unsubscribeAll%2CPubSub%2Cstring"
title="unsubscribeAll(p: PubSub; topic: string)">unsubscribeAll(p: PubSub; topic: string)</a></li> title="unsubscribeAll(p: PubSub; topic: string)">unsubscribeAll(p: PubSub; topic: string)</a></li>
</ul>
<ul class="simple nested-toc-section">updateMetrics
<li><a class="reference" href="#updateMetrics%2CPubSub%2CRPCMsg"
title="updateMetrics(p: PubSub; rpcMsg: RPCMsg)">updateMetrics(p: PubSub; rpcMsg: RPCMsg)</a></li>
</ul> </ul>
</ul> </ul>
@ -664,7 +669,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="MsgIdProvider" class="tohide"> <div id="MsgIdProvider" class="tohide">
<dt><pre><a href="pubsub.html#MsgIdProvider"><span class="Identifier">MsgIdProvider</span></a> {.<span class="Identifier">public</span>.} <span class="Other">=</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">m</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Result</span><span class="Other">[</span><a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">,</span> <a href="errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a><span class="Other">]</span> {. <dt><pre><a href="pubsub.html#MsgIdProvider"><span class="Identifier">MsgIdProvider</span></a> {.<span class="Identifier">public</span>.} <span class="Other">=</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">m</span><span class="Other">:</span> <a href="rpc/messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Result</span><span class="Other">[</span><a href="rpc/messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">,</span> <a href="errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a><span class="Other">]</span> {.
<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</span></span>.}</pre></dt> <span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</span></span>.}</pre></dt>
<dd> <dd>
@ -752,7 +757,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="ValidatorHandler" class="tohide"> <div id="ValidatorHandler" class="tohide">
<dt><pre><a href="pubsub.html#ValidatorHandler"><span class="Identifier">ValidatorHandler</span></a> {.<span class="Identifier">public</span>.} <span class="Other">=</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">message</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span> <dt><pre><a href="pubsub.html#ValidatorHandler"><span class="Identifier">ValidatorHandler</span></a> {.<span class="Identifier">public</span>.} <span class="Other">=</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">message</span><span class="Other">:</span> <a href="rpc/messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span>
<a href="errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <a href="errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -812,7 +817,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="broadcast,PubSub,auto,RPCMsg,bool" class="tohide"> <div id="broadcast,PubSub,auto,RPCMsg,bool" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#broadcast%2CPubSub%2Cauto%2CRPCMsg%2Cbool"><span class="Identifier">broadcast</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">sendPeers</span><span class="Other">:</span> <span class="Identifier">auto</span><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">RPCMsg</span><span class="Other">;</span> <span class="Identifier">isHighPriority</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {. <dt><pre><span class="Keyword">proc</span> <a href="#broadcast%2CPubSub%2Cauto%2CRPCMsg%2Cbool"><span class="Identifier">broadcast</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">sendPeers</span><span class="Other">:</span> <span class="Identifier">auto</span><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">;</span> <span class="Identifier">isHighPriority</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -880,8 +885,8 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="send,PubSub,PubSubPeer,RPCMsg,bool" class="tohide"> <div id="send,PubSub,PubSubPeer,RPCMsg,bool" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#send%2CPubSub%2CPubSubPeer%2CRPCMsg%2Cbool"><span class="Identifier">send</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">RPCMsg</span><span class="Other">;</span> <span class="Identifier">isHighPriority</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {. <dt><pre><span class="Keyword">proc</span> <a href="#send%2CPubSub%2CPubSubPeer%2CRPCMsg%2Cbool"><span class="Identifier">send</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">;</span> <span class="Identifier">isHighPriority</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
<p>This procedure attempts to send a <tt class="docutils literal"><span class="pre"><span class="Identifier">msg</span></span></tt> (of type <tt class="docutils literal"><span class="pre"><span class="Identifier">RPCMsg</span></span></tt>) to the specified remote peer in the PubSub network.</p> <p>This procedure attempts to send a <tt class="docutils literal"><span class="pre"><span class="Identifier">msg</span></span></tt> (of type <tt class="docutils literal"><span class="pre"><span class="Identifier">RPCMsg</span></span></tt>) to the specified remote peer in the PubSub network.</p>
@ -902,7 +907,8 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="sendSubs,PubSub,PubSubPeer,openArray[string],bool" class="tohide"> <div id="sendSubs,PubSub,PubSubPeer,openArray[string],bool" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#sendSubs%2CPubSub%2CPubSubPeer%2CopenArray%5Bstring%5D%2Cbool"><span class="Identifier">sendSubs</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">topics</span><span class="Other">:</span> <span class="Identifier">openArray</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">]</span><span class="Other">;</span> <dt><pre><span class="Keyword">proc</span> <a href="#sendSubs%2CPubSub%2CPubSubPeer%2CopenArray%5Bstring%5D%2Cbool"><span class="Identifier">sendSubs</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">topics</span><span class="Other">:</span> <span class="Identifier">openArray</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">]</span><span class="Other">;</span>
<span class="Identifier">subscribe</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">subscribe</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
send subscriptions to remote peer send subscriptions to remote peer
@ -933,7 +939,7 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="unsubscribe,PubSub,string,TopicHandler" class="tohide"> <div id="unsubscribe,PubSub,string,TopicHandler" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#unsubscribe%2CPubSub%2Cstring%2CTopicHandler"><span class="Identifier">unsubscribe</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">handler</span><span class="Other">:</span> <a href="pubsub.html#TopicHandler"><span class="Identifier">TopicHandler</span></a><span class="Other">)</span> {.<span class="Identifier">public</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#unsubscribe%2CPubSub%2Cstring%2CTopicHandler"><span class="Identifier">unsubscribe</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">handler</span><span class="Other">:</span> <a href="pubsub.html#TopicHandler"><span class="Identifier">TopicHandler</span></a><span class="Other">)</span> {.<span class="Identifier">public</span><span class="Other">,</span>
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
unsubscribe from a <tt class="docutils literal"><span class="pre">topic</span></tt> string unsubscribe from a <tt class="docutils literal"><span class="pre">topic</span></tt> string
@ -946,7 +952,7 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="unsubscribe,PubSub,openArray[TopicPair]" class="tohide"> <div id="unsubscribe,PubSub,openArray[TopicPair]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#unsubscribe%2CPubSub%2CopenArray%5BTopicPair%5D"><span class="Identifier">unsubscribe</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">topics</span><span class="Other">:</span> <span class="Identifier">openArray</span><span class="Other">[</span><a href="pubsub.html#TopicPair"><span class="Identifier">TopicPair</span></a><span class="Other">]</span><span class="Other">)</span> {.<span class="Identifier">public</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#unsubscribe%2CPubSub%2CopenArray%5BTopicPair%5D"><span class="Identifier">unsubscribe</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">topics</span><span class="Other">:</span> <span class="Identifier">openArray</span><span class="Other">[</span><a href="pubsub.html#TopicPair"><span class="Identifier">TopicPair</span></a><span class="Other">]</span><span class="Other">)</span> {.<span class="Identifier">public</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
unsubscribe from a list of <tt class="docutils literal"><span class="pre">topic</span></tt> handlers unsubscribe from a list of <tt class="docutils literal"><span class="pre">topic</span></tt> handlers
@ -968,6 +974,18 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/pubsub.nim#L451" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/pubsub.nim#L451" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="updateMetrics,PubSub,RPCMsg" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#updateMetrics%2CPubSub%2CRPCMsg"><span class="Identifier">updateMetrics</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">rpcMsg</span><span class="Other">:</span> <a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/pubsub.nim#L240"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/pubsub.nim#L240" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
@ -1036,7 +1054,7 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="onPubSubPeerEvent.e,PubSub,PubSubPeer,PubSubPeerEvent" class="tohide"> <div id="onPubSubPeerEvent.e,PubSub,PubSubPeer,PubSubPeerEvent" class="tohide">
<dt><pre><span class="Keyword">method</span> <a href="#onPubSubPeerEvent.e%2CPubSub%2CPubSubPeer%2CPubSubPeerEvent"><span class="Identifier">onPubSubPeerEvent</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">event</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeerEvent"><span class="Identifier">PubSubPeerEvent</span></a><span class="Other">)</span> {. <dt><pre><span class="Keyword">method</span> <a href="#onPubSubPeerEvent.e%2CPubSub%2CPubSubPeer%2CPubSubPeerEvent"><span class="Identifier">onPubSubPeerEvent</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">event</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeerEvent"><span class="Identifier">PubSubPeerEvent</span></a><span class="Other">)</span> {.
<span class="Identifier">base</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">base</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -1049,7 +1067,7 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="onTopicSubscription.e,PubSub,string,bool" class="tohide"> <div id="onTopicSubscription.e,PubSub,string,bool" class="tohide">
<dt><pre><span class="Keyword">method</span> <a href="#onTopicSubscription.e%2CPubSub%2Cstring%2Cbool"><span class="Identifier">onTopicSubscription</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">subscribed</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {.<span class="Identifier">base</span><span class="Other">,</span> <dt><pre><span class="Keyword">method</span> <a href="#onTopicSubscription.e%2CPubSub%2Cstring%2Cbool"><span class="Identifier">onTopicSubscription</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">subscribed</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {.<span class="Identifier">base</span><span class="Other">,</span>
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -1130,7 +1148,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="validate.e,PubSub,Message" class="tohide"> <div id="validate.e,PubSub,Message" class="tohide">
<dt><pre><span class="Keyword">method</span> <a href="#validate.e%2CPubSub%2CMessage"><span class="Identifier">validate</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">message</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span><a href="errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a><span class="Other">]</span> {.<span class="Identifier">base</span><span class="Other">,</span> <dt><pre><span class="Keyword">method</span> <a href="#validate.e%2CPubSub%2CMessage"><span class="Identifier">validate</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsub.html#PubSub"><span class="Identifier">PubSub</span></a><span class="Other">;</span> <span class="Identifier">message</span><span class="Other">:</span> <a href="rpc/messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Future</span><span class="Other">[</span><a href="errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a><span class="Other">]</span> {.<span class="Identifier">base</span><span class="Other">,</span>
<span class="Identifier">stackTrace</span><span class="Other">:</span> <span class="DecNumber">false</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">stackTrace</span><span class="Other">:</span> <span class="DecNumber">false</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -1158,7 +1176,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -321,6 +321,11 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#recvObservers%2CPubSubPeer%2CRPCMsg" <li><a class="reference" href="#recvObservers%2CPubSubPeer%2CRPCMsg"
title="recvObservers(p: PubSubPeer; msg: var RPCMsg)">recvObservers(p: PubSubPeer; msg: var RPCMsg)</a></li> title="recvObservers(p: PubSubPeer; msg: var RPCMsg)">recvObservers(p: PubSubPeer; msg: var RPCMsg)</a></li>
</ul>
<ul class="simple nested-toc-section">send
<li><a class="reference" href="#send%2CPubSubPeer%2CRPCMsg%2Cbool%2Cbool"
title="send(p: PubSubPeer; msg: RPCMsg; anonymize: bool; isHighPriority: bool)">send(p: PubSubPeer; msg: RPCMsg; anonymize: bool; isHighPriority: bool)</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">sendEncoded <ul class="simple nested-toc-section">sendEncoded
<li><a class="reference" href="#sendEncoded%2CPubSubPeer%2Cseq%5Bbyte%5D%2Cbool" <li><a class="reference" href="#sendEncoded%2CPubSubPeer%2Cseq%5Bbyte%5D%2Cbool"
@ -428,8 +433,8 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="PubSubObserver" class="tohide"> <div id="PubSubObserver" class="tohide">
<dt><pre><a href="pubsubpeer.html#PubSubObserver"><span class="Identifier">PubSubObserver</span></a> <span class="Other">=</span> <span class="Keyword">ref</span> <span class="Keyword">object</span> <dt><pre><a href="pubsubpeer.html#PubSubObserver"><span class="Identifier">PubSubObserver</span></a> <span class="Other">=</span> <span class="Keyword">ref</span> <span class="Keyword">object</span>
<span class="Identifier">onRecv</span><span class="Operator">*</span><span class="Other">:</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msgs</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">RPCMsg</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.} <span class="Identifier">onRecv</span><span class="Operator">*</span><span class="Other">:</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msgs</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}
<span class="Identifier">onSend</span><span class="Operator">*</span><span class="Other">:</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msgs</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">RPCMsg</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.} <span class="Identifier">onSend</span><span class="Operator">*</span><span class="Other">:</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">peer</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msgs</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}
</pre></dt> </pre></dt>
<dd> <dd>
@ -671,7 +676,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="recvObservers,PubSubPeer,RPCMsg" class="tohide"> <div id="recvObservers,PubSubPeer,RPCMsg" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#recvObservers%2CPubSubPeer%2CRPCMsg"><span class="Identifier">recvObservers</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">RPCMsg</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#recvObservers%2CPubSubPeer%2CRPCMsg"><span class="Identifier">recvObservers</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -681,6 +686,27 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/pubsubpeer.nim#L137" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/pubsubpeer.nim#L137" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="send,PubSubPeer,RPCMsg,bool,bool" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#send%2CPubSubPeer%2CRPCMsg%2Cbool%2Cbool"><span class="Identifier">send</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="pubsubpeer.html#PubSubPeer"><span class="Identifier">PubSubPeer</span></a><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <a href="rpc/messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">;</span> <span class="Identifier">anonymize</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">;</span> <span class="Identifier">isHighPriority</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">,</span> <span class="Identifier">TimeEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
<p>Asynchronously sends an <tt class="docutils literal"><span class="pre"><span class="Identifier">RPCMsg</span></span></tt> to a specified <tt class="docutils literal"><span class="pre"><span class="Identifier">PubSubPeer</span></span></tt> with an option for anonymization.</p>
<p>Parameters:</p>
<ul class="simple"><li><tt class="docutils literal"><span class="pre"><span class="Identifier">p</span></span></tt>: The <tt class="docutils literal"><span class="pre"><span class="Identifier">PubSubPeer</span></span></tt> instance to which the message is to be sent.</li>
<li><tt class="docutils literal"><span class="pre"><span class="Identifier">msg</span></span></tt>: The <tt class="docutils literal"><span class="pre"><span class="Identifier">RPCMsg</span></span></tt> instance representing the message to be sent.</li>
<li><tt class="docutils literal"><span class="pre"><span class="Identifier">anonymize</span></span></tt>: A boolean flag indicating whether the message should be sent with anonymization.</li>
<li><tt class="docutils literal"><span class="pre"><span class="Identifier">isHighPriority</span></span></tt>: A boolean flag indicating whether the message should be treated as high priority.</li>
</ul>
<p>High priority messages are sent immediately, while low priority messages are queued and sent only after all high priority messages have been sent.</p>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/pubsubpeer.nim#L380"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/pubsubpeer.nim#L380" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="sendEncoded,PubSubPeer,seq[byte],bool" class="tohide"> <div id="sendEncoded,PubSubPeer,seq[byte],bool" class="tohide">
@ -760,7 +786,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -205,7 +205,12 @@ window.addEventListener("DOMContentLoaded", main2);
<li> <li>
<a class="reference reference-toplevel" href="#12" id="62">Procs</a> <a class="reference reference-toplevel" href="#12" id="62">Procs</a>
<ul class="simple simple-toc-section"> <ul class="simple simple-toc-section">
<ul class="simple nested-toc-section">init <ul class="simple nested-toc-section">defaultMsgIdProvider
<li><a class="reference" href="#defaultMsgIdProvider%2CMessage"
title="defaultMsgIdProvider(m: Message): Result[MessageId, ValidationResult]">defaultMsgIdProvider(m: Message): Result[MessageId, ValidationResult]</a></li>
</ul>
<ul class="simple nested-toc-section">init
<li><a class="reference" href="#init%2CtypeMessage%2COption%5BPeerInfo%5D%2Cseq%5Bbyte%5D%2Cstring%2COption%5Buint64%5D%2Cbool" <li><a class="reference" href="#init%2CtypeMessage%2COption%5BPeerInfo%5D%2Cseq%5Bbyte%5D%2Cstring%2COption%5Buint64%5D%2Cbool"
title="init(T: type Message; peer: Option[PeerInfo]; data: seq[byte]; topic: string; title="init(T: type Message; peer: Option[PeerInfo]; data: seq[byte]; topic: string;
seqno: Option[uint64]; sign: bool = true): Message">init(T: type Message; peer: Option[PeerInfo]; data: seq[byte]; topic: string; seqno: Option[uint64]; sign: bool = true): Message">init(T: type Message; peer: Option[PeerInfo]; data: seq[byte]; topic: string;
@ -220,6 +225,11 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#sign%2CMessage%2CPrivateKey" <li><a class="reference" href="#sign%2CMessage%2CPrivateKey"
title="sign(msg: Message; privateKey: PrivateKey): CryptoResult[seq[byte]]">sign(msg: Message; privateKey: PrivateKey): CryptoResult[seq[byte]]</a></li> title="sign(msg: Message; privateKey: PrivateKey): CryptoResult[seq[byte]]">sign(msg: Message; privateKey: PrivateKey): CryptoResult[seq[byte]]</a></li>
</ul>
<ul class="simple nested-toc-section">verify
<li><a class="reference" href="#verify%2CMessage"
title="verify(m: Message): bool">verify(m: Message): bool</a></li>
</ul> </ul>
</ul> </ul>
@ -251,10 +261,23 @@ class="link-seesrc" target="_blank">Source</a>
<div class="section" id="12"> <div class="section" id="12">
<h1><a class="toc-backref" href="#12">Procs</a></h1> <h1><a class="toc-backref" href="#12">Procs</a></h1>
<dl class="item"> <dl class="item">
<div id="defaultMsgIdProvider,Message" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#defaultMsgIdProvider%2CMessage"><span class="Identifier">defaultMsgIdProvider</span></a><span class="Other">(</span><span class="Identifier">m</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Result</span><span class="Other">[</span><a href="messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">,</span> <a href="../errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a><span class="Other">]</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/message.nim#L31"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/message.nim#L31" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="init,typeMessage,Option[PeerInfo],seq[byte],string,Option[uint64],bool" class="tohide"> <div id="init,typeMessage,Option[PeerInfo],seq[byte],string,Option[uint64],bool" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#init%2CtypeMessage%2COption%5BPeerInfo%5D%2Cseq%5Bbyte%5D%2Cstring%2COption%5Buint64%5D%2Cbool"><span class="Identifier">init</span></a><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Keyword">type</span> <span class="Identifier">Message</span><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><a href="../../../peerinfo.html#PeerInfo"><span class="Identifier">PeerInfo</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">data</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">;</span> <dt><pre><span class="Keyword">proc</span> <a href="#init%2CtypeMessage%2COption%5BPeerInfo%5D%2Cseq%5Bbyte%5D%2Cstring%2COption%5Buint64%5D%2Cbool"><span class="Identifier">init</span></a><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Keyword">type</span> <span class="Identifier">Message</span><span class="Other">;</span> <span class="Identifier">peer</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><a href="../../../peerinfo.html#PeerInfo"><span class="Identifier">PeerInfo</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">data</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">;</span>
<span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">seqno</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><span class="Identifier">uint64</span><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">sign</span><span class="Other">:</span> <span class="Identifier">bool</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Message</span> {. <span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">seqno</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><span class="Identifier">uint64</span><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">sign</span><span class="Other">:</span> <span class="Identifier">bool</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">)</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><a href="../../../errors.html#LPError"><span class="Identifier">LPError</span></a><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><a href="../../../errors.html#LPError"><span class="Identifier">LPError</span></a><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -267,8 +290,8 @@ class="link-seesrc" target="_blank">Source</a>
</div> </div>
<div id="init,typeMessage,PeerId,seq[byte],string,Option[uint64]" class="tohide"> <div id="init,typeMessage,PeerId,seq[byte],string,Option[uint64]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#init%2CtypeMessage%2CPeerId%2Cseq%5Bbyte%5D%2Cstring%2COption%5Buint64%5D"><span class="Identifier">init</span></a><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Keyword">type</span> <span class="Identifier">Message</span><span class="Other">;</span> <span class="Identifier">peerId</span><span class="Other">:</span> <a href="../../../peerid.html#PeerId"><span class="Identifier">PeerId</span></a><span class="Other">;</span> <span class="Identifier">data</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <dt><pre><span class="Keyword">proc</span> <a href="#init%2CtypeMessage%2CPeerId%2Cseq%5Bbyte%5D%2Cstring%2COption%5Buint64%5D"><span class="Identifier">init</span></a><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Keyword">type</span> <span class="Identifier">Message</span><span class="Other">;</span> <span class="Identifier">peerId</span><span class="Other">:</span> <a href="../../../peerid.html#PeerId"><span class="Identifier">PeerId</span></a><span class="Other">;</span> <span class="Identifier">data</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">topic</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span>
<span class="Identifier">seqno</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><span class="Identifier">uint64</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Message</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><a href="../../../errors.html#LPError"><span class="Identifier">LPError</span></a><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">seqno</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><span class="Identifier">uint64</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><a href="../../../errors.html#LPError"><span class="Identifier">LPError</span></a><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -280,7 +303,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="sign,Message,PrivateKey" class="tohide"> <div id="sign,Message,PrivateKey" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#sign%2CMessage%2CPrivateKey"><span class="Identifier">sign</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">;</span> <span class="Identifier">privateKey</span><span class="Other">:</span> <a href="../../../crypto/crypto.html#PrivateKey"><span class="Identifier">PrivateKey</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../crypto/crypto.html#CryptoResult"><span class="Identifier">CryptoResult</span></a><span class="Other">[</span><span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">]</span> {. <dt><pre><span class="Keyword">proc</span> <a href="#sign%2CMessage%2CPrivateKey"><span class="Identifier">sign</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">;</span> <span class="Identifier">privateKey</span><span class="Other">:</span> <a href="../../../crypto/crypto.html#PrivateKey"><span class="Identifier">PrivateKey</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../crypto/crypto.html#CryptoResult"><span class="Identifier">CryptoResult</span></a><span class="Other">[</span><span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">]</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -290,6 +313,18 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/message.nim#L38" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/message.nim#L38" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="verify,Message" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#verify%2CMessage"><span class="Identifier">verify</span></a><span class="Other">(</span><span class="Identifier">m</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">bool</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/message.nim#L41"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/message.nim#L41" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
@ -297,7 +332,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="section" id="19"> <div class="section" id="19">
<h1><a class="toc-backref" href="#19">Exports</a></h1> <h1><a class="toc-backref" href="#19">Exports</a></h1>
<dl class="item"> <dl class="item">
<a href="../errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a>, <a href="messages.html#PeerInfoMsg"><span class="Identifier">PeerInfoMsg</span></a>, <a href="messages.html#byteSize,seq[ControlIHave]"><span class="Identifier">byteSize</span></a>, <a href="messages.html#shortLog,ControlIHave"><span class="Identifier">shortLog</span></a>, <a href="messages.html#SubOpts"><span class="Identifier">SubOpts</span></a>, <a href="messages.html#byteSize,seq[ControlIWant]"><span class="Identifier">byteSize</span></a>, <a href="messages.html#shortLog,Message"><span class="Identifier">shortLog</span></a>, <a href="messages.html#byteSize,seq[Message]"><span class="Identifier">byteSize</span></a>, <a href="messages.html#MessageId"><span class="Identifier">MessageId</span></a>, <a href="messages.html#byteSize,RPCMsg"><span class="Identifier">byteSize</span></a>, <a href="messages.html#byteSize,Message"><span class="Identifier">byteSize</span></a>, <a href="messages.html#withSubs,typeRPCMsg,openArray[string],bool"><span class="Identifier">withSubs</span></a>, <a href="messages.html#shortLog,ControlMessage"><span class="Identifier">shortLog</span></a>, <a href="messages.html#shortLog,RPCMsg"><span class="Identifier">shortLog</span></a> <a href="../errors.html#ValidationResult"><span class="Identifier">ValidationResult</span></a>, <a href="messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a>, <a href="messages.html#shortLog,ControlIHave"><span class="Identifier">shortLog</span></a>, <a href="messages.html#ControlGraft"><span class="Identifier">ControlGraft</span></a>, <a href="messages.html#shortLog,Message"><span class="Identifier">shortLog</span></a>, <a href="messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a>, <a href="messages.html#shortLog,RPCMsg"><span class="Identifier">shortLog</span></a>, <a href="messages.html#byteSize,seq[ControlIHave]"><span class="Identifier">byteSize</span></a>, <a href="messages.html#MessageId"><span class="Identifier">MessageId</span></a>, <a href="messages.html#byteSize,Message"><span class="Identifier">byteSize</span></a>, <a href="messages.html#withSubs,typeRPCMsg,openArray[string],bool"><span class="Identifier">withSubs</span></a>, <a href="messages.html#shortLog,ControlGraft"><span class="Identifier">shortLog</span></a>, <a href="messages.html#shortLog,ControlPrune"><span class="Identifier">shortLog</span></a>, <a href="messages.html#PeerInfoMsg"><span class="Identifier">PeerInfoMsg</span></a>, <a href="messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a>, <a href="messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a>, <a href="messages.html#byteSize,RPCMsg"><span class="Identifier">byteSize</span></a>, <a href="messages.html#SubOpts"><span class="Identifier">SubOpts</span></a>, <a href="messages.html#byteSize,seq[ControlIWant]"><span class="Identifier">byteSize</span></a>, <a href="messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a>, <a href="messages.html#Message"><span class="Identifier">Message</span></a>, <a href="messages.html#byteSize,seq[Message]"><span class="Identifier">byteSize</span></a>, <a href="messages.html#shortLog,ControlIWant"><span class="Identifier">shortLog</span></a>, <a href="messages.html#shortLog,ControlMessage"><span class="Identifier">shortLog</span></a>
</dl></div> </dl></div>
</div> </div>
@ -307,7 +342,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -202,6 +202,59 @@ window.addEventListener("DOMContentLoaded", main2);
</ul> </ul>
</li> </li>
<li>
<a class="reference reference-toplevel" href="#7" id="57">Types</a>
<ul class="simple simple-toc-section">
<li><a class="reference" href="#ControlGraft"
title="ControlGraft = object
topicId*: string">ControlGraft</a></li>
<li><a class="reference" href="#ControlIHave"
title="ControlIHave = object
topicId*: string
messageIds*: seq[MessageId]">ControlIHave</a></li>
<li><a class="reference" href="#ControlIWant"
title="ControlIWant = object
messageIds*: seq[MessageId]">ControlIWant</a></li>
<li><a class="reference" href="#ControlMessage"
title="ControlMessage = object
ihave*: seq[ControlIHave]
iwant*: seq[ControlIWant]
graft*: seq[ControlGraft]
prune*: seq[ControlPrune]
idontwant*: seq[ControlIWant]">ControlMessage</a></li>
<li><a class="reference" href="#ControlPrune"
title="ControlPrune = object
topicId*: string
peers*: seq[PeerInfoMsg]
backoff*: uint64">ControlPrune</a></li>
<li><a class="reference" href="#Message"
title="Message = object
fromPeer*: PeerId
data*: seq[byte]
seqno*: seq[byte]
topicId*: string
signature*: seq[byte]
key*: seq[byte]">Message</a></li>
<li><a class="reference" href="#MessageId"
title="MessageId = seq[byte]">MessageId</a></li>
<li><a class="reference" href="#PeerInfoMsg"
title="PeerInfoMsg = object
peerId*: PeerId
signedPeerRecord*: seq[byte]">PeerInfoMsg</a></li>
<li><a class="reference" href="#RPCMsg"
title="RPCMsg = object
subscriptions*: seq[SubOpts]
messages*: seq[Message]
control*: Option[ControlMessage]
ping*: seq[byte]
pong*: seq[byte]">RPCMsg</a></li>
<li><a class="reference" href="#SubOpts"
title="SubOpts = object
subscribe*: bool
topic*: string">SubOpts</a></li>
</ul>
</li>
<li> <li>
<a class="reference reference-toplevel" href="#12" id="62">Procs</a> <a class="reference reference-toplevel" href="#12" id="62">Procs</a>
<ul class="simple simple-toc-section"> <ul class="simple simple-toc-section">
@ -225,8 +278,19 @@ window.addEventListener("DOMContentLoaded", main2);
title="shortLog(m: RPCMsg): auto">shortLog(m: RPCMsg): auto</a></li> title="shortLog(m: RPCMsg): auto">shortLog(m: RPCMsg): auto</a></li>
<li><a class="reference" href="#shortLog%2CMessage" <li><a class="reference" href="#shortLog%2CMessage"
title="shortLog(msg: Message): auto">shortLog(msg: Message): auto</a></li> title="shortLog(msg: Message): auto">shortLog(msg: Message): auto</a></li>
<li><a class="reference" href="#shortLog%2CControlGraft"
title="shortLog(s: ControlGraft): auto">shortLog(s: ControlGraft): auto</a></li>
<li><a class="reference" href="#shortLog%2CControlIHave" <li><a class="reference" href="#shortLog%2CControlIHave"
title="shortLog(s: ControlIHave): auto">shortLog(s: ControlIHave): auto</a></li> title="shortLog(s: ControlIHave): auto">shortLog(s: ControlIHave): auto</a></li>
<li><a class="reference" href="#shortLog%2CControlIWant"
title="shortLog(s: ControlIWant): auto">shortLog(s: ControlIWant): auto</a></li>
<li><a class="reference" href="#shortLog%2CControlPrune"
title="shortLog(s: ControlPrune): auto">shortLog(s: ControlPrune): auto</a></li>
</ul>
<ul class="simple nested-toc-section">withSubs
<li><a class="reference" href="#withSubs%2CtypeRPCMsg%2CopenArray%5Bstring%5D%2Cbool"
title="withSubs(T: type RPCMsg; topics: openArray[string]; subscribe: bool): T:type">withSubs(T: type RPCMsg; topics: openArray[string]; subscribe: bool): T:type</a></li>
</ul> </ul>
@ -249,12 +313,173 @@ class="link-seesrc" target="_blank">Source</a>
<h1><a class="toc-backref" href="#6">Imports</a></h1> <h1><a class="toc-backref" href="#6">Imports</a></h1>
<dl class="item"> <dl class="item">
<a class="reference external" href="../../../peerid.html">../../../peerid</a>, <a class="reference external" href="../../../routing_record.html">../../../routing_record</a>, <a class="reference external" href="../../../utility.html">../../../utility</a> <a class="reference external" href="../../../peerid.html">../../../peerid</a>, <a class="reference external" href="../../../routing_record.html">../../../routing_record</a>, <a class="reference external" href="../../../utility.html">../../../utility</a>
</dl></div>
<div class="section" id="7">
<h1><a class="toc-backref" href="#7">Types</a></h1>
<dl class="item">
<div id="ControlGraft" class="tohide">
<dt><pre><a href="messages.html#ControlGraft"><span class="Identifier">ControlGraft</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">topicId</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">string</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L62"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L62" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="ControlIHave" class="tohide">
<dt><pre><a href="messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">topicId</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">string</span>
<span class="Identifier">messageIds</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">]</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L55"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L55" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="ControlIWant" class="tohide">
<dt><pre><a href="messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">messageIds</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#MessageId"><span class="Identifier">MessageId</span></a><span class="Other">]</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L59"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L59" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="ControlMessage" class="tohide">
<dt><pre><a href="messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">ihave</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a><span class="Other">]</span>
<span class="Identifier">iwant</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a><span class="Other">]</span>
<span class="Identifier">graft</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#ControlGraft"><span class="Identifier">ControlGraft</span></a><span class="Other">]</span>
<span class="Identifier">prune</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a><span class="Other">]</span>
<span class="Identifier">idontwant</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a><span class="Other">]</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L48"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L48" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="ControlPrune" class="tohide">
<dt><pre><a href="messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">topicId</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">string</span>
<span class="Identifier">peers</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#PeerInfoMsg"><span class="Identifier">PeerInfoMsg</span></a><span class="Other">]</span>
<span class="Identifier">backoff</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">uint64</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L65"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L65" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="Message" class="tohide">
<dt><pre><a href="messages.html#Message"><span class="Identifier">Message</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">fromPeer</span><span class="Operator">*</span><span class="Other">:</span> <a href="../../../peerid.html#PeerId"><span class="Identifier">PeerId</span></a>
<span class="Identifier">data</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span>
<span class="Identifier">seqno</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span>
<span class="Identifier">topicId</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">string</span>
<span class="Identifier">signature</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span>
<span class="Identifier">key</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L40"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L40" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="MessageId" class="tohide">
<dt><pre><a href="messages.html#MessageId"><span class="Identifier">MessageId</span></a> <span class="Other">=</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L38"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L38" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="PeerInfoMsg" class="tohide">
<dt><pre><a href="messages.html#PeerInfoMsg"><span class="Identifier">PeerInfoMsg</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">peerId</span><span class="Operator">*</span><span class="Other">:</span> <a href="../../../peerid.html#PeerId"><span class="Identifier">PeerId</span></a>
<span class="Identifier">signedPeerRecord</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L30"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L30" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="RPCMsg" class="tohide">
<dt><pre><a href="messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">subscriptions</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#SubOpts"><span class="Identifier">SubOpts</span></a><span class="Other">]</span>
<span class="Identifier">messages</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">]</span>
<span class="Identifier">control</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Option</span><span class="Other">[</span><a href="messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a><span class="Other">]</span>
<span class="Identifier">ping</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span>
<span class="Identifier">pong</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L70"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L70" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="SubOpts" class="tohide">
<dt><pre><a href="messages.html#SubOpts"><span class="Identifier">SubOpts</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">subscribe</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">bool</span>
<span class="Identifier">topic</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">string</span>
</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L34"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L34" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
</dl></div> </dl></div>
<div class="section" id="12"> <div class="section" id="12">
<h1><a class="toc-backref" href="#12">Procs</a></h1> <h1><a class="toc-backref" href="#12">Procs</a></h1>
<dl class="item"> <dl class="item">
<div id="byteSize,seq[ControlIHave]" class="tohide"> <div id="byteSize,seq[ControlIHave]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2Cseq%5BControlIHave%5D"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">ihaves</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">ControlIHave</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2Cseq%5BControlIHave%5D"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">ihaves</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -266,7 +491,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="byteSize,seq[ControlIWant]" class="tohide"> <div id="byteSize,seq[ControlIWant]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2Cseq%5BControlIWant%5D"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">iwants</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">ControlIWant</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2Cseq%5BControlIWant%5D"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">iwants</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -278,7 +503,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="byteSize,Message" class="tohide"> <div id="byteSize,Message" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2CMessage"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2CMessage"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -290,7 +515,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="byteSize,seq[Message]" class="tohide"> <div id="byteSize,seq[Message]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2Cseq%5BMessage%5D"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">msgs</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">Message</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2Cseq%5BMessage%5D"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">msgs</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -302,7 +527,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="byteSize,RPCMsg" class="tohide"> <div id="byteSize,RPCMsg" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2CRPCMsg"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">rpc</span><span class="Other">:</span> <span class="Identifier">RPCMsg</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">proc</span> <a href="#byteSize%2CRPCMsg"><span class="Identifier">byteSize</span></a><span class="Other">(</span><span class="Identifier">rpc</span><span class="Other">:</span> <a href="messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -314,7 +539,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="shortLog,ControlMessage" class="tohide"> <div id="shortLog,ControlMessage" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CControlMessage"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ControlMessage</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CControlMessage"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -326,7 +551,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="shortLog,RPCMsg" class="tohide"> <div id="shortLog,RPCMsg" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CRPCMsg"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">m</span><span class="Other">:</span> <span class="Identifier">RPCMsg</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CRPCMsg"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">m</span><span class="Other">:</span> <a href="messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -338,7 +563,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="shortLog,Message" class="tohide"> <div id="shortLog,Message" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CMessage"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CMessage"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -347,10 +572,22 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L111" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L111" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="shortLog,ControlGraft" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CControlGraft"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="messages.html#ControlGraft"><span class="Identifier">ControlGraft</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L93"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L93" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="shortLog,ControlIHave" class="tohide"> <div id="shortLog,ControlIHave" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CControlIHave"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Identifier">ControlIHave</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CControlIHave"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -359,6 +596,43 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L82" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L82" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="shortLog,ControlIWant" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CControlIWant"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L88"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L88" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="shortLog,ControlPrune" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#shortLog%2CControlPrune"><span class="Identifier">shortLog</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">auto</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L98"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L98" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="withSubs,typeRPCMsg,openArray[string],bool" class="tohide">
<dt><pre><span class="Keyword">func</span> <a href="#withSubs%2CtypeRPCMsg%2CopenArray%5Bstring%5D%2Cbool"><span class="Identifier">withSubs</span></a><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Keyword">type</span> <span class="Identifier">RPCMsg</span><span class="Other">;</span> <span class="Identifier">topics</span><span class="Other">:</span> <span class="Identifier">openArray</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">subscribe</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">T:type</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/messages.nim#L77"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/messages.nim#L77" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
@ -371,7 +645,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -209,6 +209,26 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#decodeControl%2CProtoBuffer" <li><a class="reference" href="#decodeControl%2CProtoBuffer"
title="decodeControl(pb: ProtoBuffer): ProtoResult[Option[ControlMessage]]">decodeControl(pb: ProtoBuffer): ProtoResult[Option[ControlMessage]]</a></li> title="decodeControl(pb: ProtoBuffer): ProtoResult[Option[ControlMessage]]">decodeControl(pb: ProtoBuffer): ProtoResult[Option[ControlMessage]]</a></li>
</ul>
<ul class="simple nested-toc-section">decodeGraft
<li><a class="reference" href="#decodeGraft%2CProtoBuffer"
title="decodeGraft(pb: ProtoBuffer): ProtoResult[ControlGraft]">decodeGraft(pb: ProtoBuffer): ProtoResult[ControlGraft]</a></li>
</ul>
<ul class="simple nested-toc-section">decodeIHave
<li><a class="reference" href="#decodeIHave%2CProtoBuffer"
title="decodeIHave(pb: ProtoBuffer): ProtoResult[ControlIHave]">decodeIHave(pb: ProtoBuffer): ProtoResult[ControlIHave]</a></li>
</ul>
<ul class="simple nested-toc-section">decodeIWant
<li><a class="reference" href="#decodeIWant%2CProtoBuffer"
title="decodeIWant(pb: ProtoBuffer): ProtoResult[ControlIWant]">decodeIWant(pb: ProtoBuffer): ProtoResult[ControlIWant]</a></li>
</ul>
<ul class="simple nested-toc-section">decodeMessage
<li><a class="reference" href="#decodeMessage%2CProtoBuffer"
title="decodeMessage(pb: ProtoBuffer): ProtoResult[Message]">decodeMessage(pb: ProtoBuffer): ProtoResult[Message]</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">decodeMessages <ul class="simple nested-toc-section">decodeMessages
<li><a class="reference" href="#decodeMessages%2CProtoBuffer" <li><a class="reference" href="#decodeMessages%2CProtoBuffer"
@ -219,6 +239,16 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#decodePeerInfoMsg%2CProtoBuffer" <li><a class="reference" href="#decodePeerInfoMsg%2CProtoBuffer"
title="decodePeerInfoMsg(pb: ProtoBuffer): ProtoResult[PeerInfoMsg]">decodePeerInfoMsg(pb: ProtoBuffer): ProtoResult[PeerInfoMsg]</a></li> title="decodePeerInfoMsg(pb: ProtoBuffer): ProtoResult[PeerInfoMsg]">decodePeerInfoMsg(pb: ProtoBuffer): ProtoResult[PeerInfoMsg]</a></li>
</ul>
<ul class="simple nested-toc-section">decodePrune
<li><a class="reference" href="#decodePrune%2CProtoBuffer"
title="decodePrune(pb: ProtoBuffer): ProtoResult[ControlPrune]">decodePrune(pb: ProtoBuffer): ProtoResult[ControlPrune]</a></li>
</ul>
<ul class="simple nested-toc-section">decodeRpcMsg
<li><a class="reference" href="#decodeRpcMsg%2Cseq%5Bbyte%5D"
title="decodeRpcMsg(msg: seq[byte]): ProtoResult[RPCMsg]">decodeRpcMsg(msg: seq[byte]): ProtoResult[RPCMsg]</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">decodeSubscription <ul class="simple nested-toc-section">decodeSubscription
<li><a class="reference" href="#decodeSubscription%2CProtoBuffer" <li><a class="reference" href="#decodeSubscription%2CProtoBuffer"
@ -234,6 +264,11 @@ window.addEventListener("DOMContentLoaded", main2);
<li><a class="reference" href="#encodeMessage%2CMessage%2Cbool" <li><a class="reference" href="#encodeMessage%2CMessage%2Cbool"
title="encodeMessage(msg: Message; anonymize: bool): seq[byte]">encodeMessage(msg: Message; anonymize: bool): seq[byte]</a></li> title="encodeMessage(msg: Message; anonymize: bool): seq[byte]">encodeMessage(msg: Message; anonymize: bool): seq[byte]</a></li>
</ul>
<ul class="simple nested-toc-section">encodeRpcMsg
<li><a class="reference" href="#encodeRpcMsg%2CRPCMsg%2Cbool"
title="encodeRpcMsg(msg: RPCMsg; anonymize: bool): seq[byte]">encodeRpcMsg(msg: RPCMsg; anonymize: bool): seq[byte]</a></li>
</ul> </ul>
<ul class="simple nested-toc-section">write <ul class="simple nested-toc-section">write
<li><a class="reference" href="#write%2CProtoBuffer%2Cint%2CControlMessage" <li><a class="reference" href="#write%2CProtoBuffer%2Cint%2CControlMessage"
@ -279,7 +314,7 @@ class="link-seesrc" target="_blank">Source</a>
<h1><a class="toc-backref" href="#12">Procs</a></h1> <h1><a class="toc-backref" href="#12">Procs</a></h1>
<dl class="item"> <dl class="item">
<div id="decodeControl,ProtoBuffer" class="tohide"> <div id="decodeControl,ProtoBuffer" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#decodeControl%2CProtoBuffer"><span class="Identifier">decodeControl</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><span class="Identifier">Option</span><span class="Other">[</span><span class="Identifier">ControlMessage</span><span class="Other">]</span><span class="Other">]</span> {. <dt><pre><span class="Keyword">proc</span> <a href="#decodeControl%2CProtoBuffer"><span class="Identifier">decodeControl</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><span class="Identifier">Option</span><span class="Other">[</span><a href="messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a><span class="Other">]</span><span class="Other">]</span> {.
<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -289,11 +324,63 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L203" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L203" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="decodeGraft,ProtoBuffer" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#decodeGraft%2CProtoBuffer"><span class="Identifier">decodeGraft</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><a href="messages.html#ControlGraft"><span class="Identifier">ControlGraft</span></a><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span>
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/protobuf.nim#L128"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L128" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="decodeIHave,ProtoBuffer" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#decodeIHave%2CProtoBuffer"><span class="Identifier">decodeIHave</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><a href="messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span>
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/protobuf.nim#L174"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L174" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="decodeIWant,ProtoBuffer" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#decodeIWant%2CProtoBuffer"><span class="Identifier">decodeIWant</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><a href="messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span>
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/protobuf.nim#L191"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L191" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="decodeMessage,ProtoBuffer" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#decodeMessage%2CProtoBuffer"><span class="Identifier">decodeMessage</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/protobuf.nim#L270"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L270" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="decodeMessages,ProtoBuffer" class="tohide"> <div id="decodeMessages,ProtoBuffer" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#decodeMessages%2CProtoBuffer"><span class="Identifier">decodeMessages</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">Message</span><span class="Other">]</span><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#decodeMessages%2CProtoBuffer"><span class="Identifier">decodeMessages</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><span class="Identifier">seq</span><span class="Other">[</span><a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">]</span><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span>
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -315,6 +402,32 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L141" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L141" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="decodePrune,ProtoBuffer" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#decodePrune%2CProtoBuffer"><span class="Identifier">decodePrune</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><a href="messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span>
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/protobuf.nim#L155"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L155" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="decodeRpcMsg,seq[byte]" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#decodeRpcMsg%2Cseq%5Bbyte%5D"><span class="Identifier">decodeRpcMsg</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="../../../protobuf/minprotobuf.html#ProtoResult"><span class="Identifier">ProtoResult</span></a><span class="Other">[</span><a href="messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/protobuf.nim#L334"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L334" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="decodeSubscription,ProtoBuffer" class="tohide"> <div id="decodeSubscription,ProtoBuffer" class="tohide">
@ -344,7 +457,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="encodeMessage,Message,bool" class="tohide"> <div id="encodeMessage,Message,bool" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#encodeMessage%2CMessage%2Cbool"><span class="Identifier">encodeMessage</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">;</span> <span class="Identifier">anonymize</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#encodeMessage%2CMessage%2Cbool"><span class="Identifier">encodeMessage</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">;</span> <span class="Identifier">anonymize</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -354,10 +467,23 @@ href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/lib
class="link-seesrc" target="_blank">Source</a> class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L106" class="link-seesrc" target="_blank" >Edit</a> &nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L106" class="link-seesrc" target="_blank" >Edit</a>
</dd>
</div>
<div id="encodeRpcMsg,RPCMsg,bool" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#encodeRpcMsg%2CRPCMsg%2Cbool"><span class="Identifier">encodeRpcMsg</span></a><span class="Other">(</span><span class="Identifier">msg</span><span class="Other">:</span> <a href="messages.html#RPCMsg"><span class="Identifier">RPCMsg</span></a><span class="Other">;</span> <span class="Identifier">anonymize</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">byte</span><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd>
&nbsp;&nbsp;<a
href="https://github.com/status-im/nim-libp2p/tree/1052-single-topic-message/libp2p/protocols/pubsub/rpc/protobuf.nim#L315"
class="link-seesrc" target="_blank">Source</a>
&nbsp;&nbsp;<a href="https://github.com/status-im/nim-libp2p/edit/devel/libp2p/protocols/pubsub/rpc/protobuf.nim#L315" class="link-seesrc" target="_blank" >Edit</a>
</dd> </dd>
</div> </div>
<div id="write,ProtoBuffer,int,ControlMessage" class="tohide"> <div id="write,ProtoBuffer,int,ControlMessage" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlMessage"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">control</span><span class="Other">:</span> <span class="Identifier">ControlMessage</span><span class="Other">)</span> {. <dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlMessage"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">control</span><span class="Other">:</span> <a href="messages.html#ControlMessage"><span class="Identifier">ControlMessage</span></a><span class="Other">)</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -370,7 +496,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="write,ProtoBuffer,int,ControlGraft" class="tohide"> <div id="write,ProtoBuffer,int,ControlGraft" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlGraft"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">graft</span><span class="Other">:</span> <span class="Identifier">ControlGraft</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlGraft"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">graft</span><span class="Other">:</span> <a href="messages.html#ControlGraft"><span class="Identifier">ControlGraft</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -383,7 +509,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="write,ProtoBuffer,int,ControlIHave" class="tohide"> <div id="write,ProtoBuffer,int,ControlIHave" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlIHave"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">ihave</span><span class="Other">:</span> <span class="Identifier">ControlIHave</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlIHave"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">ihave</span><span class="Other">:</span> <a href="messages.html#ControlIHave"><span class="Identifier">ControlIHave</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -409,7 +535,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="write,ProtoBuffer,int,ControlIWant" class="tohide"> <div id="write,ProtoBuffer,int,ControlIWant" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlIWant"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">iwant</span><span class="Other">:</span> <span class="Identifier">ControlIWant</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlIWant"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">iwant</span><span class="Other">:</span> <a href="messages.html#ControlIWant"><span class="Identifier">ControlIWant</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -422,7 +548,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="write,ProtoBuffer,int,Message,bool" class="tohide"> <div id="write,ProtoBuffer,int,Message,bool" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CMessage%2Cbool"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <span class="Identifier">Message</span><span class="Other">;</span> <span class="Identifier">anonymize</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {. <dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CMessage%2Cbool"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">msg</span><span class="Other">:</span> <a href="messages.html#Message"><span class="Identifier">Message</span></a><span class="Other">;</span> <span class="Identifier">anonymize</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">)</span> {.
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -435,7 +561,7 @@ class="link-seesrc" target="_blank">Source</a>
</dd> </dd>
</div> </div>
<div id="write,ProtoBuffer,int,ControlPrune" class="tohide"> <div id="write,ProtoBuffer,int,ControlPrune" class="tohide">
<dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlPrune"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">prune</span><span class="Other">:</span> <span class="Identifier">ControlPrune</span><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <dt><pre><span class="Keyword">proc</span> <a href="#write%2CProtoBuffer%2Cint%2CControlPrune"><span class="Identifier">write</span></a><span class="Other">(</span><span class="Identifier">pb</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="../../../protobuf/minprotobuf.html#ProtoBuffer"><span class="Identifier">ProtoBuffer</span></a><span class="Other">;</span> <span class="Identifier">field</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">prune</span><span class="Other">:</span> <a href="messages.html#ControlPrune"><span class="Identifier">ControlPrune</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
<dd> <dd>
@ -470,7 +596,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -422,7 +422,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -530,7 +530,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -568,7 +568,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -553,7 +553,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -422,7 +422,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -503,7 +503,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -524,7 +524,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -504,7 +504,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -502,7 +502,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -1009,7 +1009,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -442,7 +442,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -750,7 +750,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -266,7 +266,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:47 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:31 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -476,7 +476,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -488,7 +488,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -583,7 +583,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:50 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -350,7 +350,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:34 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -370,7 +370,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -444,7 +444,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:43 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:28 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -271,7 +271,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:49 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -245,7 +245,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -512,7 +512,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -362,7 +362,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:32 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -725,7 +725,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:43 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:28 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -636,7 +636,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:45 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:30 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -604,7 +604,7 @@ class="link-seesrc" target="_blank">Source</a>
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:48 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:33 UTC</small>
</div> </div>
</div> </div>
</div> </div>

View File

@ -843,6 +843,26 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="timedcache: contains[K](t: TimedCache[K]; k: K): bool" href="libp2p/protocols/pubsub/timedcache.html#contains%2CTimedCache%5BK%5D%2CK">timedcache: contains[K](t: TimedCache[K]; k: K): bool</a></li> data-doc-search-tag="timedcache: contains[K](t: TimedCache[K]; k: K): bool" href="libp2p/protocols/pubsub/timedcache.html#contains%2CTimedCache%5BK%5D%2CK">timedcache: contains[K](t: TimedCache[K]; k: K): bool</a></li>
</ul></dd> </ul></dd>
<dt><a name="ControlGraft" href="#ControlGraft"><span>ControlGraft:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: ControlGraft" href="libp2p/protocols/pubsub/rpc/messages.html#ControlGraft">messages: ControlGraft</a></li>
</ul></dd>
<dt><a name="ControlIHave" href="#ControlIHave"><span>ControlIHave:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: ControlIHave" href="libp2p/protocols/pubsub/rpc/messages.html#ControlIHave">messages: ControlIHave</a></li>
</ul></dd>
<dt><a name="ControlIWant" href="#ControlIWant"><span>ControlIWant:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: ControlIWant" href="libp2p/protocols/pubsub/rpc/messages.html#ControlIWant">messages: ControlIWant</a></li>
</ul></dd>
<dt><a name="ControlMessage" href="#ControlMessage"><span>ControlMessage:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: ControlMessage" href="libp2p/protocols/pubsub/rpc/messages.html#ControlMessage">messages: ControlMessage</a></li>
</ul></dd>
<dt><a name="ControlPrune" href="#ControlPrune"><span>ControlPrune:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: ControlPrune" href="libp2p/protocols/pubsub/rpc/messages.html#ControlPrune">messages: ControlPrune</a></li>
</ul></dd>
<dt><a name="copy" href="#copy"><span>copy:</span></a></dt><dd><ul class="simple"> <dt><a name="copy" href="#copy"><span>copy:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="ecnist: copy[T: EcPKI](src: T): T" href="libp2p/crypto/ecnist.html#copy%2CT">ecnist: copy[T: EcPKI](src: T): T</a></li> data-doc-search-tag="ecnist: copy[T: EcPKI](src: T): T" href="libp2p/crypto/ecnist.html#copy%2CT">ecnist: copy[T: EcPKI](src: T): T</a></li>
@ -991,6 +1011,22 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="crypto: decodeExchange(message: seq[byte]; pubkey, signature: var seq[byte]): bool" href="libp2p/crypto/crypto.html#decodeExchange%2Cseq%5Bbyte%5D%2Cseq%5Bbyte%5D%2Cseq%5Bbyte%5D">crypto: decodeExchange(message: seq[byte]; pubkey, signature: var seq[byte]): bool</a></li> data-doc-search-tag="crypto: decodeExchange(message: seq[byte]; pubkey, signature: var seq[byte]): bool" href="libp2p/crypto/crypto.html#decodeExchange%2Cseq%5Bbyte%5D%2Cseq%5Bbyte%5D%2Cseq%5Bbyte%5D">crypto: decodeExchange(message: seq[byte]; pubkey, signature: var seq[byte]): bool</a></li>
</ul></dd> </ul></dd>
<dt><a name="decodeGraft" href="#decodeGraft"><span>decodeGraft:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="protobuf: decodeGraft(pb: ProtoBuffer): ProtoResult[ControlGraft]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeGraft%2CProtoBuffer">protobuf: decodeGraft(pb: ProtoBuffer): ProtoResult[ControlGraft]</a></li>
</ul></dd>
<dt><a name="decodeIHave" href="#decodeIHave"><span>decodeIHave:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="protobuf: decodeIHave(pb: ProtoBuffer): ProtoResult[ControlIHave]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeIHave%2CProtoBuffer">protobuf: decodeIHave(pb: ProtoBuffer): ProtoResult[ControlIHave]</a></li>
</ul></dd>
<dt><a name="decodeIWant" href="#decodeIWant"><span>decodeIWant:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="protobuf: decodeIWant(pb: ProtoBuffer): ProtoResult[ControlIWant]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeIWant%2CProtoBuffer">protobuf: decodeIWant(pb: ProtoBuffer): ProtoResult[ControlIWant]</a></li>
</ul></dd>
<dt><a name="decodeMessage" href="#decodeMessage"><span>decodeMessage:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="protobuf: decodeMessage(pb: ProtoBuffer): ProtoResult[Message]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeMessage%2CProtoBuffer">protobuf: decodeMessage(pb: ProtoBuffer): ProtoResult[Message]</a></li>
</ul></dd>
<dt><a name="decodeMessages" href="#decodeMessages"><span>decodeMessages:</span></a></dt><dd><ul class="simple"> <dt><a name="decodeMessages" href="#decodeMessages"><span>decodeMessages:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="protobuf: decodeMessages(pb: ProtoBuffer): ProtoResult[seq[Message]]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeMessages%2CProtoBuffer">protobuf: decodeMessages(pb: ProtoBuffer): ProtoResult[seq[Message]]</a></li> data-doc-search-tag="protobuf: decodeMessages(pb: ProtoBuffer): ProtoResult[seq[Message]]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeMessages%2CProtoBuffer">protobuf: decodeMessages(pb: ProtoBuffer): ProtoResult[seq[Message]]</a></li>
@ -1009,6 +1045,14 @@ window.addEventListener('DOMContentLoaded', main);
exchanges, ciphers, hashes: var string): bool" href="libp2p/crypto/crypto.html#decodeProposal%2Cseq%5Bbyte%5D%2Cseq%5Bbyte%5D%2Cseq%5Bbyte%5D%2Cstring%2Cstring%2Cstring">crypto: decodeProposal(message: seq[byte]; nonce, pubkey: var seq[byte]; exchanges, ciphers, hashes: var string): bool" href="libp2p/crypto/crypto.html#decodeProposal%2Cseq%5Bbyte%5D%2Cseq%5Bbyte%5D%2Cseq%5Bbyte%5D%2Cstring%2Cstring%2Cstring">crypto: decodeProposal(message: seq[byte]; nonce, pubkey: var seq[byte];
exchanges, ciphers, hashes: var string): bool</a></li> exchanges, ciphers, hashes: var string): bool</a></li>
</ul></dd> </ul></dd>
<dt><a name="decodePrune" href="#decodePrune"><span>decodePrune:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="protobuf: decodePrune(pb: ProtoBuffer): ProtoResult[ControlPrune]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodePrune%2CProtoBuffer">protobuf: decodePrune(pb: ProtoBuffer): ProtoResult[ControlPrune]</a></li>
</ul></dd>
<dt><a name="decodeRpcMsg" href="#decodeRpcMsg"><span>decodeRpcMsg:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="protobuf: decodeRpcMsg(msg: seq[byte]): ProtoResult[RPCMsg]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeRpcMsg%2Cseq%5Bbyte%5D">protobuf: decodeRpcMsg(msg: seq[byte]): ProtoResult[RPCMsg]</a></li>
</ul></dd>
<dt><a name="decodeSubscription" href="#decodeSubscription"><span>decodeSubscription:</span></a></dt><dd><ul class="simple"> <dt><a name="decodeSubscription" href="#decodeSubscription"><span>decodeSubscription:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="protobuf: decodeSubscription(pb: ProtoBuffer): ProtoResult[SubOpts]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeSubscription%2CProtoBuffer">protobuf: decodeSubscription(pb: ProtoBuffer): ProtoResult[SubOpts]</a></li> data-doc-search-tag="protobuf: decodeSubscription(pb: ProtoBuffer): ProtoResult[SubOpts]" href="libp2p/protocols/pubsub/rpc/protobuf.html#decodeSubscription%2CProtoBuffer">protobuf: decodeSubscription(pb: ProtoBuffer): ProtoResult[SubOpts]</a></li>
@ -1051,6 +1095,10 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="protocol: DefaultMaxIncomingStreams" href="libp2p/protocols/protocol.html#DefaultMaxIncomingStreams">protocol: DefaultMaxIncomingStreams</a></li> data-doc-search-tag="protocol: DefaultMaxIncomingStreams" href="libp2p/protocols/protocol.html#DefaultMaxIncomingStreams">protocol: DefaultMaxIncomingStreams</a></li>
</ul></dd> </ul></dd>
<dt><a name="defaultMsgIdProvider" href="#defaultMsgIdProvider"><span>defaultMsgIdProvider:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="message: defaultMsgIdProvider(m: Message): Result[MessageId, ValidationResult]" href="libp2p/protocols/pubsub/rpc/message.html#defaultMsgIdProvider%2CMessage">message: defaultMsgIdProvider(m: Message): Result[MessageId, ValidationResult]</a></li>
</ul></dd>
<dt><a name="DefaultPublicExponent" href="#DefaultPublicExponent"><span>DefaultPublicExponent:</span></a></dt><dd><ul class="simple"> <dt><a name="DefaultPublicExponent" href="#DefaultPublicExponent"><span>DefaultPublicExponent:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="rsa: DefaultPublicExponent" href="libp2p/crypto/rsa.html#DefaultPublicExponent">rsa: DefaultPublicExponent</a></li> data-doc-search-tag="rsa: DefaultPublicExponent" href="libp2p/crypto/rsa.html#DefaultPublicExponent">rsa: DefaultPublicExponent</a></li>
@ -1369,6 +1417,10 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="protobuf: encodeMessage(msg: Message; anonymize: bool): seq[byte]" href="libp2p/protocols/pubsub/rpc/protobuf.html#encodeMessage%2CMessage%2Cbool">protobuf: encodeMessage(msg: Message; anonymize: bool): seq[byte]</a></li> data-doc-search-tag="protobuf: encodeMessage(msg: Message; anonymize: bool): seq[byte]" href="libp2p/protocols/pubsub/rpc/protobuf.html#encodeMessage%2CMessage%2Cbool">protobuf: encodeMessage(msg: Message; anonymize: bool): seq[byte]</a></li>
</ul></dd> </ul></dd>
<dt><a name="encodeRpcMsg" href="#encodeRpcMsg"><span>encodeRpcMsg:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="protobuf: encodeRpcMsg(msg: RPCMsg; anonymize: bool): seq[byte]" href="libp2p/protocols/pubsub/rpc/protobuf.html#encodeRpcMsg%2CRPCMsg%2Cbool">protobuf: encodeRpcMsg(msg: RPCMsg; anonymize: bool): seq[byte]</a></li>
</ul></dd>
<dt><a name="encodeVarint" href="#encodeVarint"><span>encodeVarint:</span></a></dt><dd><ul class="simple"> <dt><a name="encodeVarint" href="#encodeVarint"><span>encodeVarint:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="varint: encodeVarint(vtype: typedesc[LP]; value: LPSomeVarint): VarintResult[seq[byte]]" href="libp2p/varint.html#encodeVarint%2Ctypedesc%5BLP%5D%2CLPSomeVarint">varint: encodeVarint(vtype: typedesc[LP]; value: LPSomeVarint): VarintResult[seq[byte]]</a></li> data-doc-search-tag="varint: encodeVarint(vtype: typedesc[LP]; value: LPSomeVarint): VarintResult[seq[byte]]" href="libp2p/varint.html#encodeVarint%2Ctypedesc%5BLP%5D%2CLPSomeVarint">varint: encodeVarint(vtype: typedesc[LP]; value: LPSomeVarint): VarintResult[seq[byte]]</a></li>
@ -1895,6 +1947,12 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="pubsub: handleData(p: PubSub; topic: string; data: seq[byte]): Future[void]" href="libp2p/protocols/pubsub/pubsub.html#handleData%2CPubSub%2Cstring%2Cseq%5Bbyte%5D">pubsub: handleData(p: PubSub; topic: string; data: seq[byte]): Future[void]</a></li> data-doc-search-tag="pubsub: handleData(p: PubSub; topic: string; data: seq[byte]): Future[void]" href="libp2p/protocols/pubsub/pubsub.html#handleData%2CPubSub%2Cstring%2Cseq%5Bbyte%5D">pubsub: handleData(p: PubSub; topic: string; data: seq[byte]): Future[void]</a></li>
</ul></dd> </ul></dd>
<dt><a name="handleGraft" href="#handleGraft"><span>handleGraft:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="behavior: handleGraft(g: GossipSub; peer: PubSubPeer; grafts: seq[ControlGraft]): seq[
ControlPrune]" href="libp2p/protocols/pubsub/gossipsub/behavior.html#handleGraft%2CGossipSub%2CPubSubPeer%2Cseq%5BControlGraft%5D">behavior: handleGraft(g: GossipSub; peer: PubSubPeer; grafts: seq[ControlGraft]): seq[
ControlPrune]</a></li>
</ul></dd>
<dt><a name="handleHop" href="#handleHop"><span>handleHop:</span></a></dt><dd><ul class="simple"> <dt><a name="handleHop" href="#handleHop"><span>handleHop:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="relay: handleHop(r: Relay; connSrc: Connection; msg: RelayMessage): Future[void]" href="libp2p/protocols/connectivity/relay/relay.html#handleHop%2CRelay%2CConnection%2CRelayMessage">relay: handleHop(r: Relay; connSrc: Connection; msg: RelayMessage): Future[void]</a></li> data-doc-search-tag="relay: handleHop(r: Relay; connSrc: Connection; msg: RelayMessage): Future[void]" href="libp2p/protocols/connectivity/relay/relay.html#handleHop%2CRelay%2CConnection%2CRelayMessage">relay: handleHop(r: Relay; connSrc: Connection; msg: RelayMessage): Future[void]</a></li>
@ -1917,6 +1975,10 @@ window.addEventListener('DOMContentLoaded', main);
Message]" href="libp2p/protocols/pubsub/gossipsub/behavior.html#handleIWant%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIWant%5D">behavior: handleIWant(g: GossipSub; peer: PubSubPeer; iwants: seq[ControlIWant]): seq[ Message]" href="libp2p/protocols/pubsub/gossipsub/behavior.html#handleIWant%2CGossipSub%2CPubSubPeer%2Cseq%5BControlIWant%5D">behavior: handleIWant(g: GossipSub; peer: PubSubPeer; iwants: seq[ControlIWant]): seq[
Message]</a></li> Message]</a></li>
</ul></dd> </ul></dd>
<dt><a name="handlePrune" href="#handlePrune"><span>handlePrune:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="behavior: handlePrune(g: GossipSub; peer: PubSubPeer; prunes: seq[ControlPrune])" href="libp2p/protocols/pubsub/gossipsub/behavior.html#handlePrune%2CGossipSub%2CPubSubPeer%2Cseq%5BControlPrune%5D">behavior: handlePrune(g: GossipSub; peer: PubSubPeer; prunes: seq[ControlPrune])</a></li>
</ul></dd>
<dt><a name="HandlerHolder" href="#HandlerHolder"><span>HandlerHolder:</span></a></dt><dd><ul class="simple"> <dt><a name="HandlerHolder" href="#HandlerHolder"><span>HandlerHolder:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="multistream: HandlerHolder" href="libp2p/multistream.html#HandlerHolder">multistream: HandlerHolder</a></li> data-doc-search-tag="multistream: HandlerHolder" href="libp2p/multistream.html#HandlerHolder">multistream: HandlerHolder</a></li>
@ -2869,6 +2931,14 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="types: MeshMetrics" href="libp2p/protocols/pubsub/gossipsub/types.html#MeshMetrics">types: MeshMetrics</a></li> data-doc-search-tag="types: MeshMetrics" href="libp2p/protocols/pubsub/gossipsub/types.html#MeshMetrics">types: MeshMetrics</a></li>
</ul></dd> </ul></dd>
<dt><a name="Message" href="#Message"><span>Message:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: Message" href="libp2p/protocols/pubsub/rpc/messages.html#Message">messages: Message</a></li>
</ul></dd>
<dt><a name="MessageId" href="#MessageId"><span>MessageId:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: MessageId" href="libp2p/protocols/pubsub/rpc/messages.html#MessageId">messages: MessageId</a></li>
</ul></dd>
<dt><a name="MessageType" href="#MessageType"><span>MessageType:</span></a></dt><dd><ul class="simple"> <dt><a name="MessageType" href="#MessageType"><span>MessageType:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="coder: MessageType" href="libp2p/muxers/mplex/coder.html#MessageType">coder: MessageType</a></li> data-doc-search-tag="coder: MessageType" href="libp2p/muxers/mplex/coder.html#MessageType">coder: MessageType</a></li>
@ -3425,6 +3495,10 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="peerinfo: PeerInfoError" href="libp2p/peerinfo.html#PeerInfoError">peerinfo: PeerInfoError</a></li> data-doc-search-tag="peerinfo: PeerInfoError" href="libp2p/peerinfo.html#PeerInfoError">peerinfo: PeerInfoError</a></li>
</ul></dd> </ul></dd>
<dt><a name="PeerInfoMsg" href="#PeerInfoMsg"><span>PeerInfoMsg:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: PeerInfoMsg" href="libp2p/protocols/pubsub/rpc/messages.html#PeerInfoMsg">messages: PeerInfoMsg</a></li>
</ul></dd>
<dt><a name="PeerRateLimitError" href="#PeerRateLimitError"><span>PeerRateLimitError:</span></a></dt><dd><ul class="simple"> <dt><a name="PeerRateLimitError" href="#PeerRateLimitError"><span>PeerRateLimitError:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="pubsubpeer: PeerRateLimitError" href="libp2p/protocols/pubsub/pubsubpeer.html#PeerRateLimitError">pubsubpeer: PeerRateLimitError</a></li> data-doc-search-tag="pubsubpeer: PeerRateLimitError" href="libp2p/protocols/pubsub/pubsubpeer.html#PeerRateLimitError">pubsubpeer: PeerRateLimitError</a></li>
@ -3697,6 +3771,12 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="peerid: random(t: typedesc[PeerId]; rng = newRng()): Result[PeerId, cstring]" href="libp2p/peerid.html#random%2Ctypedesc%5BPeerId%5D">peerid: random(t: typedesc[PeerId]; rng = newRng()): Result[PeerId, cstring]</a></li> data-doc-search-tag="peerid: random(t: typedesc[PeerId]; rng = newRng()): Result[PeerId, cstring]" href="libp2p/peerid.html#random%2Ctypedesc%5BPeerId%5D">peerid: random(t: typedesc[PeerId]; rng = newRng()): Result[PeerId, cstring]</a></li>
</ul></dd> </ul></dd>
<dt><a name="rateLimit" href="#rateLimit"><span>rateLimit:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="gossipsub: rateLimit(g: GossipSub; peer: PubSubPeer; rpcMsgOpt: Opt[RPCMsg]; msgSize: int): Future[
void]" href="libp2p/protocols/pubsub/gossipsub.html#rateLimit%2CGossipSub%2CPubSubPeer%2COpt%5BRPCMsg%5D%2Cint">gossipsub: rateLimit(g: GossipSub; peer: PubSubPeer; rpcMsgOpt: Opt[RPCMsg]; msgSize: int): Future[
void]</a></li>
</ul></dd>
<dt><a name="read" href="#read"><span>read:</span></a></dt><dd><ul class="simple"> <dt><a name="read" href="#read"><span>read:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="minasn1: read(ab: var Asn1Buffer): Asn1Result[Asn1Field]" href="libp2p/crypto/minasn1.html#read%2CAsn1Buffer">minasn1: read(ab: var Asn1Buffer): Asn1Result[Asn1Field]</a></li> data-doc-search-tag="minasn1: read(ab: var Asn1Buffer): Asn1Result[Asn1Field]" href="libp2p/crypto/minasn1.html#read%2CAsn1Buffer">minasn1: read(ab: var Asn1Buffer): Asn1Result[Asn1Field]</a></li>
@ -3983,6 +4063,10 @@ window.addEventListener('DOMContentLoaded', main);
</ul></dd> </ul></dd>
<dt><a name="rpcHandler" href="#rpcHandler"><span>rpcHandler:</span></a></dt><dd><ul class="simple"> <dt><a name="rpcHandler" href="#rpcHandler"><span>rpcHandler:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="floodsub: rpcHandler(f: FloodSub; peer: PubSubPeer; data: seq[byte]): Future[void]" href="libp2p/protocols/pubsub/floodsub.html#rpcHandler.e%2CFloodSub%2CPubSubPeer%2Cseq%5Bbyte%5D">floodsub: rpcHandler(f: FloodSub; peer: PubSubPeer; data: seq[byte]): Future[void]</a></li>
<li><a class="reference external"
data-doc-search-tag="gossipsub: rpcHandler(g: GossipSub; peer: PubSubPeer; data: seq[byte]): Future[void]" href="libp2p/protocols/pubsub/gossipsub.html#rpcHandler.e%2CGossipSub%2CPubSubPeer%2Cseq%5Bbyte%5D">gossipsub: rpcHandler(g: GossipSub; peer: PubSubPeer; data: seq[byte]): Future[void]</a></li>
<li><a class="reference external"
data-doc-search-tag="pubsub: rpcHandler(p: PubSub; peer: PubSubPeer; data: seq[byte]): Future[void]" href="libp2p/protocols/pubsub/pubsub.html#rpcHandler.e%2CPubSub%2CPubSubPeer%2Cseq%5Bbyte%5D">pubsub: rpcHandler(p: PubSub; peer: PubSubPeer; data: seq[byte]): Future[void]</a></li> data-doc-search-tag="pubsub: rpcHandler(p: PubSub; peer: PubSubPeer; data: seq[byte]): Future[void]" href="libp2p/protocols/pubsub/pubsub.html#rpcHandler.e%2CPubSub%2CPubSubPeer%2Cseq%5Bbyte%5D">pubsub: rpcHandler(p: PubSub; peer: PubSubPeer; data: seq[byte]): Future[void]</a></li>
</ul></dd> </ul></dd>
<dt><a name="RPCHandler" href="#RPCHandler"><span>RPCHandler:</span></a></dt><dd><ul class="simple"> <dt><a name="RPCHandler" href="#RPCHandler"><span>RPCHandler:</span></a></dt><dd><ul class="simple">
@ -3993,6 +4077,10 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="pubsubpeer: RpcMessageQueue" href="libp2p/protocols/pubsub/pubsubpeer.html#RpcMessageQueue">pubsubpeer: RpcMessageQueue</a></li> data-doc-search-tag="pubsubpeer: RpcMessageQueue" href="libp2p/protocols/pubsub/pubsubpeer.html#RpcMessageQueue">pubsubpeer: RpcMessageQueue</a></li>
</ul></dd> </ul></dd>
<dt><a name="RPCMsg" href="#RPCMsg"><span>RPCMsg:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: RPCMsg" href="libp2p/protocols/pubsub/rpc/messages.html#RPCMsg">messages: RPCMsg</a></li>
</ul></dd>
<dt><a name="RSA" href="#RSA"><span>RSA:</span></a></dt><dd><ul class="simple"> <dt><a name="RSA" href="#RSA"><span>RSA:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="PKScheme.RSA" href="libp2p/crypto/crypto.html#RSA">PKScheme.RSA</a></li> data-doc-search-tag="PKScheme.RSA" href="libp2p/crypto/crypto.html#RSA">PKScheme.RSA</a></li>
@ -4194,6 +4282,8 @@ window.addEventListener('DOMContentLoaded', main);
<dt><a name="send" href="#send"><span>send:</span></a></dt><dd><ul class="simple"> <dt><a name="send" href="#send"><span>send:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="pubsub: send(p: PubSub; peer: PubSubPeer; msg: RPCMsg; isHighPriority: bool)" href="libp2p/protocols/pubsub/pubsub.html#send%2CPubSub%2CPubSubPeer%2CRPCMsg%2Cbool">pubsub: send(p: PubSub; peer: PubSubPeer; msg: RPCMsg; isHighPriority: bool)</a></li> data-doc-search-tag="pubsub: send(p: PubSub; peer: PubSubPeer; msg: RPCMsg; isHighPriority: bool)" href="libp2p/protocols/pubsub/pubsub.html#send%2CPubSub%2CPubSubPeer%2CRPCMsg%2Cbool">pubsub: send(p: PubSub; peer: PubSubPeer; msg: RPCMsg; isHighPriority: bool)</a></li>
<li><a class="reference external"
data-doc-search-tag="pubsubpeer: send(p: PubSubPeer; msg: RPCMsg; anonymize: bool; isHighPriority: bool)" href="libp2p/protocols/pubsub/pubsubpeer.html#send%2CPubSubPeer%2CRPCMsg%2Cbool%2Cbool">pubsubpeer: send(p: PubSubPeer; msg: RPCMsg; anonymize: bool; isHighPriority: bool)</a></li>
</ul></dd> </ul></dd>
<dt><a name="sendEncoded" href="#sendEncoded"><span>sendEncoded:</span></a></dt><dd><ul class="simple"> <dt><a name="sendEncoded" href="#sendEncoded"><span>sendEncoded:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
@ -4257,10 +4347,16 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="pubsubpeer: shortLog(p: PubSubPeer): string" href="libp2p/protocols/pubsub/pubsubpeer.html#shortLog%2CPubSubPeer">pubsubpeer: shortLog(p: PubSubPeer): string</a></li> data-doc-search-tag="pubsubpeer: shortLog(p: PubSubPeer): string" href="libp2p/protocols/pubsub/pubsubpeer.html#shortLog%2CPubSubPeer">pubsubpeer: shortLog(p: PubSubPeer): string</a></li>
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="messages: shortLog(s: ControlGraft): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CControlGraft">messages: shortLog(s: ControlGraft): auto</a></li>
<li><a class="reference external"
data-doc-search-tag="messages: shortLog(s: ControlIHave): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CControlIHave">messages: shortLog(s: ControlIHave): auto</a></li> data-doc-search-tag="messages: shortLog(s: ControlIHave): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CControlIHave">messages: shortLog(s: ControlIHave): auto</a></li>
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="messages: shortLog(s: ControlIWant): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CControlIWant">messages: shortLog(s: ControlIWant): auto</a></li>
<li><a class="reference external"
data-doc-search-tag="messages: shortLog(c: ControlMessage): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CControlMessage">messages: shortLog(c: ControlMessage): auto</a></li> data-doc-search-tag="messages: shortLog(c: ControlMessage): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CControlMessage">messages: shortLog(c: ControlMessage): auto</a></li>
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="messages: shortLog(s: ControlPrune): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CControlPrune">messages: shortLog(s: ControlPrune): auto</a></li>
<li><a class="reference external"
data-doc-search-tag="messages: shortLog(msg: Message): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CMessage">messages: shortLog(msg: Message): auto</a></li> data-doc-search-tag="messages: shortLog(msg: Message): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CMessage">messages: shortLog(msg: Message): auto</a></li>
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="messages: shortLog(m: RPCMsg): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CRPCMsg">messages: shortLog(m: RPCMsg): auto</a></li> data-doc-search-tag="messages: shortLog(m: RPCMsg): auto" href="libp2p/protocols/pubsub/rpc/messages.html#shortLog%2CRPCMsg">messages: shortLog(m: RPCMsg): auto</a></li>
@ -4461,6 +4557,10 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="crypto: stretchKeys(cipherType: string; hashType: string; sharedSecret: seq[byte]): Secret" href="libp2p/crypto/crypto.html#stretchKeys%2Cstring%2Cstring%2Cseq%5Bbyte%5D">crypto: stretchKeys(cipherType: string; hashType: string; sharedSecret: seq[byte]): Secret</a></li> data-doc-search-tag="crypto: stretchKeys(cipherType: string; hashType: string; sharedSecret: seq[byte]): Secret" href="libp2p/crypto/crypto.html#stretchKeys%2Cstring%2Cstring%2Cseq%5Bbyte%5D">crypto: stretchKeys(cipherType: string; hashType: string; sharedSecret: seq[byte]): Secret</a></li>
</ul></dd> </ul></dd>
<dt><a name="SubOpts" href="#SubOpts"><span>SubOpts:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: SubOpts" href="libp2p/protocols/pubsub/rpc/messages.html#SubOpts">messages: SubOpts</a></li>
</ul></dd>
<dt><a name="subscribe" href="#subscribe"><span>subscribe:</span></a></dt><dd><ul class="simple"> <dt><a name="subscribe" href="#subscribe"><span>subscribe:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="pubsub: subscribe(p: PubSub; topic: string; handler: TopicHandler)" href="libp2p/protocols/pubsub/pubsub.html#subscribe%2CPubSub%2Cstring%2CTopicHandler">pubsub: subscribe(p: PubSub; topic: string; handler: TopicHandler)</a></li> data-doc-search-tag="pubsub: subscribe(p: PubSub; topic: string; handler: TopicHandler)" href="libp2p/protocols/pubsub/pubsub.html#subscribe%2CPubSub%2Cstring%2CTopicHandler">pubsub: subscribe(p: PubSub; topic: string; handler: TopicHandler)</a></li>
@ -4801,6 +4901,10 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="peerinfo: update(p: PeerInfo): Future[void]" href="libp2p/peerinfo.html#update%2CPeerInfo">peerinfo: update(p: PeerInfo): Future[void]</a></li> data-doc-search-tag="peerinfo: update(p: PeerInfo): Future[void]" href="libp2p/peerinfo.html#update%2CPeerInfo">peerinfo: update(p: PeerInfo): Future[void]</a></li>
</ul></dd> </ul></dd>
<dt><a name="updateMetrics" href="#updateMetrics"><span>updateMetrics:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="pubsub: updateMetrics(p: PubSub; rpcMsg: RPCMsg)" href="libp2p/protocols/pubsub/pubsub.html#updateMetrics%2CPubSub%2CRPCMsg">pubsub: updateMetrics(p: PubSub; rpcMsg: RPCMsg)</a></li>
</ul></dd>
<dt><a name="updateScores" href="#updateScores"><span>updateScores:</span></a></dt><dd><ul class="simple"> <dt><a name="updateScores" href="#updateScores"><span>updateScores:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="scoring: updateScores(g: GossipSub)" href="libp2p/protocols/pubsub/gossipsub/scoring.html#updateScores%2CGossipSub">scoring: updateScores(g: GossipSub)</a></li> data-doc-search-tag="scoring: updateScores(g: GossipSub)" href="libp2p/protocols/pubsub/gossipsub/scoring.html#updateScores%2CGossipSub">scoring: updateScores(g: GossipSub)</a></li>
@ -4890,6 +4994,8 @@ window.addEventListener('DOMContentLoaded', main);
pubkey: RsaPublicKey): bool</a></li> pubkey: RsaPublicKey): bool</a></li>
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="secp: verify[T: byte | char](sig: SkSignature; msg: openArray[T]; key: SkPublicKey): bool" href="libp2p/crypto/secp.html#verify%2CSkSignature%2CopenArray%5BT%5D%2CSkPublicKey">secp: verify[T: byte | char](sig: SkSignature; msg: openArray[T]; key: SkPublicKey): bool</a></li> data-doc-search-tag="secp: verify[T: byte | char](sig: SkSignature; msg: openArray[T]; key: SkPublicKey): bool" href="libp2p/crypto/secp.html#verify%2CSkSignature%2CopenArray%5BT%5D%2CSkPublicKey">secp: verify[T: byte | char](sig: SkSignature; msg: openArray[T]; key: SkPublicKey): bool</a></li>
<li><a class="reference external"
data-doc-search-tag="message: verify(m: Message): bool" href="libp2p/protocols/pubsub/rpc/message.html#verify%2CMessage">message: verify(m: Message): bool</a></li>
</ul></dd> </ul></dd>
<dt><a name="Voucher" href="#Voucher"><span>Voucher:</span></a></dt><dd><ul class="simple"> <dt><a name="Voucher" href="#Voucher"><span>Voucher:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
@ -5005,6 +5111,10 @@ window.addEventListener('DOMContentLoaded', main);
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="builders: withSignedPeerRecord(b: SwitchBuilder; sendIt = true): SwitchBuilder" href="libp2p/builders.html#withSignedPeerRecord%2CSwitchBuilder">builders: withSignedPeerRecord(b: SwitchBuilder; sendIt = true): SwitchBuilder</a></li> data-doc-search-tag="builders: withSignedPeerRecord(b: SwitchBuilder; sendIt = true): SwitchBuilder" href="libp2p/builders.html#withSignedPeerRecord%2CSwitchBuilder">builders: withSignedPeerRecord(b: SwitchBuilder; sendIt = true): SwitchBuilder</a></li>
</ul></dd> </ul></dd>
<dt><a name="withSubs" href="#withSubs"><span>withSubs:</span></a></dt><dd><ul class="simple">
<li><a class="reference external"
data-doc-search-tag="messages: withSubs(T: type RPCMsg; topics: openArray[string]; subscribe: bool): T:type" href="libp2p/protocols/pubsub/rpc/messages.html#withSubs%2CtypeRPCMsg%2CopenArray%5Bstring%5D%2Cbool">messages: withSubs(T: type RPCMsg; topics: openArray[string]; subscribe: bool): T:type</a></li>
</ul></dd>
<dt><a name="withTcpTransport" href="#withTcpTransport"><span>withTcpTransport:</span></a></dt><dd><ul class="simple"> <dt><a name="withTcpTransport" href="#withTcpTransport"><span>withTcpTransport:</span></a></dt><dd><ul class="simple">
<li><a class="reference external" <li><a class="reference external"
data-doc-search-tag="builders: withTcpTransport(b: SwitchBuilder; flags: set[ServerFlags] = {}): SwitchBuilder" href="libp2p/builders.html#withTcpTransport%2CSwitchBuilder%2Cset%5BServerFlags%5D">builders: withTcpTransport(b: SwitchBuilder; flags: set[ServerFlags] = {}): SwitchBuilder</a></li> data-doc-search-tag="builders: withTcpTransport(b: SwitchBuilder; flags: set[ServerFlags] = {}): SwitchBuilder" href="libp2p/builders.html#withTcpTransport%2CSwitchBuilder%2Cset%5BServerFlags%5D">builders: withTcpTransport(b: SwitchBuilder; flags: set[ServerFlags] = {}): SwitchBuilder</a></li>
@ -5238,7 +5348,7 @@ window.addEventListener('DOMContentLoaded', main);
<div class="twelve-columns footer"> <div class="twelve-columns footer">
<span class="nim-sprite"></span> <span class="nim-sprite"></span>
<br/> <br/>
<small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:10:51 UTC</small> <small style="color: var(--hint);">Made with Nim. Generated: 2024-03-07 14:41:35 UTC</small>
</div> </div>
</div> </div>
</div> </div>