ouroboros-network-protocols-0.8.1.0: Ouroboros Network Protocols
Safe HaskellSafe-Inferred
LanguageHaskell2010

Ouroboros.Network.Protocol.LocalTxSubmission.Type

Description

The type of the local transaction submission protocol.

This is used by local clients (like wallets and CLI tools) to submit transactions to a local node.

Synopsis

Documentation

data LocalTxSubmission tx reject where Source #

The kind of the local transaction-submission protocol, and the types of the states in the protocol state machine.

It is parametrised over the type of transactions and the type of reasons used when rejecting a transaction.

Constructors

StIdleLocalTxSubmission tx reject

The client has agency; it can submit a transaction or terminate.

There is no timeout in this state.

StBusyLocalTxSubmission tx reject

The server has agency; it must process the submitted transaction and either accept or reject it (with a reason).

There is a timeout in this state. If the mempool is full and remains so for a period then the transaction should be rejected with a suitable temporary failure reason.

StDoneLocalTxSubmission tx reject

Nobody has agency. The terminal state.

Instances

Instances details
(ShowProxy tx, ShowProxy reject) ⇒ ShowProxy (LocalTxSubmission tx reject ∷ Type) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

showProxyProxy (LocalTxSubmission tx reject) → String Source #

Show (ClientHasAgency st) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Show (ServerHasAgency st) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

NFData (ClientHasAgency st) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

rnfClientHasAgency st → () #

NFData (NobodyHasAgency st) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

rnfNobodyHasAgency st → () #

NFData (ServerHasAgency st) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

rnfServerHasAgency st → () #

(Show tx, Show reject) ⇒ Show (Message (LocalTxSubmission tx reject) from to) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

showsPrecIntMessage (LocalTxSubmission tx reject) from to → ShowS #

showMessage (LocalTxSubmission tx reject) from to → String #

showList ∷ [Message (LocalTxSubmission tx reject) from to] → ShowS #

(NFData tx, NFData reject) ⇒ NFData (Message (LocalTxSubmission tx reject) from to) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

rnfMessage (LocalTxSubmission tx reject) from to → () #

NFData (PeerHasAgency pr st) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

rnfPeerHasAgency pr st → () #

(Eq tx, Eq reject) ⇒ Eq (Message (LocalTxSubmission tx reject) from to) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

(==)Message (LocalTxSubmission tx reject) from to → Message (LocalTxSubmission tx reject) from to → Bool #

(/=)Message (LocalTxSubmission tx reject) from to → Message (LocalTxSubmission tx reject) from to → Bool #

Protocol (LocalTxSubmission tx reject) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Associated Types

data Message (LocalTxSubmission tx reject) st st' Source #

data ClientHasAgency st Source #

data ServerHasAgency st Source #

data NobodyHasAgency st Source #

data ClientHasAgency (st ∷ LocalTxSubmission tx reject) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

data ClientHasAgency (st ∷ LocalTxSubmission tx reject) where
data Message (LocalTxSubmission tx reject) (from ∷ LocalTxSubmission tx reject) (to ∷ LocalTxSubmission tx reject) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

data Message (LocalTxSubmission tx reject) (from ∷ LocalTxSubmission tx reject) (to ∷ LocalTxSubmission tx reject) where
data NobodyHasAgency (st ∷ LocalTxSubmission tx reject) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

data NobodyHasAgency (st ∷ LocalTxSubmission tx reject) where
data ServerHasAgency (st ∷ LocalTxSubmission tx reject) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

data ServerHasAgency (st ∷ LocalTxSubmission tx reject) where

data SubmitResult reason Source #

Isomorphic with Maybe but with a name that better describes its purpose and usage.

Constructors

SubmitSuccess 
SubmitFail reason 

Instances

Instances details
Functor SubmitResult Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

fmap ∷ (a → b) → SubmitResult a → SubmitResult b #

(<$) ∷ a → SubmitResult b → SubmitResult a #

Eq reason ⇒ Eq (SubmitResult reason) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

(==)SubmitResult reason → SubmitResult reason → Bool #

(/=)SubmitResult reason → SubmitResult reason → Bool #