| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Eventium.Store.Memory
Synopsis
- tvarEventStoreReader :: TVar (EventMap event) -> VersionedEventStoreReader STM event
- tvarEventStoreWriter :: TVar (EventMap event) -> VersionedEventStoreWriter STM event
- tvarGlobalEventStoreReader :: TVar (EventMap event) -> GlobalEventStoreReader STM event
- stateEventStoreReader :: forall event (m :: Type -> Type). MonadState (EventMap event) m => VersionedEventStoreReader m event
- stateEventStoreWriter :: forall event (m :: Type -> Type). MonadState (EventMap event) m => VersionedEventStoreWriter m event
- stateGlobalEventStoreReader :: forall event (m :: Type -> Type). MonadState (EventMap event) m => GlobalEventStoreReader m event
- embeddedStateEventStoreReader :: forall s (m :: Type -> Type) event. MonadState s m => (s -> EventMap event) -> VersionedEventStoreReader m event
- embeddedStateEventStoreWriter :: forall s (m :: Type -> Type) event. MonadState s m => (s -> EventMap event) -> (s -> EventMap event -> s) -> VersionedEventStoreWriter m event
- embeddedStateGlobalEventStoreReader :: forall s (m :: Type -> Type) event. MonadState s m => (s -> EventMap event) -> GlobalEventStoreReader m event
- data EventMap event
- emptyEventMap :: EventMap event
- eventMapTVar :: IO (TVar (EventMap event))
- module Eventium.Store.Class
Documentation
tvarEventStoreReader :: TVar (EventMap event) -> VersionedEventStoreReader STM event Source #
An EventStoreReader that stores events in a TVar and runs in STM.
This functions initializes the store by creating the TVar and hooking up
the event store API to that TVar.
tvarEventStoreWriter :: TVar (EventMap event) -> VersionedEventStoreWriter STM event Source #
tvarGlobalEventStoreReader :: TVar (EventMap event) -> GlobalEventStoreReader STM event Source #
Analog of tvarEventStoreReader for a GlobalEventStoreReader
stateEventStoreReader :: forall event (m :: Type -> Type). MonadState (EventMap event) m => VersionedEventStoreReader m event Source #
Specialized version of embeddedStateEventStoreReader that only contains an
EventMap in the state.
stateEventStoreWriter :: forall event (m :: Type -> Type). MonadState (EventMap event) m => VersionedEventStoreWriter m event Source #
Specialized version of embeddedStateEventStoreWriter that only contains an
EventMap in the state.
stateGlobalEventStoreReader :: forall event (m :: Type -> Type). MonadState (EventMap event) m => GlobalEventStoreReader m event Source #
embeddedStateEventStoreReader :: forall s (m :: Type -> Type) event. MonadState s m => (s -> EventMap event) -> VersionedEventStoreReader m event Source #
An EventStore that runs on some MonadState that contains an
EventMap. This is useful if you want to include other state in your
MonadState.
embeddedStateEventStoreWriter :: forall s (m :: Type -> Type) event. MonadState s m => (s -> EventMap event) -> (s -> EventMap event -> s) -> VersionedEventStoreWriter m event Source #
embeddedStateGlobalEventStoreReader :: forall s (m :: Type -> Type) event. MonadState s m => (s -> EventMap event) -> GlobalEventStoreReader m event Source #
Analogous to embeddedStateEventStore for a GlobalStreamEventStore.
Internal data structure used for the in-memory event stores.
emptyEventMap :: EventMap event Source #
What it says on the tin, an initialized empty EventMap
module Eventium.Store.Class