Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- newtype ChainSyncClient header point tip (m ∷ Type → Type) a = ChainSyncClient {
- runChainSyncClient ∷ m (ClientStIdle header point tip m a)
- data ClientStIdle header point tip (m ∷ Type → Type) a where
- SendMsgRequestNext ∷ ∀ header point tip (m ∷ Type → Type) a. ClientStNext header point tip m a → m (ClientStNext header point tip m a) → ClientStIdle header point tip m a
- SendMsgFindIntersect ∷ ∀ point header tip (m ∷ Type → Type) a. [point] → ClientStIntersect header point tip m a → ClientStIdle header point tip m a
- SendMsgDone ∷ ∀ a header point tip (m ∷ Type → Type). a → ClientStIdle header point tip m a
- data ClientStNext header point tip (m ∷ Type → Type) a = ClientStNext {
- recvMsgRollForward ∷ header → tip → ChainSyncClient header point tip m a
- recvMsgRollBackward ∷ point → tip → ChainSyncClient header point tip m a
- data ClientStIntersect header point tip (m ∷ Type → Type) a = ClientStIntersect {
- recvMsgIntersectFound ∷ point → tip → ChainSyncClient header point tip m a
- recvMsgIntersectNotFound ∷ tip → ChainSyncClient header point tip m a
- chainSyncClientNull ∷ ∀ (m ∷ Type → Type) header point tip a. MonadTimer m ⇒ ChainSyncClient header point tip m a
- mapChainSyncClient ∷ ∀ header header' point point' tip tip' (m ∷ Type → Type) a. Functor m ⇒ (point → point') → (point' → point) → (header' → header) → (tip' → tip) → ChainSyncClient header point tip m a → ChainSyncClient header' point' tip' m a
Protocol type for the client
The protocol states from the point of view of the client.
newtype ChainSyncClient header point tip (m ∷ Type → Type) a #
ChainSyncClient | |
|
data ClientStIdle header point tip (m ∷ Type → Type) a where #
SendMsgRequestNext ∷ ∀ header point tip (m ∷ Type → Type) a. ClientStNext header point tip m a → m (ClientStNext header point tip m a) → ClientStIdle header point tip m a | |
SendMsgFindIntersect ∷ ∀ point header tip (m ∷ Type → Type) a. [point] → ClientStIntersect header point tip m a → ClientStIdle header point tip m a | |
SendMsgDone ∷ ∀ a header point tip (m ∷ Type → Type). a → ClientStIdle header point tip m a |
data ClientStNext header point tip (m ∷ Type → Type) a #
ClientStNext | |
|
data ClientStIntersect header point tip (m ∷ Type → Type) a #
ClientStIntersect | |
|
Null chain sync client
chainSyncClientNull ∷ ∀ (m ∷ Type → Type) header point tip a. MonadTimer m ⇒ ChainSyncClient header point tip m a #
Utilities
mapChainSyncClient ∷ ∀ header header' point point' tip tip' (m ∷ Type → Type) a. Functor m ⇒ (point → point') → (point' → point) → (header' → header) → (tip' → tip) → ChainSyncClient header point tip m a → ChainSyncClient header' point' tip' m a #