hs-abci-sdk-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

Tendermint.SDK.BaseApp.Store.TH

Synopsis

Documentation

makeSubStore Source #

Arguments

:: Name

store

-> String

substoreName

-> TypeQ

store type

-> ByteString

key

-> Q [Dec] 

class RawKey k => IsKey k ns where Source #

Minimal complete definition

Nothing

Associated Types

type Value k ns :: Type Source #

Methods

prefix :: Proxy k -> Proxy ns -> ByteString Source #

default prefix :: Proxy k -> Proxy ns -> ByteString Source #

Instances

Instances details
IsKey () (Var a :: Type) Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.Var

Associated Types

type Value () (Var a) Source #

Methods

prefix :: Proxy () -> Proxy (Var a) -> ByteString Source #

RawKey k => IsKey k (Map k v :: Type) Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.Map

Associated Types

type Value k (Map k v) Source #

Methods

prefix :: Proxy k -> Proxy (Map k v) -> ByteString Source #

class RawKey k where Source #

Keys

Methods

rawKey :: Iso' k ByteString Source #

Instances

Instances details
RawKey Word64 Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.RawStore

RawKey () Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.RawStore

Methods

rawKey :: Iso' () ByteString Source #

RawKey Text Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.RawStore

Methods

rawKey :: Iso' Text ByteString Source #

RawKey Address Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.RawStore

RawKey PubKey_ Source # 
Instance details

Defined in Tendermint.SDK.Modules.Validators.Types

data Var (a :: Type) Source #

Instances

Instances details
IsKey () (Var a :: Type) Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.Var

Associated Types

type Value () (Var a) Source #

Methods

prefix :: Proxy () -> Proxy (Var a) -> ByteString Source #

(HasCodec a, Member (Tagged 'QueryAndMempool (ReadStore :: (Type -> Type) -> Type -> Type)) r) => HasQueryRouter (StoreLeaf (Var a) :: Type) r Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Query.Store

Associated Types

type RouteQ (StoreLeaf (Var a)) r Source #

Methods

routeQ :: Proxy (StoreLeaf (Var a)) -> Proxy r -> Delayed (Sem r) env QueryRequest (RouteQ (StoreLeaf (Var a)) (QueryEffs :& r)) -> Router env r QueryRequest Query Source #

hoistQueryRouter :: forall (s :: EffectRow) (s' :: EffectRow). Proxy (StoreLeaf (Var a)) -> Proxy r -> (forall a0. Sem s a0 -> Sem s' a0) -> RouteQ (StoreLeaf (Var a)) s -> RouteQ (StoreLeaf (Var a)) s' Source #

type Value () (Var a :: Type) Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.Var

type Value () (Var a :: Type) = a
type RouteQ (StoreLeaf (Var a) :: Type) r Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Query.Store

type RouteQ (StoreLeaf (Var a) :: Type) r = RouteQ (QA () :> Leaf a) r

makeVar :: IsKey k ns => Value k ns ~ Var a => k -> Store ns -> Value k ns Source #

data Array (a :: Type) Source #

A 'Array a' is an appendable list whose elements can be accessed | by their index. You can also delete from the list, in which case accessing | that index will result in a Nothing.

Instances

Instances details
(HasCodec a, Member (Tagged 'QueryAndMempool (ReadStore :: (Type -> Type) -> Type -> Type)) r) => HasQueryRouter (StoreLeaf (Array a) :: Type) r Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Query.Store

Associated Types

type RouteQ (StoreLeaf (Array a)) r Source #

Methods

routeQ :: Proxy (StoreLeaf (Array a)) -> Proxy r -> Delayed (Sem r) env QueryRequest (RouteQ (StoreLeaf (Array a)) (QueryEffs :& r)) -> Router env r QueryRequest Query Source #

hoistQueryRouter :: forall (s :: EffectRow) (s' :: EffectRow). Proxy (StoreLeaf (Array a)) -> Proxy r -> (forall a0. Sem s a0 -> Sem s' a0) -> RouteQ (StoreLeaf (Array a)) s -> RouteQ (StoreLeaf (Array a)) s' Source #

type RouteQ (StoreLeaf (Array a) :: Type) r Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Query.Store

type RouteQ (StoreLeaf (Array a) :: Type) r = RouteQ (QA Word64 :> Leaf a) r

makeArray :: IsKey k ns => Value k ns ~ Array a => k -> Store ns -> Value k ns Source #

Smart constuctor to make sure we're making a Array from | the appropriate key type.

data List (a :: Type) Source #

makeList :: IsKey key ns => Value key ns ~ List a => key -> Store ns -> Value key ns Source #

data Map (k :: Type) (v :: Type) Source #

Instances

Instances details
RawKey k => IsKey k (Map k v :: Type) Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.Map

Associated Types

type Value k (Map k v) Source #

Methods

prefix :: Proxy k -> Proxy (Map k v) -> ByteString Source #

(QueryData k, HasCodec v, Member (Tagged 'QueryAndMempool (ReadStore :: (Type -> Type) -> Type -> Type)) r) => HasQueryRouter (StoreLeaf (Map k v) :: Type) r Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Query.Store

Associated Types

type RouteQ (StoreLeaf (Map k v)) r Source #

Methods

routeQ :: Proxy (StoreLeaf (Map k v)) -> Proxy r -> Delayed (Sem r) env QueryRequest (RouteQ (StoreLeaf (Map k v)) (QueryEffs :& r)) -> Router env r QueryRequest Query Source #

hoistQueryRouter :: forall (s :: EffectRow) (s' :: EffectRow). Proxy (StoreLeaf (Map k v)) -> Proxy r -> (forall a. Sem s a -> Sem s' a) -> RouteQ (StoreLeaf (Map k v)) s -> RouteQ (StoreLeaf (Map k v)) s' Source #

type Value k (Map k v :: Type) Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Store.Map

type Value k (Map k v :: Type) = v
type RouteQ (StoreLeaf (Map k v) :: Type) r Source # 
Instance details

Defined in Tendermint.SDK.BaseApp.Query.Store

type RouteQ (StoreLeaf (Map k v) :: Type) r = RouteQ (QA k :> Leaf v) r

makeMap :: IsKey key ns => Value key ns ~ Map k v => key -> Store ns -> Value key ns Source #