eventsourcing-0.9.0: src/Database/CQRS.hs
module Database.CQRS
( -- * Events
Event(..)
, WritableEvent(..)
-- * Streams
, Stream(..)
, WritableStream(..)
, EventWithContext(..)
, EventWithContext'
, MonadMetadata(..)
, ConsistencyCheck(..)
, writeEvent
, writeEventCc
, optimistically
, StreamBounds(..)
, StreamBounds'
, afterEvent
, untilEvent
-- * Stream families
, StreamFamily(..)
-- * Aggregators and projections
, Aggregator
, runAggregator
, Projection
, runProjection
, TrackedState(..)
, TrackingTable(..)
, InMemoryTrackingTable(..)
, createInMemoryTrackingTable
, executeInMemoryActions
-- * Read models
, ReadModel(..)
-- * Transformers
, Transformer
, TransformedStream
, transformStream
, TransformedStreamFamily
, transformStreamFamily
, Transform
, pushEvent
, mergeEvents
, flushEvents
, failTransformer
-- * Errors
, Error(..)
) where
import Database.CQRS.Error
import Database.CQRS.Event
import Database.CQRS.Projection
import Database.CQRS.ReadModel
import Database.CQRS.Stream
import Database.CQRS.StreamFamily
import Database.CQRS.Transformer