haskoin-store-1.5.2: Storage and index for Bitcoin and Bitcoin Cash
Safe HaskellNone
LanguageHaskell2010

Haskoin.Store.Common

Synopsis

Documentation

data Limits Source #

Constructors

Limits 

Fields

Instances

Instances details
Show Limits Source # 
Instance details

Defined in Haskoin.Store.Common

Default Limits Source # 
Instance details

Defined in Haskoin.Store.Common

Methods

def :: Limits #

Eq Limits Source # 
Instance details

Defined in Haskoin.Store.Common

Methods

(==) :: Limits -> Limits -> Bool #

(/=) :: Limits -> Limits -> Bool #

data Start Source #

Constructors

AtTx !TxHash 
AtBlock !BlockHeight 

Instances

Instances details
Show Start Source # 
Instance details

Defined in Haskoin.Store.Common

Methods

showsPrec :: Int -> Start -> ShowS #

show :: Start -> String #

showList :: [Start] -> ShowS #

Eq Start Source # 
Instance details

Defined in Haskoin.Store.Common

Methods

(==) :: Start -> Start -> Bool #

(/=) :: Start -> Start -> Bool #

class Monad m => StoreReadBase (m :: Type -> Type) where Source #

Instances

Instances details
StoreReadBase m => StoreReadBase (CacheT m) Source # 
Instance details

Defined in Haskoin.Store.Cache

MonadIO m => StoreReadBase (DatabaseReaderT m) Source # 
Instance details

Defined in Haskoin.Store.Database.Reader

MonadIO m => StoreReadBase (WriterT m) Source # 
Instance details

Defined in Haskoin.Store.Database.Writer

class StoreReadBase m => StoreReadExtra (m :: Type -> Type) where Source #

Instances

Instances details
(MonadUnliftIO m, MonadLoggerIO m, StoreReadExtra m) => StoreReadExtra (CacheT m) Source # 
Instance details

Defined in Haskoin.Store.Cache

MonadUnliftIO m => StoreReadExtra (DatabaseReaderT m) Source # 
Instance details

Defined in Haskoin.Store.Database.Reader

class StoreWrite (m :: Type -> Type) where Source #

deriveAddresses :: DeriveAddr -> XPubKey -> Word32 -> [(Word32, Address)] Source #

deriveFunction :: Ctx -> DeriveType -> DeriveAddr Source #

applyLimits :: Limits -> [a] -> [a] Source #

applyLimitsC :: forall (m :: Type -> Type) i. Monad m => Limits -> ConduitT i i m () Source #

applyLimit :: Limit -> [a] -> [a] Source #

applyLimitC :: forall (m :: Type -> Type) i. Monad m => Limit -> ConduitT i i m () Source #

sortTxs :: [Tx] -> [(Word32, Tx)] Source #

nub' :: Hashable a => [a] -> [a] Source #

streamThings :: Monad m => (Limits -> m [a]) -> Maybe (a -> TxHash) -> Limits -> ConduitT () a m () Source #

joinDescStreams :: forall (m :: Type -> Type) a. (Monad m, Ord a) => [ConduitT () a m ()] -> ConduitT () a m () Source #