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) :: Type 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

Instances details
HasTxRouter EmptyTxServer r scope Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Transaction.Router

Associated Types

type RouteTx EmptyTxServer s Source #

Methods

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

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

hoistTxRouter :: forall (s :: EffectRow) (s' :: EffectRow). Proxy EmptyTxServer -> Proxy r -> Proxy scope -> (forall a. Sem s a -> Sem s' a) -> RouteTx EmptyTxServer s -> RouteTx EmptyTxServer s' 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 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 :: forall (s :: EffectRow) (s' :: EffectRow). 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 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 :: forall (s :: EffectRow) (s' :: EffectRow). 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] 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 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 :: forall (s :: EffectRow) (s' :: EffectRow). 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 #