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

Marconi.Core.Transformer.WithTransform

Description

A transformer that map the events in an indexer.

See Marconi.Core for documentation.

Synopsis

Documentation

data WithTransform indexer output input #

WithTransform is an indexer transformer that map the event type of an indexer

Instances

Instances details
IndexerMapTrans WithTransform # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

unwrapMap :: forall (indexer :: Type -> Type) output event. Lens' (WithTransform indexer output event) (indexer output) #

(Queryable m output query indexer, Point output ~ Point input) => Queryable m input query (WithTransform indexer output) # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

query :: Point input -> query -> WithTransform indexer output input -> m (Result query) #

queryLatest :: query -> WithTransform indexer output input -> m (Result query) #

(Point output ~ Point input, IsIndex m output indexer, Ord (Point output)) => IsIndex m input (WithTransform indexer output) # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

index :: Timed (Point input) (Maybe input) -> WithTransform indexer output input -> m (WithTransform indexer output input) #

indexAll :: (Eq (Point input), Traversable f) => f (Timed (Point input) (Maybe input)) -> WithTransform indexer output input -> m (WithTransform indexer output input) #

indexAllDescending :: (Eq (Point input), Traversable f) => f (Timed (Point input) (Maybe input)) -> WithTransform indexer output input -> m (WithTransform indexer output input) #

rollback :: Point input -> WithTransform indexer output input -> m (WithTransform indexer output input) #

setLastStablePoint :: Point input -> WithTransform indexer output input -> m (WithTransform indexer output input) #

(Point output ~ Point event, IsSync m output indexer) => IsSync m event (WithTransform indexer output) # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

lastStablePoint :: WithTransform indexer output event -> m (Point event) #

lastSyncPoint :: WithTransform indexer output event -> m (Point event) #

(Functor m, Resetable m output indexer, HasGenesis (Point event)) => Resetable m event (WithTransform indexer output) # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

reset :: WithTransform indexer output event -> m (WithTransform indexer output event) #

HasTransformConfig input output (WithTransform indexer output) # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

transformEvent :: Lens' (WithTransform indexer output input) (input -> Maybe output) #

Closeable m indexer => Closeable m (WithTransform indexer output) # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

close :: WithTransform indexer output event -> m () #

HasDatabasePath indexer => HasDatabasePath (WithTransform indexer output) # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

getDatabasePath :: WithTransform indexer output event -> SQLiteDBLocation #

config :: forall indexer output input input. Lens (WithTransform indexer output input) (WithTransform indexer output input) (TransformConfig output input) (TransformConfig output input) #

withTransform :: (Point input -> Point output) -> (input -> Maybe output) -> indexer output -> WithTransform indexer output input #

A smart constructor for WithTransform

class HasTransformConfig input output indexer where #

Provide accces to the tranformation function of a WithTransform transformer. The provided instance ensure that access is granted even if other indexer transformers are used on top of this one

Methods

transformEvent :: Lens' (indexer input) (input -> Maybe output) #

Instances

Instances details
HasTransformConfig input output (WithTransform indexer output) # 
Instance details

Defined in Marconi.Core.Transformer.WithTransform

Methods

transformEvent :: Lens' (WithTransform indexer output input) (input -> Maybe output) #