biohazard 1.0.4 → 1.1.0
raw patch · 8 files changed
+78/−40 lines, 8 filesdep ~exceptionsPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: exceptions
API changes (from Hackage documentation)
- Bio.Iteratee: instance GHC.Exception.Exception Bio.Iteratee.ParseError
- Bio.Iteratee.Base: instance (Control.Monad.Catch.MonadMask m, Bio.Iteratee.Base.Nullable s, Bio.Iteratee.Base.NullPoint s) => Control.Monad.Catch.MonadMask (Bio.Iteratee.Base.Iteratee s m)
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.DivergentException
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.EnumException
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.EnumStringException
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.EnumUnhandledIterException
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.EofException
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.IFException
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.IterException
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.IterStringException
- Bio.Iteratee.Exception: instance GHC.Exception.Exception Bio.Iteratee.Exception.SeekException
- Bio.Iteratee.ZLib: instance GHC.Exception.Exception Bio.Iteratee.ZLib.ZLibException
- Bio.Iteratee.ZLib: instance GHC.Exception.Exception Bio.Iteratee.ZLib.ZLibParamsException
- Bio.Iteratee.ZLib: instance GHC.Exception.Exception Bio.Iteratee.ZLib.ZlibFlush
- Bio.Prelude: always :: STM Bool -> STM ()
- Bio.Prelude: alwaysSucceeds :: () => STM a -> STM ()
- Bio.Prelude: newtype Const a (b :: k) :: forall k. () => * -> k -> *
+ Bio.Adna: infix 9 :->
+ Bio.Bam.Rec: infix 9 :*
+ Bio.Iteratee: instance GHC.Exception.Type.Exception Bio.Iteratee.ParseError
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.DivergentException
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.EnumException
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.EnumStringException
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.EnumUnhandledIterException
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.EofException
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.IFException
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.IterException
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.IterStringException
+ Bio.Iteratee.Exception: instance GHC.Exception.Type.Exception Bio.Iteratee.Exception.SeekException
+ Bio.Iteratee.Iteratee: bracketIO :: MonadBracketIO m => IO a -> (a -> IO b) -> (a -> m c) -> m c
+ Bio.Iteratee.Iteratee: class MonadIO m => MonadBracketIO m
+ Bio.Iteratee.Iteratee: instance (Bio.Iteratee.Iteratee.MonadBracketIO m, Bio.Iteratee.Base.Nullable s) => Bio.Iteratee.Iteratee.MonadBracketIO (Bio.Iteratee.Base.Iteratee s m)
+ Bio.Iteratee.Iteratee: instance Bio.Iteratee.Iteratee.MonadBracketIO GHC.Types.IO
+ Bio.Iteratee.ZLib: instance GHC.Exception.Type.Exception Bio.Iteratee.ZLib.ZLibException
+ Bio.Iteratee.ZLib: instance GHC.Exception.Type.Exception Bio.Iteratee.ZLib.ZLibParamsException
+ Bio.Iteratee.ZLib: instance GHC.Exception.Type.Exception Bio.Iteratee.ZLib.ZlibFlush
+ Bio.Prelude: Ap :: f a -> Ap
+ Bio.Prelude: [getAp] :: Ap -> f a
+ Bio.Prelude: infix 6 :+
+ Bio.Prelude: infixl 2 :!:
+ Bio.Prelude: infixl 3 <|>
+ Bio.Prelude: infixl 5 .|.
+ Bio.Prelude: infixl 6 `xor`
+ Bio.Prelude: infixl 8 `rotateR`
+ Bio.Prelude: infixr 6 <>
+ Bio.Prelude: infixr 9 .
+ Bio.Prelude: newtype Const a (b :: k) :: forall k. () => Type -> k -> Type
- Bio.Adna: ALN :: !(Vector NPair) -> !FragType -> Alignment
+ Bio.Adna: ALN :: !Vector NPair -> !FragType -> Alignment
- Bio.Adna: MMat44D :: (IOVector Double) -> MMat44D
+ Bio.Adna: MMat44D :: IOVector Double -> MMat44D
- Bio.Adna: Mat44D :: (Vector Double) -> Mat44D
+ Bio.Adna: Mat44D :: Vector Double -> Mat44D
- Bio.Adna: NDP :: !float -> !float -> !float -> !(vec float) -> !(vec float) -> !float -> !float -> !(vec float) -> !(vec float) -> NewDamageParameters vec float
+ Bio.Adna: NDP :: !float -> !float -> !float -> !vec float -> !vec float -> !float -> !float -> !vec float -> !vec float -> NewDamageParameters vec float
- Bio.Adna: NewDamage :: (NewDamageParameters vec float) -> GenDamageParameters vec float
+ Bio.Adna: NewDamage :: NewDamageParameters vec float -> GenDamageParameters vec float
- Bio.Adna: OldDamage :: (DamageParameters float) -> GenDamageParameters vec float
+ Bio.Adna: OldDamage :: DamageParameters float -> GenDamageParameters vec float
- Bio.Adna: [a_sequence] :: Alignment -> !(Vector NPair)
+ Bio.Adna: [a_sequence] :: Alignment -> !Vector NPair
- Bio.Adna: [dp_alpha3] :: NewDamageParameters vec float -> !(vec float)
+ Bio.Adna: [dp_alpha3] :: NewDamageParameters vec float -> !vec float
- Bio.Adna: [dp_alpha5] :: NewDamageParameters vec float -> !(vec float)
+ Bio.Adna: [dp_alpha5] :: NewDamageParameters vec float -> !vec float
- Bio.Adna: [dp_beta3] :: NewDamageParameters vec float -> !(vec float)
+ Bio.Adna: [dp_beta3] :: NewDamageParameters vec float -> !vec float
- Bio.Adna: [dp_beta5] :: NewDamageParameters vec float -> !(vec float)
+ Bio.Adna: [dp_beta5] :: NewDamageParameters vec float -> !vec float
- Bio.Bam.Index: BamIndex :: {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int64 -> a -> {-# UNPACK #-} !(Vector Bins) -> {-# UNPACK #-} !(Vector Ckpoints) -> BamIndex a
+ Bio.Bam.Index: BamIndex :: {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int64 -> a -> {-# UNPACK #-} !Vector Bins -> {-# UNPACK #-} !Vector Ckpoints -> BamIndex a
- Bio.Bam.Index: Subsequence :: (IntMap Int) -> Subsequence
+ Bio.Bam.Index: Subsequence :: IntMap Int -> Subsequence
- Bio.Bam.Index: [refseq_bins] :: BamIndex a -> {-# UNPACK #-} !(Vector Bins)
+ Bio.Bam.Index: [refseq_bins] :: BamIndex a -> {-# UNPACK #-} !Vector Bins
- Bio.Bam.Index: [refseq_ckpoints] :: BamIndex a -> {-# UNPACK #-} !(Vector Ckpoints)
+ Bio.Bam.Index: [refseq_ckpoints] :: BamIndex a -> {-# UNPACK #-} !Vector Ckpoints
- Bio.Bam.Pileup: PileM :: forall r. (a -> PileF m r) -> PileF m r -> PileM m a
+ Bio.Bam.Pileup: PileM :: (forall r. (a -> PileF m r) -> PileF m r) -> PileM m a
- Bio.Bam.Pileup: V_Nuc :: (Vector Nucleotide) -> V_Nuc
+ Bio.Bam.Pileup: V_Nuc :: Vector Nucleotide -> V_Nuc
- Bio.Bam.Pileup: V_Nucs :: (Vector Nucleotides) -> V_Nucs
+ Bio.Bam.Pileup: V_Nucs :: Vector Nucleotides -> V_Nucs
- Bio.Bam.Reader: concatDefaultInputs :: (MonadIO m, MonadMask m) => Enumerator' BamMeta [BamRaw] m a
+ Bio.Bam.Reader: concatDefaultInputs :: MonadBracketIO m => Enumerator' BamMeta [BamRaw] m a
- Bio.Bam.Reader: concatInputs :: (MonadIO m, MonadMask m) => [FilePath] -> Enumerator' BamMeta [BamRaw] m a
+ Bio.Bam.Reader: concatInputs :: MonadBracketIO m => [FilePath] -> Enumerator' BamMeta [BamRaw] m a
- Bio.Bam.Reader: decodeAnyBamFile :: (MonadIO m, MonadMask m) => FilePath -> (BamMeta -> Iteratee [BamRaw] m a) -> m (Iteratee [BamRaw] m a)
+ Bio.Bam.Reader: decodeAnyBamFile :: MonadBracketIO m => FilePath -> (BamMeta -> Iteratee [BamRaw] m a) -> m (Iteratee [BamRaw] m a)
- Bio.Bam.Reader: decodeAnyBamOrSamFile :: (MonadIO m, MonadMask m) => FilePath -> (BamMeta -> Iteratee [BamRec] m a) -> m (Iteratee [BamRec] m a)
+ Bio.Bam.Reader: decodeAnyBamOrSamFile :: MonadBracketIO m => FilePath -> (BamMeta -> Iteratee [BamRec] m a) -> m (Iteratee [BamRec] m a)
- Bio.Bam.Reader: mergeDefaultInputs :: (MonadIO m, MonadMask m) => (BamMeta -> Enumeratee [BamRaw] [BamRaw] (Iteratee [BamRaw] m) a) -> Enumerator' BamMeta [BamRaw] m a
+ Bio.Bam.Reader: mergeDefaultInputs :: MonadBracketIO m => (BamMeta -> Enumeratee [BamRaw] [BamRaw] (Iteratee [BamRaw] m) a) -> Enumerator' BamMeta [BamRaw] m a
- Bio.Bam.Reader: mergeInputs :: (MonadIO m, MonadMask m) => (BamMeta -> Enumeratee [BamRaw] [BamRaw] (Iteratee [BamRaw] m) a) -> [FilePath] -> Enumerator' BamMeta [BamRaw] m a
+ Bio.Bam.Reader: mergeInputs :: MonadBracketIO m => (BamMeta -> Enumeratee [BamRaw] [BamRaw] (Iteratee [BamRaw] m) a) -> [FilePath] -> Enumerator' BamMeta [BamRaw] m a
- Bio.Bam.Rec: FloatArr :: (Vector Float) -> Ext
+ Bio.Bam.Rec: FloatArr :: Vector Float -> Ext
- Bio.Bam.Rec: IntArr :: (Vector Int) -> Ext
+ Bio.Bam.Rec: IntArr :: Vector Int -> Ext
- Bio.Bam.Regions: Regions :: (IntMap Subsequence) -> Regions
+ Bio.Bam.Regions: Regions :: IntMap Subsequence -> Regions
- Bio.Bam.Regions: Subsequence :: (IntMap Int) -> Subsequence
+ Bio.Bam.Regions: Subsequence :: IntMap Int -> Subsequence
- Bio.Iteratee: class Monad m => MonadIO (m :: * -> *)
+ Bio.Iteratee: class Monad m => MonadIO (m :: Type -> Type)
- Bio.Iteratee: class MonadCatch m => MonadMask (m :: * -> *)
+ Bio.Iteratee: class MonadCatch m => MonadMask (m :: Type -> Type)
- Bio.Iteratee: enumAuxFile :: (MonadIO m, MonadMask m) => FilePath -> Iteratee ByteString m a -> m a
+ Bio.Iteratee: enumAuxFile :: MonadBracketIO m => FilePath -> Iteratee ByteString m a -> m a
- Bio.Iteratee: enumDefaultInputs :: (MonadIO m, MonadMask m) => Enumerator ByteString m a
+ Bio.Iteratee: enumDefaultInputs :: MonadBracketIO m => Enumerator ByteString m a
- Bio.Iteratee: enumInputs :: (MonadIO m, MonadMask m) => [FilePath] -> Enumerator ByteString m a
+ Bio.Iteratee: enumInputs :: MonadBracketIO m => [FilePath] -> Enumerator ByteString m a
- Bio.Iteratee.Base: EOF :: (Maybe SomeException) -> Stream c
+ Bio.Iteratee.Base: EOF :: Maybe SomeException -> Stream c
- Bio.Iteratee.Base: Iteratee :: forall r. (a -> Stream s -> m r) -> ((Stream s -> Iteratee s m a) -> Maybe SomeException -> m r) -> m r -> Iteratee s m a
+ Bio.Iteratee.Base: Iteratee :: (forall r. (a -> Stream s -> m r) -> ((Stream s -> Iteratee s m a) -> Maybe SomeException -> m r) -> m r) -> Iteratee s m a
- Bio.Iteratee.Builder: BB :: {-# UNPACK #-} !(ForeignPtr Word8) -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> BB
+ Bio.Iteratee.Builder: BB :: {-# UNPACK #-} !ForeignPtr Word8 -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> BB
- Bio.Iteratee.Builder: BclArgs :: BclSpecialType -> {-# UNPACK #-} !(Vector Word8) -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> BclArgs
+ Bio.Iteratee.Builder: BclArgs :: BclSpecialType -> {-# UNPACK #-} !Vector Word8 -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> BclArgs
- Bio.Iteratee.Builder: [buffer] :: BB -> {-# UNPACK #-} !(ForeignPtr Word8)
+ Bio.Iteratee.Builder: [buffer] :: BB -> {-# UNPACK #-} !ForeignPtr Word8
- Bio.Iteratee.IO: enumFile :: (MonadIO m, MonadMask m) => Int -> FilePath -> Enumerator Bytes m a
+ Bio.Iteratee.IO: enumFile :: MonadBracketIO m => Int -> FilePath -> Enumerator Bytes m a
- Bio.Iteratee.IO: enumFileRandom :: (MonadIO m, MonadMask m) => Int -> FilePath -> Enumerator Bytes m a
+ Bio.Iteratee.IO: enumFileRandom :: MonadBracketIO m => Int -> FilePath -> Enumerator Bytes m a
- Bio.Iteratee.Iteratee: checkErr :: (NullPoint s) => Iteratee s m a -> Iteratee s m (Either SomeException a)
+ Bio.Iteratee.Iteratee: checkErr :: NullPoint s => Iteratee s m a -> Iteratee s m (Either SomeException a)
- Bio.Iteratee.Iteratee: eneeCheckIfDoneHandle :: (NullPoint elo) => EnumerateeHandler eli elo m a -> ((Stream eli -> Iteratee eli m a) -> Maybe SomeException -> Iteratee elo m (Iteratee eli m a)) -> Enumeratee elo eli m a
+ Bio.Iteratee.Iteratee: eneeCheckIfDoneHandle :: NullPoint elo => EnumerateeHandler eli elo m a -> ((Stream eli -> Iteratee eli m a) -> Maybe SomeException -> Iteratee elo m (Iteratee eli m a)) -> Enumeratee elo eli m a
- Bio.Iteratee.Iteratee: eneeCheckIfDoneIgnore :: (NullPoint elo) => ((Stream eli -> Iteratee eli m a) -> Maybe SomeException -> Iteratee elo m (Iteratee eli m a)) -> Enumeratee elo eli m a
+ Bio.Iteratee.Iteratee: eneeCheckIfDoneIgnore :: NullPoint elo => ((Stream eli -> Iteratee eli m a) -> Maybe SomeException -> Iteratee elo m (Iteratee eli m a)) -> Enumeratee elo eli m a
- Bio.Iteratee.Iteratee: eneeCheckIfDonePass :: (NullPoint elo) => ((Stream eli -> Iteratee eli m a) -> Maybe SomeException -> Iteratee elo m (Iteratee eli m a)) -> Enumeratee elo eli m a
+ Bio.Iteratee.Iteratee: eneeCheckIfDonePass :: NullPoint elo => ((Stream eli -> Iteratee eli m a) -> Maybe SomeException -> Iteratee elo m (Iteratee eli m a)) -> Enumeratee elo eli m a
- Bio.Iteratee.Iteratee: enumCheckIfDone :: (Monad m) => Iteratee s m a -> m (Bool, Iteratee s m a)
+ Bio.Iteratee.Iteratee: enumCheckIfDone :: Monad m => Iteratee s m a -> m (Bool, Iteratee s m a)
- Bio.Iteratee.Iteratee: enumChunk :: (Monad m) => Stream s -> Enumerator s m a
+ Bio.Iteratee.Iteratee: enumChunk :: Monad m => Stream s -> Enumerator s m a
- Bio.Iteratee.Iteratee: enumEof :: (Monad m) => Enumerator s m a
+ Bio.Iteratee.Iteratee: enumEof :: Monad m => Enumerator s m a
- Bio.Iteratee.Iteratee: enumList :: (Monad m) => [s] -> Enumerator s m a
+ Bio.Iteratee.Iteratee: enumList :: Monad m => [s] -> Enumerator s m a
- Bio.Iteratee.Iteratee: enumPure1Chunk :: (Monad m) => s -> Enumerator s m a
+ Bio.Iteratee.Iteratee: enumPure1Chunk :: Monad m => s -> Enumerator s m a
- Bio.Iteratee.Iteratee: getChunks :: (Nullable s) => Iteratee s m [s]
+ Bio.Iteratee.Iteratee: getChunks :: Nullable s => Iteratee s m [s]
- Bio.Iteratee.Iteratee: isStreamFinished :: (Nullable s) => Iteratee s m (Maybe SomeException)
+ Bio.Iteratee.Iteratee: isStreamFinished :: Nullable s => Iteratee s m (Maybe SomeException)
- Bio.Iteratee.Iteratee: joinIM :: (Monad m) => m (Iteratee s m a) -> Iteratee s m a
+ Bio.Iteratee.Iteratee: joinIM :: Monad m => m (Iteratee s m a) -> Iteratee s m a
- Bio.Iteratee.Iteratee: mapChunks :: (NullPoint s) => (s -> s') -> Enumeratee s s' m a
+ Bio.Iteratee.Iteratee: mapChunks :: NullPoint s => (s -> s') -> Enumeratee s s' m a
- Bio.Iteratee.ZLib: CompressParams :: !CompressionLevel -> !Method -> !WindowBits -> !MemoryLevel -> !CompressionStrategy -> !Int -> !(Maybe ByteString) -> CompressParams
+ Bio.Iteratee.ZLib: CompressParams :: !CompressionLevel -> !Method -> !WindowBits -> !MemoryLevel -> !CompressionStrategy -> !Int -> !Maybe ByteString -> CompressParams
- Bio.Iteratee.ZLib: DecompressParams :: !WindowBits -> !Int -> !(Maybe ByteString) -> DecompressParams
+ Bio.Iteratee.ZLib: DecompressParams :: !WindowBits -> !Int -> !Maybe ByteString -> DecompressParams
- Bio.Iteratee.ZLib: [compressDictionary] :: CompressParams -> !(Maybe ByteString)
+ Bio.Iteratee.ZLib: [compressDictionary] :: CompressParams -> !Maybe ByteString
- Bio.Iteratee.ZLib: [decompressDictionary] :: DecompressParams -> !(Maybe ByteString)
+ Bio.Iteratee.ZLib: [decompressDictionary] :: DecompressParams -> !Maybe ByteString
- Bio.Prelude: ($!) :: () => a -> b -> a -> b
+ Bio.Prelude: ($!) :: () => (a -> b) -> a -> b
- Bio.Prelude: ($) :: () => a -> b -> a -> b
+ Bio.Prelude: ($) :: () => (a -> b) -> a -> b
- Bio.Prelude: (&) :: () => a -> a -> b -> b
+ Bio.Prelude: (&) :: () => a -> (a -> b) -> b
- Bio.Prelude: (+++) :: ArrowChoice a => a b c -> a b' c' -> a Either b b' Either c c'
+ Bio.Prelude: (+++) :: ArrowChoice a => a b c -> a b' c' -> a (Either b b') (Either c c')
- Bio.Prelude: (<$!>) :: Monad m => a -> b -> m a -> m b
+ Bio.Prelude: (<$!>) :: Monad m => (a -> b) -> m a -> m b
- Bio.Prelude: (<$>) :: Functor f => a -> b -> f a -> f b
+ Bio.Prelude: (<$>) :: Functor f => (a -> b) -> f a -> f b
- Bio.Prelude: (<&>) :: Functor f => f a -> a -> b -> f b
+ Bio.Prelude: (<&>) :: Functor f => f a -> (a -> b) -> f b
- Bio.Prelude: (<**>) :: Applicative f => f a -> f a -> b -> f b
+ Bio.Prelude: (<**>) :: Applicative f => f a -> f (a -> b) -> f b
- Bio.Prelude: (<*>) :: Applicative f => f a -> b -> f a -> f b
+ Bio.Prelude: (<*>) :: Applicative f => f (a -> b) -> f a -> f b
- Bio.Prelude: (<<^) :: Arrow a => a c d -> b -> c -> a b d
+ Bio.Prelude: (<<^) :: Arrow a => a c d -> (b -> c) -> a b d
- Bio.Prelude: (<=<) :: Monad m => b -> m c -> a -> m b -> a -> m c
+ Bio.Prelude: (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c
- Bio.Prelude: (=<<) :: Monad m => a -> m b -> m a -> m b
+ Bio.Prelude: (=<<) :: Monad m => (a -> m b) -> m a -> m b
- Bio.Prelude: (>=>) :: Monad m => a -> m b -> b -> m c -> a -> m c
+ Bio.Prelude: (>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c
- Bio.Prelude: (>>=) :: Monad m => m a -> a -> m b -> m b
+ Bio.Prelude: (>>=) :: Monad m => m a -> (a -> m b) -> m b
- Bio.Prelude: (>>^) :: Arrow a => a b c -> c -> d -> a b d
+ Bio.Prelude: (>>^) :: Arrow a => a b c -> (c -> d) -> a b d
- Bio.Prelude: (^<<) :: Arrow a => c -> d -> a b c -> a b d
+ Bio.Prelude: (^<<) :: Arrow a => (c -> d) -> a b c -> a b d
- Bio.Prelude: (^>>) :: Arrow a => b -> c -> a c d -> a b d
+ Bio.Prelude: (^>>) :: Arrow a => (b -> c) -> a c d -> a b d
- Bio.Prelude: (|||) :: ArrowChoice a => a b d -> a c d -> a Either b c d
+ Bio.Prelude: (|||) :: ArrowChoice a => a b d -> a c d -> a (Either b c) d
- Bio.Prelude: Endo :: a -> a -> Endo a
+ Bio.Prelude: Endo :: (a -> a) -> Endo a
- Bio.Prelude: Kleisli :: a -> m b -> Kleisli a b
+ Bio.Prelude: Kleisli :: (a -> m b) -> Kleisli a b
- Bio.Prelude: STM :: State# RealWorld -> (# State# RealWorld, a #) -> STM a
+ Bio.Prelude: STM :: (State# RealWorld -> (# State# RealWorld, a #)) -> STM a
- Bio.Prelude: [Dynamic] :: Dynamic
+ Bio.Prelude: [Dynamic] :: forall a. () => TypeRep a -> a -> Dynamic
- Bio.Prelude: [HRefl] :: a :~~: a
+ Bio.Prelude: [HRefl] :: forall k1 k2 (a :: k1) (b :: k2). () => a :~~: a
- Bio.Prelude: [Handler] :: Handler a
+ Bio.Prelude: [Handler] :: forall a e. Exception e => (e -> IO a) -> Handler a
- Bio.Prelude: [Refl] :: a :~: a
+ Bio.Prelude: [Refl] :: forall k (a :: k) (b :: k). () => a :~: a
- Bio.Prelude: [SomeAsyncException] :: SomeAsyncException
+ Bio.Prelude: [SomeAsyncException] :: forall e. Exception e => e -> SomeAsyncException
- Bio.Prelude: [SomeException] :: SomeException
+ Bio.Prelude: [SomeException] :: forall e. Exception e => e -> SomeException
- Bio.Prelude: all :: Foldable t => a -> Bool -> t a -> Bool
+ Bio.Prelude: all :: Foldable t => (a -> Bool) -> t a -> Bool
- Bio.Prelude: any :: Foldable t => a -> Bool -> t a -> Bool
+ Bio.Prelude: any :: Foldable t => (a -> Bool) -> t a -> Bool
- Bio.Prelude: ap :: Monad m => m a -> b -> m a -> m b
+ Bio.Prelude: ap :: Monad m => m (a -> b) -> m a -> m b
- Bio.Prelude: arr :: Arrow a => b -> c -> a b c
+ Bio.Prelude: arr :: Arrow a => (b -> c) -> a b c
- Bio.Prelude: asum :: (Foldable t, Alternative f) => t f a -> f a
+ Bio.Prelude: asum :: (Foldable t, Alternative f) => t (f a) -> f a
- Bio.Prelude: atomicModifyIORef :: () => IORef a -> a -> (a, b) -> IO b
+ Bio.Prelude: atomicModifyIORef :: () => IORef a -> (a -> (a, b)) -> IO b
- Bio.Prelude: atomicModifyIORef' :: () => IORef a -> a -> (a, b) -> IO b
+ Bio.Prelude: atomicModifyIORef' :: () => IORef a -> (a -> (a, b)) -> IO b
- Bio.Prelude: bimap :: Bifunctor p => a -> b -> c -> d -> p a c -> p b d
+ Bio.Prelude: bimap :: Bifunctor p => (a -> b) -> (c -> d) -> p a c -> p b d
- Bio.Prelude: bracket :: () => IO a -> a -> IO b -> a -> IO c -> IO c
+ Bio.Prelude: bracket :: () => IO a -> (a -> IO b) -> (a -> IO c) -> IO c
- Bio.Prelude: bracketOnError :: () => IO a -> a -> IO b -> a -> IO c -> IO c
+ Bio.Prelude: bracketOnError :: () => IO a -> (a -> IO b) -> (a -> IO c) -> IO c
- Bio.Prelude: break :: () => a -> Bool -> [a] -> ([a], [a])
+ Bio.Prelude: break :: () => (a -> Bool) -> [a] -> ([a], [a])
- Bio.Prelude: catch :: Exception e => IO a -> e -> IO a -> IO a
+ Bio.Prelude: catch :: Exception e => IO a -> (e -> IO a) -> IO a
- Bio.Prelude: catchIOError :: () => IO a -> IOError -> IO a -> IO a
+ Bio.Prelude: catchIOError :: () => IO a -> (IOError -> IO a) -> IO a
- Bio.Prelude: catchJust :: Exception e => e -> Maybe b -> IO a -> b -> IO a -> IO a
+ Bio.Prelude: catchJust :: Exception e => (e -> Maybe b) -> IO a -> (b -> IO a) -> IO a
- Bio.Prelude: catchSTM :: Exception e => STM a -> e -> STM a -> STM a
+ Bio.Prelude: catchSTM :: Exception e => STM a -> (e -> STM a) -> STM a
- Bio.Prelude: class Applicative f => Alternative (f :: * -> *)
+ Bio.Prelude: class Applicative f => Alternative (f :: Type -> Type)
- Bio.Prelude: class Functor f => Applicative (f :: * -> *)
+ Bio.Prelude: class Functor f => Applicative (f :: Type -> Type)
- Bio.Prelude: class Category a => Arrow (a :: * -> * -> *)
+ Bio.Prelude: class Category a => Arrow (a :: Type -> Type -> Type)
- Bio.Prelude: class Arrow a => ArrowApply (a :: * -> * -> *)
+ Bio.Prelude: class Arrow a => ArrowApply (a :: Type -> Type -> Type)
- Bio.Prelude: class Arrow a => ArrowChoice (a :: * -> * -> *)
+ Bio.Prelude: class Arrow a => ArrowChoice (a :: Type -> Type -> Type)
- Bio.Prelude: class Arrow a => ArrowLoop (a :: * -> * -> *)
+ Bio.Prelude: class Arrow a => ArrowLoop (a :: Type -> Type -> Type)
- Bio.Prelude: class ArrowZero a => ArrowPlus (a :: * -> * -> *)
+ Bio.Prelude: class ArrowZero a => ArrowPlus (a :: Type -> Type -> Type)
- Bio.Prelude: class Arrow a => ArrowZero (a :: * -> * -> *)
+ Bio.Prelude: class Arrow a => ArrowZero (a :: Type -> Type -> Type)
- Bio.Prelude: class Bifunctor (p :: * -> * -> *)
+ Bio.Prelude: class Bifunctor (p :: Type -> Type -> Type)
- Bio.Prelude: class Category (cat :: k -> k -> *)
+ Bio.Prelude: class Category (cat :: k -> k -> Type)
- Bio.Prelude: class Foldable (t :: * -> *)
+ Bio.Prelude: class Foldable (t :: Type -> Type)
- Bio.Prelude: class Functor (f :: * -> *)
+ Bio.Prelude: class Functor (f :: Type -> Type)
- Bio.Prelude: class Applicative m => Monad (m :: * -> *)
+ Bio.Prelude: class Applicative m => Monad (m :: Type -> Type)
- Bio.Prelude: class Monad m => MonadFix (m :: * -> *)
+ Bio.Prelude: class Monad m => MonadFix (m :: Type -> Type)
- Bio.Prelude: class (Alternative m, Monad m) => MonadPlus (m :: * -> *)
+ Bio.Prelude: class (Alternative m, Monad m) => MonadPlus (m :: Type -> Type)
- Bio.Prelude: class (Functor t, Foldable t) => Traversable (t :: * -> *)
+ Bio.Prelude: class (Functor t, Foldable t) => Traversable (t :: Type -> Type)
- Bio.Prelude: closeFdWith :: Fd -> IO () -> Fd -> IO ()
+ Bio.Prelude: closeFdWith :: (Fd -> IO ()) -> Fd -> IO ()
- Bio.Prelude: comparing :: Ord a => b -> a -> b -> b -> Ordering
+ Bio.Prelude: comparing :: Ord a => (b -> a) -> b -> b -> Ordering
- Bio.Prelude: concatMap :: Foldable t => a -> [b] -> t a -> [b]
+ Bio.Prelude: concatMap :: Foldable t => (a -> [b]) -> t a -> [b]
- Bio.Prelude: curry :: () => (a, b) -> c -> a -> b -> c
+ Bio.Prelude: curry :: () => ((a, b) -> c) -> a -> b -> c
- Bio.Prelude: data RealWorld
+ Bio.Prelude: data RealWorld :: Type
- Bio.Prelude: data (:~:) (a :: k) (b :: k) :: forall k. () => k -> k -> *
+ Bio.Prelude: data (:~:) (a :: k) (b :: k) :: forall k. () => k -> k -> Type
- Bio.Prelude: data (:~~:) (a :: k1) (b :: k2) :: forall k1 k2. () => k1 -> k2 -> *
+ Bio.Prelude: data (:~~:) (a :: k1) (b :: k2) :: forall k1 k2. () => k1 -> k2 -> Type
- Bio.Prelude: dataCast1 :: (Data a, Typeable t) => forall d. Data d => c t d -> Maybe c a
+ Bio.Prelude: dataCast1 :: (Data a, Typeable t) => (forall d. Data d => c (t d)) -> Maybe (c a)
- Bio.Prelude: dataCast2 :: (Data a, Typeable t) => forall d e. (Data d, Data e) => c t d e -> Maybe c a
+ Bio.Prelude: dataCast2 :: (Data a, Typeable t) => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a)
- Bio.Prelude: deleteBy :: () => a -> a -> Bool -> a -> [a] -> [a]
+ Bio.Prelude: deleteBy :: () => (a -> a -> Bool) -> a -> [a] -> [a]
- Bio.Prelude: deleteFirstsBy :: () => a -> a -> Bool -> [a] -> [a] -> [a]
+ Bio.Prelude: deleteFirstsBy :: () => (a -> a -> Bool) -> [a] -> [a] -> [a]
- Bio.Prelude: dropWhile :: () => a -> Bool -> [a] -> [a]
+ Bio.Prelude: dropWhile :: () => (a -> Bool) -> [a] -> [a]
- Bio.Prelude: dropWhileEnd :: () => a -> Bool -> [a] -> [a]
+ Bio.Prelude: dropWhileEnd :: () => (a -> Bool) -> [a] -> [a]
- Bio.Prelude: dupChan :: () => Chan a -> IO Chan a
+ Bio.Prelude: dupChan :: () => Chan a -> IO (Chan a)
- Bio.Prelude: either :: () => a -> c -> b -> c -> Either a b -> c
+ Bio.Prelude: either :: () => (a -> c) -> (b -> c) -> Either a b -> c
- Bio.Prelude: eqT :: (Typeable a, Typeable b) => Maybe a :~: b
+ Bio.Prelude: eqT :: (Typeable a, Typeable b) => Maybe (a :~: b)
- Bio.Prelude: filter :: () => a -> Bool -> [a] -> [a]
+ Bio.Prelude: filter :: () => (a -> Bool) -> [a] -> [a]
- Bio.Prelude: filterM :: Applicative m => a -> m Bool -> [a] -> m [a]
+ Bio.Prelude: filterM :: Applicative m => (a -> m Bool) -> [a] -> m [a]
- Bio.Prelude: find :: Foldable t => a -> Bool -> t a -> Maybe a
+ Bio.Prelude: find :: Foldable t => (a -> Bool) -> t a -> Maybe a
- Bio.Prelude: findIndex :: () => a -> Bool -> [a] -> Maybe Int
+ Bio.Prelude: findIndex :: () => (a -> Bool) -> [a] -> Maybe Int
- Bio.Prelude: findIndices :: () => a -> Bool -> [a] -> [Int]
+ Bio.Prelude: findIndices :: () => (a -> Bool) -> [a] -> [Int]
- Bio.Prelude: first :: Bifunctor p => a -> b -> p a c -> p b c
+ Bio.Prelude: first :: Bifunctor p => (a -> b) -> p a c -> p b c
- Bio.Prelude: fix :: () => a -> a -> a
+ Bio.Prelude: fix :: () => (a -> a) -> a
- Bio.Prelude: fixST :: () => a -> ST s a -> ST s a
+ Bio.Prelude: fixST :: () => (a -> ST s a) -> ST s a
- Bio.Prelude: flip :: () => a -> b -> c -> b -> a -> c
+ Bio.Prelude: flip :: () => (a -> b -> c) -> b -> a -> c
- Bio.Prelude: fmap :: Functor f => a -> b -> f a -> f b
+ Bio.Prelude: fmap :: Functor f => (a -> b) -> f a -> f b
- Bio.Prelude: fmapDefault :: Traversable t => a -> b -> t a -> t b
+ Bio.Prelude: fmapDefault :: Traversable t => (a -> b) -> t a -> t b
- Bio.Prelude: foldM :: (Foldable t, Monad m) => b -> a -> m b -> b -> t a -> m b
+ Bio.Prelude: foldM :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m b
- Bio.Prelude: foldM_ :: (Foldable t, Monad m) => b -> a -> m b -> b -> t a -> m ()
+ Bio.Prelude: foldM_ :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m ()
- Bio.Prelude: foldMap :: (Foldable t, Monoid m) => a -> m -> t a -> m
+ Bio.Prelude: foldMap :: (Foldable t, Monoid m) => (a -> m) -> t a -> m
- Bio.Prelude: foldMapDefault :: (Traversable t, Monoid m) => a -> m -> t a -> m
+ Bio.Prelude: foldMapDefault :: (Traversable t, Monoid m) => (a -> m) -> t a -> m
- Bio.Prelude: foldl :: Foldable t => b -> a -> b -> b -> t a -> b
+ Bio.Prelude: foldl :: Foldable t => (b -> a -> b) -> b -> t a -> b
- Bio.Prelude: foldl' :: Foldable t => b -> a -> b -> b -> t a -> b
+ Bio.Prelude: foldl' :: Foldable t => (b -> a -> b) -> b -> t a -> b
- Bio.Prelude: foldl1 :: Foldable t => a -> a -> a -> t a -> a
+ Bio.Prelude: foldl1 :: Foldable t => (a -> a -> a) -> t a -> a
- Bio.Prelude: foldl1' :: () => a -> a -> a -> [a] -> a
+ Bio.Prelude: foldl1' :: () => (a -> a -> a) -> [a] -> a
- Bio.Prelude: foldlM :: (Foldable t, Monad m) => b -> a -> m b -> b -> t a -> m b
+ Bio.Prelude: foldlM :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m b
- Bio.Prelude: foldr :: Foldable t => a -> b -> b -> b -> t a -> b
+ Bio.Prelude: foldr :: Foldable t => (a -> b -> b) -> b -> t a -> b
- Bio.Prelude: foldr' :: Foldable t => a -> b -> b -> b -> t a -> b
+ Bio.Prelude: foldr' :: Foldable t => (a -> b -> b) -> b -> t a -> b
- Bio.Prelude: foldr1 :: Foldable t => a -> a -> a -> t a -> a
+ Bio.Prelude: foldr1 :: Foldable t => (a -> a -> a) -> t a -> a
- Bio.Prelude: foldrM :: (Foldable t, Monad m) => a -> b -> m b -> b -> t a -> m b
+ Bio.Prelude: foldrM :: (Foldable t, Monad m) => (a -> b -> m b) -> b -> t a -> m b
- Bio.Prelude: for :: (Traversable t, Applicative f) => t a -> a -> f b -> f t b
+ Bio.Prelude: for :: (Traversable t, Applicative f) => t a -> (a -> f b) -> f (t b)
- Bio.Prelude: forM :: (Traversable t, Monad m) => t a -> a -> m b -> m t b
+ Bio.Prelude: forM :: (Traversable t, Monad m) => t a -> (a -> m b) -> m (t b)
- Bio.Prelude: forM_ :: (Foldable t, Monad m) => t a -> a -> m b -> m ()
+ Bio.Prelude: forM_ :: (Foldable t, Monad m) => t a -> (a -> m b) -> m ()
- Bio.Prelude: for_ :: (Foldable t, Applicative f) => t a -> a -> f b -> f ()
+ Bio.Prelude: for_ :: (Foldable t, Applicative f) => t a -> (a -> f b) -> f ()
- Bio.Prelude: forkFinally :: () => IO a -> Either SomeException a -> IO () -> IO ThreadId
+ Bio.Prelude: forkFinally :: () => IO a -> (Either SomeException a -> IO ()) -> IO ThreadId
- Bio.Prelude: forkIOWithUnmask :: forall a. () => IO a -> IO a -> IO () -> IO ThreadId
+ Bio.Prelude: forkIOWithUnmask :: ((forall a. () => IO a -> IO a) -> IO ()) -> IO ThreadId
- Bio.Prelude: forkOSWithUnmask :: forall a. () => IO a -> IO a -> IO () -> IO ThreadId
+ Bio.Prelude: forkOSWithUnmask :: ((forall a. () => IO a -> IO a) -> IO ()) -> IO ThreadId
- Bio.Prelude: forkOnWithUnmask :: Int -> forall a. () => IO a -> IO a -> IO () -> IO ThreadId
+ Bio.Prelude: forkOnWithUnmask :: Int -> ((forall a. () => IO a -> IO a) -> IO ()) -> IO ThreadId
- Bio.Prelude: fromConstrB :: Data a => forall d. Data d => d -> Constr -> a
+ Bio.Prelude: fromConstrB :: Data a => (forall d. Data d => d) -> Constr -> a
- Bio.Prelude: fromConstrM :: (Monad m, Data a) => forall d. Data d => m d -> Constr -> m a
+ Bio.Prelude: fromConstrM :: (Monad m, Data a) => (forall d. Data d => m d) -> Constr -> m a
- Bio.Prelude: gcast :: (Typeable a, Typeable b) => c a -> Maybe c b
+ Bio.Prelude: gcast :: (Typeable a, Typeable b) => c a -> Maybe (c b)
- Bio.Prelude: gcast1 :: (Typeable t, Typeable t') => c t a -> Maybe c t' a
+ Bio.Prelude: gcast1 :: (Typeable t, Typeable t') => c (t a) -> Maybe (c (t' a))
- Bio.Prelude: gcast2 :: (Typeable t, Typeable t') => c t a b -> Maybe c t' a b
+ Bio.Prelude: gcast2 :: (Typeable t, Typeable t') => c (t a b) -> Maybe (c (t' a b))
- Bio.Prelude: getUncaughtExceptionHandler :: IO SomeException -> IO ()
+ Bio.Prelude: getUncaughtExceptionHandler :: IO (SomeException -> IO ())
- Bio.Prelude: gfoldl :: Data a => forall d b. Data d => c d -> b -> d -> c b -> forall g. () => g -> c g -> a -> c a
+ Bio.Prelude: gfoldl :: Data a => (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. () => g -> c g) -> a -> c a
- Bio.Prelude: gmapM :: (Data a, Monad m) => forall d. Data d => d -> m d -> a -> m a
+ Bio.Prelude: gmapM :: (Data a, Monad m) => (forall d. Data d => d -> m d) -> a -> m a
- Bio.Prelude: gmapMo :: (Data a, MonadPlus m) => forall d. Data d => d -> m d -> a -> m a
+ Bio.Prelude: gmapMo :: (Data a, MonadPlus m) => (forall d. Data d => d -> m d) -> a -> m a
- Bio.Prelude: gmapMp :: (Data a, MonadPlus m) => forall d. Data d => d -> m d -> a -> m a
+ Bio.Prelude: gmapMp :: (Data a, MonadPlus m) => (forall d. Data d => d -> m d) -> a -> m a
- Bio.Prelude: gmapQ :: Data a => forall d. Data d => d -> u -> a -> [u]
+ Bio.Prelude: gmapQ :: Data a => (forall d. Data d => d -> u) -> a -> [u]
- Bio.Prelude: gmapQi :: Data a => Int -> forall d. Data d => d -> u -> a -> u
+ Bio.Prelude: gmapQi :: Data a => Int -> (forall d. Data d => d -> u) -> a -> u
- Bio.Prelude: gmapQl :: Data a => r -> r' -> r -> r -> forall d. Data d => d -> r' -> a -> r
+ Bio.Prelude: gmapQl :: Data a => (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r
- Bio.Prelude: gmapQr :: Data a => r' -> r -> r -> r -> forall d. Data d => d -> r' -> a -> r
+ Bio.Prelude: gmapQr :: Data a => (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r
- Bio.Prelude: gmapT :: Data a => forall b. Data b => b -> b -> a -> a
+ Bio.Prelude: gmapT :: Data a => (forall b. Data b => b -> b) -> a -> a
- Bio.Prelude: groupBy :: () => a -> a -> Bool -> [a] -> [[a]]
+ Bio.Prelude: groupBy :: () => (a -> a -> Bool) -> [a] -> [[a]]
- Bio.Prelude: groupWith :: Ord b => a -> b -> [a] -> [[a]]
+ Bio.Prelude: groupWith :: Ord b => (a -> b) -> [a] -> [[a]]
- Bio.Prelude: gunfold :: Data a => forall b r. Data b => c b -> r -> c r -> forall r. () => r -> c r -> Constr -> c a
+ Bio.Prelude: gunfold :: Data a => (forall b r. Data b => c (b -> r) -> c r) -> (forall r. () => r -> c r) -> Constr -> c a
- Bio.Prelude: handle :: Exception e => e -> IO a -> IO a -> IO a
+ Bio.Prelude: handle :: Exception e => (e -> IO a) -> IO a -> IO a
- Bio.Prelude: handleJust :: Exception e => e -> Maybe b -> b -> IO a -> IO a -> IO a
+ Bio.Prelude: handleJust :: Exception e => (e -> Maybe b) -> (b -> IO a) -> IO a -> IO a
- Bio.Prelude: infix 4 `notElem`
+ Bio.Prelude: infix 4 :~~:
- Bio.Prelude: infixr 5 ++
+ Bio.Prelude: infixr 5 :|
- Bio.Prelude: insertBy :: () => a -> a -> Ordering -> a -> [a] -> [a]
+ Bio.Prelude: insertBy :: () => (a -> a -> Ordering) -> a -> [a] -> [a]
- Bio.Prelude: interact :: String -> String -> IO ()
+ Bio.Prelude: interact :: (String -> String) -> IO ()
- Bio.Prelude: intersectBy :: () => a -> a -> Bool -> [a] -> [a] -> [a]
+ Bio.Prelude: intersectBy :: () => (a -> a -> Bool) -> [a] -> [a] -> [a]
- Bio.Prelude: iterate :: () => a -> a -> a -> [a]
+ Bio.Prelude: iterate :: () => (a -> a) -> a -> [a]
- Bio.Prelude: iterate' :: () => a -> a -> a -> [a]
+ Bio.Prelude: iterate' :: () => (a -> a) -> a -> [a]
- Bio.Prelude: join :: Monad m => m m a -> m a
+ Bio.Prelude: join :: Monad m => m (m a) -> m a
- Bio.Prelude: left :: ArrowChoice a => a b c -> a Either b d Either c d
+ Bio.Prelude: left :: ArrowChoice a => a b c -> a (Either b d) (Either c d)
- Bio.Prelude: leftApp :: ArrowApply a => a b c -> a Either b d Either c d
+ Bio.Prelude: leftApp :: ArrowApply a => a b c -> a (Either b d) (Either c d)
- Bio.Prelude: liftA :: Applicative f => a -> b -> f a -> f b
+ Bio.Prelude: liftA :: Applicative f => (a -> b) -> f a -> f b
- Bio.Prelude: liftA2 :: Applicative f => a -> b -> c -> f a -> f b -> f c
+ Bio.Prelude: liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f c
- Bio.Prelude: liftA3 :: Applicative f => a -> b -> c -> d -> f a -> f b -> f c -> f d
+ Bio.Prelude: liftA3 :: Applicative f => (a -> b -> c -> d) -> f a -> f b -> f c -> f d
- Bio.Prelude: liftM :: Monad m => a1 -> r -> m a1 -> m r
+ Bio.Prelude: liftM :: Monad m => (a1 -> r) -> m a1 -> m r
- Bio.Prelude: liftM2 :: Monad m => a1 -> a2 -> r -> m a1 -> m a2 -> m r
+ Bio.Prelude: liftM2 :: Monad m => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r
- Bio.Prelude: liftM3 :: Monad m => a1 -> a2 -> a3 -> r -> m a1 -> m a2 -> m a3 -> m r
+ Bio.Prelude: liftM3 :: Monad m => (a1 -> a2 -> a3 -> r) -> m a1 -> m a2 -> m a3 -> m r
- Bio.Prelude: liftM4 :: Monad m => a1 -> a2 -> a3 -> a4 -> r -> m a1 -> m a2 -> m a3 -> m a4 -> m r
+ Bio.Prelude: liftM4 :: Monad m => (a1 -> a2 -> a3 -> a4 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m r
- Bio.Prelude: liftM5 :: Monad m => a1 -> a2 -> a3 -> a4 -> a5 -> r -> m a1 -> m a2 -> m a3 -> m a4 -> m a5 -> m r
+ Bio.Prelude: liftM5 :: Monad m => (a1 -> a2 -> a3 -> a4 -> a5 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m a5 -> m r
- Bio.Prelude: lookupEnv :: String -> IO Maybe String
+ Bio.Prelude: lookupEnv :: String -> IO (Maybe String)
- Bio.Prelude: makeStableName :: () => a -> IO StableName a
+ Bio.Prelude: makeStableName :: () => a -> IO (StableName a)
- Bio.Prelude: mallocForeignPtr :: Storable a => IO ForeignPtr a
+ Bio.Prelude: mallocForeignPtr :: Storable a => IO (ForeignPtr a)
- Bio.Prelude: mallocForeignPtrArray :: Storable a => Int -> IO ForeignPtr a
+ Bio.Prelude: mallocForeignPtrArray :: Storable a => Int -> IO (ForeignPtr a)
- Bio.Prelude: mallocForeignPtrArray0 :: Storable a => Int -> IO ForeignPtr a
+ Bio.Prelude: mallocForeignPtrArray0 :: Storable a => Int -> IO (ForeignPtr a)
- Bio.Prelude: mallocForeignPtrBytes :: () => Int -> IO ForeignPtr a
+ Bio.Prelude: mallocForeignPtrBytes :: () => Int -> IO (ForeignPtr a)
- Bio.Prelude: map :: () => a -> b -> [a] -> [b]
+ Bio.Prelude: map :: () => (a -> b) -> [a] -> [b]
- Bio.Prelude: mapAccumL :: Traversable t => a -> b -> (a, c) -> a -> t b -> (a, t c)
+ Bio.Prelude: mapAccumL :: Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c)
- Bio.Prelude: mapAccumR :: Traversable t => a -> b -> (a, c) -> a -> t b -> (a, t c)
+ Bio.Prelude: mapAccumR :: Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c)
- Bio.Prelude: mapAndUnzipM :: Applicative m => a -> m (b, c) -> [a] -> m ([b], [c])
+ Bio.Prelude: mapAndUnzipM :: Applicative m => (a -> m (b, c)) -> [a] -> m ([b], [c])
- Bio.Prelude: mapException :: (Exception e1, Exception e2) => e1 -> e2 -> a -> a
+ Bio.Prelude: mapException :: (Exception e1, Exception e2) => (e1 -> e2) -> a -> a
- Bio.Prelude: mapM :: (Traversable t, Monad m) => a -> m b -> t a -> m t b
+ Bio.Prelude: mapM :: (Traversable t, Monad m) => (a -> m b) -> t a -> m (t b)
- Bio.Prelude: mapM_ :: (Foldable t, Monad m) => a -> m b -> t a -> m ()
+ Bio.Prelude: mapM_ :: (Foldable t, Monad m) => (a -> m b) -> t a -> m ()
- Bio.Prelude: mapMaybe :: () => a -> Maybe b -> [a] -> [b]
+ Bio.Prelude: mapMaybe :: () => (a -> Maybe b) -> [a] -> [b]
- Bio.Prelude: mask :: () => forall a. () => IO a -> IO a -> IO b -> IO b
+ Bio.Prelude: mask :: () => ((forall a. () => IO a -> IO a) -> IO b) -> IO b
- Bio.Prelude: maximumBy :: Foldable t => a -> a -> Ordering -> t a -> a
+ Bio.Prelude: maximumBy :: Foldable t => (a -> a -> Ordering) -> t a -> a
- Bio.Prelude: maybe :: () => b -> a -> b -> Maybe a -> b
+ Bio.Prelude: maybe :: () => b -> (a -> b) -> Maybe a -> b
- Bio.Prelude: mfilter :: MonadPlus m => a -> Bool -> m a -> m a
+ Bio.Prelude: mfilter :: MonadPlus m => (a -> Bool) -> m a -> m a
- Bio.Prelude: mfix :: MonadFix m => a -> m a -> m a
+ Bio.Prelude: mfix :: MonadFix m => (a -> m a) -> m a
- Bio.Prelude: minimumBy :: Foldable t => a -> a -> Ordering -> t a -> a
+ Bio.Prelude: minimumBy :: Foldable t => (a -> a -> Ordering) -> t a -> a
- Bio.Prelude: mkWeakIORef :: () => IORef a -> IO () -> IO Weak IORef a
+ Bio.Prelude: mkWeakIORef :: () => IORef a -> IO () -> IO (Weak (IORef a))
- Bio.Prelude: mkWeakMVar :: () => MVar a -> IO () -> IO Weak MVar a
+ Bio.Prelude: mkWeakMVar :: () => MVar a -> IO () -> IO (Weak (MVar a))
- Bio.Prelude: mkWeakThreadId :: ThreadId -> IO Weak ThreadId
+ Bio.Prelude: mkWeakThreadId :: ThreadId -> IO (Weak ThreadId)
- Bio.Prelude: modifyIOError :: () => IOError -> IOError -> IO a -> IO a
+ Bio.Prelude: modifyIOError :: () => (IOError -> IOError) -> IO a -> IO a
- Bio.Prelude: modifyIORef :: () => IORef a -> a -> a -> IO ()
+ Bio.Prelude: modifyIORef :: () => IORef a -> (a -> a) -> IO ()
- Bio.Prelude: modifyIORef' :: () => IORef a -> a -> a -> IO ()
+ Bio.Prelude: modifyIORef' :: () => IORef a -> (a -> a) -> IO ()
- Bio.Prelude: modifyMVar :: () => MVar a -> a -> IO (a, b) -> IO b
+ Bio.Prelude: modifyMVar :: () => MVar a -> (a -> IO (a, b)) -> IO b
- Bio.Prelude: modifyMVarMasked :: () => MVar a -> a -> IO (a, b) -> IO b
+ Bio.Prelude: modifyMVarMasked :: () => MVar a -> (a -> IO (a, b)) -> IO b
- Bio.Prelude: modifyMVarMasked_ :: () => MVar a -> a -> IO a -> IO ()
+ Bio.Prelude: modifyMVarMasked_ :: () => MVar a -> (a -> IO a) -> IO ()
- Bio.Prelude: modifyMVar_ :: () => MVar a -> a -> IO a -> IO ()
+ Bio.Prelude: modifyMVar_ :: () => MVar a -> (a -> IO a) -> IO ()
- Bio.Prelude: modifySTRef :: () => STRef s a -> a -> a -> ST s ()
+ Bio.Prelude: modifySTRef :: () => STRef s a -> (a -> a) -> ST s ()
- Bio.Prelude: modifySTRef' :: () => STRef s a -> a -> a -> ST s ()
+ Bio.Prelude: modifySTRef' :: () => STRef s a -> (a -> a) -> ST s ()
- Bio.Prelude: msum :: (Foldable t, MonadPlus m) => t m a -> m a
+ Bio.Prelude: msum :: (Foldable t, MonadPlus m) => t (m a) -> m a
- Bio.Prelude: newChan :: () => IO Chan a
+ Bio.Prelude: newChan :: () => IO (Chan a)
- Bio.Prelude: newEmptyMVar :: () => IO MVar a
+ Bio.Prelude: newEmptyMVar :: () => IO (MVar a)
- Bio.Prelude: newForeignPtr :: () => FinalizerPtr a -> Ptr a -> IO ForeignPtr a
+ Bio.Prelude: newForeignPtr :: () => FinalizerPtr a -> Ptr a -> IO (ForeignPtr a)
- Bio.Prelude: newForeignPtrEnv :: () => FinalizerEnvPtr env a -> Ptr env -> Ptr a -> IO ForeignPtr a
+ Bio.Prelude: newForeignPtrEnv :: () => FinalizerEnvPtr env a -> Ptr env -> Ptr a -> IO (ForeignPtr a)
- Bio.Prelude: newForeignPtr_ :: () => Ptr a -> IO ForeignPtr a
+ Bio.Prelude: newForeignPtr_ :: () => Ptr a -> IO (ForeignPtr a)
- Bio.Prelude: newIORef :: () => a -> IO IORef a
+ Bio.Prelude: newIORef :: () => a -> IO (IORef a)
- Bio.Prelude: newMVar :: () => a -> IO MVar a
+ Bio.Prelude: newMVar :: () => a -> IO (MVar a)
- Bio.Prelude: newSTRef :: () => a -> ST s STRef s a
+ Bio.Prelude: newSTRef :: () => a -> ST s (STRef s a)
- Bio.Prelude: newStablePtr :: () => a -> IO StablePtr a
+ Bio.Prelude: newStablePtr :: () => a -> IO (StablePtr a)
- Bio.Prelude: newStablePtrPrimMVar :: MVar () -> IO StablePtr PrimMVar
+ Bio.Prelude: newStablePtrPrimMVar :: MVar () -> IO (StablePtr PrimMVar)
- Bio.Prelude: newTVar :: () => a -> STM TVar a
+ Bio.Prelude: newTVar :: () => a -> STM (TVar a)
- Bio.Prelude: newTVarIO :: () => a -> IO TVar a
+ Bio.Prelude: newTVarIO :: () => a -> IO (TVar a)
- Bio.Prelude: newtype ArrowMonad (a :: * -> * -> *) b
+ Bio.Prelude: newtype ArrowMonad (a :: Type -> Type -> Type) b
- Bio.Prelude: newtype Kleisli (m :: * -> *) a b
+ Bio.Prelude: newtype Kleisli (m :: Type -> Type) a b
- Bio.Prelude: newtype WrappedArrow (a :: * -> * -> *) b c
+ Bio.Prelude: newtype WrappedArrow (a :: Type -> Type -> Type) b c
- Bio.Prelude: newtype WrappedMonad (m :: * -> *) a
+ Bio.Prelude: newtype WrappedMonad (m :: Type -> Type) a
- Bio.Prelude: newtype Alt (f :: k -> *) (a :: k) :: forall k. () => k -> * -> k -> *
+ Bio.Prelude: newtype Alt (f :: k -> Type) (a :: k) :: forall k. () => k -> Type -> k -> Type
- Bio.Prelude: nubBy :: () => a -> a -> Bool -> [a] -> [a]
+ Bio.Prelude: nubBy :: () => (a -> a -> Bool) -> [a] -> [a]
- Bio.Prelude: on :: () => b -> b -> c -> a -> b -> a -> a -> c
+ Bio.Prelude: on :: () => (b -> b -> c) -> (a -> b) -> a -> a -> c
- Bio.Prelude: optional :: Alternative f => f a -> f Maybe a
+ Bio.Prelude: optional :: Alternative f => f a -> f (Maybe a)
- Bio.Prelude: partition :: () => a -> Bool -> [a] -> ([a], [a])
+ Bio.Prelude: partition :: () => (a -> Bool) -> [a] -> ([a], [a])
- Bio.Prelude: readInt :: Num a => a -> Char -> Bool -> Char -> Int -> ReadS a
+ Bio.Prelude: readInt :: Num a => a -> (Char -> Bool) -> (Char -> Int) -> ReadS a
- Bio.Prelude: readP_to_Prec :: () => Int -> ReadP a -> ReadPrec a
+ Bio.Prelude: readP_to_Prec :: () => (Int -> ReadP a) -> ReadPrec a
- Bio.Prelude: readS_to_Prec :: () => Int -> ReadS a -> ReadPrec a
+ Bio.Prelude: readS_to_Prec :: () => (Int -> ReadS a) -> ReadPrec a
- Bio.Prelude: registerDelay :: Int -> IO TVar Bool
+ Bio.Prelude: registerDelay :: Int -> IO (TVar Bool)
- Bio.Prelude: right :: ArrowChoice a => a b c -> a Either d b Either d c
+ Bio.Prelude: right :: ArrowChoice a => a b c -> a (Either d b) (Either d c)
- Bio.Prelude: runST :: () => forall s. () => ST s a -> a
+ Bio.Prelude: runST :: () => (forall s. () => ST s a) -> a
- Bio.Prelude: scanl :: () => b -> a -> b -> b -> [a] -> [b]
+ Bio.Prelude: scanl :: () => (b -> a -> b) -> b -> [a] -> [b]
- Bio.Prelude: scanl' :: () => b -> a -> b -> b -> [a] -> [b]
+ Bio.Prelude: scanl' :: () => (b -> a -> b) -> b -> [a] -> [b]
- Bio.Prelude: scanl1 :: () => a -> a -> a -> [a] -> [a]
+ Bio.Prelude: scanl1 :: () => (a -> a -> a) -> [a] -> [a]
- Bio.Prelude: scanr :: () => a -> b -> b -> b -> [a] -> [b]
+ Bio.Prelude: scanr :: () => (a -> b -> b) -> b -> [a] -> [b]
- Bio.Prelude: scanr1 :: () => a -> a -> a -> [a] -> [a]
+ Bio.Prelude: scanr1 :: () => (a -> a -> a) -> [a] -> [a]
- Bio.Prelude: second :: Bifunctor p => b -> c -> p a b -> p a c
+ Bio.Prelude: second :: Bifunctor p => (b -> c) -> p a b -> p a c
- Bio.Prelude: sequence :: (Traversable t, Monad m) => t m a -> m t a
+ Bio.Prelude: sequence :: (Traversable t, Monad m) => t (m a) -> m (t a)
- Bio.Prelude: sequenceA :: (Traversable t, Applicative f) => t f a -> f t a
+ Bio.Prelude: sequenceA :: (Traversable t, Applicative f) => t (f a) -> f (t a)
- Bio.Prelude: sequenceA_ :: (Foldable t, Applicative f) => t f a -> f ()
+ Bio.Prelude: sequenceA_ :: (Foldable t, Applicative f) => t (f a) -> f ()
- Bio.Prelude: sequence_ :: (Foldable t, Monad m) => t m a -> m ()
+ Bio.Prelude: sequence_ :: (Foldable t, Monad m) => t (m a) -> m ()
- Bio.Prelude: setHandler :: Signal -> Maybe (HandlerFun, Dynamic) -> IO Maybe (HandlerFun, Dynamic)
+ Bio.Prelude: setHandler :: Signal -> Maybe (HandlerFun, Dynamic) -> IO (Maybe (HandlerFun, Dynamic))
- Bio.Prelude: setUncaughtExceptionHandler :: SomeException -> IO () -> IO ()
+ Bio.Prelude: setUncaughtExceptionHandler :: (SomeException -> IO ()) -> IO ()
- Bio.Prelude: showIntAtBase :: (Integral a, Show a) => a -> Int -> Char -> a -> ShowS
+ Bio.Prelude: showIntAtBase :: (Integral a, Show a) => a -> (Int -> Char) -> a -> ShowS
- Bio.Prelude: showSigned :: Real a => a -> ShowS -> Int -> a -> ShowS
+ Bio.Prelude: showSigned :: Real a => (a -> ShowS) -> Int -> a -> ShowS
- Bio.Prelude: sortBy :: () => a -> a -> Ordering -> [a] -> [a]
+ Bio.Prelude: sortBy :: () => (a -> a -> Ordering) -> [a] -> [a]
- Bio.Prelude: sortOn :: Ord b => a -> b -> [a] -> [a]
+ Bio.Prelude: sortOn :: Ord b => (a -> b) -> [a] -> [a]
- Bio.Prelude: sortWith :: Ord b => a -> b -> [a] -> [a]
+ Bio.Prelude: sortWith :: Ord b => (a -> b) -> [a] -> [a]
- Bio.Prelude: span :: () => a -> Bool -> [a] -> ([a], [a])
+ Bio.Prelude: span :: () => (a -> Bool) -> [a] -> ([a], [a])
- Bio.Prelude: takeWhile :: () => a -> Bool -> [a] -> [a]
+ Bio.Prelude: takeWhile :: () => (a -> Bool) -> [a] -> [a]
- Bio.Prelude: timeout :: () => Int -> IO a -> IO Maybe a
+ Bio.Prelude: timeout :: () => Int -> IO a -> IO (Maybe a)
- Bio.Prelude: traverse :: (Traversable t, Applicative f) => a -> f b -> t a -> f t b
+ Bio.Prelude: traverse :: (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b)
- Bio.Prelude: traverse_ :: (Foldable t, Applicative f) => a -> f b -> t a -> f ()
+ Bio.Prelude: traverse_ :: (Foldable t, Applicative f) => (a -> f b) -> t a -> f ()
- Bio.Prelude: try :: Exception e => IO a -> IO Either e a
+ Bio.Prelude: try :: Exception e => IO a -> IO (Either e a)
- Bio.Prelude: tryIOError :: () => IO a -> IO Either IOError a
+ Bio.Prelude: tryIOError :: () => IO a -> IO (Either IOError a)
- Bio.Prelude: tryJust :: Exception e => e -> Maybe b -> IO a -> IO Either b a
+ Bio.Prelude: tryJust :: Exception e => (e -> Maybe b) -> IO a -> IO (Either b a)
- Bio.Prelude: tryReadMVar :: () => MVar a -> IO Maybe a
+ Bio.Prelude: tryReadMVar :: () => MVar a -> IO (Maybe a)
- Bio.Prelude: tryTakeMVar :: () => MVar a -> IO Maybe a
+ Bio.Prelude: tryTakeMVar :: () => MVar a -> IO (Maybe a)
- Bio.Prelude: uncurry :: () => a -> b -> c -> (a, b) -> c
+ Bio.Prelude: uncurry :: () => (a -> b -> c) -> (a, b) -> c
- Bio.Prelude: unfoldr :: () => b -> Maybe (a, b) -> b -> [a]
+ Bio.Prelude: unfoldr :: () => (b -> Maybe (a, b)) -> b -> [a]
- Bio.Prelude: uninterruptibleMask :: () => forall a. () => IO a -> IO a -> IO b -> IO b
+ Bio.Prelude: uninterruptibleMask :: () => ((forall a. () => IO a -> IO a) -> IO b) -> IO b
- Bio.Prelude: unionBy :: () => a -> a -> Bool -> [a] -> [a] -> [a]
+ Bio.Prelude: unionBy :: () => (a -> a -> Bool) -> [a] -> [a] -> [a]
- Bio.Prelude: unsafeFixIO :: () => a -> IO a -> IO a
+ Bio.Prelude: unsafeFixIO :: () => (a -> IO a) -> IO a
- Bio.Prelude: until :: () => a -> Bool -> a -> a -> a -> a
+ Bio.Prelude: until :: () => (a -> Bool) -> (a -> a) -> a -> a
- Bio.Prelude: withForeignPtr :: () => ForeignPtr a -> Ptr a -> IO b -> IO b
+ Bio.Prelude: withForeignPtr :: () => ForeignPtr a -> (Ptr a -> IO b) -> IO b
- Bio.Prelude: withMVar :: () => MVar a -> a -> IO b -> IO b
+ Bio.Prelude: withMVar :: () => MVar a -> (a -> IO b) -> IO b
- Bio.Prelude: withMVarMasked :: () => MVar a -> a -> IO b -> IO b
+ Bio.Prelude: withMVarMasked :: () => MVar a -> (a -> IO b) -> IO b
- Bio.Prelude: zipWith :: () => a -> b -> c -> [a] -> [b] -> [c]
+ Bio.Prelude: zipWith :: () => (a -> b -> c) -> [a] -> [b] -> [c]
- Bio.Prelude: zipWith3 :: () => a -> b -> c -> d -> [a] -> [b] -> [c] -> [d]
+ Bio.Prelude: zipWith3 :: () => (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
- Bio.Prelude: zipWith4 :: () => a -> b -> c -> d -> e -> [a] -> [b] -> [c] -> [d] -> [e]
+ Bio.Prelude: zipWith4 :: () => (a -> b -> c -> d -> e) -> [a] -> [b] -> [c] -> [d] -> [e]
- Bio.Prelude: zipWith5 :: () => a -> b -> c -> d -> e -> f -> [a] -> [b] -> [c] -> [d] -> [e] -> [f]
+ Bio.Prelude: zipWith5 :: () => (a -> b -> c -> d -> e -> f) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f]
- Bio.Prelude: zipWith6 :: () => a -> b -> c -> d -> e -> f -> g -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g]
+ Bio.Prelude: zipWith6 :: () => (a -> b -> c -> d -> e -> f -> g) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g]
- Bio.Prelude: zipWith7 :: () => a -> b -> c -> d -> e -> f -> g -> h -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g] -> [h]
+ Bio.Prelude: zipWith7 :: () => (a -> b -> c -> d -> e -> f -> g -> h) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g] -> [h]
- Bio.Prelude: zipWithM :: Applicative m => a -> b -> m c -> [a] -> [b] -> m [c]
+ Bio.Prelude: zipWithM :: Applicative m => (a -> b -> m c) -> [a] -> [b] -> m [c]
- Bio.Prelude: zipWithM_ :: Applicative m => a -> b -> m c -> [a] -> [b] -> m ()
+ Bio.Prelude: zipWithM_ :: Applicative m => (a -> b -> m c) -> [a] -> [b] -> m ()
- Bio.TwoBit: TBF :: ByteString -> !(HashMap Seqid TwoBitSequence) -> TwoBitFile
+ Bio.TwoBit: TBF :: ByteString -> !HashMap Seqid TwoBitSequence -> TwoBitFile
- Bio.TwoBit: TBS :: !(IntMap Int) -> !(IntMap Int) -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> TwoBitSequence
+ Bio.TwoBit: TBS :: !IntMap Int -> !IntMap Int -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> TwoBitSequence
- Bio.TwoBit: [tbf_seqs] :: TwoBitFile -> !(HashMap Seqid TwoBitSequence)
+ Bio.TwoBit: [tbf_seqs] :: TwoBitFile -> !HashMap Seqid TwoBitSequence
- Bio.TwoBit: [tbs_m_blocks] :: TwoBitSequence -> !(IntMap Int)
+ Bio.TwoBit: [tbs_m_blocks] :: TwoBitSequence -> !IntMap Int
- Bio.TwoBit: [tbs_n_blocks] :: TwoBitSequence -> !(IntMap Int)
+ Bio.TwoBit: [tbs_n_blocks] :: TwoBitSequence -> !IntMap Int
Files
- CHANGELOG.md +27/−0
- biohazard.cabal +7/−6
- src/Bio/Bam/Reader.hs +6/−6
- src/Bio/Bam/Writer.hs +2/−3
- src/Bio/Iteratee.hs +3/−3
- src/Bio/Iteratee/Base.hs +4/−12
- src/Bio/Iteratee/IO.hs +9/−10
- src/Bio/Iteratee/Iteratee.hs +20/−0
+ CHANGELOG.md view
@@ -0,0 +1,27 @@+# 1.1.0 (2018-10-12)++ * Work around changes in exceptions-0.10.0. This version should+ compile cleanly and work with ghc-8.6.1.++# 1.0.4 (2018-09-02)++ * bugfix: memory leak in BGZF encoder++# 1.0.3 (2018-08-26)++ * bugfix: seeking had been broken for a while+ +# 1.0.2 (2018-07-08)++ * compatibility with ghc-8.4.1+ * bugfix: long headers were garbled when writing BAM files+ * more robust imports to avoid breakage when dependencies update+ +# 1.0.1 (2018-02-06)++ * Bugfix: merging of overlapping read pairs++# 1.0.0 (2018-01-28)++ * Removed dead code and failed experiments. `biohazard` is now feature+ complete by decree.
biohazard.cabal view
@@ -1,5 +1,5 @@ Name: biohazard-Version: 1.0.4+Version: 1.1.0 Synopsis: bioinformatics support library Description: This is a collection of modules I separated from various bioinformatics tools.@@ -8,6 +8,7 @@ Homepage: https://bitbucket.org/ustenzel/biohazard License: BSD3 License-File: LICENSE+Extra-Source-Files: CHANGELOG.md Author: Udo Stenzel Maintainer: u.stenzel@web.de@@ -15,7 +16,7 @@ Cabal-version: >= 1.10 Build-type: Simple-Tested-with: GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.1, GHC == 8.4.1, GHC == 8.4.3+Tested-with: GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.1, GHC == 8.4.3, GHC == 8.6.1 source-repository head type: git@@ -57,14 +58,14 @@ Build-depends: async >= 2.0 && < 2.3, attoparsec >= 0.10 && < 0.14,- base >= 4.7 && < 4.12,+ base >= 4.7 && < 4.13, base-prelude == 1.2.0.*, bytestring >= 0.10.2 && < 0.11,- containers == 0.5.*,- exceptions >= 0.6 && < 0.9,+ containers >= 0.5 && < 0.7,+ exceptions >= 0.6 && < 0.11, hashable >= 1.0 && < 1.3, primitive >= 0.5 && < 0.7,- stm == 2.4.*,+ stm >= 2.4 && < 2.6, text >= 1.0 && < 1.3, transformers >= 0.4.1 && < 0.6, unix >= 2.5 && < 2.8,
src/Bio/Bam/Reader.hs view
@@ -78,7 +78,7 @@ decodeAnyBamOrSam :: MonadIO m => BamEnumeratee m a decodeAnyBamOrSam it = isBamOrSam >>= \k -> k it -decodeAnyBamOrSamFile :: (MonadIO m, MonadMask m)+decodeAnyBamOrSamFile :: MonadBracketIO m => FilePath -> (BamMeta -> Iteratee [BamRec] m a) -> m (Iteratee [BamRec] m a) decodeAnyBamOrSamFile fn k = enumFileRandom defaultBufSize fn (decodeAnyBamOrSam k) >>= run @@ -207,13 +207,13 @@ decodeAnyBam it = do mk <- isBam ; case mk of Just k -> k it Nothing -> fail "this isn't BAM." -decodeAnyBamFile :: (MonadIO m, MonadMask m) => FilePath -> (BamMeta -> Iteratee [BamRaw] m a) -> m (Iteratee [BamRaw] m a)+decodeAnyBamFile :: MonadBracketIO m => FilePath -> (BamMeta -> Iteratee [BamRaw] m a) -> m (Iteratee [BamRaw] m a) decodeAnyBamFile fn k = enumFileRandom defaultBufSize fn (decodeAnyBam k) >>= run -concatDefaultInputs :: (MonadIO m, MonadMask m) => Enumerator' BamMeta [BamRaw] m a+concatDefaultInputs :: MonadBracketIO m => Enumerator' BamMeta [BamRaw] m a concatDefaultInputs it0 = liftIO getArgs >>= \fs -> concatInputs fs it0 -concatInputs :: (MonadIO m, MonadMask m) => [FilePath] -> Enumerator' BamMeta [BamRaw] m a+concatInputs :: MonadBracketIO m => [FilePath] -> Enumerator' BamMeta [BamRaw] m a concatInputs [ ] = enumFd defaultBufSize stdInput . decodeAnyBam >=> run concatInputs (fp0:fps) = enum1 fp0 >=> go fps where@@ -221,12 +221,12 @@ enum1 "-" = enumFd defaultBufSize stdInput . decodeAnyBam >=> run enum1 fp = enumFile defaultBufSize fp . decodeAnyBam >=> run -mergeDefaultInputs :: (MonadIO m, MonadMask m)+mergeDefaultInputs :: MonadBracketIO m => (BamMeta -> Enumeratee [BamRaw] [BamRaw] (Iteratee [BamRaw] m) a) -> Enumerator' BamMeta [BamRaw] m a mergeDefaultInputs (?) it0 = liftIO getArgs >>= \fs -> mergeInputs (?) fs it0 -mergeInputs :: (MonadIO m, MonadMask m)+mergeInputs :: MonadBracketIO m => (BamMeta -> Enumeratee [BamRaw] [BamRaw] (Iteratee [BamRaw] m) a) -> [FilePath] -> Enumerator' BamMeta [BamRaw] m a mergeInputs _ [ ] = \k -> enumFd defaultBufSize stdInput (decodeAnyBam k) >>= run
src/Bio/Bam/Writer.hs view
@@ -24,7 +24,6 @@ import Foreign.Marshal.Alloc ( alloca ) import System.IO ( openBinaryFile, IOMode(..) ) -import qualified Control.Monad.Catch as C import qualified Data.ByteString as B import qualified Data.ByteString.Char8 as S import qualified Data.Vector.Generic as V@@ -119,8 +118,8 @@ -- | Writes BAM encoded stuff to a file. writeBamFile :: IsBamRec r => FilePath -> BamMeta -> Iteratee [r] IO () writeBamFile fp meta =- C.bracket (liftIO $ openBinaryFile fp WriteMode)- (liftIO . hClose)+ bracketIO (openBinaryFile fp WriteMode)+ (hClose) (flip writeBamHandle meta) -- | write BAM encoded stuff to stdout
src/Bio/Iteratee.hs view
@@ -121,13 +121,13 @@ type Enumerator' h eo m b = (h -> Iteratee eo m b) -> m (Iteratee eo m b) type Enumeratee' h ei eo m b = (h -> Iteratee eo m b) -> Iteratee ei m (Iteratee eo m b) -enumAuxFile :: (MonadIO m, MonadMask m) => FilePath -> Iteratee S.ByteString m a -> m a+enumAuxFile :: MonadBracketIO m => FilePath -> Iteratee S.ByteString m a -> m a enumAuxFile fp it = liftIO (findAuxFile fp) >>= \f -> enumFile defaultBufSize f it >>= run -enumDefaultInputs :: (MonadIO m, MonadMask m) => Enumerator S.ByteString m a+enumDefaultInputs :: MonadBracketIO m => Enumerator S.ByteString m a enumDefaultInputs it0 = liftIO getArgs >>= flip enumInputs it0 -enumInputs :: (MonadIO m, MonadMask m) => [FilePath] -> Enumerator S.ByteString m a+enumInputs :: MonadBracketIO m => [FilePath] -> Enumerator S.ByteString m a enumInputs [] = enumFd defaultBufSize stdInput enumInputs xs = go xs where go ("-":fs) = enumFd defaultBufSize stdInput >=> go fs
src/Bio/Iteratee/Base.hs view
@@ -169,24 +169,16 @@ instance NullPoint s => MonadTrans (Iteratee s) where- lift m = Iteratee $ \onDone _ -> m >>= flip onDone (Chunk emptyP)+ lift m = Iteratee $ \onDone _ -> m >>= flip onDone (Chunk emptyP) instance (MonadIO m, Nullable s, NullPoint s) => MonadIO (Iteratee s m) where- liftIO = lift . liftIO+ liftIO = lift . liftIO -instance (MonadThrow m, Nullable s, NullPoint s) =>- MonadThrow (Iteratee s m) where+instance (MonadThrow m, Nullable s, NullPoint s) => MonadThrow (Iteratee s m) where throwM e = lift $ CIO.throwM e -instance (MonadCatch m, Nullable s, NullPoint s) =>- MonadCatch (Iteratee s m) where+instance (MonadCatch m, Nullable s, NullPoint s) => MonadCatch (Iteratee s m) where m `catch` f = Iteratee $ \od oc -> runIter m od oc `CIO.catch` (\e -> runIter (f e) od oc)---- prior to exceptions-0.6, these were part of MonadCatch-instance (MonadMask m, Nullable s, NullPoint s) => MonadMask (Iteratee s m) where- mask q = Iteratee $ \od oc -> CIO.mask $ \u -> runIter (q $ ilift u) od oc- uninterruptibleMask q = Iteratee $ \od oc -> CIO.uninterruptibleMask $ \u -> runIter (q $ ilift u) od oc- -- |Send 'EOF' to the @Iteratee@ and disregard the unconsumed part of the -- stream. If the iteratee is in an exception state, that exception is
src/Bio/Iteratee/IO.hs view
@@ -15,10 +15,9 @@ where import Bio.Iteratee.Iteratee-import Bio.Prelude hiding ( bracket, loop )-import Control.Monad.Catch ( MonadMask, bracket )-import Control.Monad.IO.Class ( MonadIO(..) )-import System.IO (SeekMode(..))+import Bio.Prelude hiding ( bracket, loop )+import Control.Monad.IO.Class ( MonadIO(..) )+import System.IO ( SeekMode(..) ) import qualified Data.ByteString as B @@ -65,25 +64,25 @@ -enumFile' :: (MonadIO m, MonadMask m) =>+enumFile' :: MonadBracketIO m => (Int -> Fd -> Enumerator s m a) -> Int -- ^Buffer size -> FilePath -> Enumerator s m a-enumFile' enumf bufsize filepath iter = bracket- (liftIO $ openFd filepath ReadOnly Nothing defaultFileFlags)- (liftIO . closeFd)+enumFile' enumf bufsize filepath iter = bracketIO+ (openFd filepath ReadOnly Nothing defaultFileFlags)+ (closeFd) (flip (enumf bufsize) iter) enumFile ::- (MonadIO m, MonadMask m)+ MonadBracketIO m => Int -- ^Buffer size -> FilePath -> Enumerator Bytes m a enumFile = enumFile' enumFd enumFileRandom ::- (MonadIO m, MonadMask m)+ MonadBracketIO m => Int -- ^Buffer size -> FilePath -> Enumerator Bytes m a
src/Bio/Iteratee/Iteratee.hs view
@@ -18,6 +18,7 @@ ,mBind_ ,ioBind ,ioBind_+ ,MonadBracketIO(..) -- ** Chunkwise Iteratees ,mapChunksM_ ,foldChunksM@@ -63,6 +64,7 @@ import Bio.Iteratee.Base import Bio.Prelude hiding (loop)+import Control.Monad.Catch as CIO import Control.Monad.IO.Class (MonadIO(..)) import Control.Monad.Trans.Class (MonadTrans(..)) @@ -285,6 +287,24 @@ infixl 1 `ioBind_` ioBind_ :: MonadIO m => IO a -> Iteratee s m b -> Iteratee s m b ioBind_ m b = Iteratee $ \onDone onCont -> liftIO m >> runIter b onDone onCont++-- | Runs an 'Iteratee' in between an 'IO' action to acquire a resource+-- and one to release it. 'Iteratee' can't be an instance of+-- 'CIO.MonadMask', so 'CIO.bracket' isn't defined for it. However, if+-- we restrict the acquire/release actions to 'IO', which is the most+-- important use case anyway, we can directly implement this weaker+-- version.+class MonadIO m => MonadBracketIO m where+ bracketIO :: IO a -> (a -> IO b) -> (a -> m c) -> m c++instance MonadBracketIO IO where+ {-# INLINE bracketIO #-}+ bracketIO = CIO.bracket++instance (MonadBracketIO m, Nullable s) => MonadBracketIO (Iteratee s m) where+ {-# INLINE bracketIO #-}+ bracketIO acquire release use =+ Iteratee $ \od oc -> bracketIO acquire release (\h -> runIter (use h) od oc) -- | Convert one stream into another with the supplied mapping function. -- This function operates on whole chunks at a time, contrasting to