hs-abci-sdk-0.1.0.0

Safe HaskellNone
LanguageHaskell2010

Tendermint.SDK.BaseApp.Transaction.Router

Documentation

class HasTxRouter layout (r :: EffectRow) (scope :: Scope) where Source #

Associated Types

type RouteTx layout (s :: EffectRow) :: * Source #

Methods

routeTx :: Proxy layout -> Proxy r -> Proxy scope -> Delayed (Sem r) env (RoutingTx ByteString) (RouteTx layout (TxEffs :& r)) -> Router env r (RoutingTx ByteString) (TxResult, Maybe Cache) Source #

applyAnteHandler :: Proxy layout -> Proxy r -> Proxy scope -> AnteHandler r -> RouteTx layout r -> RouteTx layout r Source #

hoistTxRouter :: Proxy layout -> Proxy r -> Proxy scope -> (forall a. Sem s a -> Sem s' a) -> RouteTx layout s -> RouteTx layout s' Source #

Instances
HasTxRouter EmptyTxServer r scope Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Transaction.Router

Associated Types

type RouteTx EmptyTxServer s :: Type Source #

(HasTxRouter a r scope, HasTxRouter b r scope) => HasTxRouter (a :<|> b :: Type) r scope Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Transaction.Router

Associated Types

type RouteTx (a :<|> b) s :: Type Source #

Methods

routeTx :: Proxy (a :<|> b) -> Proxy r -> Proxy scope -> Delayed (Sem r) env (RoutingTx ByteString) (RouteTx (a :<|> b) (TxEffs :& r)) -> Router env r (RoutingTx ByteString) (TxResult, Maybe Cache) Source #

applyAnteHandler :: Proxy (a :<|> b) -> Proxy r -> Proxy scope -> AnteHandler r -> RouteTx (a :<|> b) r -> RouteTx (a :<|> b) r Source #

hoistTxRouter :: Proxy (a :<|> b) -> Proxy r -> Proxy scope -> (forall a0. Sem s a0 -> Sem s' a0) -> RouteTx (a :<|> b) s -> RouteTx (a :<|> b) s' Source #

(HasTxRouter sublayout r scope, KnownSymbol path) => HasTxRouter (path :> sublayout :: Type) r scope Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Transaction.Router

Associated Types

type RouteTx (path :> sublayout) s :: Type Source #

Methods

routeTx :: Proxy (path :> sublayout) -> Proxy r -> Proxy scope -> Delayed (Sem r) env (RoutingTx ByteString) (RouteTx (path :> sublayout) (TxEffs :& r)) -> Router env r (RoutingTx ByteString) (TxResult, Maybe Cache) Source #

applyAnteHandler :: Proxy (path :> sublayout) -> Proxy r -> Proxy scope -> AnteHandler r -> RouteTx (path :> sublayout) r -> RouteTx (path :> sublayout) r Source #

hoistTxRouter :: Proxy (path :> sublayout) -> Proxy r -> Proxy scope -> (forall a. Sem s a -> Sem s' a) -> RouteTx (path :> sublayout) s -> RouteTx (path :> sublayout) s' Source #

(HasMessageType msg, HasCodec msg, Members (Tagged scope (ReadStore :: (Type -> Type) -> Type -> Type) ': (Embed IO ': ([] :: [(Type -> Type) -> Type -> Type]))) r, HasCodec a) => HasTxRouter (TypedMessage msg :~> Return a :: Type) r scope Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Transaction.Router

Associated Types

type RouteTx (TypedMessage msg :~> Return a) s :: Type Source #

Methods

routeTx :: Proxy (TypedMessage msg :~> Return a) -> Proxy r -> Proxy scope -> Delayed (Sem r) env (RoutingTx ByteString) (RouteTx (TypedMessage msg :~> Return a) (TxEffs :& r)) -> Router env r (RoutingTx ByteString) (TxResult, Maybe Cache) Source #

applyAnteHandler :: Proxy (TypedMessage msg :~> Return a) -> Proxy r -> Proxy scope -> AnteHandler r -> RouteTx (TypedMessage msg :~> Return a) r -> RouteTx (TypedMessage msg :~> Return a) r Source #

hoistTxRouter :: Proxy (TypedMessage msg :~> Return a) -> Proxy r -> Proxy scope -> (forall a0. Sem s a0 -> Sem s' a0) -> RouteTx (TypedMessage msg :~> Return a) s -> RouteTx (TypedMessage msg :~> Return a) s' Source #