-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Sequence ID production and consumption -- -- Uniquely identify elements in a sequence. @package seqid @version 0.5.2 module Data.SequenceId -- | If the difference between the sequence IDs is not 1 then the -- appropriate error is returned. checkSeqId :: SequenceId -> SequenceId -> Maybe SequenceIdError -- | Increment to the next sequense ID incrementSeqId :: SequenceId -> SequenceId -- | If the current sequence ID is greater than 1 more than the last -- sequence ID then the appropriate error is returned. checkSeqIdM :: Monad m => SequenceId -> (SequenceIdT m) (Maybe SequenceIdError) -- | Update to the next sequense ID incrementSeqIdM :: Monad m => SequenceIdT m SequenceId -- | Last seen sequense ID lastSeqIdM :: Monad m => SequenceIdT m SequenceId newtype SequenceIdT m a SequenceIdT :: StateT SequenceId m a -> SequenceIdT m a [unSequenceIdT] :: SequenceIdT m a -> StateT SequenceId m a runSequenceIdT :: Monad m => SequenceIdT m b -> SequenceId -> m (b, SequenceId) execSequenceIdT :: Monad m => SequenceIdT m b -> SequenceId -> m SequenceId evalSequenceIdT :: Monad m => SequenceIdT m b -> SequenceId -> m b data SequenceIdError SequenceIdError :: !SequenceIdErrorType -> !SequenceId -> !SequenceId -> SequenceIdError [errType] :: SequenceIdError -> !SequenceIdErrorType [lastSeqId] :: SequenceIdError -> !SequenceId [currSeqId] :: SequenceIdError -> !SequenceId data SequenceIdErrorType SequenceIdDropped :: SequenceIdErrorType SequenceIdDuplicated :: SequenceIdErrorType newtype SequenceId SequenceId :: Word32 -> SequenceId [unSequenceId] :: SequenceId -> Word32 instance GHC.Show.Show Data.SequenceId.SequenceIdError instance GHC.Classes.Eq Data.SequenceId.SequenceIdError instance GHC.Show.Show Data.SequenceId.SequenceIdErrorType instance GHC.Classes.Eq Data.SequenceId.SequenceIdErrorType instance Control.Monad.Trans.Class.MonadTrans Data.SequenceId.SequenceIdT instance GHC.Base.Monad m => Control.Monad.State.Class.MonadState Data.SequenceId.SequenceId (Data.SequenceId.SequenceIdT m) instance GHC.Base.Functor m => GHC.Base.Functor (Data.SequenceId.SequenceIdT m) instance GHC.Base.Monad m => GHC.Base.Applicative (Data.SequenceId.SequenceIdT m) instance GHC.Base.Monad m => GHC.Base.Monad (Data.SequenceId.SequenceIdT m) instance GHC.Enum.Enum Data.SequenceId.SequenceId instance GHC.Real.Real Data.SequenceId.SequenceId instance GHC.Real.Integral Data.SequenceId.SequenceId instance GHC.Num.Num Data.SequenceId.SequenceId instance GHC.Classes.Ord Data.SequenceId.SequenceId instance GHC.Classes.Eq Data.SequenceId.SequenceId instance GHC.Show.Show Data.SequenceId.SequenceId