marconi-core-1.2.0.0: Modular indexing for rewindable ledger
Safe HaskellSafe-Inferred
LanguageHaskell2010

Marconi.Core.Transformer.WithAction

Description

A transformer that fans events into an arbitrary action.

The configuration is a function Timed (Point event) event -> IO ()

See Marconi.Core.Transformer.WithStream.Socket and Marconi.Core.Transformer.WithStream.TBQueue for example usages.

Synopsis

Documentation

newtype WithAction indexer event #

An indexer which runs an action on events during indexing

Constructors

WithAction 

Instances

Instances details
IndexerTrans WithAction # 
Instance details

Defined in Marconi.Core.Transformer.WithAction

Methods

unwrap :: forall (indexer :: Type -> Type) event. Lens' (WithAction indexer event) (indexer event) #

Queryable m event query indexer => Queryable m event query (WithAction indexer) # 
Instance details

Defined in Marconi.Core.Transformer.WithAction

Methods

query :: Point event -> query -> WithAction indexer event -> m (Result query) #

queryLatest :: query -> WithAction indexer event -> m (Result query) #

(MonadIO m, MonadError IndexerError m, IsIndex m event indexer) => IsIndex m event (WithAction indexer) # 
Instance details

Defined in Marconi.Core.Transformer.WithAction

Methods

index :: Timed (Point event) (Maybe event) -> WithAction indexer event -> m (WithAction indexer event) #

indexAll :: (Eq (Point event), Traversable f) => f (Timed (Point event) (Maybe event)) -> WithAction indexer event -> m (WithAction indexer event) #

indexAllDescending :: (Eq (Point event), Traversable f) => f (Timed (Point event) (Maybe event)) -> WithAction indexer event -> m (WithAction indexer event) #

rollback :: Point event -> WithAction indexer event -> m (WithAction indexer event) #

setLastStablePoint :: Point event -> WithAction indexer event -> m (WithAction indexer event) #

IsSync m event indexer => IsSync m event (WithAction indexer) # 
Instance details

Defined in Marconi.Core.Transformer.WithAction

Methods

lastStablePoint :: WithAction indexer event -> m (Point event) #

lastSyncPoint :: WithAction indexer event -> m (Point event) #

Closeable m indexer => Closeable m (WithAction indexer) # 
Instance details

Defined in Marconi.Core.Transformer.WithAction

Methods

close :: WithAction indexer event -> m () #

withActionWrapper :: forall indexer event indexer event. Iso (WithAction indexer event) (WithAction indexer event) (IndexTransformer WithActionConfig indexer event) (IndexTransformer WithActionConfig indexer event) #

newtype WithActionConfig event #

Configuration is a function Timed (Point event) event -> IO ()

Constructors

WithActionConfig 

Fields

withActionConfigAction :: forall event event. Iso (WithActionConfig event) (WithActionConfig event) (Timed (Point event) event -> IO ()) (Timed (Point event) event -> IO ()) #