ouroboros-network-0.1.0.0: A networking layer for the Ouroboros blockchain protocol
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 (ServerHasAgency st) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Show (ClientHasAgency st) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

(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 Source #

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

(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 Source #

showMessage (LocalTxSubmission tx reject) from to → String Source #

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

Protocol (LocalTxSubmission tx reject) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Associated Types

data Message (LocalTxSubmission tx reject) st st' #

data ClientHasAgency st #

data ServerHasAgency st #

data NobodyHasAgency st #

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

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

data ServerHasAgency (st ∷ 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 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 ClientHasAgency (st ∷ LocalTxSubmission tx reject) Source # 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

data ClientHasAgency (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 Source #

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

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

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

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

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